elab_components 0.0.1 → 0.0.2

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
@@ -13,9 +13,9 @@ var kendoReactGrid = require('@progress/kendo-react-grid');
13
13
  var kendoDataQuery = require('@progress/kendo-data-query');
14
14
  var kendoReactExcelExport = require('@progress/kendo-react-excel-export');
15
15
  var kendoReactInputs = require('@progress/kendo-react-inputs');
16
+ var kendoReactDateinputs = require('@progress/kendo-react-dateinputs');
16
17
  var kendoReactTreeview = require('@progress/kendo-react-treeview');
17
18
  var kendoReactCharts = require('@progress/kendo-react-charts');
18
- var kendoReactDateinputs = require('@progress/kendo-react-dateinputs');
19
19
  var kendoReactLayout = require('@progress/kendo-react-layout');
20
20
 
21
21
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -50,7 +50,7 @@ function styleInject(css, ref) {
50
50
  }
51
51
  }
52
52
 
53
- var css_248z = "/** @format */\r\n@import '@progress/kendo-theme-material/dist/all';\r\n\r\nbody {\r\n margin: 0;\r\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto',\r\n 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\r\n 'Helvetica Neue', sans-serif;\r\n -webkit-font-smoothing: antialiased;\r\n -moz-osx-font-smoothing: grayscale;\r\n}\r\n\r\ncode {\r\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\r\n monospace;\r\n}\r\n";
53
+ var css_248z = "/** @format */\r\n@import '@progress/kendo-theme-material/dist/all';\r\n\r\nbody {\r\n margin: 0;\r\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto',\r\n 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\r\n 'Helvetica Neue', sans-serif;\r\n -webkit-font-smoothing: antialiased;\r\n -moz-osx-font-smoothing: grayscale;\r\n}\r\n\r\ncode {\r\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\r\n monospace;\r\n}\r\n\r\n.k-grid-toolbar {\r\n border-width: none;\r\n}\r\n.k-toolbar {\r\n padding-inline: 0px;\r\n padding: 10px 0px;\r\n}\r\n.k-button {\r\n text-transform: none;\r\n}\r\n\r\n.button-container {\r\n margin-left: auto;\r\n display: flex;\r\n gap: 15px;\r\n}\r\n\r\n.button-container .custom-button {\r\n background-color: transparent;\r\n border: none;\r\n box-shadow: none;\r\n cursor: pointer;\r\n}\r\n\r\n.button-container .button-content {\r\n display: flex;\r\n align-items: center;\r\n gap: 5px;\r\n}\r\n\r\n.button-container .icon {\r\n font-size: 20px;\r\n font-weight: bold;\r\n}\r\n\r\n.button-container .text {\r\n font-size: 16px;\r\n}\r\n";
54
54
  styleInject(css_248z);
55
55
 
