Browse Source

Refactoring & tweaks

master
Nuno Martinho 5 years ago
parent
commit
5c2fff885f
8 changed files with 363 additions and 164 deletions
  1. BIN
      dbs/myapp.mv.db
  2. +216
    -85
      public/scripts/main.js
  3. +1
    -1
      public/scripts/main.js.map
  4. +39
    -40
      ui/src/components/TableUsers/index.jsx
  5. +0
    -0
      ui/src/components/UserCalendar/ModalEvent/index.jsx
  6. +21
    -38
      ui/src/components/UserCalendar/index.jsx
  7. +19
    -0
      ui/src/components/UserCalendar/index.less
  8. +67
    -0
      ui/src/utils/Service.js

BIN
dbs/myapp.mv.db View File


+ 216
- 85
public/scripts/main.js View File

@ -17155,6 +17155,24 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
}()); }());
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/less-loader/dist/cjs.js?!./src/components/UserCalendar/index.less":
/*!*************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js??ref--6-1!./node_modules/less-loader/dist/cjs.js??ref--6-2!./src/components/UserCalendar/index.less ***!
\*************************************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
// Imports
var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
exports = ___CSS_LOADER_API_IMPORT___(true);
// Module
exports.push([module.i, ".events {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n.events .ant-badge-status {\n width: 100%;\n overflow: hidden;\n font-size: 12px;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.notes-month {\n font-size: 28px;\n text-align: center;\n}\n.notes-month section {\n font-size: 28px;\n}\n", "",{"version":3,"sources":["index.less"],"names":[],"mappings":"AAAA;EACE,SAAS;EACT,UAAU;EACV,gBAAgB;AAClB;AACA;EACE,WAAW;EACX,gBAAgB;EAChB,eAAe;EACf,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,eAAe;EACf,kBAAkB;AACpB;AACA;EACE,eAAe;AACjB","file":"index.less","sourcesContent":[".events {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n.events .ant-badge-status {\n width: 100%;\n overflow: hidden;\n font-size: 12px;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.notes-month {\n font-size: 28px;\n text-align: center;\n}\n.notes-month section {\n font-size: 28px;\n}\n"]}]);
// Exports
module.exports = exports;
/***/ }), /***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/less-loader/dist/cjs.js?!./src/containers/DashboardContainer/index.less": /***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/less-loader/dist/cjs.js?!./src/containers/DashboardContainer/index.less":
@ -108681,8 +108699,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var antd_lib_table__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(antd_lib_table__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var antd_lib_table__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(antd_lib_table__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var antd_lib_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! antd/lib/button */ "./node_modules/antd/lib/button/index.js"); /* harmony import */ var antd_lib_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! antd/lib/button */ "./node_modules/antd/lib/button/index.js");
/* harmony import */ var antd_lib_button__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(antd_lib_button__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var antd_lib_button__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(antd_lib_button__WEBPACK_IMPORTED_MODULE_2__);
var _this = undefined;
/* harmony import */ var _utils_Service__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/Service */ "./src/utils/Service.js");
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@ -108697,6 +108714,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
//import Tag from 'antd/lib/tag'; //import Tag from 'antd/lib/tag';
var TableUsers = function TableUsers(_ref) { var TableUsers = function TableUsers(_ref) {
@ -108718,41 +108736,13 @@ var TableUsers = function TableUsers(_ref) {
setUserEvents = _useState6[1]; setUserEvents = _useState6[1];
Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () { Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
setLoading(true);
var _fail = function fail() {
_this.setState({
loading: false
});
notification["error"]({
message: 'Tabela Pessoas',
description: 'Data loading error...',
style: {
marginTop: 100
}
});
};
netuno.service({
url: '/services/users',
method: 'GET',
credentials: 'include',
headers: {
'Content-Type': 'application/json'
},
success: function success(response) {
//console.log(response);
if (response.json) {
setUsers(response.json);
setLoading(false);
} else {
_fail();
}
},
fail: function fail() {
_fail();
}
_utils_Service__WEBPACK_IMPORTED_MODULE_3__["default"].call({
url: 'users',
method: 'get',
setData: setUsers,
setLoading: setLoading,
errorTitle: 'Table Users Service Call',
errorMessage: 'users/get.js'
}); });
}, []); }, []);
var columns = [{ var columns = [{
@ -108765,13 +108755,30 @@ var TableUsers = function TableUsers(_ref) {
title: "Role", title: "Role",
dataIndex: "role" dataIndex: "role"
}, { }, {
title: "Calendar",
title: "Events",
render: function render(text, record, index) { render: function render(text, record, index) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(antd_lib_button__WEBPACK_IMPORTED_MODULE_2___default.a, { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(antd_lib_button__WEBPACK_IMPORTED_MODULE_2___default.a, {
onClick: function onClick() { onClick: function onClick() {
setUserEvents(record);
onView(record); onView(record);
} }
}, "Open Calendar"));
}
}, {
title: "Lists of Tasks",
render: function render(text, record, index) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(antd_lib_button__WEBPACK_IMPORTED_MODULE_2___default.a, {
onClick: function onClick() {
console.log('tasklist');
}
}, "View"));
}
}, {
title: "Reminders",
render: function render(text, record, index) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(antd_lib_button__WEBPACK_IMPORTED_MODULE_2___default.a, {
onClick: function onClick() {
console.log('reminders');
}
}, "View")); }, "View"));
} }
}]; }];
@ -108797,14 +108804,17 @@ var TableUsers = function TableUsers(_ref) {
__webpack_require__.r(__webpack_exports__); __webpack_require__.r(__webpack_exports__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var antd_lib_calendar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! antd/lib/calendar */ "./node_modules/antd/lib/calendar/index.js");
/* harmony import */ var antd_lib_calendar__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(antd_lib_calendar__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var antd_lib_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! antd/lib/button */ "./node_modules/antd/lib/button/index.js");
/* harmony import */ var antd_lib_button__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(antd_lib_button__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var antd_lib_calendar__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! antd/lib/calendar */ "./node_modules/antd/lib/calendar/index.js");
/* harmony import */ var antd_lib_calendar__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(antd_lib_calendar__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var antd_lib_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! antd/lib/button */ "./node_modules/antd/lib/button/index.js");
/* harmony import */ var antd_lib_button__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(antd_lib_button__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var antd_lib_badge__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd/lib/badge */ "./node_modules/antd/lib/badge/index.js"); /* harmony import */ var antd_lib_badge__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd/lib/badge */ "./node_modules/antd/lib/badge/index.js");
/* harmony import */ var antd_lib_badge__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(antd_lib_badge__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var antd_lib_badge__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(antd_lib_badge__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _index_less__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./index.less */ "./src/components/UserCalendar/index.less");
/* harmony import */ var _index_less__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_index_less__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _utils_Service__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/Service */ "./src/utils/Service.js");
function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
@ -108825,6 +108835,8 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
var UserCalendar = function UserCalendar(_ref) { var UserCalendar = function UserCalendar(_ref) {
var user = _ref.user, var user = _ref.user,
closeCalendar = _ref.closeCalendar; closeCalendar = _ref.closeCalendar;
@ -108845,48 +108857,22 @@ var UserCalendar = function UserCalendar(_ref) {
Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () { Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
setLoading(true);
var _fail = function fail() {
setLoading(false);
notification["error"]({
message: 'Lista de Publicações',
description: 'Houve uma falha ao carregar a lista das publicações...',
style: {
marginTop: 100
}
});
};
netuno.service({
url: '/services/users/events',
method: 'POST',
credentials: 'include',
headers: {
'Content-Type': 'application/json'
},
_utils_Service__WEBPACK_IMPORTED_MODULE_6__["default"].call({
url: 'users/events',
method: 'post',
body: JSON.stringify({ body: JSON.stringify({
uid: user.uid uid: user.uid
}), }),
success: function success(response) {
if (response.json) {
console.log(response.json);
setData(response.json);
setLoading(false);
} else {
_fail();
}
},
fail: function fail() {
_fail();
}
setData: setData,
setLoading: setLoading,
errorTitle: 'Calendar Service Call',
errorMessage: 'users/events'
}); });
}, []); }, []);
var dateCellRender = function dateCellRender(value) { var dateCellRender = function dateCellRender(value) {
//moment //moment
console.log("datecellrender", value.format("YYYY MM DD"));
//console.log("datecellrender", value.format("YYYY MM DD"));
if (data.length > 0) { if (data.length > 0) {
var _iterator = _createForOfIteratorHelper(data), var _iterator = _createForOfIteratorHelper(data),
_step; _step;
@ -108894,6 +108880,7 @@ var UserCalendar = function UserCalendar(_ref) {
try { try {
for (_iterator.s(); !(_step = _iterator.n()).done;) { for (_iterator.s(); !(_step = _iterator.n()).done;) {
var item = _step.value; var item = _step.value;
console.log("datecellrender: ", item.date_start.indexOf(value.format("YYYY-MM-DD")));
if (item.date_start.indexOf(value.format("YYYY-MM-DD")) == 0) { if (item.date_start.indexOf(value.format("YYYY-MM-DD")) == 0) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("ul", { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("ul", {
@ -108914,25 +108901,56 @@ var UserCalendar = function UserCalendar(_ref) {
} }
}; };
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(antd_lib_calendar__WEBPACK_IMPORTED_MODULE_1___default.a, {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null, _utils_Service__WEBPACK_IMPORTED_MODULE_6__["default"].spin(loading), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(antd_lib_calendar__WEBPACK_IMPORTED_MODULE_2___default.a, {
dateCellRender: dateCellRender, dateCellRender: dateCellRender,
onPanelChange: onPanelChange onPanelChange: onPanelChange
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(antd_lib_button__WEBPACK_IMPORTED_MODULE_2___default.a, {
type: "primary",
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(antd_lib_button__WEBPACK_IMPORTED_MODULE_3___default.a, {
type: "default",
onClick: function onClick() { onClick: function onClick() {
return closeCalendar(); return closeCalendar();
} }
}, "Close Calendar"));
}, "Close Calendar"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(antd_lib_button__WEBPACK_IMPORTED_MODULE_3___default.a, {
type: "primary"
}, "Add Event"));
}; };
UserCalendar.propTypes = { UserCalendar.propTypes = {
user: prop_types__WEBPACK_IMPORTED_MODULE_3___default.a.object.isRequired,
closeCalendar: prop_types__WEBPACK_IMPORTED_MODULE_3___default.a.func.isRequired
user: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.object.isRequired,
closeCalendar: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.func.isRequired
}; };
/* harmony default export */ __webpack_exports__["default"] = (UserCalendar); /* harmony default export */ __webpack_exports__["default"] = (UserCalendar);
/***/ }), /***/ }),
/***/ "./src/components/UserCalendar/index.less":
/*!************************************************!*\
!*** ./src/components/UserCalendar/index.less ***!
\************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
var api = __webpack_require__(/*! ../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
var content = __webpack_require__(/*! !../../../node_modules/css-loader/dist/cjs.js??ref--6-1!../../../node_modules/less-loader/dist/cjs.js??ref--6-2!./index.less */ "./node_modules/css-loader/dist/cjs.js?!./node_modules/less-loader/dist/cjs.js?!./src/components/UserCalendar/index.less");
content = content.__esModule ? content.default : content;
if (typeof content === 'string') {
content = [[module.i, content, '']];
}
var options = {};
options.insert = "head";
options.singleton = false;
var update = api(content, options);
module.exports = content.locals || {};
/***/ }),
/***/ "./src/containers/DashboardContainer/index.jsx": /***/ "./src/containers/DashboardContainer/index.jsx":
/*!*****************************************************!*\ /*!*****************************************************!*\
!*** ./src/containers/DashboardContainer/index.jsx ***! !*** ./src/containers/DashboardContainer/index.jsx ***!
@ -109203,6 +109221,119 @@ var update = api(content, options);
module.exports = content.locals || {}; module.exports = content.locals || {};
/***/ }),
/***/ "./src/utils/Service.js":
/*!******************************!*\
!*** ./src/utils/Service.js ***!
\******************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Service; });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var antd_lib_notification__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! antd/lib/notification */ "./node_modules/antd/lib/notification/index.js");
/* harmony import */ var antd_lib_notification__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(antd_lib_notification__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var antd_lib_spin__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! antd/lib/spin */ "./node_modules/antd/lib/spin/index.js");
/* harmony import */ var antd_lib_spin__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(antd_lib_spin__WEBPACK_IMPORTED_MODULE_2__);
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
var Service = /*#__PURE__*/function () {
function Service() {
_classCallCheck(this, Service);
}
_createClass(Service, null, [{
key: "spin",
value: function spin(loading) {
return loading && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(antd_lib_spin__WEBPACK_IMPORTED_MODULE_2___default.a, null);
}
}, {
key: "call",
value: function call(settings) {
var url = settings.url,
method = settings.method,
body = settings.body,
setData = settings.setData,
setLoading = settings.setLoading,
errorTitle = settings.errorTitle,
errorMessage = settings.errorMessage;
var errors = {};
if (!url || url == '') {
errors['url'] = 'Required!';
}
;
if (!setData) {
errors['setData'] = 'Required!';
}
;
if (!setLoading) {
errors['setLoading'] = 'Required!';
}
;
if (Object.keys(errors).length > 0) {
return console.error("Service call invalid setting:", errors);
}
setLoading(true);
var _fail = function fail() {
setLoading(false);
antd_lib_notification__WEBPACK_IMPORTED_MODULE_1___default.a["error"]({
message: errorTitle ? errorTitle : 'Erro no serviço',
description: errorMessage ? errorMessage : url,
style: {
marginTop: 100
}
});
};
netuno.service({
url: "/services/".concat(url),
method: method ? method.toUpperCase() : 'GET',
credentials: 'include',
headers: {
'Content-Type': 'application/json'
},
body: body ? body : null,
success: function success(response) {
if (response.json) {
setData(response.json);
setLoading(false);
} else {
_fail();
}
},
fail: function fail() {
_fail();
}
});
}
}]);
return Service;
}();
/***/ }), /***/ }),
/***/ 0: /***/ 0:


+ 1
- 1
public/scripts/main.js.map
File diff suppressed because it is too large
View File


+ 39
- 40
ui/src/components/TableUsers/index.jsx View File

@ -1,46 +1,27 @@
import React, { useState, useEffect } from "react"; import React, { useState, useEffect } from "react";
import Table from 'antd/lib/table'; import Table from 'antd/lib/table';
import Button from 'antd/lib/button'; import Button from 'antd/lib/button';
import Service from "../../utils/Service";
//import Tag from 'antd/lib/tag'; //import Tag from 'antd/lib/tag';
const TableUsers = ({onView}) => {
const TableUsers = ({ onView }) => {
const [users, setUsers] = useState([]); const [users, setUsers] = useState([]);
const [loading, setLoading] = useState(false); const [loading, setLoading] = useState(false);
const [ userEvents, setUserEvents ] = useState(null);
const [userEvents, setUserEvents] = useState(null);
useEffect(() => { useEffect(() => {
setLoading(true);
const fail = ()=> {
this.setState({ loading: false });
notification["error"]({
message: 'Tabela Pessoas',
description: 'Data loading error...',
style: {
marginTop: 100,
}
});
};
netuno.service({
url: '/services/users',
method: 'GET',
credentials: 'include',
headers: {
'Content-Type': 'application/json'
},
success: (response)=> {
//console.log(response);
if (response.json) {
setUsers(response.json);
setLoading(false);
} else {
fail();
}
},
fail: ()=> {
fail();
}
Service.call({
url: 'users',
method: 'get',
setData: setUsers,
setLoading,
errorTitle: 'Table Users Service Call',
errorMessage: 'users/get.js'
}); });
}, []); }, []);
const columns = [ const columns = [
@ -57,21 +38,39 @@ const TableUsers = ({onView}) => {
dataIndex: "role" dataIndex: "role"
}, },
{ {
title: "Calendar",
title: "Events",
render: (text, record, index) => (
<div>
{<Button onClick={() => { onView(record) }}>Open Calendar</Button>}
</div>
)
},
{
title: "Lists of Tasks",
render: (text, record, index) => (
<div>
{<Button onClick={() => { console.log('tasklist') }}>View</Button>}
</div>
)
},
{
title: "Reminders",
render: (text, record, index) => ( render: (text, record, index) => (
<div> <div>
{<Button onClick={ () => {setUserEvents(record); onView(record)}}>View</Button>}
{<Button onClick={() => { console.log('reminders') }}>View</Button>}
</div> </div>
) )
} }
]; ];
return <>
<Table dataSource={users} { ...{ columns, loading } } />
</>
return <>
<Table dataSource={users} {...{ columns, loading }} />
</>
} }

