قرینه از
https://github.com/matomo-org/matomo.git
synced 2025-08-22 06:57:53 +00:00

* Create 'Auto clear password' functionality for Vue and vanilla JS * Use auto-clear on password fields within core * Add password field with auto clear to UI demo * Add data attribute with snippet ID for easier UI test targetting * Add UI tests for password auto clear vue directive * Fix typos in UI demo controller * Remove vanilla JS version of the auto-clear mechanism in favour of Vue directive * Apply auto-clear directive to other password fields * Update auto-clear directive to add data attribute when applied to a field * Test auto-clear-password directive is applied to password field on the login page * Update UI test screenshots
303 خطوط
16 KiB
JavaScript
Generated
303 خطوط
16 KiB
JavaScript
Generated
(function webpackUniversalModuleDefinition(root, factory) {
|
|
if(typeof exports === 'object' && typeof module === 'object')
|
|
module.exports = factory(require("CoreHome"), require("vue"));
|
|
else if(typeof define === 'function' && define.amd)
|
|
define(["CoreHome", ], factory);
|
|
else if(typeof exports === 'object')
|
|
exports["Morpheus"] = factory(require("CoreHome"), require("vue"));
|
|
else
|
|
root["Morpheus"] = factory(root["CoreHome"], root["Vue"]);
|
|
})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__19dc__, __WEBPACK_EXTERNAL_MODULE__8bbf__) {
|
|
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/Morpheus/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__;
|
|
|
|
/***/ }),
|
|
|
|
/***/ "fae3":
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
// ESM COMPAT FLAG
|
|
__webpack_require__.r(__webpack_exports__);
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, "Demo", function() { return /* reexport */ Demo; });
|
|
|
|
// 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--13-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--1-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--1-1!./plugins/Morpheus/vue/src/Demo/Demo.vue?vue&type=template&id=da6620a8
|
|
|
|
const _hoisted_1 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("h2", null, "Icons", -1);
|
|
const _hoisted_2 = {
|
|
id: "icons",
|
|
class: "demo icons"
|
|
};
|
|
const _hoisted_3 = {
|
|
class: "row"
|
|
};
|
|
const _hoisted_4 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", {
|
|
class: "demo-code"
|
|
}, [/*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("pre", null, "<span class=\"icon-ok\"></span>")], -1);
|
|
function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
const _component_DemoCodePair = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["resolveComponent"])("DemoCodePair");
|
|
return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("div", 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.demoSnippets, snippet => {
|
|
return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])(_component_DemoCodePair, {
|
|
key: snippet.id,
|
|
snippet: snippet
|
|
}, null, 8, ["snippet"]);
|
|
}), 128)), _hoisted_1, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", _hoisted_2, [(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.icons, (iconList, category) => {
|
|
return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("div", {
|
|
key: category
|
|
}, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("h4", null, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(category), 1), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("div", _hoisted_3, [(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"])(iconList, (icon, index) => {
|
|
return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("div", {
|
|
class: "col s4 icon",
|
|
key: index
|
|
}, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("span", {
|
|
class: Object(external_commonjs_vue_commonjs2_vue_root_Vue_["normalizeClass"])(`icon-${icon}`)
|
|
}, null, 2), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(icon), 1)]);
|
|
}), 128))])]);
|
|
}), 128))]), _hoisted_4]);
|
|
}
|
|
// CONCATENATED MODULE: ./plugins/Morpheus/vue/src/Demo/Demo.vue?vue&type=template&id=da6620a8
|
|
|
|
// CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-babel/node_modules/cache-loader/dist/cjs.js??ref--13-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--1-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--1-1!./plugins/Morpheus/vue/src/Demo/DemoCodePair.vue?vue&type=template&id=f61d0dcc
|
|
|
|
const DemoCodePairvue_type_template_id_f61d0dcc_hoisted_1 = ["data-snippet"];
|
|
const DemoCodePairvue_type_template_id_f61d0dcc_hoisted_2 = {
|
|
key: 0
|
|
};
|
|
const DemoCodePairvue_type_template_id_f61d0dcc_hoisted_3 = {
|
|
key: 1,
|
|
class: "demo"
|
|
};
|
|
const DemoCodePairvue_type_template_id_f61d0dcc_hoisted_4 = {
|
|
key: 2,
|
|
class: "demo-code"
|
|
};
|
|
const _hoisted_5 = {
|
|
key: 3
|
|
};
|
|
function DemoCodePairvue_type_template_id_f61d0dcc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("div", {
|
|
style: Object(external_commonjs_vue_commonjs2_vue_root_Vue_["normalizeStyle"])({
|
|
'margin-top': _ctx.snippet.noMargin ? '-16px' : undefined
|
|
}),
|
|
"data-snippet": _ctx.snippet.id
|
|
}, [_ctx.snippet.title ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("h2", DemoCodePairvue_type_template_id_f61d0dcc_hoisted_2, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.snippet.title), 1)) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), _ctx.snippet.vue_embed ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("div", DemoCodePairvue_type_template_id_f61d0dcc_hoisted_3, [(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["resolveDynamicComponent"])(_ctx.vueEmbedComponent)))])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), _ctx.snippet.code ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("div", DemoCodePairvue_type_template_id_f61d0dcc_hoisted_4, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementVNode"])("pre", null, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.processedSnippetCode), 1)])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), _ctx.snippet.desc ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createElementBlock"])("p", _hoisted_5, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.snippet.desc), 1)) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true)], 12, DemoCodePairvue_type_template_id_f61d0dcc_hoisted_1);
|
|
}
|
|
// CONCATENATED MODULE: ./plugins/Morpheus/vue/src/Demo/DemoCodePair.vue?vue&type=template&id=f61d0dcc
|
|
|
|
// EXTERNAL MODULE: external "CoreHome"
|
|
var external_CoreHome_ = __webpack_require__("19dc");
|
|
|
|
// CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-typescript/node_modules/cache-loader/dist/cjs.js??ref--15-0!./node_modules/babel-loader/lib!./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader??ref--15-2!./node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--1-1!./plugins/Morpheus/vue/src/Demo/DemoCodePair.vue?vue&type=script&lang=ts
|
|
|
|
|
|
/* harmony default export */ var DemoCodePairvue_type_script_lang_ts = (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["defineComponent"])({
|
|
props: {
|
|
snippet: {
|
|
type: Object,
|
|
required: true
|
|
}
|
|
},
|
|
computed: {
|
|
vueEmbedComponent() {
|
|
const snippet = this.snippet;
|
|
const components = {};
|
|
(snippet.components || []).forEach(info => {
|
|
components[info.component] = Object(external_CoreHome_["useExternalPluginComponent"])(info.plugin, info.component);
|
|
});
|
|
const directives = {};
|
|
(snippet.directives || []).forEach(info => {
|
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
directives[info.directive] = window[info.plugin][info.directive];
|
|
});
|
|
const dataToUse = this.snippet.data || {};
|
|
return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["markRaw"])({
|
|
template: this.snippet.vue_embed,
|
|
components,
|
|
directives,
|
|
data() {
|
|
return dataToUse;
|
|
}
|
|
});
|
|
},
|
|
processedSnippetCode() {
|
|
const {
|
|
snippet
|
|
} = this;
|
|
const vueEmbedIndex = snippet.code.indexOf('%vue_embed%');
|
|
const lastNewline = snippet.code.lastIndexOf('\n', vueEmbedIndex);
|
|
const spaces = snippet.code.substring(lastNewline + 1, vueEmbedIndex);
|
|
return snippet.code.replaceAll('%vue_embed%', snippet.vue_embed.replaceAll('\n', `\n${spaces}`));
|
|
}
|
|
}
|
|
}));
|
|
// CONCATENATED MODULE: ./plugins/Morpheus/vue/src/Demo/DemoCodePair.vue?vue&type=script&lang=ts
|
|
|
|
// CONCATENATED MODULE: ./plugins/Morpheus/vue/src/Demo/DemoCodePair.vue
|
|
|
|
|
|
|
|
DemoCodePairvue_type_script_lang_ts.render = DemoCodePairvue_type_template_id_f61d0dcc_render
|
|
|
|
/* harmony default export */ var DemoCodePair = (DemoCodePairvue_type_script_lang_ts);
|
|
// CONCATENATED MODULE: ./node_modules/@vue/cli-plugin-typescript/node_modules/cache-loader/dist/cjs.js??ref--15-0!./node_modules/babel-loader/lib!./node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader??ref--15-2!./node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist??ref--1-1!./plugins/Morpheus/vue/src/Demo/Demo.vue?vue&type=script&lang=ts
|
|
|
|
|
|
/* harmony default export */ var Demovue_type_script_lang_ts = (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["defineComponent"])({
|
|
props: {
|
|
demoSnippets: {
|
|
type: Array,
|
|
required: true
|
|
},
|
|
icons: {
|
|
type: Object,
|
|
required: true
|
|
}
|
|
},
|
|
components: {
|
|
DemoCodePair: DemoCodePair
|
|
}
|
|
}));
|
|
// CONCATENATED MODULE: ./plugins/Morpheus/vue/src/Demo/Demo.vue?vue&type=script&lang=ts
|
|
|
|
// CONCATENATED MODULE: ./plugins/Morpheus/vue/src/Demo/Demo.vue
|
|
|
|
|
|
|
|
Demovue_type_script_lang_ts.render = render
|
|
|
|
/* harmony default export */ var Demo = (Demovue_type_script_lang_ts);
|
|
// CONCATENATED MODULE: ./plugins/Morpheus/vue/src/index.ts
|
|
/*!
|
|
* Matomo - free/libre analytics platform
|
|
*
|
|
* @link https://matomo.org
|
|
* @license https://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=Morpheus.umd.js.map
|