56
56
  /******************************************************************************
@@ -173,15 +173,93 @@ var OkInput = function (_a) {
173
173
  };
174
174
  var templateObject_1$g;
175
175
 
176
+ var DefaultContext = {
177
+ color: undefined,
178
+ size: undefined,
179
+ className: undefined,
180
+ style: undefined,
181
+ attr: undefined
182
+ };
183
+ var IconContext = React__default["default"].createContext && /*#__PURE__*/React__default["default"].createContext(DefaultContext);
184
+
185
+ var _excluded = ["attr", "size", "title"];
186
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
187
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
188
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
189
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
190
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
191
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
192
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
193
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
194
+ function Tree2Element(tree) {
195
+ return tree && tree.map((node, i) => /*#__PURE__*/React__default["default"].createElement(node.tag, _objectSpread({
196
+ key: i
197
+ }, node.attr), Tree2Element(node.child)));
198
+ }
199
+ function GenIcon(data) {
200
+ return props => /*#__PURE__*/React__default["default"].createElement(IconBase, _extends({
201
+ attr: _objectSpread({}, data.attr)
202
+ }, props), Tree2Element(data.child));
203
+ }
204
+ function IconBase(props) {
205
+ var elem = conf => {
206
+ var {
207
+ attr,
208
+ size,
209
+ title
210
+ } = props,
211
+ svgProps = _objectWithoutProperties(props, _excluded);
212
+ var computedSize = size || conf.size || "1em";
213
+ var className;
214
+ if (conf.className) className = conf.className;
215
+ if (props.className) className = (className ? className + " " : "") + props.className;
216
+ return /*#__PURE__*/React__default["default"].createElement("svg", _extends({
217
+ stroke: "currentColor",
218
+ fill: "currentColor",
219
+ strokeWidth: "0"
220
+ }, conf.attr, attr, svgProps, {
221
+ className: className,
222
+ style: _objectSpread(_objectSpread({
223
+ color: props.color || conf.color
224
+ }, conf.style), props.style),
225
+ height: computedSize,
226
+ width: computedSize,
227
+ xmlns: "http://www.w3.org/2000/svg"
228
+ }), title && /*#__PURE__*/React__default["default"].createElement("title", null, title), props.children);
229
+ };
230
+ return IconContext !== undefined ? /*#__PURE__*/React__default["default"].createElement(IconContext.Consumer, null, conf => elem(conf)) : elem(DefaultContext);
231
+ }
232
+
233
+ // THIS FILE IS AUTO GENERATED
234
+ function HiViewColumns (props) {
235
+ return GenIcon({"tag":"svg","attr":{"viewBox":"0 0 24 24","fill":"currentColor","aria-hidden":"true"},"child":[{"tag":"path","attr":{"d":"M15 3.75H9v16.5h6V3.75ZM16.5 20.25h3.375c1.035 0 1.875-.84 1.875-1.875V5.625c0-1.036-.84-1.875-1.875-1.875H16.5v16.5ZM4.125 3.75H7.5v16.5H4.125a1.875 1.875 0 0 1-1.875-1.875V5.625c0-1.036.84-1.875 1.875-1.875Z"},"child":[]}]})(props);
236
+ }
237
+
238
+ // THIS FILE IS AUTO GENERATED
239
+ function PiExportBold (props) {
240
+ return GenIcon({"tag":"svg","attr":{"viewBox":"0 0 256 256","fill":"currentColor"},"child":[{"tag":"path","attr":{"d":"M220,112v96a20,20,0,0,1-20,20H56a20,20,0,0,1-20-20V112A20,20,0,0,1,56,92H76a12,12,0,0,1,0,24H60v88H196V116H180a12,12,0,0,1,0-24h20A20,20,0,0,1,220,112ZM96.49,72.49,116,53v83a12,12,0,0,0,24,0V53l19.51,19.52a12,12,0,1,0,17-17l-40-40a12,12,0,0,0-17,0l-40,40a12,12,0,1,0,17,17Z"},"child":[]}]})(props);
241
+ }
242
+
243
+ // THIS FILE IS AUTO GENERATED
244
+ function MdFilterList (props) {
245
+ return GenIcon({"tag":"svg","attr":{"viewBox":"0 0 24 24"},"child":[{"tag":"path","attr":{"fill":"none","d":"M0 0h24v24H0z"},"child":[]},{"tag":"path","attr":{"d":"M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"},"child":[]}]})(props);
246
+ }
247
+
248
+ // THIS FILE IS AUTO GENERATED
249
+ function IoClose (props) {
250
+ return GenIcon({"tag":"svg","attr":{"viewBox":"0 0 512 512"},"child":[{"tag":"path","attr":{"d":"m289.94 256 95-95A24 24 0 0 0 351 127l-95 95-95-95a24 24 0 0 0-34 34l95 95-95 95a24 24 0 1 0 34 34l95-95 95 95a24 24 0 0 0 34-34z"},"child":[]}]})(props);
251
+ }
252
+
176
253
  /** @format */
177
254
  var StyledGrid = styled__default["default"](kendoReactGrid.Grid)(templateObject_1$f || (templateObject_1$f = __makeTemplateObject([""], [""])));