+ 0
- 0
ui/src/components/UserCalendar/ModalEvent/index.jsx View File


+ 21
- 38
ui/src/components/UserCalendar/index.jsx View File

@ -1,9 +1,13 @@
import React, { useState, useEffect } from "react"; import React, { useState, useEffect } from "react";
import PropTypes from "prop-types";
import Calendar from 'antd/lib/calendar'; import Calendar from 'antd/lib/calendar';
import Button from 'antd/lib/button'; import Button from 'antd/lib/button';
import PropTypes from "prop-types";
import Badge from 'antd/lib/badge'; import Badge from 'antd/lib/badge';
import "./index.less";
import Service from "../../utils/Service";
const UserCalendar = ({ user, closeCalendar }) => { const UserCalendar = ({ user, closeCalendar }) => {
const [loading, setLoading] = useState(false); const [loading, setLoading] = useState(false);
const [data, setData] = useState([]); const [data, setData] = useState([]);
@ -15,55 +19,32 @@ const UserCalendar = ({ user, closeCalendar }) => {
//console.log(JSON.stringify(user)); //console.log(JSON.stringify(user));
useEffect(() => { useEffect(() => {
setLoading(true);
const fail = () => {
setLoading(false);
notification["error"]({
message: 'Lista de Publicações',
description: 'Houve uma falha ao carregar a lista das publicações...',
style: {
marginTop: 100,
}
});
};
netuno.service({
url: '/services/users/events',
method: 'POST',
credentials: 'include',
headers: {
'Content-Type': 'application/json'
},
Service.call({
url: 'users/events',
method: 'post',
body: JSON.stringify({ body: JSON.stringify({
uid: user.uid uid: user.uid
}), }),
success: (response) => {
if (response.json) {
console.log(response.json);
setData(response.json);
setLoading(false);
} else {
fail();
}
},
fail: () => {
fail();
}
setData,
setLoading,
errorTitle: 'Calendar Service Call',
errorMessage: 'users/events'
}); });
}, []); }, []);
const dateCellRender = (value) => { //moment const dateCellRender = (value) => { //moment
console.log("datecellrender", value.format("YYYY MM DD"));
//console.log("datecellrender", value.format("YYYY MM DD"));
if (data.length > 0) { if (data.length > 0) {
for (const item of data) { for (const item of data) {
console.log("datecellrender: ", item.date_start.indexOf(value.format("YYYY-MM-DD")));
if (item.date_start.indexOf(value.format("YYYY-MM-DD")) == 0) { if (item.date_start.indexOf(value.format("YYYY-MM-DD")) == 0) {
return ( return (
<ul className="events"> <ul className="events">
<li key={item.title}>
<Badge status="success" text={item.title} />
</li>
<li key={item.title}>
<Badge status="success" text={item.title} />
</li>
</ul> </ul>
) )
} }
@ -72,8 +53,10 @@ const UserCalendar = ({ user, closeCalendar }) => {
} }
return <> return <>
{ Service.spin(loading)}
<Calendar dateCellRender={dateCellRender} onPanelChange={onPanelChange} /> <Calendar dateCellRender={dateCellRender} onPanelChange={onPanelChange} />
<Button type="primary" onClick={() => closeCalendar()}>Close Calendar</Button>
<Button type="default" onClick={() => closeCalendar()}>Close Calendar</Button>
<Button type="primary">Add Event</Button>
</>; </>;
}; };


+ 19
- 0
ui/src/components/UserCalendar/index.less View File

@ -0,0 +1,19 @@
.events {
margin: 0;
padding: 0;
list-style: none;
}
.events .ant-badge-status {
width: 100%;
overflow: hidden;
font-size: 12px;
white-space: nowrap;
text-overflow: ellipsis;
}
.notes-month {
font-size: 28px;
text-align: center;
}
.notes-month section {
font-size: 28px;
}

+ 67
- 0
ui/src/utils/Service.js View File

@ -0,0 +1,67 @@
import React from 'react';
import notification from 'antd/lib/notification';
import Spin from 'antd/lib/spin';
export default class Service {
static spin(loading) {
return loading && <Spin />
}
static call(settings) {
const { url, method, body, setData, setLoading, errorTitle, errorMessage } = settings;
const errors = {};
if (!url || url == '') {
errors['url'] = 'Required!';
};
if (!setData) {
errors['setData'] = 'Required!';
};
if (!setLoading) {
errors['setLoading'] = 'Required!';
};
if (Object.keys(errors).length > 0) {
return console.error("Service call invalid setting:", errors);
}
setLoading(true);
const fail = () => {
setLoading(false);
notification["error"]({
message: errorTitle ? errorTitle : 'Erro no serviço',
description: errorMessage ? errorMessage : url,
style: {
marginTop: 100,
}
});
};
netuno.service({
url: `/services/${url}`,
method: method ? method.toUpperCase() : 'GET',
credentials: 'include',
headers: {
'Content-Type': 'application/json'
},
body: body ? body : null,
success: (response) => {
if (response.json) {
setData(response.json);
setLoading(false);
} else {
fail();
}
},
fail: () => {
fail();
}
});
}
}

Loading…
Cancel
Save