@green-code-studio/objects-list 1.12.3 → 1.12.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.
- package/demoDist/demo.js +2 -2
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
- package/src/calendarView.js +6 -0
package/demoDist/demo.js
CHANGED
|
@@ -206,7 +206,7 @@ eval("\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElem
|
|
|
206
206
|
\**********************/
|
|
207
207
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
208
208
|
|
|
209
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _src_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../src/index.js */ \"./src/index.js\");\n/* harmony import */ var _src_style_objectsList_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../src/style/objectsList.scss */ \"./src/style/objectsList.scss\");\n\r\n\r\n\r\nconsole.log('aa');\r\nconst dataSource={\r\n async get(options){\r\n console.log('aaaaaa')\r\n await new Promise(resolve=>setTimeout(resolve, 1000))\r\n return {\r\n rows:[\r\n {id:1, start:'2026-09-01 12:00:00', end:'2026-09-01 14:00:00', name:'John'},\r\n {id:2, start:'2026-09-01 15:00:00', end:'2026-09-01 16:00:00', name:'Jane'},\r\n {id:3, start:'2026-09-01 19:00:00', end:'2026-09-01 22:00:00', name:'Bob'},\r\n {id:4, start:'2026-09-02 12:00:00', end:'2026-09-02 14:00:00', name:'Alice'},\r\n {id:5, start:'2026-09-02 15:00:00', end:'2026-09-02 16:00:00', name:'Charlie'},\r\n\r\n ],\r\n total:3000\r\n }\r\n }\r\n}\r\nconst objectList=new _src_index_js__WEBPACK_IMPORTED_MODULE_0__.ObjectsList(dataSource)\r\nobjectList.paramsInUrl=false;\r\nobjectList.paramsInLocalStorage=document.location;\r\nobjectList.columns=[\r\n {dataName:'id', name:'ID', sortName:'id'},\r\n {dataName:'name', name:'Name'},\r\n {dataName:'start', name:'Start', sortName: 'start'},\r\n {dataName:'end', name:'End', sortName: 'end'},\r\n]\r\nobjectList.generateActions=()=>[\r\n {title:'zz', href:'https://google.com'},\r\n {title:'aaa', href:'https://bing.com', main: true,},\r\n]\r\nobjectList.dateRowCallback=(row)=>new Date(row.start)\r\nobjectList.calendarRowCallback=(row)=>{\r\n const element = document.createElement('div');\r\n element.textContent = row.name;\r\n return element;\r\n}\r\nobjectList.style.height='500px';\r\nobjectList.generateExports=()=>[\r\n {name:'pdf', action:()=>{console.log('export pdf')}},\r\n {name:'csv', action:()=>{console.log('export csv')}},\r\n]\r\nobjectList.calendarDayActions=(day)=>[\r\n {title:'zz', href:'https://google.com'},\r\n {title:'aaa', href:'https://bing.com/'+day, main: true,},\r\n]\r\ndocument.body.appendChild(objectList);\r\nobjectList.readUrl()\r\nobjectList.refresh();\r\n\r\n\n\n//# sourceURL=webpack://@green-code-studio/objects-list/./demo/demo.js?");
|
|
209
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _src_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../src/index.js */ \"./src/index.js\");\n/* harmony import */ var _src_style_objectsList_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../src/style/objectsList.scss */ \"./src/style/objectsList.scss\");\n\r\n\r\n\r\nconsole.log('aa');\r\nconst dataSource={\r\n async get(options){\r\n console.log('aaaaaa')\r\n await new Promise(resolve=>setTimeout(resolve, 1000))\r\n return {\r\n rows:[\r\n {id:1, start:'2026-09-01 12:00:00', end:'2026-09-01 14:00:00', name:'John'},\r\n {id:2, start:'2026-09-01 15:00:00', end:'2026-09-01 16:00:00', name:'Jane'},\r\n {id:3, start:'2026-09-01 19:00:00', end:'2026-09-01 22:00:00', name:'Bob'},\r\n {id:4, start:'2026-09-02 12:00:00', end:'2026-09-02 14:00:00', name:'Alice'},\r\n {id:5, start:'2026-09-02 15:00:00', end:'2026-09-02 16:00:00', name:'Charlie'},\r\n\r\n ],\r\n total:3000\r\n }\r\n }\r\n}\r\nconst objectList=new _src_index_js__WEBPACK_IMPORTED_MODULE_0__.ObjectsList(dataSource)\r\nobjectList.paramsInUrl=false;\r\nobjectList.paramsInLocalStorage=document.location;\r\nobjectList.columns=[\r\n {dataName:'id', name:'ID', sortName:'id'},\r\n {dataName:'name', name:'Name'},\r\n {dataName:'start', name:'Start', sortName: 'start'},\r\n {dataName:'end', name:'End', sortName: 'end'},\r\n]\r\nobjectList.generateActions=()=>[\r\n {title:'zz', href:'https://google.com'},\r\n {title:'aaa', href:'https://bing.com', main: true,},\r\n]\r\nobjectList.dateRowCallback=(row)=>new Date(row.start)\r\nobjectList.calendarRowCallback=(row)=>{\r\n const element = document.createElement('div');\r\n element.textContent = row.name;\r\n return element;\r\n}\r\nobjectList.style.height='500px';\r\nobjectList.generateExports=()=>[\r\n {name:'pdf', action:()=>{console.log('export pdf')}},\r\n {name:'csv', action:()=>{console.log('export csv')}},\r\n]\r\nobjectList.calendarDayActions=(day)=>[\r\n {title:'zz', href:'https://google.com'},\r\n {title:'aaa', href:'https://bing.com/'+day, main: true,},\r\n]\r\ndocument.body.appendChild(objectList);\r\nobjectList.paramsInUrl=true;\r\nobjectList.readUrl()\r\nobjectList.refresh();\r\n\r\n\n\n//# sourceURL=webpack://@green-code-studio/objects-list/./demo/demo.js?");
|
|
210
210
|
|
|
211
211
|
/***/ }),
|
|
212
212
|
|
|
@@ -256,7 +256,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
256
256
|
\*****************************/
|
|
257
257
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
258
258
|
|
|
259
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CalendarView: () => (/* binding */ CalendarView)\n/* harmony export */ });\n/* harmony import */ var _abstractView_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abstractView.js */ \"./src/abstractView.js\");\n/* harmony import */ var fast_creator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! fast-creator */ \"./node_modules/fast-creator/dist/entry.js\");\n/* harmony import */ var _listView_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./listView.js */ \"./src/listView.js\");\n\r\n\r\n\r\n\r\nclass CalendarView extends _abstractView_js__WEBPACK_IMPORTED_MODULE_0__.AbstractView {\r\n constructor(objectsList) {\r\n super();\r\n this.objectsList = objectsList;\r\n this.init();\r\n window.dbgList = this;\r\n }\r\n\r\n init() {\r\n this.body = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.body.monthCalendarBody')\r\n const bodyContainer = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.bodyContainer')\r\n bodyContainer.append(this.body)\r\n this.append(bodyContainer)\r\n this.addEventListener('scroll', this.onScroll.bind(this));\r\n }\r\n\r\n calcMaxVisibleItems(height) {\r\n return Number.POSITIVE_INFINITY\r\n }\r\n\r\n loadData(data) {\r\n while (this.body.firstChild) {\r\n this.body.removeChild(this.body.firstChild);\r\n }\r\n console.log('data', data)\r\n let startDay = new Date()\r\n if (this.objectsList.date) {\r\n startDay = new Date(this.objectsList.date)\r\n }\r\n startDay.setDate(1);\r\n const logicalStartDate = new Date(startDay);\r\n\r\n startDay.setDate(startDay.getDate() - startDay.getDay() + 1);\r\n for (let i = 0; i < 7 * 6; i++) {\r\n const day = new Date(startDay);\r\n day.setDate(startDay.getDate() + i);\r\n const dayElement = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.day', {\r\n data: {date: day.toISOString().substring(0, 10)},\r\n text: day.toISOString().substring(0, 10)\r\n })\r\n dayElement.classList.toggle('outsideRange', day.getMonth() != logicalStartDate.getMonth());\r\n this.body.append(dayElement)\r\n for (let item of data.rows.filter(r => this.objectsList.dateRowCallback(r).toISOString().substring(0, 10) == day.toISOString().substring(0, 10))) {\r\n const itemElement = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.item')\r\n itemElement.append(this.objectsList.calendarRowCallback(item))\r\n dayElement.append(itemElement)\r\n itemElement.dataset.row = item.id;\r\n itemElement.oncontextmenu = this.contextMenu.bind(this, itemElement);\r\n itemElement.onclick = this.trOnClick.bind(this, item);\r\n itemElement.ondblclick = this.trOnDblClick.bind(this, item, itemElement);\r\n itemElement.onkeydown = this.trOnKeyDown.bind(this, item, itemElement);\r\n itemElement.ondragstart = this.trOnDragStart.bind(this, item, itemElement);\r\n }\r\n if (this.objectsList.calendarDayActions) {\r\n const calendarDayActionsWrapper= (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.calendarDayActionsWrapper');\r\n dayElement.append(calendarDayActionsWrapper);\r\n let dayActions = this.objectsList.calendarDayActions(day);\r\n for (let action of dayActions) {\r\n let actionButton = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)(action.href ? 'a.button' : 'button', {\r\n title: action.name\r\n });\r\n calendarDayActionsWrapper.append((0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)(actionButton));\r\n actionButton.classList.add('action-' + (action.action ?? 'view'));\r\n\r\n if (action.href) {\r\n actionButton.href = action.href;\r\n }\r\n if (action.command) {\r\n actionButton.onclick = action.command;\r\n }\r\n if (action.icon) {\r\n actionButton.append((0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('span', {classList: [action.icon]}));\r\n } else {\r\n actionButton.textContent = action.name;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\ncustomElements.define('calendar-view', CalendarView);\r\n\n\n//# sourceURL=webpack://@green-code-studio/objects-list/./src/calendarView.js?");
|
|
259
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CalendarView: () => (/* binding */ CalendarView)\n/* harmony export */ });\n/* harmony import */ var _abstractView_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abstractView.js */ \"./src/abstractView.js\");\n/* harmony import */ var fast_creator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! fast-creator */ \"./node_modules/fast-creator/dist/entry.js\");\n/* harmony import */ var _listView_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./listView.js */ \"./src/listView.js\");\n\r\n\r\n\r\n\r\nclass CalendarView extends _abstractView_js__WEBPACK_IMPORTED_MODULE_0__.AbstractView {\r\n constructor(objectsList) {\r\n super();\r\n this.objectsList = objectsList;\r\n this.init();\r\n window.dbgList = this;\r\n }\r\n\r\n init() {\r\n this.body = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.body.monthCalendarBody')\r\n const bodyContainer = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.bodyContainer')\r\n bodyContainer.append(this.body)\r\n this.append(bodyContainer)\r\n this.addEventListener('scroll', this.onScroll.bind(this));\r\n }\r\n\r\n calcMaxVisibleItems(height) {\r\n return Number.POSITIVE_INFINITY\r\n }\r\n\r\n loadData(data) {\r\n while (this.body.firstChild) {\r\n this.body.removeChild(this.body.firstChild);\r\n }\r\n console.log('data', data)\r\n let startDay = new Date()\r\n if (this.objectsList.date) {\r\n startDay = new Date(this.objectsList.date)\r\n }\r\n startDay.setDate(1);\r\n const logicalStartDate = new Date(startDay);\r\n\r\n startDay.setDate(startDay.getDate() - startDay.getDay() + 1);\r\n for (let i = 0; i < 7 * 6; i++) {\r\n const day = new Date(startDay);\r\n day.setDate(startDay.getDate() + i);\r\n const dayElement = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.day', {\r\n data: {date: day.toISOString().substring(0, 10)},\r\n text: day.toISOString().substring(0, 10)\r\n })\r\n dayElement.classList.toggle('outsideRange', day.getMonth() != logicalStartDate.getMonth());\r\n this.body.append(dayElement)\r\n for (let item of data.rows.filter(r => this.objectsList.dateRowCallback(r).toISOString().substring(0, 10) == day.toISOString().substring(0, 10))) {\r\n const itemElement = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.item')\r\n if(this.objectsList.colorRowCallback) {\r\n const color = this.objectsList.colorRowCallback(item);\r\n if(color) {\r\n itemElement.style.setProperty('--main', color);\r\n }\r\n }\r\n itemElement.append(this.objectsList.calendarRowCallback(item))\r\n dayElement.append(itemElement)\r\n itemElement.dataset.row = item.id;\r\n itemElement.oncontextmenu = this.contextMenu.bind(this, itemElement);\r\n itemElement.onclick = this.trOnClick.bind(this, item);\r\n itemElement.ondblclick = this.trOnDblClick.bind(this, item, itemElement);\r\n itemElement.onkeydown = this.trOnKeyDown.bind(this, item, itemElement);\r\n itemElement.ondragstart = this.trOnDragStart.bind(this, item, itemElement);\r\n }\r\n if (this.objectsList.calendarDayActions) {\r\n const calendarDayActionsWrapper= (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.calendarDayActionsWrapper');\r\n dayElement.append(calendarDayActionsWrapper);\r\n let dayActions = this.objectsList.calendarDayActions(day);\r\n for (let action of dayActions) {\r\n let actionButton = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)(action.href ? 'a.button' : 'button', {\r\n title: action.name\r\n });\r\n calendarDayActionsWrapper.append((0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)(actionButton));\r\n actionButton.classList.add('action-' + (action.action ?? 'view'));\r\n\r\n if (action.href) {\r\n actionButton.href = action.href;\r\n }\r\n if (action.command) {\r\n actionButton.onclick = action.command;\r\n }\r\n if (action.icon) {\r\n actionButton.append((0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('span', {classList: [action.icon]}));\r\n } else {\r\n actionButton.textContent = action.name;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\ncustomElements.define('calendar-view', CalendarView);\r\n\n\n//# sourceURL=webpack://@green-code-studio/objects-list/./src/calendarView.js?");
|
|
260
260
|
|
|
261
261
|
/***/ }),
|
|
262
262
|
|
package/dist/index.mjs
CHANGED
|
@@ -144,7 +144,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
|
|
|
144
144
|
\*****************************/
|
|
145
145
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
146
146
|
|
|
147
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CalendarView: () => (/* binding */ CalendarView)\n/* harmony export */ });\n/* harmony import */ var _abstractView_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abstractView.js */ \"./src/abstractView.js\");\n/* harmony import */ var fast_creator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! fast-creator */ \"./node_modules/fast-creator/dist/entry.js\");\n/* harmony import */ var _listView_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./listView.js */ \"./src/listView.js\");\n\r\n\r\n\r\n\r\nclass CalendarView extends _abstractView_js__WEBPACK_IMPORTED_MODULE_0__.AbstractView {\r\n constructor(objectsList) {\r\n super();\r\n this.objectsList = objectsList;\r\n this.init();\r\n window.dbgList = this;\r\n }\r\n\r\n init() {\r\n this.body = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.body.monthCalendarBody')\r\n const bodyContainer = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.bodyContainer')\r\n bodyContainer.append(this.body)\r\n this.append(bodyContainer)\r\n this.addEventListener('scroll', this.onScroll.bind(this));\r\n }\r\n\r\n calcMaxVisibleItems(height) {\r\n return Number.POSITIVE_INFINITY\r\n }\r\n\r\n loadData(data) {\r\n while (this.body.firstChild) {\r\n this.body.removeChild(this.body.firstChild);\r\n }\r\n console.log('data', data)\r\n let startDay = new Date()\r\n if (this.objectsList.date) {\r\n startDay = new Date(this.objectsList.date)\r\n }\r\n startDay.setDate(1);\r\n const logicalStartDate = new Date(startDay);\r\n\r\n startDay.setDate(startDay.getDate() - startDay.getDay() + 1);\r\n for (let i = 0; i < 7 * 6; i++) {\r\n const day = new Date(startDay);\r\n day.setDate(startDay.getDate() + i);\r\n const dayElement = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.day', {\r\n data: {date: day.toISOString().substring(0, 10)},\r\n text: day.toISOString().substring(0, 10)\r\n })\r\n dayElement.classList.toggle('outsideRange', day.getMonth() != logicalStartDate.getMonth());\r\n this.body.append(dayElement)\r\n for (let item of data.rows.filter(r => this.objectsList.dateRowCallback(r).toISOString().substring(0, 10) == day.toISOString().substring(0, 10))) {\r\n const itemElement = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.item')\r\n itemElement.append(this.objectsList.calendarRowCallback(item))\r\n dayElement.append(itemElement)\r\n itemElement.dataset.row = item.id;\r\n itemElement.oncontextmenu = this.contextMenu.bind(this, itemElement);\r\n itemElement.onclick = this.trOnClick.bind(this, item);\r\n itemElement.ondblclick = this.trOnDblClick.bind(this, item, itemElement);\r\n itemElement.onkeydown = this.trOnKeyDown.bind(this, item, itemElement);\r\n itemElement.ondragstart = this.trOnDragStart.bind(this, item, itemElement);\r\n }\r\n if (this.objectsList.calendarDayActions) {\r\n const calendarDayActionsWrapper= (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.calendarDayActionsWrapper');\r\n dayElement.append(calendarDayActionsWrapper);\r\n let dayActions = this.objectsList.calendarDayActions(day);\r\n for (let action of dayActions) {\r\n let actionButton = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)(action.href ? 'a.button' : 'button', {\r\n title: action.name\r\n });\r\n calendarDayActionsWrapper.append((0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)(actionButton));\r\n actionButton.classList.add('action-' + (action.action ?? 'view'));\r\n\r\n if (action.href) {\r\n actionButton.href = action.href;\r\n }\r\n if (action.command) {\r\n actionButton.onclick = action.command;\r\n }\r\n if (action.icon) {\r\n actionButton.append((0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('span', {classList: [action.icon]}));\r\n } else {\r\n actionButton.textContent = action.name;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\ncustomElements.define('calendar-view', CalendarView);\r\n\n\n//# sourceURL=webpack://@green-code-studio/objects-list/./src/calendarView.js?");
|
|
147
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CalendarView: () => (/* binding */ CalendarView)\n/* harmony export */ });\n/* harmony import */ var _abstractView_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abstractView.js */ \"./src/abstractView.js\");\n/* harmony import */ var fast_creator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! fast-creator */ \"./node_modules/fast-creator/dist/entry.js\");\n/* harmony import */ var _listView_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./listView.js */ \"./src/listView.js\");\n\r\n\r\n\r\n\r\nclass CalendarView extends _abstractView_js__WEBPACK_IMPORTED_MODULE_0__.AbstractView {\r\n constructor(objectsList) {\r\n super();\r\n this.objectsList = objectsList;\r\n this.init();\r\n window.dbgList = this;\r\n }\r\n\r\n init() {\r\n this.body = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.body.monthCalendarBody')\r\n const bodyContainer = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.bodyContainer')\r\n bodyContainer.append(this.body)\r\n this.append(bodyContainer)\r\n this.addEventListener('scroll', this.onScroll.bind(this));\r\n }\r\n\r\n calcMaxVisibleItems(height) {\r\n return Number.POSITIVE_INFINITY\r\n }\r\n\r\n loadData(data) {\r\n while (this.body.firstChild) {\r\n this.body.removeChild(this.body.firstChild);\r\n }\r\n console.log('data', data)\r\n let startDay = new Date()\r\n if (this.objectsList.date) {\r\n startDay = new Date(this.objectsList.date)\r\n }\r\n startDay.setDate(1);\r\n const logicalStartDate = new Date(startDay);\r\n\r\n startDay.setDate(startDay.getDate() - startDay.getDay() + 1);\r\n for (let i = 0; i < 7 * 6; i++) {\r\n const day = new Date(startDay);\r\n day.setDate(startDay.getDate() + i);\r\n const dayElement = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.day', {\r\n data: {date: day.toISOString().substring(0, 10)},\r\n text: day.toISOString().substring(0, 10)\r\n })\r\n dayElement.classList.toggle('outsideRange', day.getMonth() != logicalStartDate.getMonth());\r\n this.body.append(dayElement)\r\n for (let item of data.rows.filter(r => this.objectsList.dateRowCallback(r).toISOString().substring(0, 10) == day.toISOString().substring(0, 10))) {\r\n const itemElement = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.item')\r\n if(this.objectsList.colorRowCallback) {\r\n const color = this.objectsList.colorRowCallback(item);\r\n if(color) {\r\n itemElement.style.setProperty('--main', color);\r\n }\r\n }\r\n itemElement.append(this.objectsList.calendarRowCallback(item))\r\n dayElement.append(itemElement)\r\n itemElement.dataset.row = item.id;\r\n itemElement.oncontextmenu = this.contextMenu.bind(this, itemElement);\r\n itemElement.onclick = this.trOnClick.bind(this, item);\r\n itemElement.ondblclick = this.trOnDblClick.bind(this, item, itemElement);\r\n itemElement.onkeydown = this.trOnKeyDown.bind(this, item, itemElement);\r\n itemElement.ondragstart = this.trOnDragStart.bind(this, item, itemElement);\r\n }\r\n if (this.objectsList.calendarDayActions) {\r\n const calendarDayActionsWrapper= (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('.calendarDayActionsWrapper');\r\n dayElement.append(calendarDayActionsWrapper);\r\n let dayActions = this.objectsList.calendarDayActions(day);\r\n for (let action of dayActions) {\r\n let actionButton = (0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)(action.href ? 'a.button' : 'button', {\r\n title: action.name\r\n });\r\n calendarDayActionsWrapper.append((0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)(actionButton));\r\n actionButton.classList.add('action-' + (action.action ?? 'view'));\r\n\r\n if (action.href) {\r\n actionButton.href = action.href;\r\n }\r\n if (action.command) {\r\n actionButton.onclick = action.command;\r\n }\r\n if (action.icon) {\r\n actionButton.append((0,fast_creator__WEBPACK_IMPORTED_MODULE_1__.create)('span', {classList: [action.icon]}));\r\n } else {\r\n actionButton.textContent = action.name;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\ncustomElements.define('calendar-view', CalendarView);\r\n\n\n//# sourceURL=webpack://@green-code-studio/objects-list/./src/calendarView.js?");
|
|
148
148
|
|
|
149
149
|
/***/ }),
|
|
150
150
|
|
package/package.json
CHANGED
package/src/calendarView.js
CHANGED
|
@@ -46,6 +46,12 @@ export class CalendarView extends AbstractView {
|
|
|
46
46
|
this.body.append(dayElement)
|
|
47
47
|
for (let item of data.rows.filter(r => this.objectsList.dateRowCallback(r).toISOString().substring(0, 10) == day.toISOString().substring(0, 10))) {
|
|
48
48
|
const itemElement = create('.item')
|
|
49
|
+
if(this.objectsList.colorRowCallback) {
|
|
50
|
+
const color = this.objectsList.colorRowCallback(item);
|
|
51
|
+
if(color) {
|
|
52
|
+
itemElement.style.setProperty('--main', color);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
49
55
|
itemElement.append(this.objectsList.calendarRowCallback(item))
|
|
50
56
|
dayElement.append(itemElement)
|
|
51
57
|
itemElement.dataset.row = item.id;
|