178
255
  var OkGrid = function (_a) {
179
256
  var props = __rest(_a, []);
180
- var resizable = props.resizable, reorderable = props.reorderable, data = props.data, pageSizeValue = props.pageSizeValue, filterable = props.filterable, style = props.style, sortable = props.sortable, groupable = props.groupable, editField = props.editField, skip = props.skip, take = props.take, detail = props.detail, expandField = props.expandField, dataItemKey = props.dataItemKey, columnConfigs = props.columnConfigs, setSelectedState = props.setSelectedState, selectedState = props.selectedState; props.setPageSizeValue; props.setPage; var columnOption = props.columnOption, setColumnOption = props.setColumnOption, expandChange = props.expandChange, setSearchKeyword = props.setSearchKeyword, searchKeyword = props.searchKeyword, allColumnsField = props.allColumnsField, expandedRows = props.expandedRows;
257
+ var resizable = props.resizable, reorderable = props.reorderable, data = props.data, pageSizeValue = props.pageSizeValue, filterable = props.filterable, style = props.style, sortable = props.sortable, groupable = props.groupable, editField = props.editField, skip = props.skip, take = props.take, dataItemKey = props.dataItemKey, columnConfigs = props.columnConfigs, setSelectedState = props.setSelectedState, selectedState = props.selectedState; props.setPageSizeValue; props.setPage; var columnOption = props.columnOption, setColumnOption = props.setColumnOption, expandChange = props.expandChange, setSearchKeyword = props.setSearchKeyword, searchKeyword = props.searchKeyword, allColumnsField = props.allColumnsField, expandedRows = props.expandedRows, advanceFilterData = props.advanceFilterData, advanceFilterDataActive = props.advanceFilterDataActive; props.filterSubmit;
181
258
  var excelExport = React__default["default"].useRef(null);
182
- var _b = React.useState([]), newData = _b[0], setNewData = _b[1];
259
+ var _b = React.useState([]), newData = _b[0]; _b[1];
183
260
  var _c = React.useState(), runQueriesFilter = _c[0]; _c[1];
184
261
  var _d = React__default["default"].useState(null), editID = _d[0]; _d[1];
262
+ var _e = React.useState(false), filterShow = _e[0], setFilterShow = _e[1];
185
263
  var isRowExpanded = function (productID) {
186
264
  return expandedRows.includes(productID);
187
265
  };
@@ -205,7 +283,7 @@ var OkGrid = function (_a) {
205
283
  });
206
284
  }, [data, searchKeyword, expandedRows, selectedState, editID]);
207
285
  console.log('filteredProducts', filteredProducts);
