From cb6c5a06f40f7019eab7dc2ecf684403cd0c33f6 Mon Sep 17 00:00:00 2001 From: sgiehl Date: Fri, 19 Jun 2026 15:34:00 +0200 Subject: [PATCH 1/3] Rebuild Vue dist files with the Vite build for Matomo 6 --- vue/dist/LogViewer.umd.js | 1168 ++++++++++++++------------------- vue/dist/LogViewer.umd.min.js | 9 +- vue/dist/umd.metadata.json | 2 +- 3 files changed, 493 insertions(+), 686 deletions(-) diff --git a/vue/dist/LogViewer.umd.js b/vue/dist/LogViewer.umd.js index d975dc8..0c64318 100644 --- a/vue/dist/LogViewer.umd.js +++ b/vue/dist/LogViewer.umd.js @@ -1,695 +1,509 @@ -(function webpackUniversalModuleDefinition(root, factory) { - if(typeof exports === 'object' && typeof module === 'object') - module.exports = factory(require("CoreHome"), require("vue"), require("CorePluginsAdmin")); - else if(typeof define === 'function' && define.amd) - define(["CoreHome", , "CorePluginsAdmin"], factory); - else if(typeof exports === 'object') - exports["LogViewer"] = factory(require("CoreHome"), require("vue"), require("CorePluginsAdmin")); - else - root["LogViewer"] = factory(root["CoreHome"], root["Vue"], root["CorePluginsAdmin"]); -})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__19dc__, __WEBPACK_EXTERNAL_MODULE__8bbf__, __WEBPACK_EXTERNAL_MODULE_a5a2__) { -return /******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); -/******/ } -/******/ }; -/******/ -/******/ // define __esModule on exports -/******/ __webpack_require__.r = function(exports) { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ -/******/ // create a fake namespace object -/******/ // mode & 1: value is a module id, require it -/******/ // mode & 2: merge all properties of value into the ns -/******/ // mode & 4: return value when already ns object -/******/ // mode & 8|1: behave like require -/******/ __webpack_require__.t = function(value, mode) { -/******/ if(mode & 1) value = __webpack_require__(value); -/******/ if(mode & 8) return value; -/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; -/******/ var ns = Object.create(null); -/******/ __webpack_require__.r(ns); -/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); -/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); -/******/ return ns; -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = "plugins/LogViewer/vue/dist/"; -/******/ -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = "fae3"); -/******/ }) -/************************************************************************/ -/******/ ({ - -/***/ "19dc": -/***/ (function(module, exports) { - -module.exports = __WEBPACK_EXTERNAL_MODULE__19dc__; - -/***/ }), - -/***/ "8bbf": -/***/ (function(module, exports) { - -module.exports = __WEBPACK_EXTERNAL_MODULE__8bbf__; - -/***/ }), - -/***/ "a5a2": -/***/ (function(module, exports) { - -module.exports = __WEBPACK_EXTERNAL_MODULE_a5a2__; - -/***/ }), - -/***/ "fae3": -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -// ESM COMPAT FLAG -__webpack_require__.r(__webpack_exports__); - -// EXPORTS -__webpack_require__.d(__webpack_exports__, "LogViewer", function() { return /* reexport */ LogViewer; }); - -// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js -// This file is imported into lib/wc client bundles. - -if (typeof window !== 'undefined') { - var currentScript = window.document.currentScript - if (false) { var getCurrentScript; } - - var src = currentScript && currentScript.src.match(/(.+\/)[^/]+\.js(\?.*)?$/) - if (src) { - __webpack_require__.p = src[1] // eslint-disable-line - } -} - -// Indicate to webpack that this file can be concatenated -/* harmony default export */ var setPublicPath = (null); - -// EXTERNAL MODULE: external {"commonjs":"vue","commonjs2":"vue","root":"Vue"} -var external_commonjs_vue_commonjs2_vue_root_Vue_ = __webpack_require__("8bbf"); - -// CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-babel/node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/templateLoader.js??ref--6!./node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--0-1!./plugins/LogViewer/vue/src/LogViewer/LogViewer.vue?vue&type=template&id=f03f9e24 - -var _hoisted_1 = { - class: "logViewer" -}; -var _hoisted_2 = { - class: "row" -}; -var _hoisted_3 = { - class: "logWriters col s4 m3 l2" -}; -var _hoisted_4 = { - class: "severities col s4 m3 l2" -}; -var _hoisted_5 = { - class: "col s12 m12 l8" -}; -var _hoisted_6 = ["title", "placeholder"]; -var _hoisted_7 = ["title"]; -var _hoisted_8 = { - class: "useRegExp", - style: { - "margin-right": "3.5px" - } -}; -var _hoisted_9 = ["action"]; -var _hoisted_10 = ["value"]; - -var _hoisted_11 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("input", { - type: "hidden", - name: "force_api_session", - value: "1", - style: { - "margin-right": "3.5px" - } -}, null, -1); - -var _hoisted_12 = ["title"]; -var _hoisted_13 = ["title"]; - -var _hoisted_14 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("br", null, null, -1); - -var _hoisted_15 = { - class: "severity" -}; -var _hoisted_16 = { - class: "tag" -}; -var _hoisted_17 = { - class: "date" -}; -var _hoisted_18 = { - class: "date" -}; -var _hoisted_19 = { - class: "message" -}; -var _hoisted_20 = ["title", "onClick"]; -var _hoisted_21 = ["title", "onClick"]; -var _hoisted_22 = ["title", "onClick"]; -var _hoisted_23 = ["title", "onClick"]; -var _hoisted_24 = { - class: "message" -}; -var _hoisted_25 = { - key: 0 -}; -var _hoisted_26 = { - colspan: "5" -}; -var _hoisted_27 = { - colspan: "5" -}; -var _hoisted_28 = { - class: "loadingPiwik" -}; - -var _hoisted_29 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("img", { - src: "plugins/Morpheus/images/loading-blue.gif" -}, null, -1); - -var _hoisted_30 = { - colspan: "5", - class: "paging" +(function(global, factory) { + typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("vue"), require("CoreHome"), require("CorePluginsAdmin")) : typeof define === "function" && define.amd ? define(["exports", "vue", "CoreHome", "CorePluginsAdmin"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global.LogViewer = {}, global.Vue, global.CoreHome, global.CorePluginsAdmin)); +})(this, (function(exports2, vue, CoreHome, CorePluginsAdmin) { + "use strict";var __defProp = Object.defineProperty; +var __defProps = Object.defineProperties; +var __getOwnPropDescs = Object.getOwnPropertyDescriptors; +var __getOwnPropSymbols = Object.getOwnPropertySymbols; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __propIsEnum = Object.prototype.propertyIsEnumerable; +var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues = (a, b) => { + for (var prop in b || (b = {})) + if (__hasOwnProp.call(b, prop)) + __defNormalProp(a, prop, b[prop]); + if (__getOwnPropSymbols) + for (var prop of __getOwnPropSymbols(b)) { + if (__propIsEnum.call(b, prop)) + __defNormalProp(a, prop, b[prop]); + } + return a; }; -function render(_ctx, _cache, $props, $setup, $data, $options) { - var _component_Field = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["resolveComponent"])("Field"); - - var _component_ContentBlock = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["resolveComponent"])("ContentBlock"); - - var _directive_content_table = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["resolveDirective"])("content-table"); - - return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("div", _hoisted_1, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_ContentBlock, { - "content-title": _ctx.translate('LogViewer_LogViewer') - }, { - default: Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withCtx"])(function () { - var _ctx$logs, _ctx$logs2; +var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); - return [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", _hoisted_2, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", _hoisted_3, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_Field, { - uicontrol: "select", - name: "logWriter", - "model-value": _ctx.selectedLogWriter, - "onUpdate:modelValue": _cache[0] || (_cache[0] = function ($event) { - _ctx.selectedLogWriter = $event; - - _ctx.update(); - }), - "full-width": true, - options: _ctx.logWriters - }, null, 8, ["model-value", "options"])]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", _hoisted_4, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_Field, { - uicontrol: "select", - name: "selectedSeverity", - "model-value": _ctx.selectedSeverity, - "onUpdate:modelValue": _cache[1] || (_cache[1] = function ($event) { - _ctx.selectedSeverity = $event; - - _ctx.update(); - }), - "full-width": true, - options: _ctx.severities - }, null, 8, ["model-value", "options"])]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", _hoisted_5, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withDirectives"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("input", { - type: "text", - class: "search", - onKeydown: _cache[2] || (_cache[2] = function ($event) { - return _ctx.onSearchKeydown($event); - }), - title: _ctx.translate('LogViewer_SearchHelp'), - "onUpdate:modelValue": _cache[3] || (_cache[3] = function ($event) { - return _ctx.query = $event; - }), - placeholder: _ctx.translate('LogViewer_SearchPattern'), - style: { - "margin-right": "3.5px" - } - }, null, 40, _hoisted_6), [[external_commonjs_vue_commonjs2_vue_root_Vue_["vModelText"], _ctx.query]]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("span", { - class: "icon-search searchIcon", - title: _ctx.translate('General_ClickToSearch'), - onClick: _cache[4] || (_cache[4] = function ($event) { - return _ctx.update(); - }) - }, null, 8, _hoisted_7), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", _hoisted_8, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_Field, { - uicontrol: "checkbox", - title: _ctx.translate('LogViewer_UseRegExp'), - modelValue: _ctx.useRegExp, - "onUpdate:modelValue": _cache[5] || (_cache[5] = function ($event) { - return _ctx.useRegExp = $event; - }) - }, null, 8, ["title", "modelValue"])]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("a", { - class: "icon-reload", - onClick: _cache[6] || (_cache[6] = function ($event) { - return _ctx.update(); - }), - style: { - "margin-right": "3.5px" - } - }), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("form", { - method: "POST", - id: "export", - ref: "export", - target: "_blank", - action: _ctx.exportFormAction - }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("input", { - type: "hidden", - name: "token_auth", - value: _ctx.tokenAuth - }, null, 8, _hoisted_10), _hoisted_11, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("a", { - class: "icon-export", - onClick: _cache[7] || (_cache[7] = function ($event) { - return _ctx.$refs.export.submit(); - }), - title: _ctx.translate('LogViewer_ExportThisSearch', 'TSV', 5000), - style: { - "margin-right": "3.5px" - } - }, null, 8, _hoisted_12)], 8, _hoisted_9), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("a", { - class: "icon-info", - target: "_blank", - href: "https://piwik.org/faq/troubleshooting/faq_115/", - rel: "noreferrer noopener", - title: _ctx.translate('LogViewer_CurrentLogConfigIs', _ctx.logConfigJson) - }, null, 8, _hoisted_13), _hoisted_14]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withDirectives"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("table", null, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("thead", null, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("tr", null, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("th", _hoisted_15, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('LogViewer_Severity')), 1), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("th", _hoisted_16, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('LogViewer_Tag')), 1), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("th", _hoisted_17, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('General_Date')), 1), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("th", _hoisted_18, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('LogViewer_RequestId')), 1), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("th", _hoisted_19, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('LogViewer_Message')), 1)])]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("tbody", null, [(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(true), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])(external_commonjs_vue_commonjs2_vue_root_Vue_["Fragment"], null, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderList"])(_ctx.logsWithMessage, function (log, index) { - return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("tr", { - key: index - }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("td", { - class: Object(external_commonjs_vue_commonjs2_vue_root_Vue_["normalizeClass"])(["severity", { - selectable: log.severity - }]), - title: log.severity ? _ctx.translate('LogViewer_ClickToSearchForThis') : '', - onClick: function onClick($event) { - return _ctx.searchSeverity(log.severity); - } - }, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(log.severity || '-'), 11, _hoisted_20), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("td", { - class: Object(external_commonjs_vue_commonjs2_vue_root_Vue_["normalizeClass"])(["tag", { - selectable: log.tag - }]), - title: log.tag ? _ctx.translate('LogViewer_ClickToSearchForThis') : '', - onClick: function onClick($event) { - return _ctx.searchText(log.tag); - } - }, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(log.tag || '-'), 11, _hoisted_21), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("td", { - class: Object(external_commonjs_vue_commonjs2_vue_root_Vue_["normalizeClass"])(["date", { - selectable: log.datetime - }]), - title: log.datetime ? _ctx.translate('LogViewer_ClickToSearchForThis') : '', - onClick: function onClick($event) { - return _ctx.searchDate(log.datetime); + const _sfc_main = vue.defineComponent({ + props: { + limit: { + type: Number, + required: true + } + }, + components: { + ContentBlock: CoreHome.ContentBlock, + Field: CorePluginsAdmin.Field + }, + directives: { + ContentTable: CoreHome.ContentTable + }, + data() { + return { + page: 0, + query: "", + isLoading: true, + logWriters: [], + selectedLogWriter: "", + useRegExp: false, + severities: [ + { + key: "", + value: CoreHome.translate("LogViewer_AnySeverity") + }, + { + key: "DEBUG", + value: "DEBUG" + }, + { + key: "INFO", + value: "INFO" + }, + { + key: "NOTICE", + value: "NOTICE" + }, + { + key: "WARNING", + value: "WARNING" + }, + { + key: "ERROR", + value: "ERROR" + }, + { + key: "CRITICAL", + value: "CRITICAL" + }, + { + key: "ALERT", + value: "ALERT" + }, + { + key: "EMERGENCY", + value: "EMERGENCY" } - }, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(log.datetime || '-'), 11, _hoisted_22), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("td", { - class: Object(external_commonjs_vue_commonjs2_vue_root_Vue_["normalizeClass"])(["requestId", { - selectable: log.requestId - }]), - title: log.requestId ? _ctx.translate('LogViewer_ClickToSearchForThis') : '', - onClick: function onClick($event) { - return _ctx.searchRequestId(log.requestId); + ], + selectedSeverity: "", + logs: void 0, + logConfig: void 0 + }; + }, + setup() { + let fetchLogEntriesAbort = null; + const getLogEntries = (params) => { + if (fetchLogEntriesAbort) { + fetchLogEntriesAbort.abort(); + fetchLogEntriesAbort = null; + } + fetchLogEntriesAbort = new AbortController(); + return CoreHome.AjaxHelper.fetch( + __spreadProps(__spreadValues({}, params), { + method: "LogViewer.getLogEntries" + }), + { + abortController: fetchLogEntriesAbort, + createErrorNotification: false } - }, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(log.requestId || '-'), 11, _hoisted_23), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("td", _hoisted_24, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(log.message), 1)]); - }), 128)), !_ctx.isLoading && ((_ctx$logs = _ctx.logs) === null || _ctx$logs === void 0 ? void 0 : _ctx$logs.length) === 0 ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("tr", _hoisted_25, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("td", _hoisted_26, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('General_SearchNoResults')), 1)])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withDirectives"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("tr", null, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("td", _hoisted_27, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("span", _hoisted_28, [_hoisted_29, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('General_Loading')), 1)])])], 512), [[external_commonjs_vue_commonjs2_vue_root_Vue_["vShow"], _ctx.isLoading]]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("tr", null, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("td", _hoisted_30, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withDirectives"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("span", { - id: "prev", - class: "previous", - onClick: _cache[9] || (_cache[9] = function ($event) { - return _ctx.previousPage(); - }) - }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("a", { - class: "btn", - onClick: _cache[8] || (_cache[8] = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withModifiers"])(function () {}, ["prevent"])) - }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("span", null, "« " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('General_Previous')), 1)])], 512), [[external_commonjs_vue_commonjs2_vue_root_Vue_["vShow"], !(_ctx.page < 1)]]), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withDirectives"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("span", { - id: "next", - class: "next pointer", - onClick: _cache[11] || (_cache[11] = function ($event) { - return _ctx.nextPage(); - }) - }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("a", { - class: "btn", - onClick: _cache[10] || (_cache[10] = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withModifiers"])(function () {}, ["prevent"])) - }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("span", null, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.translate('General_Next')) + " »", 1)])], 512), [[external_commonjs_vue_commonjs2_vue_root_Vue_["vShow"], !(((_ctx$logs2 = _ctx.logs) === null || _ctx$logs2 === void 0 ? void 0 : _ctx$logs2.length) < 1)]])])])])], 512), [[_directive_content_table]])])]; - }), - _: 1 - }, 8, ["content-title"])]); -} -// CONCATENATED MODULE: ./plugins/LogViewer/vue/src/LogViewer/LogViewer.vue?vue&type=template&id=f03f9e24 - -// EXTERNAL MODULE: external "CoreHome" -var external_CoreHome_ = __webpack_require__("19dc"); - -// EXTERNAL MODULE: external "CorePluginsAdmin" -var external_CorePluginsAdmin_ = __webpack_require__("a5a2"); - -// CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-typescript/node_modules/cache-loader/dist/cjs.js??ref--14-0!./node_modules/babel-loader/lib!./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader??ref--14-2!./node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--0-1!./plugins/LogViewer/vue/src/LogViewer/LogViewer.vue?vue&type=script&lang=ts -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 _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } - -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } - -function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } - -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } - - - - -/* harmony default export */ var LogViewervue_type_script_lang_ts = (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["defineComponent"])({ - props: { - limit: { - type: Number, - required: true - } - }, - components: { - ContentBlock: external_CoreHome_["ContentBlock"], - Field: external_CorePluginsAdmin_["Field"] - }, - directives: { - ContentTable: external_CoreHome_["ContentTable"] - }, - data: function data() { - return { - page: 0, - query: '', - isLoading: true, - logWriters: [], - selectedLogWriter: '', - useRegExp: false, - severities: [{ - key: '', - value: Object(external_CoreHome_["translate"])('LogViewer_AnySeverity') - }, { - key: 'DEBUG', - value: 'DEBUG' - }, { - key: 'INFO', - value: 'INFO' - }, { - key: 'NOTICE', - value: 'NOTICE' - }, { - key: 'WARNING', - value: 'WARNING' - }, { - key: 'ERROR', - value: 'ERROR' - }, { - key: 'CRITICAL', - value: 'CRITICAL' - }, { - key: 'ALERT', - value: 'ALERT' - }, { - key: 'EMERGENCY', - value: 'EMERGENCY' - }], - selectedSeverity: '', - logs: undefined, - logConfig: undefined - }; - }, - setup: function setup() { - var fetchLogEntriesAbort = null; - - var getLogEntries = function getLogEntries(params) { - if (fetchLogEntriesAbort) { - fetchLogEntriesAbort.abort(); - fetchLogEntriesAbort = null; - } - - fetchLogEntriesAbort = new AbortController(); - return external_CoreHome_["AjaxHelper"].fetch(Object.assign(Object.assign({}, params), {}, { - method: 'LogViewer.getLogEntries' - }), { - abortController: fetchLogEntriesAbort, - createErrorNotification: false - }).finally(function () { - fetchLogEntriesAbort = null; - }); - }; - - return { - getLogEntries: getLogEntries - }; - }, - created: function created() { - var _this = this; - - external_CoreHome_["AjaxHelper"].fetch({ - method: 'LogViewer.getAvailableLogReaders' - }).then(function (logWriters) { - if (Array.isArray(logWriters)) { - _this.logWriters = logWriters.map(function (logWriter) { - return { + ).finally(() => { + fetchLogEntriesAbort = null; + }); + }; + return { + getLogEntries + }; + }, + created() { + CoreHome.AjaxHelper.fetch({ + method: "LogViewer.getAvailableLogReaders" + }).then((logWriters) => { + if (Array.isArray(logWriters)) { + this.logWriters = logWriters.map((logWriter) => ({ key: logWriter, value: logWriter - }; - }); - } - }).then(function () { - return external_CoreHome_["AjaxHelper"].fetch({ - method: 'LogViewer.getConfiguredLogReaders' - }); - }).then(function (logWriters) { - if (logWriters !== null && logWriters !== void 0 && logWriters[0]) { - var _logWriters = _slicedToArray(logWriters, 1); - - _this.selectedLogWriter = _logWriters[0]; - } else { - var _this$logWriters; - - var title = Object(external_CoreHome_["translate"])('LogViewer_NoSupportedLogWriterConfiguredTitle'); - var message = Object(external_CoreHome_["translate"])('LogViewer_NoSupportedLogWriterConfiguredMessage', ['', '', _this.logWriters.map(function (item) { - return item.value; - }).join(', ')]); - external_CoreHome_["NotificationsStore"].show({ - message: message, - title: title, - context: 'info', - noclear: true, - type: 'transient' - }); - - if ((_this$logWriters = _this.logWriters) !== null && _this$logWriters !== void 0 && _this$logWriters[0]) { - _this.selectedLogWriter = _this.logWriters[0].value; + })); + } + }).then( + () => CoreHome.AjaxHelper.fetch({ method: "LogViewer.getConfiguredLogReaders" }) + ).then((logWriters) => { + var _a; + if (logWriters == null ? void 0 : logWriters[0]) { + [this.selectedLogWriter] = logWriters; + } else { + const title = CoreHome.translate("LogViewer_NoSupportedLogWriterConfiguredTitle"); + const message = CoreHome.translate("LogViewer_NoSupportedLogWriterConfiguredMessage", [ + '', + "", + this.logWriters.map((item) => item.value).join(", ") + ]); + CoreHome.NotificationsStore.show({ + message, + title, + context: "info", + noclear: true, + type: "transient" + }); + if ((_a = this.logWriters) == null ? void 0 : _a[0]) { + this.selectedLogWriter = this.logWriters[0].value; + } + } + if (this.selectedLogWriter) { + this.update(); + } else { + this.isLoading = false; } - } - - if (_this.selectedLogWriter) { - _this.update(); - } else { - _this.isLoading = false; - } - }); - external_CoreHome_["AjaxHelper"].fetch({ - method: 'LogViewer.getLogConfig', - filter_limit: '-1' - }).then(function (config) { - _this.logConfig = config; - }); - }, - methods: { - update: function update() { - var _this2 = this; - - this.isLoading = true; - this.logs = []; - this.getLogEntries({ - query: this.buildQuery, - limitPerPage: this.limit, - source: this.selectedLogWriter, - page: this.page - }).catch(function (error) { - external_CoreHome_["NotificationsStore"].show({ - message: error.message || error, - context: 'error', - type: 'transient' - }); - return []; - }).then(function (logs) { - _this2.logs = logs; - }).finally(function () { - _this2.isLoading = false; + }); + CoreHome.AjaxHelper.fetch({ + method: "LogViewer.getLogConfig", + filter_limit: "-1" + }).then((config) => { + this.logConfig = config; }); }, - searchSeverity: function searchSeverity(severity) { - if (!severity) { - return; - } - - this.selectedSeverity = severity.toUpperCase(); - this.update(); - }, - searchDate: function searchDate(datetime) { - if (!datetime) { - return; - } - - this.selectedSeverity = ''; - this.query = "\\[".concat(datetime.substr(0, 10), ".{9}\\]"); - this.useRegExp = true; - this.update(); - }, - searchRequestId: function searchRequestId(requestId) { - if (!requestId) { - return; - } - - this.searchText("[".concat(requestId, "]")); - }, - searchText: function searchText(text) { - if (!text) { - return; - } - - this.selectedSeverity = ''; - this.query = text; - - if (this.useRegExp) { - this.query = window.preg_quote(this.query); - } - - this.update(); - }, - previousPage: function previousPage() { - if (this.page > 0) { - this.page -= 1; + methods: { + update() { + this.isLoading = true; + this.logs = []; + this.getLogEntries({ + query: this.buildQuery, + limitPerPage: this.limit, + source: this.selectedLogWriter, + page: this.page + }).catch((error) => { + CoreHome.NotificationsStore.show({ + message: error.message || error, + context: "error", + type: "transient" + }); + return []; + }).then((logs) => { + this.logs = logs; + }).finally(() => { + this.isLoading = false; + }); + }, + searchSeverity(severity) { + if (!severity) { + return; + } + this.selectedSeverity = severity.toUpperCase(); this.update(); - } - }, - nextPage: function nextPage() { - var _this$logs; - - if ((_this$logs = this.logs) !== null && _this$logs !== void 0 && _this$logs.length) { - this.page += 1; + }, + searchDate(datetime) { + if (!datetime) { + return; + } + this.selectedSeverity = ""; + this.query = `\\[${datetime.substr(0, 10)}.{9}\\]`; + this.useRegExp = true; + this.update(); + }, + searchRequestId(requestId) { + if (!requestId) { + return; + } + this.searchText(`[${requestId}]`); + }, + searchText(text) { + if (!text) { + return; + } + this.selectedSeverity = ""; + this.query = text; + if (this.useRegExp) { + this.query = window.preg_quote(this.query); + } + this.update(); + }, + previousPage() { + if (this.page > 0) { + this.page -= 1; + this.update(); + } + }, + nextPage() { + var _a; + if ((_a = this.logs) == null ? void 0 : _a.length) { + this.page += 1; + this.update(); + } + }, + onSearchKeydown(event) { + if (event.code !== "Enter") { + return; + } this.update(); } }, - onSearchKeydown: function onSearchKeydown(event) { - if (event.code !== 'Enter') { - return; + computed: { + buildQuery() { + let { query } = this; + if (!this.useRegExp) { + query = window.preg_quote(this.query); + } + if (this.selectedSeverity) { + query = `^${this.selectedSeverity}(.*)${query}`; + } + return query; + }, + exportFormAction() { + return `?${CoreHome.MatomoUrl.stringify({ + module: "API", + method: "LogViewer.getLogEntries", + query: this.buildQuery, + format: "TSV", + page: 0, + limitPerPage: 5e3 + })}`; + }, + logConfigJson() { + return JSON.stringify(this.logConfig || {}); + }, + tokenAuth() { + return CoreHome.Matomo.token_auth; + }, + logsWithMessage() { + return (this.logs || []).filter((l) => l.message); } - - this.update(); } - }, - computed: { - buildQuery: function buildQuery() { - var query = this.query; - - if (!this.useRegExp) { - query = window.preg_quote(this.query); - } - - if (this.selectedSeverity) { - query = "^".concat(this.selectedSeverity, "(.*)").concat(query); - } - - return query; - }, - exportFormAction: function exportFormAction() { - return "?".concat(external_CoreHome_["MatomoUrl"].stringify({ - module: 'API', - method: 'LogViewer.getLogEntries', - query: this.buildQuery, - format: 'TSV', - page: 0, - limitPerPage: 5000 - })); - }, - logConfigJson: function logConfigJson() { - return JSON.stringify(this.logConfig || {}); - }, - tokenAuth: function tokenAuth() { - return external_CoreHome_["Matomo"].token_auth; - }, - logsWithMessage: function logsWithMessage() { - return (this.logs || []).filter(function (l) { - return l.message; - }); + }); + const _export_sfc = (sfc, props) => { + const target = sfc.__vccOpts || sfc; + for (const [key, val] of props) { + target[key] = val; } + return target; + }; + const _hoisted_1 = { class: "logViewer" }; + const _hoisted_2 = { class: "row" }; + const _hoisted_3 = { class: "logWriters col s4 m3 l2" }; + const _hoisted_4 = { class: "severities col s4 m3 l2" }; + const _hoisted_5 = { class: "col s12 m12 l8" }; + const _hoisted_6 = ["title", "placeholder"]; + const _hoisted_7 = ["title"]; + const _hoisted_8 = { + class: "useRegExp", + style: { "margin-right": "3.5px" } + }; + const _hoisted_9 = ["action"]; + const _hoisted_10 = ["value"]; + const _hoisted_11 = /* @__PURE__ */ vue.createElementVNode("input", { + type: "hidden", + name: "force_api_session", + value: "1", + style: { "margin-right": "3.5px" } + }, null, -1); + const _hoisted_12 = ["title"]; + const _hoisted_13 = ["title"]; + const _hoisted_14 = /* @__PURE__ */ vue.createElementVNode("br", null, null, -1); + const _hoisted_15 = { class: "severity" }; + const _hoisted_16 = { class: "tag" }; + const _hoisted_17 = { class: "date" }; + const _hoisted_18 = { class: "date" }; + const _hoisted_19 = { class: "message" }; + const _hoisted_20 = ["title", "onClick"]; + const _hoisted_21 = ["title", "onClick"]; + const _hoisted_22 = ["title", "onClick"]; + const _hoisted_23 = ["title", "onClick"]; + const _hoisted_24 = { class: "message" }; + const _hoisted_25 = { key: 0 }; + const _hoisted_26 = { colspan: "5" }; + const _hoisted_27 = { colspan: "5" }; + const _hoisted_28 = { class: "loadingPiwik" }; + const _hoisted_29 = /* @__PURE__ */ vue.createElementVNode("img", { src: "plugins/Morpheus/images/loading-blue.gif" }, null, -1); + const _hoisted_30 = { + colspan: "5", + class: "paging" + }; + function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { + const _component_Field = vue.resolveComponent("Field"); + const _component_ContentBlock = vue.resolveComponent("ContentBlock"); + const _directive_content_table = vue.resolveDirective("content-table"); + return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [ + vue.createVNode(_component_ContentBlock, { + "content-title": _ctx.translate("LogViewer_LogViewer") + }, { + default: vue.withCtx(() => { + var _a, _b; + return [ + vue.createElementVNode("div", _hoisted_2, [ + vue.createElementVNode("div", _hoisted_3, [ + vue.createVNode(_component_Field, { + uicontrol: "select", + name: "logWriter", + "model-value": _ctx.selectedLogWriter, + "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => { + _ctx.selectedLogWriter = $event; + _ctx.update(); + }), + "full-width": true, + options: _ctx.logWriters + }, null, 8, ["model-value", "options"]) + ]), + vue.createElementVNode("div", _hoisted_4, [ + vue.createVNode(_component_Field, { + uicontrol: "select", + name: "selectedSeverity", + "model-value": _ctx.selectedSeverity, + "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => { + _ctx.selectedSeverity = $event; + _ctx.update(); + }), + "full-width": true, + options: _ctx.severities + }, null, 8, ["model-value", "options"]) + ]), + vue.createElementVNode("div", _hoisted_5, [ + vue.withDirectives(vue.createElementVNode("input", { + type: "text", + class: "search", + onKeydown: _cache[2] || (_cache[2] = ($event) => _ctx.onSearchKeydown($event)), + title: _ctx.translate("LogViewer_SearchHelp"), + "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => _ctx.query = $event), + placeholder: _ctx.translate("LogViewer_SearchPattern"), + style: { "margin-right": "3.5px" } + }, null, 40, _hoisted_6), [ + [vue.vModelText, _ctx.query] + ]), + vue.createElementVNode("span", { + class: "icon-search searchIcon", + title: _ctx.translate("General_ClickToSearch"), + onClick: _cache[4] || (_cache[4] = ($event) => _ctx.update()) + }, null, 8, _hoisted_7), + vue.createElementVNode("div", _hoisted_8, [ + vue.createVNode(_component_Field, { + uicontrol: "checkbox", + title: _ctx.translate("LogViewer_UseRegExp"), + modelValue: _ctx.useRegExp, + "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => _ctx.useRegExp = $event) + }, null, 8, ["title", "modelValue"]) + ]), + vue.createElementVNode("a", { + class: "icon-reload", + onClick: _cache[6] || (_cache[6] = ($event) => _ctx.update()), + style: { "margin-right": "3.5px" } + }), + vue.createElementVNode("form", { + method: "POST", + id: "export", + ref: "export", + target: "_blank", + action: _ctx.exportFormAction + }, [ + vue.createElementVNode("input", { + type: "hidden", + name: "token_auth", + value: _ctx.tokenAuth + }, null, 8, _hoisted_10), + _hoisted_11, + vue.createElementVNode("a", { + class: "icon-export", + onClick: _cache[7] || (_cache[7] = ($event) => _ctx.$refs.export.submit()), + title: _ctx.translate("LogViewer_ExportThisSearch", "TSV", 5e3), + style: { "margin-right": "3.5px" } + }, null, 8, _hoisted_12) + ], 8, _hoisted_9), + vue.createElementVNode("a", { + class: "icon-info", + target: "_blank", + href: "https://piwik.org/faq/troubleshooting/faq_115/", + rel: "noreferrer noopener", + title: _ctx.translate("LogViewer_CurrentLogConfigIs", _ctx.logConfigJson) + }, null, 8, _hoisted_13), + _hoisted_14 + ]), + vue.withDirectives((vue.openBlock(), vue.createElementBlock("table", null, [ + vue.createElementVNode("thead", null, [ + vue.createElementVNode("tr", null, [ + vue.createElementVNode("th", _hoisted_15, vue.toDisplayString(_ctx.translate("LogViewer_Severity")), 1), + vue.createElementVNode("th", _hoisted_16, vue.toDisplayString(_ctx.translate("LogViewer_Tag")), 1), + vue.createElementVNode("th", _hoisted_17, vue.toDisplayString(_ctx.translate("General_Date")), 1), + vue.createElementVNode("th", _hoisted_18, vue.toDisplayString(_ctx.translate("LogViewer_RequestId")), 1), + vue.createElementVNode("th", _hoisted_19, vue.toDisplayString(_ctx.translate("LogViewer_Message")), 1) + ]) + ]), + vue.createElementVNode("tbody", null, [ + (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.logsWithMessage, (log, index) => { + return vue.openBlock(), vue.createElementBlock("tr", { key: index }, [ + vue.createElementVNode("td", { + class: vue.normalizeClass(["severity", { selectable: log.severity }]), + title: log.severity ? _ctx.translate("LogViewer_ClickToSearchForThis") : "", + onClick: ($event) => _ctx.searchSeverity(log.severity) + }, vue.toDisplayString(log.severity || "-"), 11, _hoisted_20), + vue.createElementVNode("td", { + class: vue.normalizeClass(["tag", { selectable: log.tag }]), + title: log.tag ? _ctx.translate("LogViewer_ClickToSearchForThis") : "", + onClick: ($event) => _ctx.searchText(log.tag) + }, vue.toDisplayString(log.tag || "-"), 11, _hoisted_21), + vue.createElementVNode("td", { + class: vue.normalizeClass(["date", { selectable: log.datetime }]), + title: log.datetime ? _ctx.translate("LogViewer_ClickToSearchForThis") : "", + onClick: ($event) => _ctx.searchDate(log.datetime) + }, vue.toDisplayString(log.datetime || "-"), 11, _hoisted_22), + vue.createElementVNode("td", { + class: vue.normalizeClass(["requestId", { selectable: log.requestId }]), + title: log.requestId ? _ctx.translate("LogViewer_ClickToSearchForThis") : "", + onClick: ($event) => _ctx.searchRequestId(log.requestId) + }, vue.toDisplayString(log.requestId || "-"), 11, _hoisted_23), + vue.createElementVNode("td", _hoisted_24, vue.toDisplayString(log.message), 1) + ]); + }), 128)), + !_ctx.isLoading && ((_a = _ctx.logs) == null ? void 0 : _a.length) === 0 ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_25, [ + vue.createElementVNode("td", _hoisted_26, vue.toDisplayString(_ctx.translate("General_SearchNoResults")), 1) + ])) : vue.createCommentVNode("", true), + vue.withDirectives(vue.createElementVNode("tr", null, [ + vue.createElementVNode("td", _hoisted_27, [ + vue.createElementVNode("span", _hoisted_28, [ + _hoisted_29, + vue.createTextVNode(" " + vue.toDisplayString(_ctx.translate("General_Loading")), 1) + ]) + ]) + ], 512), [ + [vue.vShow, _ctx.isLoading] + ]), + vue.createElementVNode("tr", null, [ + vue.createElementVNode("td", _hoisted_30, [ + vue.withDirectives(vue.createElementVNode("span", { + id: "prev", + class: "previous", + onClick: _cache[9] || (_cache[9] = ($event) => _ctx.previousPage()) + }, [ + vue.createElementVNode("a", { + class: "btn", + onClick: _cache[8] || (_cache[8] = vue.withModifiers(() => { + }, ["prevent"])) + }, [ + vue.createElementVNode("span", null, "« " + vue.toDisplayString(_ctx.translate("General_Previous")), 1) + ]) + ], 512), [ + [vue.vShow, !(_ctx.page < 1)] + ]), + vue.withDirectives(vue.createElementVNode("span", { + id: "next", + class: "next pointer", + onClick: _cache[11] || (_cache[11] = ($event) => _ctx.nextPage()) + }, [ + vue.createElementVNode("a", { + class: "btn", + onClick: _cache[10] || (_cache[10] = vue.withModifiers(() => { + }, ["prevent"])) + }, [ + vue.createElementVNode("span", null, vue.toDisplayString(_ctx.translate("General_Next")) + " »", 1) + ]) + ], 512), [ + [vue.vShow, !(((_b = _ctx.logs) == null ? void 0 : _b.length) < 1)] + ]) + ]) + ]) + ]) + ])), [ + [_directive_content_table] + ]) + ]) + ]; + }), + _: 1 + }, 8, ["content-title"]) + ]); } + const LogViewer = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]); + exports2.LogViewer = LogViewer; + Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" }); })); -// CONCATENATED MODULE: ./plugins/LogViewer/vue/src/LogViewer/LogViewer.vue?vue&type=script&lang=ts - -// CONCATENATED MODULE: ./plugins/LogViewer/vue/src/LogViewer/LogViewer.vue - - - -LogViewervue_type_script_lang_ts.render = render - -/* harmony default export */ var LogViewer = (LogViewervue_type_script_lang_ts); -// CONCATENATED MODULE: ./plugins/LogViewer/vue/src/index.ts -/*! - * Matomo - free/libre analytics platform - * - * @link https://matomo.org - * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */ - -// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib-no-default.js - - - - -/***/ }) - -/******/ }); -}); -//# sourceMappingURL=LogViewer.umd.js.map \ No newline at end of file diff --git a/vue/dist/LogViewer.umd.min.js b/vue/dist/LogViewer.umd.min.js index b13e6ac..a86e6f0 100644 --- a/vue/dist/LogViewer.umd.min.js +++ b/vue/dist/LogViewer.umd.min.js @@ -1,8 +1 @@ -(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t(require("CoreHome"),require("vue"),require("CorePluginsAdmin")):"function"===typeof define&&define.amd?define(["CoreHome",,"CorePluginsAdmin"],t):"object"===typeof exports?exports["LogViewer"]=t(require("CoreHome"),require("vue"),require("CorePluginsAdmin")):e["LogViewer"]=t(e["CoreHome"],e["Vue"],e["CorePluginsAdmin"])})("undefined"!==typeof self?self:this,(function(e,t,r){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="plugins/LogViewer/vue/dist/",r(r.s="fae3")}({"19dc":function(t,r){t.exports=e},"8bbf":function(e,r){e.exports=t},a5a2:function(e,t){e.exports=r},fae3:function(e,t,r){"use strict";if(r.r(t),r.d(t,"LogViewer",(function(){return z})),"undefined"!==typeof window){var n=window.document.currentScript,o=n&&n.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);o&&(r.p=o[1])}var i=r("8bbf"),l={class:"logViewer"},a={class:"row"},c={class:"logWriters col s4 m3 l2"},s={class:"severities col s4 m3 l2"},u={class:"col s12 m12 l8"},d=["title","placeholder"],g=["title"],p={class:"useRegExp",style:{"margin-right":"3.5px"}},f=["action"],b=["value"],m=Object(i["createElementVNode"])("input",{type:"hidden",name:"force_api_session",value:"1",style:{"margin-right":"3.5px"}},null,-1),h=["title"],y=["title"],v=Object(i["createElementVNode"])("br",null,null,-1),j={class:"severity"},O={class:"tag"},V={class:"date"},E={class:"date"},N={class:"message"},C=["title","onClick"],w=["title","onClick"],S=["title","onClick"],L=["title","onClick"],k={class:"message"},x={key:0},_={colspan:"5"},q={colspan:"5"},T={class:"loadingPiwik"},A=Object(i["createElementVNode"])("img",{src:"plugins/Morpheus/images/loading-blue.gif"},null,-1),R={colspan:"5",class:"paging"};function D(e,t,r,n,o,D){var I=Object(i["resolveComponent"])("Field"),P=Object(i["resolveComponent"])("ContentBlock"),W=Object(i["resolveDirective"])("content-table");return Object(i["openBlock"])(),Object(i["createElementBlock"])("div",l,[Object(i["createVNode"])(P,{"content-title":e.translate("LogViewer_LogViewer")},{default:Object(i["withCtx"])((function(){var r,n;return[Object(i["createElementVNode"])("div",a,[Object(i["createElementVNode"])("div",c,[Object(i["createVNode"])(I,{uicontrol:"select",name:"logWriter","model-value":e.selectedLogWriter,"onUpdate:modelValue":t[0]||(t[0]=function(t){e.selectedLogWriter=t,e.update()}),"full-width":!0,options:e.logWriters},null,8,["model-value","options"])]),Object(i["createElementVNode"])("div",s,[Object(i["createVNode"])(I,{uicontrol:"select",name:"selectedSeverity","model-value":e.selectedSeverity,"onUpdate:modelValue":t[1]||(t[1]=function(t){e.selectedSeverity=t,e.update()}),"full-width":!0,options:e.severities},null,8,["model-value","options"])]),Object(i["createElementVNode"])("div",u,[Object(i["withDirectives"])(Object(i["createElementVNode"])("input",{type:"text",class:"search",onKeydown:t[2]||(t[2]=function(t){return e.onSearchKeydown(t)}),title:e.translate("LogViewer_SearchHelp"),"onUpdate:modelValue":t[3]||(t[3]=function(t){return e.query=t}),placeholder:e.translate("LogViewer_SearchPattern"),style:{"margin-right":"3.5px"}},null,40,d),[[i["vModelText"],e.query]]),Object(i["createElementVNode"])("span",{class:"icon-search searchIcon",title:e.translate("General_ClickToSearch"),onClick:t[4]||(t[4]=function(t){return e.update()})},null,8,g),Object(i["createElementVNode"])("div",p,[Object(i["createVNode"])(I,{uicontrol:"checkbox",title:e.translate("LogViewer_UseRegExp"),modelValue:e.useRegExp,"onUpdate:modelValue":t[5]||(t[5]=function(t){return e.useRegExp=t})},null,8,["title","modelValue"])]),Object(i["createElementVNode"])("a",{class:"icon-reload",onClick:t[6]||(t[6]=function(t){return e.update()}),style:{"margin-right":"3.5px"}}),Object(i["createElementVNode"])("form",{method:"POST",id:"export",ref:"export",target:"_blank",action:e.exportFormAction},[Object(i["createElementVNode"])("input",{type:"hidden",name:"token_auth",value:e.tokenAuth},null,8,b),m,Object(i["createElementVNode"])("a",{class:"icon-export",onClick:t[7]||(t[7]=function(t){return e.$refs.export.submit()}),title:e.translate("LogViewer_ExportThisSearch","TSV",5e3),style:{"margin-right":"3.5px"}},null,8,h)],8,f),Object(i["createElementVNode"])("a",{class:"icon-info",target:"_blank",href:"https://piwik.org/faq/troubleshooting/faq_115/",rel:"noreferrer noopener",title:e.translate("LogViewer_CurrentLogConfigIs",e.logConfigJson)},null,8,y),v]),Object(i["withDirectives"])(Object(i["createElementVNode"])("table",null,[Object(i["createElementVNode"])("thead",null,[Object(i["createElementVNode"])("tr",null,[Object(i["createElementVNode"])("th",j,Object(i["toDisplayString"])(e.translate("LogViewer_Severity")),1),Object(i["createElementVNode"])("th",O,Object(i["toDisplayString"])(e.translate("LogViewer_Tag")),1),Object(i["createElementVNode"])("th",V,Object(i["toDisplayString"])(e.translate("General_Date")),1),Object(i["createElementVNode"])("th",E,Object(i["toDisplayString"])(e.translate("LogViewer_RequestId")),1),Object(i["createElementVNode"])("th",N,Object(i["toDisplayString"])(e.translate("LogViewer_Message")),1)])]),Object(i["createElementVNode"])("tbody",null,[(Object(i["openBlock"])(!0),Object(i["createElementBlock"])(i["Fragment"],null,Object(i["renderList"])(e.logsWithMessage,(function(t,r){return Object(i["openBlock"])(),Object(i["createElementBlock"])("tr",{key:r},[Object(i["createElementVNode"])("td",{class:Object(i["normalizeClass"])(["severity",{selectable:t.severity}]),title:t.severity?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:function(r){return e.searchSeverity(t.severity)}},Object(i["toDisplayString"])(t.severity||"-"),11,C),Object(i["createElementVNode"])("td",{class:Object(i["normalizeClass"])(["tag",{selectable:t.tag}]),title:t.tag?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:function(r){return e.searchText(t.tag)}},Object(i["toDisplayString"])(t.tag||"-"),11,w),Object(i["createElementVNode"])("td",{class:Object(i["normalizeClass"])(["date",{selectable:t.datetime}]),title:t.datetime?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:function(r){return e.searchDate(t.datetime)}},Object(i["toDisplayString"])(t.datetime||"-"),11,S),Object(i["createElementVNode"])("td",{class:Object(i["normalizeClass"])(["requestId",{selectable:t.requestId}]),title:t.requestId?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:function(r){return e.searchRequestId(t.requestId)}},Object(i["toDisplayString"])(t.requestId||"-"),11,L),Object(i["createElementVNode"])("td",k,Object(i["toDisplayString"])(t.message),1)])})),128)),e.isLoading||0!==(null===(r=e.logs)||void 0===r?void 0:r.length)?Object(i["createCommentVNode"])("",!0):(Object(i["openBlock"])(),Object(i["createElementBlock"])("tr",x,[Object(i["createElementVNode"])("td",_,Object(i["toDisplayString"])(e.translate("General_SearchNoResults")),1)])),Object(i["withDirectives"])(Object(i["createElementVNode"])("tr",null,[Object(i["createElementVNode"])("td",q,[Object(i["createElementVNode"])("span",T,[A,Object(i["createTextVNode"])(" "+Object(i["toDisplayString"])(e.translate("General_Loading")),1)])])],512),[[i["vShow"],e.isLoading]]),Object(i["createElementVNode"])("tr",null,[Object(i["createElementVNode"])("td",R,[Object(i["withDirectives"])(Object(i["createElementVNode"])("span",{id:"prev",class:"previous",onClick:t[9]||(t[9]=function(t){return e.previousPage()})},[Object(i["createElementVNode"])("a",{class:"btn",onClick:t[8]||(t[8]=Object(i["withModifiers"])((function(){}),["prevent"]))},[Object(i["createElementVNode"])("span",null,"« "+Object(i["toDisplayString"])(e.translate("General_Previous")),1)])],512),[[i["vShow"],!(e.page<1)]]),Object(i["withDirectives"])(Object(i["createElementVNode"])("span",{id:"next",class:"next pointer",onClick:t[11]||(t[11]=function(t){return e.nextPage()})},[Object(i["createElementVNode"])("a",{class:"btn",onClick:t[10]||(t[10]=Object(i["withModifiers"])((function(){}),["prevent"]))},[Object(i["createElementVNode"])("span",null,Object(i["toDisplayString"])(e.translate("General_Next"))+" »",1)])],512),[[i["vShow"],!((null===(n=e.logs)||void 0===n?void 0:n.length)<1)]])])])])],512),[[W]])])]})),_:1},8,["content-title"])])}var I=r("19dc"),P=r("a5a2");function W(e,t){return U(e)||G(e,t)||B(e,t)||M()}function M(){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 B(e,t){if(e){if("string"===typeof e)return F(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?F(e,t):void 0}}function F(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r',"",e.logWriters.map((function(e){return e.value})).join(", ")]);I["NotificationsStore"].show({message:i,title:o,context:"info",noclear:!0,type:"transient"}),null!==(n=e.logWriters)&&void 0!==n&&n[0]&&(e.selectedLogWriter=e.logWriters[0].value)}e.selectedLogWriter?e.update():e.isLoading=!1})),I["AjaxHelper"].fetch({method:"LogViewer.getLogConfig",filter_limit:"-1"}).then((function(t){e.logConfig=t}))},methods:{update:function(){var e=this;this.isLoading=!0,this.logs=[],this.getLogEntries({query:this.buildQuery,limitPerPage:this.limit,source:this.selectedLogWriter,page:this.page}).catch((function(e){return I["NotificationsStore"].show({message:e.message||e,context:"error",type:"transient"}),[]})).then((function(t){e.logs=t})).finally((function(){e.isLoading=!1}))},searchSeverity:function(e){e&&(this.selectedSeverity=e.toUpperCase(),this.update())},searchDate:function(e){e&&(this.selectedSeverity="",this.query="\\[".concat(e.substr(0,10),".{9}\\]"),this.useRegExp=!0,this.update())},searchRequestId:function(e){e&&this.searchText("[".concat(e,"]"))},searchText:function(e){e&&(this.selectedSeverity="",this.query=e,this.useRegExp&&(this.query=window.preg_quote(this.query)),this.update())},previousPage:function(){this.page>0&&(this.page-=1,this.update())},nextPage:function(){var e;null!==(e=this.logs)&&void 0!==e&&e.length&&(this.page+=1,this.update())},onSearchKeydown:function(e){"Enter"===e.code&&this.update()}},computed:{buildQuery:function(){var e=this.query;return this.useRegExp||(e=window.preg_quote(this.query)),this.selectedSeverity&&(e="^".concat(this.selectedSeverity,"(.*)").concat(e)),e},exportFormAction:function(){return"?".concat(I["MatomoUrl"].stringify({module:"API",method:"LogViewer.getLogEntries",query:this.buildQuery,format:"TSV",page:0,limitPerPage:5e3}))},logConfigJson:function(){return JSON.stringify(this.logConfig||{})},tokenAuth:function(){return I["Matomo"].token_auth},logsWithMessage:function(){return(this.logs||[]).filter((function(e){return e.message}))}}});H.render=D;var z=H; -/*! - * Matomo - free/libre analytics platform - * - * @link https://matomo.org - * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later - */}})})); -//# sourceMappingURL=LogViewer.umd.min.js.map \ No newline at end of file +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("CoreHome"),require("CorePluginsAdmin")):"function"==typeof define&&define.amd?define(["exports","vue","CoreHome","CorePluginsAdmin"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).LogViewer={},e.Vue,e.CoreHome,e.CorePluginsAdmin)}(this,function(e,t,r,l){"use strict";var o=Object.defineProperty,i=Object.defineProperties,a=Object.getOwnPropertyDescriptors,s=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,c=Object.prototype.propertyIsEnumerable,d=(e,t,r)=>t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;const g=t.defineComponent({props:{limit:{type:Number,required:!0}},components:{ContentBlock:r.ContentBlock,Field:l.Field},directives:{ContentTable:r.ContentTable},data:()=>({page:0,query:"",isLoading:!0,logWriters:[],selectedLogWriter:"",useRegExp:!1,severities:[{key:"",value:r.translate("LogViewer_AnySeverity")},{key:"DEBUG",value:"DEBUG"},{key:"INFO",value:"INFO"},{key:"NOTICE",value:"NOTICE"},{key:"WARNING",value:"WARNING"},{key:"ERROR",value:"ERROR"},{key:"CRITICAL",value:"CRITICAL"},{key:"ALERT",value:"ALERT"},{key:"EMERGENCY",value:"EMERGENCY"}],selectedSeverity:"",logs:void 0,logConfig:void 0}),setup(){let e=null;return{getLogEntries:t=>{return e&&(e.abort(),e=null),e=new AbortController,r.AjaxHelper.fetch((l=((e,t)=>{for(var r in t||(t={}))n.call(t,r)&&d(e,r,t[r]);if(s)for(var r of s(t))c.call(t,r)&&d(e,r,t[r]);return e})({},t),o={method:"LogViewer.getLogEntries"},i(l,a(o))),{abortController:e,createErrorNotification:!1}).finally(()=>{e=null});var l,o}}},created(){r.AjaxHelper.fetch({method:"LogViewer.getAvailableLogReaders"}).then(e=>{Array.isArray(e)&&(this.logWriters=e.map(e=>({key:e,value:e})))}).then(()=>r.AjaxHelper.fetch({method:"LogViewer.getConfiguredLogReaders"})).then(e=>{var t;if(null==e?void 0:e[0])[this.selectedLogWriter]=e;else{const e=r.translate("LogViewer_NoSupportedLogWriterConfiguredTitle"),l=r.translate("LogViewer_NoSupportedLogWriterConfiguredMessage",['',"",this.logWriters.map(e=>e.value).join(", ")]);r.NotificationsStore.show({message:l,title:e,context:"info",noclear:!0,type:"transient"}),(null==(t=this.logWriters)?void 0:t[0])&&(this.selectedLogWriter=this.logWriters[0].value)}this.selectedLogWriter?this.update():this.isLoading=!1}),r.AjaxHelper.fetch({method:"LogViewer.getLogConfig",filter_limit:"-1"}).then(e=>{this.logConfig=e})},methods:{update(){this.isLoading=!0,this.logs=[],this.getLogEntries({query:this.buildQuery,limitPerPage:this.limit,source:this.selectedLogWriter,page:this.page}).catch(e=>(r.NotificationsStore.show({message:e.message||e,context:"error",type:"transient"}),[])).then(e=>{this.logs=e}).finally(()=>{this.isLoading=!1})},searchSeverity(e){e&&(this.selectedSeverity=e.toUpperCase(),this.update())},searchDate(e){e&&(this.selectedSeverity="",this.query=`\\[${e.substr(0,10)}.{9}\\]`,this.useRegExp=!0,this.update())},searchRequestId(e){e&&this.searchText(`[${e}]`)},searchText(e){e&&(this.selectedSeverity="",this.query=e,this.useRegExp&&(this.query=window.preg_quote(this.query)),this.update())},previousPage(){this.page>0&&(this.page-=1,this.update())},nextPage(){var e;(null==(e=this.logs)?void 0:e.length)&&(this.page+=1,this.update())},onSearchKeydown(e){"Enter"===e.code&&this.update()}},computed:{buildQuery(){let{query:e}=this;return this.useRegExp||(e=window.preg_quote(this.query)),this.selectedSeverity&&(e=`^${this.selectedSeverity}(.*)${e}`),e},exportFormAction(){return`?${r.MatomoUrl.stringify({module:"API",method:"LogViewer.getLogEntries",query:this.buildQuery,format:"TSV",page:0,limitPerPage:5e3})}`},logConfigJson(){return JSON.stringify(this.logConfig||{})},tokenAuth:()=>r.Matomo.token_auth,logsWithMessage(){return(this.logs||[]).filter(e=>e.message)}}}),u=(e,t)=>{const r=e.__vccOpts||e;for(const[l,o]of t)r[l]=o;return r},p={class:"logViewer"},h={class:"row"},m={class:"logWriters col s4 m3 l2"},y={class:"severities col s4 m3 l2"},v={class:"col s12 m12 l8"},V=["title","placeholder"],E=["title"],f={class:"useRegExp",style:{"margin-right":"3.5px"}},N=["action"],C=["value"],w=t.createElementVNode("input",{type:"hidden",name:"force_api_session",value:"1",style:{"margin-right":"3.5px"}},null,-1),k=["title"],L=["title"],S=t.createElementVNode("br",null,null,-1),b={class:"severity"},x={class:"tag"},_={class:"date"},T={class:"date"},q={class:"message"},R=["title","onClick"],D=["title","onClick"],A=["title","onClick"],I=["title","onClick"],P={class:"message"},W={key:0},O={colspan:"5"},B={colspan:"5"},j={class:"loadingPiwik"},M=t.createElementVNode("img",{src:"plugins/Morpheus/images/loading-blue.gif"},null,-1),F={colspan:"5",class:"paging"};const G=u(g,[["render",function(e,r,l,o,i,a){const s=t.resolveComponent("Field"),n=t.resolveComponent("ContentBlock"),c=t.resolveDirective("content-table");return t.openBlock(),t.createElementBlock("div",p,[t.createVNode(n,{"content-title":e.translate("LogViewer_LogViewer")},{default:t.withCtx(()=>{var l,o;return[t.createElementVNode("div",h,[t.createElementVNode("div",m,[t.createVNode(s,{uicontrol:"select",name:"logWriter","model-value":e.selectedLogWriter,"onUpdate:modelValue":r[0]||(r[0]=t=>{e.selectedLogWriter=t,e.update()}),"full-width":!0,options:e.logWriters},null,8,["model-value","options"])]),t.createElementVNode("div",y,[t.createVNode(s,{uicontrol:"select",name:"selectedSeverity","model-value":e.selectedSeverity,"onUpdate:modelValue":r[1]||(r[1]=t=>{e.selectedSeverity=t,e.update()}),"full-width":!0,options:e.severities},null,8,["model-value","options"])]),t.createElementVNode("div",v,[t.withDirectives(t.createElementVNode("input",{type:"text",class:"search",onKeydown:r[2]||(r[2]=t=>e.onSearchKeydown(t)),title:e.translate("LogViewer_SearchHelp"),"onUpdate:modelValue":r[3]||(r[3]=t=>e.query=t),placeholder:e.translate("LogViewer_SearchPattern"),style:{"margin-right":"3.5px"}},null,40,V),[[t.vModelText,e.query]]),t.createElementVNode("span",{class:"icon-search searchIcon",title:e.translate("General_ClickToSearch"),onClick:r[4]||(r[4]=t=>e.update())},null,8,E),t.createElementVNode("div",f,[t.createVNode(s,{uicontrol:"checkbox",title:e.translate("LogViewer_UseRegExp"),modelValue:e.useRegExp,"onUpdate:modelValue":r[5]||(r[5]=t=>e.useRegExp=t)},null,8,["title","modelValue"])]),t.createElementVNode("a",{class:"icon-reload",onClick:r[6]||(r[6]=t=>e.update()),style:{"margin-right":"3.5px"}}),t.createElementVNode("form",{method:"POST",id:"export",ref:"export",target:"_blank",action:e.exportFormAction},[t.createElementVNode("input",{type:"hidden",name:"token_auth",value:e.tokenAuth},null,8,C),w,t.createElementVNode("a",{class:"icon-export",onClick:r[7]||(r[7]=t=>e.$refs.export.submit()),title:e.translate("LogViewer_ExportThisSearch","TSV",5e3),style:{"margin-right":"3.5px"}},null,8,k)],8,N),t.createElementVNode("a",{class:"icon-info",target:"_blank",href:"https://piwik.org/faq/troubleshooting/faq_115/",rel:"noreferrer noopener",title:e.translate("LogViewer_CurrentLogConfigIs",e.logConfigJson)},null,8,L),S]),t.withDirectives((t.openBlock(),t.createElementBlock("table",null,[t.createElementVNode("thead",null,[t.createElementVNode("tr",null,[t.createElementVNode("th",b,t.toDisplayString(e.translate("LogViewer_Severity")),1),t.createElementVNode("th",x,t.toDisplayString(e.translate("LogViewer_Tag")),1),t.createElementVNode("th",_,t.toDisplayString(e.translate("General_Date")),1),t.createElementVNode("th",T,t.toDisplayString(e.translate("LogViewer_RequestId")),1),t.createElementVNode("th",q,t.toDisplayString(e.translate("LogViewer_Message")),1)])]),t.createElementVNode("tbody",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.logsWithMessage,(r,l)=>(t.openBlock(),t.createElementBlock("tr",{key:l},[t.createElementVNode("td",{class:t.normalizeClass(["severity",{selectable:r.severity}]),title:r.severity?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchSeverity(r.severity)},t.toDisplayString(r.severity||"-"),11,R),t.createElementVNode("td",{class:t.normalizeClass(["tag",{selectable:r.tag}]),title:r.tag?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchText(r.tag)},t.toDisplayString(r.tag||"-"),11,D),t.createElementVNode("td",{class:t.normalizeClass(["date",{selectable:r.datetime}]),title:r.datetime?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchDate(r.datetime)},t.toDisplayString(r.datetime||"-"),11,A),t.createElementVNode("td",{class:t.normalizeClass(["requestId",{selectable:r.requestId}]),title:r.requestId?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchRequestId(r.requestId)},t.toDisplayString(r.requestId||"-"),11,I),t.createElementVNode("td",P,t.toDisplayString(r.message),1)]))),128)),e.isLoading||0!==(null==(l=e.logs)?void 0:l.length)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("tr",W,[t.createElementVNode("td",O,t.toDisplayString(e.translate("General_SearchNoResults")),1)])),t.withDirectives(t.createElementVNode("tr",null,[t.createElementVNode("td",B,[t.createElementVNode("span",j,[M,t.createTextVNode(" "+t.toDisplayString(e.translate("General_Loading")),1)])])],512),[[t.vShow,e.isLoading]]),t.createElementVNode("tr",null,[t.createElementVNode("td",F,[t.withDirectives(t.createElementVNode("span",{id:"prev",class:"previous",onClick:r[9]||(r[9]=t=>e.previousPage())},[t.createElementVNode("a",{class:"btn",onClick:r[8]||(r[8]=t.withModifiers(()=>{},["prevent"]))},[t.createElementVNode("span",null,"« "+t.toDisplayString(e.translate("General_Previous")),1)])],512),[[t.vShow,!(e.page<1)]]),t.withDirectives(t.createElementVNode("span",{id:"next",class:"next pointer",onClick:r[11]||(r[11]=t=>e.nextPage())},[t.createElementVNode("a",{class:"btn",onClick:r[10]||(r[10]=t.withModifiers(()=>{},["prevent"]))},[t.createElementVNode("span",null,t.toDisplayString(e.translate("General_Next"))+" »",1)])],512),[[t.vShow,!((null==(o=e.logs)?void 0:o.length)<1)]])])])])])),[[c]])])]}),_:1},8,["content-title"])])}]]);e.LogViewer=G,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}); diff --git a/vue/dist/umd.metadata.json b/vue/dist/umd.metadata.json index dce4477..662eca6 100644 --- a/vue/dist/umd.metadata.json +++ b/vue/dist/umd.metadata.json @@ -3,4 +3,4 @@ "CoreHome", "CorePluginsAdmin" ] -} \ No newline at end of file +} From 9fbae9ee41e4265b2601fda76e74a23c66226b40 Mon Sep 17 00:00:00 2001 From: sgiehl Date: Fri, 19 Jun 2026 18:50:23 +0200 Subject: [PATCH 2/3] Rebuild Vue dist files for Vue 3.5 --- vue/dist/LogViewer.umd.js | 81 +++++++++++++++++------------------ vue/dist/LogViewer.umd.min.js | 2 +- 2 files changed, 40 insertions(+), 43 deletions(-) diff --git a/vue/dist/LogViewer.umd.js b/vue/dist/LogViewer.umd.js index 0c64318..e9710a8 100644 --- a/vue/dist/LogViewer.umd.js +++ b/vue/dist/LogViewer.umd.js @@ -284,31 +284,23 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); }; const _hoisted_9 = ["action"]; const _hoisted_10 = ["value"]; - const _hoisted_11 = /* @__PURE__ */ vue.createElementVNode("input", { - type: "hidden", - name: "force_api_session", - value: "1", - style: { "margin-right": "3.5px" } - }, null, -1); + const _hoisted_11 = ["title"]; const _hoisted_12 = ["title"]; - const _hoisted_13 = ["title"]; - const _hoisted_14 = /* @__PURE__ */ vue.createElementVNode("br", null, null, -1); - const _hoisted_15 = { class: "severity" }; - const _hoisted_16 = { class: "tag" }; - const _hoisted_17 = { class: "date" }; - const _hoisted_18 = { class: "date" }; - const _hoisted_19 = { class: "message" }; + const _hoisted_13 = { class: "severity" }; + const _hoisted_14 = { class: "tag" }; + const _hoisted_15 = { class: "date" }; + const _hoisted_16 = { class: "date" }; + const _hoisted_17 = { class: "message" }; + const _hoisted_18 = ["title", "onClick"]; + const _hoisted_19 = ["title", "onClick"]; const _hoisted_20 = ["title", "onClick"]; const _hoisted_21 = ["title", "onClick"]; - const _hoisted_22 = ["title", "onClick"]; - const _hoisted_23 = ["title", "onClick"]; - const _hoisted_24 = { class: "message" }; - const _hoisted_25 = { key: 0 }; - const _hoisted_26 = { colspan: "5" }; - const _hoisted_27 = { colspan: "5" }; - const _hoisted_28 = { class: "loadingPiwik" }; - const _hoisted_29 = /* @__PURE__ */ vue.createElementVNode("img", { src: "plugins/Morpheus/images/loading-blue.gif" }, null, -1); - const _hoisted_30 = { + const _hoisted_22 = { class: "message" }; + const _hoisted_23 = { key: 0 }; + const _hoisted_24 = { colspan: "5" }; + const _hoisted_25 = { colspan: "5" }; + const _hoisted_26 = { class: "loadingPiwik" }; + const _hoisted_27 = { colspan: "5", class: "paging" }; @@ -392,13 +384,18 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); name: "token_auth", value: _ctx.tokenAuth }, null, 8, _hoisted_10), - _hoisted_11, + _cache[12] || (_cache[12] = vue.createElementVNode("input", { + type: "hidden", + name: "force_api_session", + value: "1", + style: { "margin-right": "3.5px" } + }, null, -1)), vue.createElementVNode("a", { class: "icon-export", onClick: _cache[7] || (_cache[7] = ($event) => _ctx.$refs.export.submit()), title: _ctx.translate("LogViewer_ExportThisSearch", "TSV", 5e3), style: { "margin-right": "3.5px" } - }, null, 8, _hoisted_12) + }, null, 8, _hoisted_11) ], 8, _hoisted_9), vue.createElementVNode("a", { class: "icon-info", @@ -406,17 +403,17 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); href: "https://piwik.org/faq/troubleshooting/faq_115/", rel: "noreferrer noopener", title: _ctx.translate("LogViewer_CurrentLogConfigIs", _ctx.logConfigJson) - }, null, 8, _hoisted_13), - _hoisted_14 + }, null, 8, _hoisted_12), + _cache[13] || (_cache[13] = vue.createElementVNode("br", null, null, -1)) ]), vue.withDirectives((vue.openBlock(), vue.createElementBlock("table", null, [ vue.createElementVNode("thead", null, [ vue.createElementVNode("tr", null, [ - vue.createElementVNode("th", _hoisted_15, vue.toDisplayString(_ctx.translate("LogViewer_Severity")), 1), - vue.createElementVNode("th", _hoisted_16, vue.toDisplayString(_ctx.translate("LogViewer_Tag")), 1), - vue.createElementVNode("th", _hoisted_17, vue.toDisplayString(_ctx.translate("General_Date")), 1), - vue.createElementVNode("th", _hoisted_18, vue.toDisplayString(_ctx.translate("LogViewer_RequestId")), 1), - vue.createElementVNode("th", _hoisted_19, vue.toDisplayString(_ctx.translate("LogViewer_Message")), 1) + vue.createElementVNode("th", _hoisted_13, vue.toDisplayString(_ctx.translate("LogViewer_Severity")), 1), + vue.createElementVNode("th", _hoisted_14, vue.toDisplayString(_ctx.translate("LogViewer_Tag")), 1), + vue.createElementVNode("th", _hoisted_15, vue.toDisplayString(_ctx.translate("General_Date")), 1), + vue.createElementVNode("th", _hoisted_16, vue.toDisplayString(_ctx.translate("LogViewer_RequestId")), 1), + vue.createElementVNode("th", _hoisted_17, vue.toDisplayString(_ctx.translate("LogViewer_Message")), 1) ]) ]), vue.createElementVNode("tbody", null, [ @@ -426,32 +423,32 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); class: vue.normalizeClass(["severity", { selectable: log.severity }]), title: log.severity ? _ctx.translate("LogViewer_ClickToSearchForThis") : "", onClick: ($event) => _ctx.searchSeverity(log.severity) - }, vue.toDisplayString(log.severity || "-"), 11, _hoisted_20), + }, vue.toDisplayString(log.severity || "-"), 11, _hoisted_18), vue.createElementVNode("td", { class: vue.normalizeClass(["tag", { selectable: log.tag }]), title: log.tag ? _ctx.translate("LogViewer_ClickToSearchForThis") : "", onClick: ($event) => _ctx.searchText(log.tag) - }, vue.toDisplayString(log.tag || "-"), 11, _hoisted_21), + }, vue.toDisplayString(log.tag || "-"), 11, _hoisted_19), vue.createElementVNode("td", { class: vue.normalizeClass(["date", { selectable: log.datetime }]), title: log.datetime ? _ctx.translate("LogViewer_ClickToSearchForThis") : "", onClick: ($event) => _ctx.searchDate(log.datetime) - }, vue.toDisplayString(log.datetime || "-"), 11, _hoisted_22), + }, vue.toDisplayString(log.datetime || "-"), 11, _hoisted_20), vue.createElementVNode("td", { class: vue.normalizeClass(["requestId", { selectable: log.requestId }]), title: log.requestId ? _ctx.translate("LogViewer_ClickToSearchForThis") : "", onClick: ($event) => _ctx.searchRequestId(log.requestId) - }, vue.toDisplayString(log.requestId || "-"), 11, _hoisted_23), - vue.createElementVNode("td", _hoisted_24, vue.toDisplayString(log.message), 1) + }, vue.toDisplayString(log.requestId || "-"), 11, _hoisted_21), + vue.createElementVNode("td", _hoisted_22, vue.toDisplayString(log.message), 1) ]); }), 128)), - !_ctx.isLoading && ((_a = _ctx.logs) == null ? void 0 : _a.length) === 0 ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_25, [ - vue.createElementVNode("td", _hoisted_26, vue.toDisplayString(_ctx.translate("General_SearchNoResults")), 1) + !_ctx.isLoading && ((_a = _ctx.logs) == null ? void 0 : _a.length) === 0 ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_23, [ + vue.createElementVNode("td", _hoisted_24, vue.toDisplayString(_ctx.translate("General_SearchNoResults")), 1) ])) : vue.createCommentVNode("", true), vue.withDirectives(vue.createElementVNode("tr", null, [ - vue.createElementVNode("td", _hoisted_27, [ - vue.createElementVNode("span", _hoisted_28, [ - _hoisted_29, + vue.createElementVNode("td", _hoisted_25, [ + vue.createElementVNode("span", _hoisted_26, [ + _cache[14] || (_cache[14] = vue.createElementVNode("img", { src: "plugins/Morpheus/images/loading-blue.gif" }, null, -1)), vue.createTextVNode(" " + vue.toDisplayString(_ctx.translate("General_Loading")), 1) ]) ]) @@ -459,7 +456,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); [vue.vShow, _ctx.isLoading] ]), vue.createElementVNode("tr", null, [ - vue.createElementVNode("td", _hoisted_30, [ + vue.createElementVNode("td", _hoisted_27, [ vue.withDirectives(vue.createElementVNode("span", { id: "prev", class: "previous", diff --git a/vue/dist/LogViewer.umd.min.js b/vue/dist/LogViewer.umd.min.js index a86e6f0..a4bba16 100644 --- a/vue/dist/LogViewer.umd.min.js +++ b/vue/dist/LogViewer.umd.min.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("CoreHome"),require("CorePluginsAdmin")):"function"==typeof define&&define.amd?define(["exports","vue","CoreHome","CorePluginsAdmin"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).LogViewer={},e.Vue,e.CoreHome,e.CorePluginsAdmin)}(this,function(e,t,r,l){"use strict";var o=Object.defineProperty,i=Object.defineProperties,a=Object.getOwnPropertyDescriptors,s=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,c=Object.prototype.propertyIsEnumerable,d=(e,t,r)=>t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;const g=t.defineComponent({props:{limit:{type:Number,required:!0}},components:{ContentBlock:r.ContentBlock,Field:l.Field},directives:{ContentTable:r.ContentTable},data:()=>({page:0,query:"",isLoading:!0,logWriters:[],selectedLogWriter:"",useRegExp:!1,severities:[{key:"",value:r.translate("LogViewer_AnySeverity")},{key:"DEBUG",value:"DEBUG"},{key:"INFO",value:"INFO"},{key:"NOTICE",value:"NOTICE"},{key:"WARNING",value:"WARNING"},{key:"ERROR",value:"ERROR"},{key:"CRITICAL",value:"CRITICAL"},{key:"ALERT",value:"ALERT"},{key:"EMERGENCY",value:"EMERGENCY"}],selectedSeverity:"",logs:void 0,logConfig:void 0}),setup(){let e=null;return{getLogEntries:t=>{return e&&(e.abort(),e=null),e=new AbortController,r.AjaxHelper.fetch((l=((e,t)=>{for(var r in t||(t={}))n.call(t,r)&&d(e,r,t[r]);if(s)for(var r of s(t))c.call(t,r)&&d(e,r,t[r]);return e})({},t),o={method:"LogViewer.getLogEntries"},i(l,a(o))),{abortController:e,createErrorNotification:!1}).finally(()=>{e=null});var l,o}}},created(){r.AjaxHelper.fetch({method:"LogViewer.getAvailableLogReaders"}).then(e=>{Array.isArray(e)&&(this.logWriters=e.map(e=>({key:e,value:e})))}).then(()=>r.AjaxHelper.fetch({method:"LogViewer.getConfiguredLogReaders"})).then(e=>{var t;if(null==e?void 0:e[0])[this.selectedLogWriter]=e;else{const e=r.translate("LogViewer_NoSupportedLogWriterConfiguredTitle"),l=r.translate("LogViewer_NoSupportedLogWriterConfiguredMessage",['',"",this.logWriters.map(e=>e.value).join(", ")]);r.NotificationsStore.show({message:l,title:e,context:"info",noclear:!0,type:"transient"}),(null==(t=this.logWriters)?void 0:t[0])&&(this.selectedLogWriter=this.logWriters[0].value)}this.selectedLogWriter?this.update():this.isLoading=!1}),r.AjaxHelper.fetch({method:"LogViewer.getLogConfig",filter_limit:"-1"}).then(e=>{this.logConfig=e})},methods:{update(){this.isLoading=!0,this.logs=[],this.getLogEntries({query:this.buildQuery,limitPerPage:this.limit,source:this.selectedLogWriter,page:this.page}).catch(e=>(r.NotificationsStore.show({message:e.message||e,context:"error",type:"transient"}),[])).then(e=>{this.logs=e}).finally(()=>{this.isLoading=!1})},searchSeverity(e){e&&(this.selectedSeverity=e.toUpperCase(),this.update())},searchDate(e){e&&(this.selectedSeverity="",this.query=`\\[${e.substr(0,10)}.{9}\\]`,this.useRegExp=!0,this.update())},searchRequestId(e){e&&this.searchText(`[${e}]`)},searchText(e){e&&(this.selectedSeverity="",this.query=e,this.useRegExp&&(this.query=window.preg_quote(this.query)),this.update())},previousPage(){this.page>0&&(this.page-=1,this.update())},nextPage(){var e;(null==(e=this.logs)?void 0:e.length)&&(this.page+=1,this.update())},onSearchKeydown(e){"Enter"===e.code&&this.update()}},computed:{buildQuery(){let{query:e}=this;return this.useRegExp||(e=window.preg_quote(this.query)),this.selectedSeverity&&(e=`^${this.selectedSeverity}(.*)${e}`),e},exportFormAction(){return`?${r.MatomoUrl.stringify({module:"API",method:"LogViewer.getLogEntries",query:this.buildQuery,format:"TSV",page:0,limitPerPage:5e3})}`},logConfigJson(){return JSON.stringify(this.logConfig||{})},tokenAuth:()=>r.Matomo.token_auth,logsWithMessage(){return(this.logs||[]).filter(e=>e.message)}}}),u=(e,t)=>{const r=e.__vccOpts||e;for(const[l,o]of t)r[l]=o;return r},p={class:"logViewer"},h={class:"row"},m={class:"logWriters col s4 m3 l2"},y={class:"severities col s4 m3 l2"},v={class:"col s12 m12 l8"},V=["title","placeholder"],E=["title"],f={class:"useRegExp",style:{"margin-right":"3.5px"}},N=["action"],C=["value"],w=t.createElementVNode("input",{type:"hidden",name:"force_api_session",value:"1",style:{"margin-right":"3.5px"}},null,-1),k=["title"],L=["title"],S=t.createElementVNode("br",null,null,-1),b={class:"severity"},x={class:"tag"},_={class:"date"},T={class:"date"},q={class:"message"},R=["title","onClick"],D=["title","onClick"],A=["title","onClick"],I=["title","onClick"],P={class:"message"},W={key:0},O={colspan:"5"},B={colspan:"5"},j={class:"loadingPiwik"},M=t.createElementVNode("img",{src:"plugins/Morpheus/images/loading-blue.gif"},null,-1),F={colspan:"5",class:"paging"};const G=u(g,[["render",function(e,r,l,o,i,a){const s=t.resolveComponent("Field"),n=t.resolveComponent("ContentBlock"),c=t.resolveDirective("content-table");return t.openBlock(),t.createElementBlock("div",p,[t.createVNode(n,{"content-title":e.translate("LogViewer_LogViewer")},{default:t.withCtx(()=>{var l,o;return[t.createElementVNode("div",h,[t.createElementVNode("div",m,[t.createVNode(s,{uicontrol:"select",name:"logWriter","model-value":e.selectedLogWriter,"onUpdate:modelValue":r[0]||(r[0]=t=>{e.selectedLogWriter=t,e.update()}),"full-width":!0,options:e.logWriters},null,8,["model-value","options"])]),t.createElementVNode("div",y,[t.createVNode(s,{uicontrol:"select",name:"selectedSeverity","model-value":e.selectedSeverity,"onUpdate:modelValue":r[1]||(r[1]=t=>{e.selectedSeverity=t,e.update()}),"full-width":!0,options:e.severities},null,8,["model-value","options"])]),t.createElementVNode("div",v,[t.withDirectives(t.createElementVNode("input",{type:"text",class:"search",onKeydown:r[2]||(r[2]=t=>e.onSearchKeydown(t)),title:e.translate("LogViewer_SearchHelp"),"onUpdate:modelValue":r[3]||(r[3]=t=>e.query=t),placeholder:e.translate("LogViewer_SearchPattern"),style:{"margin-right":"3.5px"}},null,40,V),[[t.vModelText,e.query]]),t.createElementVNode("span",{class:"icon-search searchIcon",title:e.translate("General_ClickToSearch"),onClick:r[4]||(r[4]=t=>e.update())},null,8,E),t.createElementVNode("div",f,[t.createVNode(s,{uicontrol:"checkbox",title:e.translate("LogViewer_UseRegExp"),modelValue:e.useRegExp,"onUpdate:modelValue":r[5]||(r[5]=t=>e.useRegExp=t)},null,8,["title","modelValue"])]),t.createElementVNode("a",{class:"icon-reload",onClick:r[6]||(r[6]=t=>e.update()),style:{"margin-right":"3.5px"}}),t.createElementVNode("form",{method:"POST",id:"export",ref:"export",target:"_blank",action:e.exportFormAction},[t.createElementVNode("input",{type:"hidden",name:"token_auth",value:e.tokenAuth},null,8,C),w,t.createElementVNode("a",{class:"icon-export",onClick:r[7]||(r[7]=t=>e.$refs.export.submit()),title:e.translate("LogViewer_ExportThisSearch","TSV",5e3),style:{"margin-right":"3.5px"}},null,8,k)],8,N),t.createElementVNode("a",{class:"icon-info",target:"_blank",href:"https://piwik.org/faq/troubleshooting/faq_115/",rel:"noreferrer noopener",title:e.translate("LogViewer_CurrentLogConfigIs",e.logConfigJson)},null,8,L),S]),t.withDirectives((t.openBlock(),t.createElementBlock("table",null,[t.createElementVNode("thead",null,[t.createElementVNode("tr",null,[t.createElementVNode("th",b,t.toDisplayString(e.translate("LogViewer_Severity")),1),t.createElementVNode("th",x,t.toDisplayString(e.translate("LogViewer_Tag")),1),t.createElementVNode("th",_,t.toDisplayString(e.translate("General_Date")),1),t.createElementVNode("th",T,t.toDisplayString(e.translate("LogViewer_RequestId")),1),t.createElementVNode("th",q,t.toDisplayString(e.translate("LogViewer_Message")),1)])]),t.createElementVNode("tbody",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.logsWithMessage,(r,l)=>(t.openBlock(),t.createElementBlock("tr",{key:l},[t.createElementVNode("td",{class:t.normalizeClass(["severity",{selectable:r.severity}]),title:r.severity?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchSeverity(r.severity)},t.toDisplayString(r.severity||"-"),11,R),t.createElementVNode("td",{class:t.normalizeClass(["tag",{selectable:r.tag}]),title:r.tag?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchText(r.tag)},t.toDisplayString(r.tag||"-"),11,D),t.createElementVNode("td",{class:t.normalizeClass(["date",{selectable:r.datetime}]),title:r.datetime?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchDate(r.datetime)},t.toDisplayString(r.datetime||"-"),11,A),t.createElementVNode("td",{class:t.normalizeClass(["requestId",{selectable:r.requestId}]),title:r.requestId?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchRequestId(r.requestId)},t.toDisplayString(r.requestId||"-"),11,I),t.createElementVNode("td",P,t.toDisplayString(r.message),1)]))),128)),e.isLoading||0!==(null==(l=e.logs)?void 0:l.length)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("tr",W,[t.createElementVNode("td",O,t.toDisplayString(e.translate("General_SearchNoResults")),1)])),t.withDirectives(t.createElementVNode("tr",null,[t.createElementVNode("td",B,[t.createElementVNode("span",j,[M,t.createTextVNode(" "+t.toDisplayString(e.translate("General_Loading")),1)])])],512),[[t.vShow,e.isLoading]]),t.createElementVNode("tr",null,[t.createElementVNode("td",F,[t.withDirectives(t.createElementVNode("span",{id:"prev",class:"previous",onClick:r[9]||(r[9]=t=>e.previousPage())},[t.createElementVNode("a",{class:"btn",onClick:r[8]||(r[8]=t.withModifiers(()=>{},["prevent"]))},[t.createElementVNode("span",null,"« "+t.toDisplayString(e.translate("General_Previous")),1)])],512),[[t.vShow,!(e.page<1)]]),t.withDirectives(t.createElementVNode("span",{id:"next",class:"next pointer",onClick:r[11]||(r[11]=t=>e.nextPage())},[t.createElementVNode("a",{class:"btn",onClick:r[10]||(r[10]=t.withModifiers(()=>{},["prevent"]))},[t.createElementVNode("span",null,t.toDisplayString(e.translate("General_Next"))+" »",1)])],512),[[t.vShow,!((null==(o=e.logs)?void 0:o.length)<1)]])])])])])),[[c]])])]}),_:1},8,["content-title"])])}]]);e.LogViewer=G,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("CoreHome"),require("CorePluginsAdmin")):"function"==typeof define&&define.amd?define(["exports","vue","CoreHome","CorePluginsAdmin"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).LogViewer={},e.Vue,e.CoreHome,e.CorePluginsAdmin)}(this,function(e,t,r,l){"use strict";var o=Object.defineProperty,i=Object.defineProperties,a=Object.getOwnPropertyDescriptors,s=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,c=Object.prototype.propertyIsEnumerable,d=(e,t,r)=>t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;const g=t.defineComponent({props:{limit:{type:Number,required:!0}},components:{ContentBlock:r.ContentBlock,Field:l.Field},directives:{ContentTable:r.ContentTable},data:()=>({page:0,query:"",isLoading:!0,logWriters:[],selectedLogWriter:"",useRegExp:!1,severities:[{key:"",value:r.translate("LogViewer_AnySeverity")},{key:"DEBUG",value:"DEBUG"},{key:"INFO",value:"INFO"},{key:"NOTICE",value:"NOTICE"},{key:"WARNING",value:"WARNING"},{key:"ERROR",value:"ERROR"},{key:"CRITICAL",value:"CRITICAL"},{key:"ALERT",value:"ALERT"},{key:"EMERGENCY",value:"EMERGENCY"}],selectedSeverity:"",logs:void 0,logConfig:void 0}),setup(){let e=null;return{getLogEntries:t=>{return e&&(e.abort(),e=null),e=new AbortController,r.AjaxHelper.fetch((l=((e,t)=>{for(var r in t||(t={}))n.call(t,r)&&d(e,r,t[r]);if(s)for(var r of s(t))c.call(t,r)&&d(e,r,t[r]);return e})({},t),o={method:"LogViewer.getLogEntries"},i(l,a(o))),{abortController:e,createErrorNotification:!1}).finally(()=>{e=null});var l,o}}},created(){r.AjaxHelper.fetch({method:"LogViewer.getAvailableLogReaders"}).then(e=>{Array.isArray(e)&&(this.logWriters=e.map(e=>({key:e,value:e})))}).then(()=>r.AjaxHelper.fetch({method:"LogViewer.getConfiguredLogReaders"})).then(e=>{var t;if(null==e?void 0:e[0])[this.selectedLogWriter]=e;else{const e=r.translate("LogViewer_NoSupportedLogWriterConfiguredTitle"),l=r.translate("LogViewer_NoSupportedLogWriterConfiguredMessage",['',"",this.logWriters.map(e=>e.value).join(", ")]);r.NotificationsStore.show({message:l,title:e,context:"info",noclear:!0,type:"transient"}),(null==(t=this.logWriters)?void 0:t[0])&&(this.selectedLogWriter=this.logWriters[0].value)}this.selectedLogWriter?this.update():this.isLoading=!1}),r.AjaxHelper.fetch({method:"LogViewer.getLogConfig",filter_limit:"-1"}).then(e=>{this.logConfig=e})},methods:{update(){this.isLoading=!0,this.logs=[],this.getLogEntries({query:this.buildQuery,limitPerPage:this.limit,source:this.selectedLogWriter,page:this.page}).catch(e=>(r.NotificationsStore.show({message:e.message||e,context:"error",type:"transient"}),[])).then(e=>{this.logs=e}).finally(()=>{this.isLoading=!1})},searchSeverity(e){e&&(this.selectedSeverity=e.toUpperCase(),this.update())},searchDate(e){e&&(this.selectedSeverity="",this.query=`\\[${e.substr(0,10)}.{9}\\]`,this.useRegExp=!0,this.update())},searchRequestId(e){e&&this.searchText(`[${e}]`)},searchText(e){e&&(this.selectedSeverity="",this.query=e,this.useRegExp&&(this.query=window.preg_quote(this.query)),this.update())},previousPage(){this.page>0&&(this.page-=1,this.update())},nextPage(){var e;(null==(e=this.logs)?void 0:e.length)&&(this.page+=1,this.update())},onSearchKeydown(e){"Enter"===e.code&&this.update()}},computed:{buildQuery(){let{query:e}=this;return this.useRegExp||(e=window.preg_quote(this.query)),this.selectedSeverity&&(e=`^${this.selectedSeverity}(.*)${e}`),e},exportFormAction(){return`?${r.MatomoUrl.stringify({module:"API",method:"LogViewer.getLogEntries",query:this.buildQuery,format:"TSV",page:0,limitPerPage:5e3})}`},logConfigJson(){return JSON.stringify(this.logConfig||{})},tokenAuth:()=>r.Matomo.token_auth,logsWithMessage(){return(this.logs||[]).filter(e=>e.message)}}}),u={class:"logViewer"},p={class:"row"},h={class:"logWriters col s4 m3 l2"},m={class:"severities col s4 m3 l2"},y={class:"col s12 m12 l8"},v=["title","placeholder"],V=["title"],E={class:"useRegExp",style:{"margin-right":"3.5px"}},f=["action"],N=["value"],C=["title"],w=["title"],k={class:"severity"},L={class:"tag"},S={class:"date"},b={class:"date"},x={class:"message"},_=["title","onClick"],T=["title","onClick"],q=["title","onClick"],R=["title","onClick"],D={class:"message"},A={key:0},I={colspan:"5"},P={colspan:"5"},W={class:"loadingPiwik"},O={colspan:"5",class:"paging"};const B=((e,t)=>{const r=e.__vccOpts||e;for(const[l,o]of t)r[l]=o;return r})(g,[["render",function(e,r,l,o,i,a){const s=t.resolveComponent("Field"),n=t.resolveComponent("ContentBlock"),c=t.resolveDirective("content-table");return t.openBlock(),t.createElementBlock("div",u,[t.createVNode(n,{"content-title":e.translate("LogViewer_LogViewer")},{default:t.withCtx(()=>{var l,o;return[t.createElementVNode("div",p,[t.createElementVNode("div",h,[t.createVNode(s,{uicontrol:"select",name:"logWriter","model-value":e.selectedLogWriter,"onUpdate:modelValue":r[0]||(r[0]=t=>{e.selectedLogWriter=t,e.update()}),"full-width":!0,options:e.logWriters},null,8,["model-value","options"])]),t.createElementVNode("div",m,[t.createVNode(s,{uicontrol:"select",name:"selectedSeverity","model-value":e.selectedSeverity,"onUpdate:modelValue":r[1]||(r[1]=t=>{e.selectedSeverity=t,e.update()}),"full-width":!0,options:e.severities},null,8,["model-value","options"])]),t.createElementVNode("div",y,[t.withDirectives(t.createElementVNode("input",{type:"text",class:"search",onKeydown:r[2]||(r[2]=t=>e.onSearchKeydown(t)),title:e.translate("LogViewer_SearchHelp"),"onUpdate:modelValue":r[3]||(r[3]=t=>e.query=t),placeholder:e.translate("LogViewer_SearchPattern"),style:{"margin-right":"3.5px"}},null,40,v),[[t.vModelText,e.query]]),t.createElementVNode("span",{class:"icon-search searchIcon",title:e.translate("General_ClickToSearch"),onClick:r[4]||(r[4]=t=>e.update())},null,8,V),t.createElementVNode("div",E,[t.createVNode(s,{uicontrol:"checkbox",title:e.translate("LogViewer_UseRegExp"),modelValue:e.useRegExp,"onUpdate:modelValue":r[5]||(r[5]=t=>e.useRegExp=t)},null,8,["title","modelValue"])]),t.createElementVNode("a",{class:"icon-reload",onClick:r[6]||(r[6]=t=>e.update()),style:{"margin-right":"3.5px"}}),t.createElementVNode("form",{method:"POST",id:"export",ref:"export",target:"_blank",action:e.exportFormAction},[t.createElementVNode("input",{type:"hidden",name:"token_auth",value:e.tokenAuth},null,8,N),r[12]||(r[12]=t.createElementVNode("input",{type:"hidden",name:"force_api_session",value:"1",style:{"margin-right":"3.5px"}},null,-1)),t.createElementVNode("a",{class:"icon-export",onClick:r[7]||(r[7]=t=>e.$refs.export.submit()),title:e.translate("LogViewer_ExportThisSearch","TSV",5e3),style:{"margin-right":"3.5px"}},null,8,C)],8,f),t.createElementVNode("a",{class:"icon-info",target:"_blank",href:"https://piwik.org/faq/troubleshooting/faq_115/",rel:"noreferrer noopener",title:e.translate("LogViewer_CurrentLogConfigIs",e.logConfigJson)},null,8,w),r[13]||(r[13]=t.createElementVNode("br",null,null,-1))]),t.withDirectives((t.openBlock(),t.createElementBlock("table",null,[t.createElementVNode("thead",null,[t.createElementVNode("tr",null,[t.createElementVNode("th",k,t.toDisplayString(e.translate("LogViewer_Severity")),1),t.createElementVNode("th",L,t.toDisplayString(e.translate("LogViewer_Tag")),1),t.createElementVNode("th",S,t.toDisplayString(e.translate("General_Date")),1),t.createElementVNode("th",b,t.toDisplayString(e.translate("LogViewer_RequestId")),1),t.createElementVNode("th",x,t.toDisplayString(e.translate("LogViewer_Message")),1)])]),t.createElementVNode("tbody",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.logsWithMessage,(r,l)=>(t.openBlock(),t.createElementBlock("tr",{key:l},[t.createElementVNode("td",{class:t.normalizeClass(["severity",{selectable:r.severity}]),title:r.severity?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchSeverity(r.severity)},t.toDisplayString(r.severity||"-"),11,_),t.createElementVNode("td",{class:t.normalizeClass(["tag",{selectable:r.tag}]),title:r.tag?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchText(r.tag)},t.toDisplayString(r.tag||"-"),11,T),t.createElementVNode("td",{class:t.normalizeClass(["date",{selectable:r.datetime}]),title:r.datetime?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchDate(r.datetime)},t.toDisplayString(r.datetime||"-"),11,q),t.createElementVNode("td",{class:t.normalizeClass(["requestId",{selectable:r.requestId}]),title:r.requestId?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchRequestId(r.requestId)},t.toDisplayString(r.requestId||"-"),11,R),t.createElementVNode("td",D,t.toDisplayString(r.message),1)]))),128)),e.isLoading||0!==(null==(l=e.logs)?void 0:l.length)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("tr",A,[t.createElementVNode("td",I,t.toDisplayString(e.translate("General_SearchNoResults")),1)])),t.withDirectives(t.createElementVNode("tr",null,[t.createElementVNode("td",P,[t.createElementVNode("span",W,[r[14]||(r[14]=t.createElementVNode("img",{src:"plugins/Morpheus/images/loading-blue.gif"},null,-1)),t.createTextVNode(" "+t.toDisplayString(e.translate("General_Loading")),1)])])],512),[[t.vShow,e.isLoading]]),t.createElementVNode("tr",null,[t.createElementVNode("td",O,[t.withDirectives(t.createElementVNode("span",{id:"prev",class:"previous",onClick:r[9]||(r[9]=t=>e.previousPage())},[t.createElementVNode("a",{class:"btn",onClick:r[8]||(r[8]=t.withModifiers(()=>{},["prevent"]))},[t.createElementVNode("span",null,"« "+t.toDisplayString(e.translate("General_Previous")),1)])],512),[[t.vShow,!(e.page<1)]]),t.withDirectives(t.createElementVNode("span",{id:"next",class:"next pointer",onClick:r[11]||(r[11]=t=>e.nextPage())},[t.createElementVNode("a",{class:"btn",onClick:r[10]||(r[10]=t.withModifiers(()=>{},["prevent"]))},[t.createElementVNode("span",null,t.toDisplayString(e.translate("General_Next"))+" »",1)])],512),[[t.vShow,!((null==(o=e.logs)?void 0:o.length)<1)]])])])])])),[[c]])])]}),_:1},8,["content-title"])])}]]);e.LogViewer=B,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}); From 8ea80628981022956565c614c7640863eb2810b7 Mon Sep 17 00:00:00 2001 From: sgiehl Date: Sun, 12 Jul 2026 21:17:09 +0200 Subject: [PATCH 3/3] Fix LogViewer Vue declaration type errors Coerce the numeric export-limit translate arg and guard the optional logs length. --- vue/dist/LogViewer.umd.js | 4 ++-- vue/dist/LogViewer.umd.min.js | 2 +- vue/src/LogViewer/LogViewer.vue | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/vue/dist/LogViewer.umd.js b/vue/dist/LogViewer.umd.js index e9710a8..c663203 100644 --- a/vue/dist/LogViewer.umd.js +++ b/vue/dist/LogViewer.umd.js @@ -393,7 +393,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); vue.createElementVNode("a", { class: "icon-export", onClick: _cache[7] || (_cache[7] = ($event) => _ctx.$refs.export.submit()), - title: _ctx.translate("LogViewer_ExportThisSearch", "TSV", 5e3), + title: _ctx.translate("LogViewer_ExportThisSearch", "TSV", "5000"), style: { "margin-right": "3.5px" } }, null, 8, _hoisted_11) ], 8, _hoisted_9), @@ -485,7 +485,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); vue.createElementVNode("span", null, vue.toDisplayString(_ctx.translate("General_Next")) + " »", 1) ]) ], 512), [ - [vue.vShow, !(((_b = _ctx.logs) == null ? void 0 : _b.length) < 1)] + [vue.vShow, !((((_b = _ctx.logs) == null ? void 0 : _b.length) || 0) < 1)] ]) ]) ]) diff --git a/vue/dist/LogViewer.umd.min.js b/vue/dist/LogViewer.umd.min.js index a4bba16..90e4ce8 100644 --- a/vue/dist/LogViewer.umd.min.js +++ b/vue/dist/LogViewer.umd.min.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("CoreHome"),require("CorePluginsAdmin")):"function"==typeof define&&define.amd?define(["exports","vue","CoreHome","CorePluginsAdmin"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).LogViewer={},e.Vue,e.CoreHome,e.CorePluginsAdmin)}(this,function(e,t,r,l){"use strict";var o=Object.defineProperty,i=Object.defineProperties,a=Object.getOwnPropertyDescriptors,s=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,c=Object.prototype.propertyIsEnumerable,d=(e,t,r)=>t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;const g=t.defineComponent({props:{limit:{type:Number,required:!0}},components:{ContentBlock:r.ContentBlock,Field:l.Field},directives:{ContentTable:r.ContentTable},data:()=>({page:0,query:"",isLoading:!0,logWriters:[],selectedLogWriter:"",useRegExp:!1,severities:[{key:"",value:r.translate("LogViewer_AnySeverity")},{key:"DEBUG",value:"DEBUG"},{key:"INFO",value:"INFO"},{key:"NOTICE",value:"NOTICE"},{key:"WARNING",value:"WARNING"},{key:"ERROR",value:"ERROR"},{key:"CRITICAL",value:"CRITICAL"},{key:"ALERT",value:"ALERT"},{key:"EMERGENCY",value:"EMERGENCY"}],selectedSeverity:"",logs:void 0,logConfig:void 0}),setup(){let e=null;return{getLogEntries:t=>{return e&&(e.abort(),e=null),e=new AbortController,r.AjaxHelper.fetch((l=((e,t)=>{for(var r in t||(t={}))n.call(t,r)&&d(e,r,t[r]);if(s)for(var r of s(t))c.call(t,r)&&d(e,r,t[r]);return e})({},t),o={method:"LogViewer.getLogEntries"},i(l,a(o))),{abortController:e,createErrorNotification:!1}).finally(()=>{e=null});var l,o}}},created(){r.AjaxHelper.fetch({method:"LogViewer.getAvailableLogReaders"}).then(e=>{Array.isArray(e)&&(this.logWriters=e.map(e=>({key:e,value:e})))}).then(()=>r.AjaxHelper.fetch({method:"LogViewer.getConfiguredLogReaders"})).then(e=>{var t;if(null==e?void 0:e[0])[this.selectedLogWriter]=e;else{const e=r.translate("LogViewer_NoSupportedLogWriterConfiguredTitle"),l=r.translate("LogViewer_NoSupportedLogWriterConfiguredMessage",['',"",this.logWriters.map(e=>e.value).join(", ")]);r.NotificationsStore.show({message:l,title:e,context:"info",noclear:!0,type:"transient"}),(null==(t=this.logWriters)?void 0:t[0])&&(this.selectedLogWriter=this.logWriters[0].value)}this.selectedLogWriter?this.update():this.isLoading=!1}),r.AjaxHelper.fetch({method:"LogViewer.getLogConfig",filter_limit:"-1"}).then(e=>{this.logConfig=e})},methods:{update(){this.isLoading=!0,this.logs=[],this.getLogEntries({query:this.buildQuery,limitPerPage:this.limit,source:this.selectedLogWriter,page:this.page}).catch(e=>(r.NotificationsStore.show({message:e.message||e,context:"error",type:"transient"}),[])).then(e=>{this.logs=e}).finally(()=>{this.isLoading=!1})},searchSeverity(e){e&&(this.selectedSeverity=e.toUpperCase(),this.update())},searchDate(e){e&&(this.selectedSeverity="",this.query=`\\[${e.substr(0,10)}.{9}\\]`,this.useRegExp=!0,this.update())},searchRequestId(e){e&&this.searchText(`[${e}]`)},searchText(e){e&&(this.selectedSeverity="",this.query=e,this.useRegExp&&(this.query=window.preg_quote(this.query)),this.update())},previousPage(){this.page>0&&(this.page-=1,this.update())},nextPage(){var e;(null==(e=this.logs)?void 0:e.length)&&(this.page+=1,this.update())},onSearchKeydown(e){"Enter"===e.code&&this.update()}},computed:{buildQuery(){let{query:e}=this;return this.useRegExp||(e=window.preg_quote(this.query)),this.selectedSeverity&&(e=`^${this.selectedSeverity}(.*)${e}`),e},exportFormAction(){return`?${r.MatomoUrl.stringify({module:"API",method:"LogViewer.getLogEntries",query:this.buildQuery,format:"TSV",page:0,limitPerPage:5e3})}`},logConfigJson(){return JSON.stringify(this.logConfig||{})},tokenAuth:()=>r.Matomo.token_auth,logsWithMessage(){return(this.logs||[]).filter(e=>e.message)}}}),u={class:"logViewer"},p={class:"row"},h={class:"logWriters col s4 m3 l2"},m={class:"severities col s4 m3 l2"},y={class:"col s12 m12 l8"},v=["title","placeholder"],V=["title"],E={class:"useRegExp",style:{"margin-right":"3.5px"}},f=["action"],N=["value"],C=["title"],w=["title"],k={class:"severity"},L={class:"tag"},S={class:"date"},b={class:"date"},x={class:"message"},_=["title","onClick"],T=["title","onClick"],q=["title","onClick"],R=["title","onClick"],D={class:"message"},A={key:0},I={colspan:"5"},P={colspan:"5"},W={class:"loadingPiwik"},O={colspan:"5",class:"paging"};const B=((e,t)=>{const r=e.__vccOpts||e;for(const[l,o]of t)r[l]=o;return r})(g,[["render",function(e,r,l,o,i,a){const s=t.resolveComponent("Field"),n=t.resolveComponent("ContentBlock"),c=t.resolveDirective("content-table");return t.openBlock(),t.createElementBlock("div",u,[t.createVNode(n,{"content-title":e.translate("LogViewer_LogViewer")},{default:t.withCtx(()=>{var l,o;return[t.createElementVNode("div",p,[t.createElementVNode("div",h,[t.createVNode(s,{uicontrol:"select",name:"logWriter","model-value":e.selectedLogWriter,"onUpdate:modelValue":r[0]||(r[0]=t=>{e.selectedLogWriter=t,e.update()}),"full-width":!0,options:e.logWriters},null,8,["model-value","options"])]),t.createElementVNode("div",m,[t.createVNode(s,{uicontrol:"select",name:"selectedSeverity","model-value":e.selectedSeverity,"onUpdate:modelValue":r[1]||(r[1]=t=>{e.selectedSeverity=t,e.update()}),"full-width":!0,options:e.severities},null,8,["model-value","options"])]),t.createElementVNode("div",y,[t.withDirectives(t.createElementVNode("input",{type:"text",class:"search",onKeydown:r[2]||(r[2]=t=>e.onSearchKeydown(t)),title:e.translate("LogViewer_SearchHelp"),"onUpdate:modelValue":r[3]||(r[3]=t=>e.query=t),placeholder:e.translate("LogViewer_SearchPattern"),style:{"margin-right":"3.5px"}},null,40,v),[[t.vModelText,e.query]]),t.createElementVNode("span",{class:"icon-search searchIcon",title:e.translate("General_ClickToSearch"),onClick:r[4]||(r[4]=t=>e.update())},null,8,V),t.createElementVNode("div",E,[t.createVNode(s,{uicontrol:"checkbox",title:e.translate("LogViewer_UseRegExp"),modelValue:e.useRegExp,"onUpdate:modelValue":r[5]||(r[5]=t=>e.useRegExp=t)},null,8,["title","modelValue"])]),t.createElementVNode("a",{class:"icon-reload",onClick:r[6]||(r[6]=t=>e.update()),style:{"margin-right":"3.5px"}}),t.createElementVNode("form",{method:"POST",id:"export",ref:"export",target:"_blank",action:e.exportFormAction},[t.createElementVNode("input",{type:"hidden",name:"token_auth",value:e.tokenAuth},null,8,N),r[12]||(r[12]=t.createElementVNode("input",{type:"hidden",name:"force_api_session",value:"1",style:{"margin-right":"3.5px"}},null,-1)),t.createElementVNode("a",{class:"icon-export",onClick:r[7]||(r[7]=t=>e.$refs.export.submit()),title:e.translate("LogViewer_ExportThisSearch","TSV",5e3),style:{"margin-right":"3.5px"}},null,8,C)],8,f),t.createElementVNode("a",{class:"icon-info",target:"_blank",href:"https://piwik.org/faq/troubleshooting/faq_115/",rel:"noreferrer noopener",title:e.translate("LogViewer_CurrentLogConfigIs",e.logConfigJson)},null,8,w),r[13]||(r[13]=t.createElementVNode("br",null,null,-1))]),t.withDirectives((t.openBlock(),t.createElementBlock("table",null,[t.createElementVNode("thead",null,[t.createElementVNode("tr",null,[t.createElementVNode("th",k,t.toDisplayString(e.translate("LogViewer_Severity")),1),t.createElementVNode("th",L,t.toDisplayString(e.translate("LogViewer_Tag")),1),t.createElementVNode("th",S,t.toDisplayString(e.translate("General_Date")),1),t.createElementVNode("th",b,t.toDisplayString(e.translate("LogViewer_RequestId")),1),t.createElementVNode("th",x,t.toDisplayString(e.translate("LogViewer_Message")),1)])]),t.createElementVNode("tbody",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.logsWithMessage,(r,l)=>(t.openBlock(),t.createElementBlock("tr",{key:l},[t.createElementVNode("td",{class:t.normalizeClass(["severity",{selectable:r.severity}]),title:r.severity?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchSeverity(r.severity)},t.toDisplayString(r.severity||"-"),11,_),t.createElementVNode("td",{class:t.normalizeClass(["tag",{selectable:r.tag}]),title:r.tag?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchText(r.tag)},t.toDisplayString(r.tag||"-"),11,T),t.createElementVNode("td",{class:t.normalizeClass(["date",{selectable:r.datetime}]),title:r.datetime?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchDate(r.datetime)},t.toDisplayString(r.datetime||"-"),11,q),t.createElementVNode("td",{class:t.normalizeClass(["requestId",{selectable:r.requestId}]),title:r.requestId?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchRequestId(r.requestId)},t.toDisplayString(r.requestId||"-"),11,R),t.createElementVNode("td",D,t.toDisplayString(r.message),1)]))),128)),e.isLoading||0!==(null==(l=e.logs)?void 0:l.length)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("tr",A,[t.createElementVNode("td",I,t.toDisplayString(e.translate("General_SearchNoResults")),1)])),t.withDirectives(t.createElementVNode("tr",null,[t.createElementVNode("td",P,[t.createElementVNode("span",W,[r[14]||(r[14]=t.createElementVNode("img",{src:"plugins/Morpheus/images/loading-blue.gif"},null,-1)),t.createTextVNode(" "+t.toDisplayString(e.translate("General_Loading")),1)])])],512),[[t.vShow,e.isLoading]]),t.createElementVNode("tr",null,[t.createElementVNode("td",O,[t.withDirectives(t.createElementVNode("span",{id:"prev",class:"previous",onClick:r[9]||(r[9]=t=>e.previousPage())},[t.createElementVNode("a",{class:"btn",onClick:r[8]||(r[8]=t.withModifiers(()=>{},["prevent"]))},[t.createElementVNode("span",null,"« "+t.toDisplayString(e.translate("General_Previous")),1)])],512),[[t.vShow,!(e.page<1)]]),t.withDirectives(t.createElementVNode("span",{id:"next",class:"next pointer",onClick:r[11]||(r[11]=t=>e.nextPage())},[t.createElementVNode("a",{class:"btn",onClick:r[10]||(r[10]=t.withModifiers(()=>{},["prevent"]))},[t.createElementVNode("span",null,t.toDisplayString(e.translate("General_Next"))+" »",1)])],512),[[t.vShow,!((null==(o=e.logs)?void 0:o.length)<1)]])])])])])),[[c]])])]}),_:1},8,["content-title"])])}]]);e.LogViewer=B,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("CoreHome"),require("CorePluginsAdmin")):"function"==typeof define&&define.amd?define(["exports","vue","CoreHome","CorePluginsAdmin"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).LogViewer={},e.Vue,e.CoreHome,e.CorePluginsAdmin)}(this,function(e,t,r,l){"use strict";var o=Object.defineProperty,i=Object.defineProperties,a=Object.getOwnPropertyDescriptors,s=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,c=Object.prototype.propertyIsEnumerable,d=(e,t,r)=>t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;const g=t.defineComponent({props:{limit:{type:Number,required:!0}},components:{ContentBlock:r.ContentBlock,Field:l.Field},directives:{ContentTable:r.ContentTable},data:()=>({page:0,query:"",isLoading:!0,logWriters:[],selectedLogWriter:"",useRegExp:!1,severities:[{key:"",value:r.translate("LogViewer_AnySeverity")},{key:"DEBUG",value:"DEBUG"},{key:"INFO",value:"INFO"},{key:"NOTICE",value:"NOTICE"},{key:"WARNING",value:"WARNING"},{key:"ERROR",value:"ERROR"},{key:"CRITICAL",value:"CRITICAL"},{key:"ALERT",value:"ALERT"},{key:"EMERGENCY",value:"EMERGENCY"}],selectedSeverity:"",logs:void 0,logConfig:void 0}),setup(){let e=null;return{getLogEntries:t=>{return e&&(e.abort(),e=null),e=new AbortController,r.AjaxHelper.fetch((l=((e,t)=>{for(var r in t||(t={}))n.call(t,r)&&d(e,r,t[r]);if(s)for(var r of s(t))c.call(t,r)&&d(e,r,t[r]);return e})({},t),o={method:"LogViewer.getLogEntries"},i(l,a(o))),{abortController:e,createErrorNotification:!1}).finally(()=>{e=null});var l,o}}},created(){r.AjaxHelper.fetch({method:"LogViewer.getAvailableLogReaders"}).then(e=>{Array.isArray(e)&&(this.logWriters=e.map(e=>({key:e,value:e})))}).then(()=>r.AjaxHelper.fetch({method:"LogViewer.getConfiguredLogReaders"})).then(e=>{var t;if(null==e?void 0:e[0])[this.selectedLogWriter]=e;else{const e=r.translate("LogViewer_NoSupportedLogWriterConfiguredTitle"),l=r.translate("LogViewer_NoSupportedLogWriterConfiguredMessage",['',"",this.logWriters.map(e=>e.value).join(", ")]);r.NotificationsStore.show({message:l,title:e,context:"info",noclear:!0,type:"transient"}),(null==(t=this.logWriters)?void 0:t[0])&&(this.selectedLogWriter=this.logWriters[0].value)}this.selectedLogWriter?this.update():this.isLoading=!1}),r.AjaxHelper.fetch({method:"LogViewer.getLogConfig",filter_limit:"-1"}).then(e=>{this.logConfig=e})},methods:{update(){this.isLoading=!0,this.logs=[],this.getLogEntries({query:this.buildQuery,limitPerPage:this.limit,source:this.selectedLogWriter,page:this.page}).catch(e=>(r.NotificationsStore.show({message:e.message||e,context:"error",type:"transient"}),[])).then(e=>{this.logs=e}).finally(()=>{this.isLoading=!1})},searchSeverity(e){e&&(this.selectedSeverity=e.toUpperCase(),this.update())},searchDate(e){e&&(this.selectedSeverity="",this.query=`\\[${e.substr(0,10)}.{9}\\]`,this.useRegExp=!0,this.update())},searchRequestId(e){e&&this.searchText(`[${e}]`)},searchText(e){e&&(this.selectedSeverity="",this.query=e,this.useRegExp&&(this.query=window.preg_quote(this.query)),this.update())},previousPage(){this.page>0&&(this.page-=1,this.update())},nextPage(){var e;(null==(e=this.logs)?void 0:e.length)&&(this.page+=1,this.update())},onSearchKeydown(e){"Enter"===e.code&&this.update()}},computed:{buildQuery(){let{query:e}=this;return this.useRegExp||(e=window.preg_quote(this.query)),this.selectedSeverity&&(e=`^${this.selectedSeverity}(.*)${e}`),e},exportFormAction(){return`?${r.MatomoUrl.stringify({module:"API",method:"LogViewer.getLogEntries",query:this.buildQuery,format:"TSV",page:0,limitPerPage:5e3})}`},logConfigJson(){return JSON.stringify(this.logConfig||{})},tokenAuth:()=>r.Matomo.token_auth,logsWithMessage(){return(this.logs||[]).filter(e=>e.message)}}}),u={class:"logViewer"},p={class:"row"},h={class:"logWriters col s4 m3 l2"},m={class:"severities col s4 m3 l2"},y={class:"col s12 m12 l8"},v=["title","placeholder"],V=["title"],E={class:"useRegExp",style:{"margin-right":"3.5px"}},f=["action"],N=["value"],C=["title"],w=["title"],k={class:"severity"},L={class:"tag"},S={class:"date"},b={class:"date"},x={class:"message"},_=["title","onClick"],T=["title","onClick"],q=["title","onClick"],R=["title","onClick"],D={class:"message"},A={key:0},I={colspan:"5"},P={colspan:"5"},W={class:"loadingPiwik"},O={colspan:"5",class:"paging"};const B=((e,t)=>{const r=e.__vccOpts||e;for(const[l,o]of t)r[l]=o;return r})(g,[["render",function(e,r,l,o,i,a){const s=t.resolveComponent("Field"),n=t.resolveComponent("ContentBlock"),c=t.resolveDirective("content-table");return t.openBlock(),t.createElementBlock("div",u,[t.createVNode(n,{"content-title":e.translate("LogViewer_LogViewer")},{default:t.withCtx(()=>{var l,o;return[t.createElementVNode("div",p,[t.createElementVNode("div",h,[t.createVNode(s,{uicontrol:"select",name:"logWriter","model-value":e.selectedLogWriter,"onUpdate:modelValue":r[0]||(r[0]=t=>{e.selectedLogWriter=t,e.update()}),"full-width":!0,options:e.logWriters},null,8,["model-value","options"])]),t.createElementVNode("div",m,[t.createVNode(s,{uicontrol:"select",name:"selectedSeverity","model-value":e.selectedSeverity,"onUpdate:modelValue":r[1]||(r[1]=t=>{e.selectedSeverity=t,e.update()}),"full-width":!0,options:e.severities},null,8,["model-value","options"])]),t.createElementVNode("div",y,[t.withDirectives(t.createElementVNode("input",{type:"text",class:"search",onKeydown:r[2]||(r[2]=t=>e.onSearchKeydown(t)),title:e.translate("LogViewer_SearchHelp"),"onUpdate:modelValue":r[3]||(r[3]=t=>e.query=t),placeholder:e.translate("LogViewer_SearchPattern"),style:{"margin-right":"3.5px"}},null,40,v),[[t.vModelText,e.query]]),t.createElementVNode("span",{class:"icon-search searchIcon",title:e.translate("General_ClickToSearch"),onClick:r[4]||(r[4]=t=>e.update())},null,8,V),t.createElementVNode("div",E,[t.createVNode(s,{uicontrol:"checkbox",title:e.translate("LogViewer_UseRegExp"),modelValue:e.useRegExp,"onUpdate:modelValue":r[5]||(r[5]=t=>e.useRegExp=t)},null,8,["title","modelValue"])]),t.createElementVNode("a",{class:"icon-reload",onClick:r[6]||(r[6]=t=>e.update()),style:{"margin-right":"3.5px"}}),t.createElementVNode("form",{method:"POST",id:"export",ref:"export",target:"_blank",action:e.exportFormAction},[t.createElementVNode("input",{type:"hidden",name:"token_auth",value:e.tokenAuth},null,8,N),r[12]||(r[12]=t.createElementVNode("input",{type:"hidden",name:"force_api_session",value:"1",style:{"margin-right":"3.5px"}},null,-1)),t.createElementVNode("a",{class:"icon-export",onClick:r[7]||(r[7]=t=>e.$refs.export.submit()),title:e.translate("LogViewer_ExportThisSearch","TSV","5000"),style:{"margin-right":"3.5px"}},null,8,C)],8,f),t.createElementVNode("a",{class:"icon-info",target:"_blank",href:"https://piwik.org/faq/troubleshooting/faq_115/",rel:"noreferrer noopener",title:e.translate("LogViewer_CurrentLogConfigIs",e.logConfigJson)},null,8,w),r[13]||(r[13]=t.createElementVNode("br",null,null,-1))]),t.withDirectives((t.openBlock(),t.createElementBlock("table",null,[t.createElementVNode("thead",null,[t.createElementVNode("tr",null,[t.createElementVNode("th",k,t.toDisplayString(e.translate("LogViewer_Severity")),1),t.createElementVNode("th",L,t.toDisplayString(e.translate("LogViewer_Tag")),1),t.createElementVNode("th",S,t.toDisplayString(e.translate("General_Date")),1),t.createElementVNode("th",b,t.toDisplayString(e.translate("LogViewer_RequestId")),1),t.createElementVNode("th",x,t.toDisplayString(e.translate("LogViewer_Message")),1)])]),t.createElementVNode("tbody",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.logsWithMessage,(r,l)=>(t.openBlock(),t.createElementBlock("tr",{key:l},[t.createElementVNode("td",{class:t.normalizeClass(["severity",{selectable:r.severity}]),title:r.severity?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchSeverity(r.severity)},t.toDisplayString(r.severity||"-"),11,_),t.createElementVNode("td",{class:t.normalizeClass(["tag",{selectable:r.tag}]),title:r.tag?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchText(r.tag)},t.toDisplayString(r.tag||"-"),11,T),t.createElementVNode("td",{class:t.normalizeClass(["date",{selectable:r.datetime}]),title:r.datetime?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchDate(r.datetime)},t.toDisplayString(r.datetime||"-"),11,q),t.createElementVNode("td",{class:t.normalizeClass(["requestId",{selectable:r.requestId}]),title:r.requestId?e.translate("LogViewer_ClickToSearchForThis"):"",onClick:t=>e.searchRequestId(r.requestId)},t.toDisplayString(r.requestId||"-"),11,R),t.createElementVNode("td",D,t.toDisplayString(r.message),1)]))),128)),e.isLoading||0!==(null==(l=e.logs)?void 0:l.length)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("tr",A,[t.createElementVNode("td",I,t.toDisplayString(e.translate("General_SearchNoResults")),1)])),t.withDirectives(t.createElementVNode("tr",null,[t.createElementVNode("td",P,[t.createElementVNode("span",W,[r[14]||(r[14]=t.createElementVNode("img",{src:"plugins/Morpheus/images/loading-blue.gif"},null,-1)),t.createTextVNode(" "+t.toDisplayString(e.translate("General_Loading")),1)])])],512),[[t.vShow,e.isLoading]]),t.createElementVNode("tr",null,[t.createElementVNode("td",O,[t.withDirectives(t.createElementVNode("span",{id:"prev",class:"previous",onClick:r[9]||(r[9]=t=>e.previousPage())},[t.createElementVNode("a",{class:"btn",onClick:r[8]||(r[8]=t.withModifiers(()=>{},["prevent"]))},[t.createElementVNode("span",null,"« "+t.toDisplayString(e.translate("General_Previous")),1)])],512),[[t.vShow,!(e.page<1)]]),t.withDirectives(t.createElementVNode("span",{id:"next",class:"next pointer",onClick:r[11]||(r[11]=t=>e.nextPage())},[t.createElementVNode("a",{class:"btn",onClick:r[10]||(r[10]=t.withModifiers(()=>{},["prevent"]))},[t.createElementVNode("span",null,t.toDisplayString(e.translate("General_Next"))+" »",1)])],512),[[t.vShow,!(((null==(o=e.logs)?void 0:o.length)||0)<1)]])])])])])),[[c]])])]}),_:1},8,["content-title"])])}]]);e.LogViewer=B,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}); diff --git a/vue/src/LogViewer/LogViewer.vue b/vue/src/LogViewer/LogViewer.vue index 296aee7..79fa53f 100644 --- a/vue/src/LogViewer/LogViewer.vue +++ b/vue/src/LogViewer/LogViewer.vue @@ -78,7 +78,7 @@ @@ -165,7 +165,7 @@ id="next" class="next pointer" @click="nextPage()" - v-show="!(logs?.length < 1)" + v-show="!((logs?.length || 0) < 1)" >