208
- var _e = React__default["default"].useState({
286
+ var _f = React__default["default"].useState({
209
287
  take: 10,
210
288
  skip: 0,
211
289
  group: [],
@@ -214,9 +292,32 @@ var OkGrid = function (_a) {
214
292
  logic: 'and',
215
293
  filters: [],
216
294
  },
217
- }), dataState = _e[0], setDataState = _e[1];
218
- var _f = React__default["default"].useState(columnConfigs), columns = _f[0], setColumns = _f[1];
219
- var _g = React__default["default"].useState(function () {
295
+ }), dataState = _f[0], setDataState = _f[1];
296
+ var detailComponent = function (props) {
297
+ var dataItem = props.dataItem;
298
+ return (React__default["default"].createElement("section", null,
299
+ React__default["default"].createElement("p", null,
300
+ React__default["default"].createElement("strong", null, "In Stock:"),
301
+ " ",
302
+ dataItem.UnitsInStock,
303
+ " units"),
304
+ React__default["default"].createElement("p", null,
305
+ React__default["default"].createElement("strong", null, "On Order:"),
306
+ " ",
307
+ dataItem.UnitsOnOrder,
308
+ " units"),
309
+ React__default["default"].createElement("p", null,
310
+ React__default["default"].createElement("strong", null, "Reorder Level:"),
311
+ " ",
312
+ dataItem.ReorderLevel,
313
+ " units"),
314
+ React__default["default"].createElement("p", null,
315
+ React__default["default"].createElement("strong", null, "Discontinued:"),
316
+ " ",
317
+ dataItem.Discontinued)));
318
+ };
319
+ var _g = React__default["default"].useState(columnConfigs), columns = _g[0], setColumns = _g[1];
320
+ var _h = React__default["default"].useState(function () {
220
321
  var savedOptions = localStorage.getItem('gridOptions');
221
322
  return savedOptions
222
323
  ? JSON.parse(savedOptions)
@@ -225,8 +326,8 @@ var OkGrid = function (_a) {
225
326
  groupable: false,
226
327
  filterByQueries: false,
227
328
  };
228
- }), gridOptions = _g[0], setGridOptions = _g[1];
229
- var _h = React__default["default"].useState(kendoDataQuery.process(data, dataState)), dataResult = _h[0], setDataResult = _h[1];
329
+ }), gridOptions = _h[0], setGridOptions = _h[1];
330
+ var _j = React__default["default"].useState(kendoDataQuery.process(data, dataState)), dataResult = _j[0], setDataResult = _j[1];
230
331
  var onDataStateChange = function (e) {
231
332
  setDataState(e.dataState);
232
333
  setDataResult(kendoDataQuery.process(data, e.dataState));
@@ -266,8 +367,6 @@ var OkGrid = function (_a) {
266
367
  React.useEffect(function () {
267
368
  setDataResult(kendoDataQuery.process(data, dataState));
268
369
  }, [data, dataState]);
269
- console.log(gridOptions);
270
- console.log('dataResult', dataResult);
271
370
  var onFilterChange = function (e) {
272
371
  setSearchKeyword(e.target.value);
273
372
  };
@@ -276,47 +375,60 @@ var OkGrid = function (_a) {
276
375
  excelExport.current.save(newData);
277
376
  }
278
377
  };
279
- var addNew = function () {
280
- var newDataItem = {
281
- id: '',
282
- title: 'string',
283
- price: 0,
284
- description: 'string',
285
- categoryId: 0,
286
- images: 'string',
287
- };
288
- setNewData(__spreadArray([newDataItem], newData, true));
289
- };
290
378
  return (React__default["default"].createElement("div", { style: {
291
379
  display: 'flex',
292
380
  flexDirection: 'column',
293
- gap: 25,
294
381
  marginTop: '25px',
295
- marginLeft: '10px',
296
- marginRight: '10px',
297
382
  } },
298
- ' ',
299
- React__default["default"].createElement("div", null,
383
+ React__default["default"].createElement("div", { style: {
384
+ display: 'flex',
385
+ justifyContent: 'space-between',
386
+ alignItems: 'center',
387
+ marginBottom: '5px',
388
+ } },
389
+ React__default["default"].createElement(OkInput, { style: {
390
+ width: '300px',
391
+ }, value: searchKeyword, onChange: function (e) { return onFilterChange(e); }, placeholder: "Search..." }),
392
+ React__default["default"].createElement("div", { className: "button-container" },
393
+ React__default["default"].createElement(OkButton, { onClick: function () {
394
+ return setColumnOption(function (prevState) { return (__assign(__assign({}, prevState), { columnOptionModel: true })); });
395
+ }, type: "button", className: "custom-button" },
396
+ React__default["default"].createElement("span", { className: "button-content" },
397
+ React__default["default"].createElement(HiViewColumns, { className: "icon" }),
398
+ React__default["default"].createElement("span", { className: "text" }, "Column Option"))),
399
+ React__default["default"].createElement(OkButton, { type: "button", className: "custom-button", onClick: function () { return setFilterShow(!filterShow); } },
400
+ React__default["default"].createElement("span", { className: "button-content" },
401
+ React__default["default"].createElement(MdFilterList, { className: "icon" }),
402
+ React__default["default"].createElement("span", { className: "text" }, "Filter"))),
403
+ React__default["default"].createElement(OkButton, { type: "button", className: "custom-button", title: "Export Excel", onClick: exportExport },
404
+ React__default["default"].createElement("span", { className: "button-content" },
405
+ React__default["default"].createElement(PiExportBold, { className: "icon" }),
406
+ React__default["default"].createElement("span", { className: "text" }, "Export"))))),
407
+ filterShow && advanceFilterDataActive && (React__default["default"].createElement(kendoReactGrid.GridToolbar, null,
300
408
  React__default["default"].createElement("div", { style: {
301
409
  display: 'flex',
302
- justifyContent: 'space-between',
303
410
  alignItems: 'center',
411
+ justifyContent: 'space-between',
412
+ width: '100%',
304
413
  } },
305
- React__default["default"].createElement(OkInput, { style: {
306
- width: '30%',
307
- }, value: searchKeyword, onChange: function (e) { return onFilterChange(e); }, placeholder: "Filter by keyword" }),
308
- React__default["default"].createElement("div", { style: { marginLeft: 'auto', display: 'flex', gap: '15px' } },
309
- React__default["default"].createElement(OkButton, { onClick: function () {
310
- return setColumnOption(function (prevState) { return (__assign(__assign({}, prevState), { columnOptionModel: true })); });
311
- }, themeColor: 'primary', type: "button" }, "Column option"),
312
- React__default["default"].createElement(OkButton, { style: {
313
- width: '120px',
314
- }, title: "Export Excel", themeColor: 'primary', type: "button", onClick: exportExport }, "Export"),
315
- React__default["default"].createElement(OkButton, { themeColor: 'primary', type: "button" }, "Open in Queries"),
316
- React__default["default"].createElement(OkButton, { onClick: addNew, themeColor: 'primary', type: "button" }, "Create +"),
317
- React__default["default"].createElement(OkButton, { onClick: function () {
318
- return setColumnOption(function (prevState) { return (__assign(__assign({}, prevState), { columnConfigsModel: true })); });
319
- }, themeColor: 'primary', type: "button" }, "view option")))),
414
+ React__default["default"].createElement("div", { style: {
415
+ display: 'flex',
416
+ gap: '20px',
417
+ } },
418
+ advanceFilterData.map(function (item, index) { return (React__default["default"].createElement("div", null,
419
+ item.type === 'combBox' && (React__default["default"].createElement(kendoReactDropdowns.ComboBox, { data: item.data, textField: item.textField, value: item.value, onChange: item.onchange, label: item.label, filterable: item.filterable, onFilterChange: item.filterChange })),
420
+ item.type === 'datePicker' && (React__default["default"].createElement("div", { style: { paddingTop: '1.2rem' } },
421
+ React__default["default"].createElement(kendoReactDateinputs.DatePicker, { value: item.value, onChange: item.onchange, placeholder: item.placeholder }))))); }),
422
+ React__default["default"].createElement(OkButton, { type: "button", onClick: function () { return setFilterShow(false); }, themeColor: "primary", style: { marginTop: '1.2rem', padding: '0px 30px' } }, "Apply")),
423
+ React__default["default"].createElement(OkButton, { style: {
424
+ backgroundColor: 'transparent',
425
+ border: 'none',
426
+ boxShadow: 'none',
427
+ fontSize: '24px',
428
+ fontWeight: 700,
429
+ marginTop: '1.2rem',
430
+ }, type: "button", onClick: function () { return setFilterShow(false); } },
431
+ React__default["default"].createElement(IoClose, null))))),
320
432
  React__default["default"].createElement(kendoReactExcelExport.ExcelExport, { data: dataResult, ref: excelExport },
321
433
  React__default["default"].createElement(StyledGrid, __assign({ onHeaderSelectionChange: function (e) {
322
434
  return onHeaderSelectionChange(e);
@@ -330,7 +442,7 @@ var OkGrid = function (_a) {
330
442
  buttonCount: 4,
331
443
  pageSizes: [2, 10, 15, 'All'],
332
444
  pageSizeValue: pageSizeValue,
333
- }, filterable: filterable, editField: editField, reorderable: reorderable, groupable: groupable, resizable: resizable, style: style, data: filteredProducts, dataItemKey: dataItemKey, take: take, sortable: sortable, detail: detail, expandField: expandField }, dataState), columns.map(function (col, index) { return (React__default["default"].createElement(kendoReactGrid.GridColumn, { filterable: true, key: index, editable: true, field: col.field, title: col.title, format: col.format, cell: col.cell, width: col.width, headerSelectionValue: col.headerSelectionValue, editor: col.editor })); }))),
445
+ }, filterable: filterable, editField: editField, reorderable: reorderable, groupable: groupable, resizable: resizable, style: style, data: filteredProducts, dataItemKey: dataItemKey, take: take, sortable: sortable, detail: detailComponent, expandField: "expanded" }, dataState), columns.map(function (col, index) { return (React__default["default"].createElement(kendoReactGrid.GridColumn, { filterable: true, key: index, editable: true, field: col.field, title: col.title, format: col.format, cell: col.cell, width: col.width, headerSelectionValue: col.headerSelectionValue, editor: col.editor })); }))),
334
446
  columnOption.columnOptionModel && (React__default["default"].createElement(ColumnAdd, { setColumnOption: setColumnOption, setColumns: setColumns, columns: columns, allColumnsField: allColumnsField, dataResult: dataResult, setDataResult: setDataResult })),
335
447
  columnOption.columnConfigsModel && (React__default["default"].createElement(GridFeatureEnableHandler, { gridOptions: gridOptions, setGridOptions: setGridOptions, setColumnOption: setColumnOption }))));
336
448
  };