New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

vue-documenter

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vue-documenter - npm Package Compare versions

Comparing version 0.0.4 to 0.0.5

vue.config.js

475

dist/vue-documenter.common.js

@@ -85,3 +85,3 @@ module.exports =

/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = "fb15");
/******/ return __webpack_require__(__webpack_require__.s = "980f");
/******/ })

@@ -91,70 +91,396 @@ /************************************************************************/

/***/ "230b":
/***/ "02b5":
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
// style-loader: Adds some css to the DOM by adding a <style> tag
// load the styles
var content = __webpack_require__("19d8");
if(typeof content === 'string') content = [[module.i, content, '']];
if(content.locals) module.exports = content.locals;
// add the styles to the DOM
var add = __webpack_require__("499e").default
var update = add("7fd1a97e", content, true, {"sourceMap":false,"shadowMode":false});
/***/ }),
/***/ "e677":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
/***/ "19d8":
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_7edd7376_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("230b");
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_7edd7376_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_7edd7376_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */
/* unused harmony default export */ var _unused_webpack_default_export = (_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_7edd7376_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default.a);
exports = module.exports = __webpack_require__("2350")(false);
// imports
// module
exports.push([module.i, "h2[data-v-1e6e30cc]{margin-top:1rem}.alert h2[data-v-1e6e30cc]{margin-top:.25rem;margin-bottom:1rem}.indent[data-v-1e6e30cc]{margin-left:2rem}.code-highlight[data-v-1e6e30cc]{background:#f5f2f0;color:#999;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;overflow-x:scroll;padding:1em;text-shadow:0 1px #fff;white-space:nowrap}.code-highlight[data-v-1e6e30cc] .property,.code-highlight[data-v-1e6e30cc] .tag,.code-highlight[data-v-1e6e30cc] .value{display:inline-block}.code-highlight[data-v-1e6e30cc] .tag{color:#905}.code-highlight[data-v-1e6e30cc] .property{color:#690;margin-left:2em}.code-highlight[data-v-1e6e30cc] .value{color:#07a}.code-highlight[data-v-1e6e30cc] .slot{margin-left:2em}.code-highlight[data-v-1e6e30cc] .slot .property{margin-left:0}.code-highlight[data-v-1e6e30cc] .slot .slot-contents{margin-left:4em}", ""]);
// exports
/***/ }),
/***/ "f6fd":
/***/ "2350":
/***/ (function(module, exports) {
// document.currentScript polyfill by Adam Miller
/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
*/
// css base code, injected by the css-loader
module.exports = function(useSourceMap) {
var list = [];
// MIT license
// return the list of modules as css string
list.toString = function toString() {
return this.map(function (item) {
var content = cssWithMappingToString(item, useSourceMap);
if(item[2]) {
return "@media " + item[2] + "{" + content + "}";
} else {
return content;
}
}).join("");
};
(function(document){
var currentScript = "currentScript",
scripts = document.getElementsByTagName('script'); // Live NodeList collection
// import a list of modules into the list
list.i = function(modules, mediaQuery) {
if(typeof modules === "string")
modules = [[null, modules, ""]];
var alreadyImportedModules = {};
for(var i = 0; i < this.length; i++) {
var id = this[i][0];
if(typeof id === "number")
alreadyImportedModules[id] = true;
}
for(i = 0; i < modules.length; i++) {
var item = modules[i];
// skip already imported module
// this implementation is not 100% perfect for weird media query combinations
// when a module is imported multiple times with different media queries.
// I hope this will never occur (Hey this way we have smaller bundles)
if(typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) {
if(mediaQuery && !item[2]) {
item[2] = mediaQuery;
} else if(mediaQuery) {
item[2] = "(" + item[2] + ") and (" + mediaQuery + ")";
}
list.push(item);
}
}
};
return list;
};
// If browser needs currentScript polyfill, add get currentScript() to the document object
if (!(currentScript in document)) {
Object.defineProperty(document, currentScript, {
get: function(){
function cssWithMappingToString(item, useSourceMap) {
var content = item[1] || '';
var cssMapping = item[3];
if (!cssMapping) {
return content;
}
// IE 6-10 supports script readyState
// IE 10+ support stack trace
try { throw new Error(); }
catch (err) {
if (useSourceMap && typeof btoa === 'function') {
var sourceMapping = toComment(cssMapping);
var sourceURLs = cssMapping.sources.map(function (source) {
return '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'
});
// Find the second match for the "at" string to get file src url from stack.
// Specifically works with the format of stack traces in IE.
var i, res = ((/.*at [^\(]*\((.*):.+:.+\)$/ig).exec(err.stack) || [false])[1];
return [content].concat(sourceURLs).concat([sourceMapping]).join('\n');
}
// For all scripts on the page, if src matches or if ready state is interactive, return the script tag
for(i in scripts){
if(scripts[i].src == res || scripts[i].readyState == "interactive"){
return scripts[i];
}
}
return [content].join('\n');
}
// If no match, return null
return null;
// Adapted from convert-source-map (MIT)
function toComment(sourceMap) {
// eslint-disable-next-line no-undef
var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));
var data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;
return '/*# ' + data + ' */';
}
/***/ }),
/***/ "499e":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-style-loader/lib/listToStyles.js
/**
* Translates the list format produced by css-loader into something
* easier to manipulate.
*/
function listToStyles (parentId, list) {
var styles = []
var newStyles = {}
for (var i = 0; i < list.length; i++) {
var item = list[i]
var id = item[0]
var css = item[1]
var media = item[2]
var sourceMap = item[3]
var part = {
id: parentId + ':' + i,
css: css,
media: media,
sourceMap: sourceMap
}
if (!newStyles[id]) {
styles.push(newStyles[id] = { id: id, parts: [part] })
} else {
newStyles[id].parts.push(part)
}
}
return styles
}
// CONCATENATED MODULE: ./node_modules/vue-style-loader/lib/addStylesClient.js
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return addStylesClient; });
/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
Modified by Evan You @yyx990803
*/
var hasDocument = typeof document !== 'undefined'
if (typeof DEBUG !== 'undefined' && DEBUG) {
if (!hasDocument) {
throw new Error(
'vue-style-loader cannot be used in a non-browser environment. ' +
"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment."
) }
}
/*
type StyleObject = {
id: number;
parts: Array<StyleObjectPart>
}
type StyleObjectPart = {
css: string;
media: string;
sourceMap: ?string
}
*/
var stylesInDom = {/*
[id: number]: {
id: number,
refs: number,
parts: Array<(obj?: StyleObjectPart) => void>
}
*/}
var head = hasDocument && (document.head || document.getElementsByTagName('head')[0])
var singletonElement = null
var singletonCounter = 0
var isProduction = false
var noop = function () {}
var options = null
var ssrIdKey = 'data-vue-ssr-id'
// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>
// tags it will allow on a page
var isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\b/.test(navigator.userAgent.toLowerCase())
function addStylesClient (parentId, list, _isProduction, _options) {
isProduction = _isProduction
options = _options || {}
var styles = listToStyles(parentId, list)
addStylesToDom(styles)
return function update (newList) {
var mayRemove = []
for (var i = 0; i < styles.length; i++) {
var item = styles[i]
var domStyle = stylesInDom[item.id]
domStyle.refs--
mayRemove.push(domStyle)
}
if (newList) {
styles = listToStyles(parentId, newList)
addStylesToDom(styles)
} else {
styles = []
}
for (var i = 0; i < mayRemove.length; i++) {
var domStyle = mayRemove[i]
if (domStyle.refs === 0) {
for (var j = 0; j < domStyle.parts.length; j++) {
domStyle.parts[j]()
}
delete stylesInDom[domStyle.id]
}
});
}
}
})(document);
}
function addStylesToDom (styles /* Array<StyleObject> */) {
for (var i = 0; i < styles.length; i++) {
var item = styles[i]
var domStyle = stylesInDom[item.id]
if (domStyle) {
domStyle.refs++
for (var j = 0; j < domStyle.parts.length; j++) {
domStyle.parts[j](item.parts[j])
}
for (; j < item.parts.length; j++) {
domStyle.parts.push(addStyle(item.parts[j]))
}
if (domStyle.parts.length > item.parts.length) {
domStyle.parts.length = item.parts.length
}
} else {
var parts = []
for (var j = 0; j < item.parts.length; j++) {
parts.push(addStyle(item.parts[j]))
}
stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }
}
}
}
function createStyleElement () {
var styleElement = document.createElement('style')
styleElement.type = 'text/css'
head.appendChild(styleElement)
return styleElement
}
function addStyle (obj /* StyleObjectPart */) {
var update, remove
var styleElement = document.querySelector('style[' + ssrIdKey + '~="' + obj.id + '"]')
if (styleElement) {
if (isProduction) {
// has SSR styles and in production mode.
// simply do nothing.
return noop
} else {
// has SSR styles but in dev mode.
// for some reason Chrome can't handle source map in server-rendered
// style tags - source maps in <style> only works if the style tag is
// created and inserted dynamically. So we remove the server rendered
// styles and inject new ones.
styleElement.parentNode.removeChild(styleElement)
}
}
if (isOldIE) {
// use singleton mode for IE9.
var styleIndex = singletonCounter++
styleElement = singletonElement || (singletonElement = createStyleElement())
update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)
remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)
} else {
// use multi-style-tag mode in all other cases
styleElement = createStyleElement()
update = applyToTag.bind(null, styleElement)
remove = function () {
styleElement.parentNode.removeChild(styleElement)
}
}
update(obj)
return function updateStyle (newObj /* StyleObjectPart */) {
if (newObj) {
if (newObj.css === obj.css &&
newObj.media === obj.media &&
newObj.sourceMap === obj.sourceMap) {
return
}
update(obj = newObj)
} else {
remove()
}
}
}
var replaceText = (function () {
var textStore = []
return function (index, replacement) {
textStore[index] = replacement
return textStore.filter(Boolean).join('\n')
}
})()
function applyToSingletonTag (styleElement, index, remove, obj) {
var css = remove ? '' : obj.css
if (styleElement.styleSheet) {
styleElement.styleSheet.cssText = replaceText(index, css)
} else {
var cssNode = document.createTextNode(css)
var childNodes = styleElement.childNodes
if (childNodes[index]) styleElement.removeChild(childNodes[index])
if (childNodes.length) {
styleElement.insertBefore(cssNode, childNodes[index])
} else {
styleElement.appendChild(cssNode)
}
}
}
function applyToTag (styleElement, obj) {
var css = obj.css
var media = obj.media
var sourceMap = obj.sourceMap
if (media) {
styleElement.setAttribute('media', media)
}
if (options.ssrId) {
styleElement.setAttribute(ssrIdKey, obj.id)
}
if (sourceMap) {
// https://developer.chrome.com/devtools/docs/javascript-debugging
// this makes source maps inside style tags work properly in Chrome
css += '\n/*# sourceURL=' + sourceMap.sources[0] + ' */'
// http://stackoverflow.com/a/26603875
css += '\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'
}
if (styleElement.styleSheet) {
styleElement.styleSheet.cssText = css
} else {
while (styleElement.firstChild) {
styleElement.removeChild(styleElement.firstChild)
}
styleElement.appendChild(document.createTextNode(css))
}
}
/***/ }),
/***/ "fb15":
/***/ "955d":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_nvm_versions_node_v10_5_0_lib_node_modules_vue_cli_service_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_1e6e30cc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("02b5");
/* harmony import */ var _node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_nvm_versions_node_v10_5_0_lib_node_modules_vue_cli_service_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_1e6e30cc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_nvm_versions_node_v10_5_0_lib_node_modules_vue_cli_service_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_1e6e30cc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */
/* unused harmony default export */ var _unused_webpack_default_export = (_node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_nvm_versions_node_v10_5_0_lib_node_modules_vue_cli_service_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_1e6e30cc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default.a);
/***/ }),
/***/ "980f":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
// CONCATENATED MODULE: /Users/ianjohnson/.nvm/versions/node/v10.5.0/lib/node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
// This file is imported into lib/wc client bundles.

@@ -164,3 +490,3 @@

if (true) {
__webpack_require__("f6fd")
__webpack_require__("e165")
}

@@ -177,3 +503,3 @@

// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"fc4fac74-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/VueDocumenter.vue?vue&type=template&id=7edd7376&scoped=true&
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"cdceb08a-vue-loader-template"}!/Users/ianjohnson/.nvm/versions/node/v10.5.0/lib/node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/VueDocumenter.vue?vue&type=template&id=1e6e30cc&scoped=true&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticStyle:{"display":"none"}},[_vm._t("default")],2),_c('div',{staticClass:"row"},[_c('div',{staticClass:"col-sm-3"},[_c('div',{staticClass:"card card-body"},[_c('h2',{staticClass:"mt-0"},[_vm._v("Components")]),_c('ul',_vm._l((_vm.loadedComponents),function(component){return _c('li',{key:("table-of-contents-" + (component.name))},[_c('a',{attrs:{"href":"#{component.name}"}},[_vm._v(_vm._s(component.name))])])}),0)])]),_c('div',{staticClass:"col-sm-9"},_vm._l((_vm.loadedComponents),function(component){return _c('div',{key:("component-" + (component.name)),staticClass:"card card-body mb-5"},[_c('h1',{attrs:{"id":_vm.getKebabCaseFromCamelCase(component.name)}},[_vm._v("<"+_vm._s(_vm.getKebabCaseFromCamelCase(component.name))+">")]),_c('h2',[_vm._v("Properties")]),_c('div',{staticClass:"table-responsive mb-3"},[_c('table',{staticClass:"table table-striped"},[_vm._m(0,true),_c('tbody',_vm._l((component.properties),function(property){return _c('tr',{key:("property-" + (property.name)),class:{ 'deprecated': property.deprecated }},[_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v("\n "+_vm._s(property.type !== 'string' ? ':' : '')+_vm._s(property.name)+"\n "),(property.required)?_c('span',{staticClass:"badge badge-danger",attrs:{"title":property.required}},[_vm._v("Required")]):_vm._e(),(property.deprecated)?_c('span',{staticClass:"badge badge-warning",attrs:{"title":property.deprecated,"data-tippy":""}},[_vm._v("Deprecated "),_c('i',{staticClass:"fas fa-question-circle"})]):_vm._e()]),_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(property.type))]),_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(property.defaultValue))]),_c('td',[_c('code',[_vm._v(_vm._s(property.example))])])])}),0)])]),_vm._m(1,true),_c('div',{staticClass:"row mb-3"},[_c('div',{staticClass:"col"},[(component.events)?_c('div',{staticClass:"table-responsive"},[_c('table',{staticClass:"table table-striped"},[_vm._m(2,true),_c('tbody',_vm._l((component.events),function(event){return _c('tr',{key:("event-" + (event.name))},[_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(event.name))]),_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(event.selector))]),_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(event.on))]),_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(event.example))])])}),0)])]):_c('h3',[_vm._v("None")])])]),_c('div',{staticClass:"row"},[_c('div',{staticClass:"col-sm-6"},[_c('h2',[_vm._v("Minimal Example")]),_c('div',{staticClass:"code-highlight",domProps:{"innerHTML":_vm._s(_vm.getComponentExampleHtml(component, { onlyRequired: true }))}})]),_c('div',{staticClass:"col-sm-6"},[_c('h2',[_vm._v("Full Example")]),_c('div',{staticClass:"code-highlight",domProps:{"innerHTML":_vm._s(_vm.getComponentExampleHtml(component))}})])])])}),0)]),_vm._m(3)])}

@@ -183,3 +509,3 @@ var staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v("Name")]),_c('th',[_vm._v("Type")]),_c('th',[_vm._v("Default Value")]),_c('th',[_vm._v("Example")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h2',[_vm._v("Events ("),_c('a',{attrs:{"href":"https://vuejs.org/v2/api/#vm-emit","target":"_blank"}},[_vm._v("Vue Docs")]),_vm._v(")")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v("Name")]),_c('th',[_vm._v("Selector")]),_c('th',[_vm._v("On")]),_c('th',[_vm._v("Example Value")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"alert alert-info d-flex"},[_c('i',{staticClass:"fas fa-exclamation-triangle fa-2x mr-4"}),_c('div',[_c('h2',[_vm._v("If you're building a new Vue component and you want it to be auto-documented here")]),_c('div',[_c('p',[_c('span',{staticClass:"badge badge-danger"},[_vm._v("Required")]),_vm._v(" The component must have it's properties defined with "),_c('code',[_vm._v("type")]),_vm._v(" and "),_c('code',[_vm._v("default")]),_vm._v(" properties, see "),_c('a',{attrs:{"href":"https://vuejs.org/v2/guide/components-props.html#Prop-Validation","target":"_blank"}},[_vm._v("Prop Validation")])]),_c('p',[_c('span',{staticClass:"badge badge-secondary"},[_vm._v("Optional")]),_vm._v(" The component maybe also include a top level "),_c('code',[_vm._v("meta")]),_vm._v(" property with slot and event availability, ex.\n"),_c('code',{staticStyle:{"white-space":"pre"}},[_vm._v("\nmeta: {\nslots: {\n default: {\n type: 'component',\n valid: ['ComponentNameOne', 'ComponentNameTwo'],\n ],\n named: [{\n name: 'filters',\n type: 'component',\n valid: ['OtherComponentName'],\n }],\n},\nevents: [{\n name: 'date-selected',\n selector: '.dates li',\n on: 'click',\n example: '2019-02-11',\n}],\n},\n")])]),_c('p',[_c('span',{staticClass:"badge badge-secondary"},[_vm._v("Optional")]),_vm._v(" The component's properties may also include an additional "),_c('code',[_vm._v("meta")]),_vm._v(" property in the property definition, ex.\n"),_c('code',{staticStyle:{"white-space":"pre"}},[_vm._v("\nmeta: {\nrequired: [true|false],\nexample: 'Example implementation code',\ndeprecated: 'Deprecation note that will appear on hover',\n},\n")])])])])])}]

// CONCATENATED MODULE: ./src/VueDocumenter.vue?vue&type=template&id=7edd7376&scoped=true&
// CONCATENATED MODULE: ./src/VueDocumenter.vue?vue&type=template&id=1e6e30cc&scoped=true&

@@ -342,8 +668,4 @@ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/VueDocumenter.vue?vue&type=script&lang=js&

loadComponents() {
this.log('loadComponents()');
const components = this.$slots.default.filter(vnode => vnode.tag !== undefined);
this.log('Components found', components);
if (!components) {

@@ -441,4 +763,2 @@ return [];

loadProperties(vnode) {
this.log('loadProperties()', vnode);
if (!vnode) {

@@ -453,4 +773,2 @@ return false;

this.log('Properties found', propertyKeys);
for (let i = 0; i < propertyKeys.length; i += 1) {

@@ -550,4 +868,2 @@ const item = propertyKeys[i];

this.log(properties);
return properties;

@@ -568,4 +884,4 @@ },

/* harmony default export */ var src_VueDocumentervue_type_script_lang_js_ = (VueDocumentervue_type_script_lang_js_);
// EXTERNAL MODULE: ./src/VueDocumenter.vue?vue&type=style&index=0&id=7edd7376&lang=scss&scoped=true&
var VueDocumentervue_type_style_index_0_id_7edd7376_lang_scss_scoped_true_ = __webpack_require__("e677");
// EXTERNAL MODULE: ./src/VueDocumenter.vue?vue&type=style&index=0&id=1e6e30cc&lang=scss&scoped=true&
var VueDocumentervue_type_style_index_0_id_1e6e30cc_lang_scss_scoped_true_ = __webpack_require__("955d");

@@ -682,3 +998,3 @@ // CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js

null,
"7edd7376",
"1e6e30cc",
null

@@ -689,16 +1005,55 @@

/* harmony default export */ var VueDocumenter = (component.exports);
// CONCATENATED MODULE: ./src/index.js
// CONCATENATED MODULE: /Users/ianjohnson/.nvm/versions/node/v10.5.0/lib/node_modules/@vue/cli-service/lib/commands/build/entry-lib.js
/* harmony default export */ var src = (VueDocumenter);
// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js
/* harmony default export */ var entry_lib = __webpack_exports__["default"] = (VueDocumenter);
/* harmony default export */ var entry_lib = __webpack_exports__["default"] = (src);
/***/ }),
/***/ "e165":
/***/ (function(module, exports) {
// document.currentScript polyfill by Adam Miller
// MIT license
(function(document){
var currentScript = "currentScript",
scripts = document.getElementsByTagName('script'); // Live NodeList collection
// If browser needs currentScript polyfill, add get currentScript() to the document object
if (!(currentScript in document)) {
Object.defineProperty(document, currentScript, {
get: function(){
// IE 6-10 supports script readyState
// IE 10+ support stack trace
try { throw new Error(); }
catch (err) {
// Find the second match for the "at" string to get file src url from stack.
// Specifically works with the format of stack traces in IE.
var i, res = ((/.*at [^\(]*\((.*):.+:.+\)$/ig).exec(err.stack) || [false])[1];
// For all scripts on the page, if src matches or if ready state is interactive, return the script tag
for(i in scripts){
if(scripts[i].src == res || scripts[i].readyState == "interactive"){
return scripts[i];
}
}
// If no match, return null
return null;
}
}
});
}
})(document);
/***/ })
/******/ });
/******/ })["default"];
//# sourceMappingURL=vue-documenter.common.js.map

@@ -94,3 +94,3 @@ (function webpackUniversalModuleDefinition(root, factory) {

/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = "fb15");
/******/ return __webpack_require__(__webpack_require__.s = "980f");
/******/ })

@@ -100,70 +100,396 @@ /************************************************************************/

/***/ "230b":
/***/ "02b5":
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
// style-loader: Adds some css to the DOM by adding a <style> tag
// load the styles
var content = __webpack_require__("19d8");
if(typeof content === 'string') content = [[module.i, content, '']];
if(content.locals) module.exports = content.locals;
// add the styles to the DOM
var add = __webpack_require__("499e").default
var update = add("7fd1a97e", content, true, {"sourceMap":false,"shadowMode":false});
/***/ }),
/***/ "e677":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
/***/ "19d8":
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_7edd7376_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("230b");
/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_7edd7376_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_7edd7376_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */
/* unused harmony default export */ var _unused_webpack_default_export = (_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_2_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_7edd7376_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default.a);
exports = module.exports = __webpack_require__("2350")(false);
// imports
// module
exports.push([module.i, "h2[data-v-1e6e30cc]{margin-top:1rem}.alert h2[data-v-1e6e30cc]{margin-top:.25rem;margin-bottom:1rem}.indent[data-v-1e6e30cc]{margin-left:2rem}.code-highlight[data-v-1e6e30cc]{background:#f5f2f0;color:#999;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;overflow-x:scroll;padding:1em;text-shadow:0 1px #fff;white-space:nowrap}.code-highlight[data-v-1e6e30cc] .property,.code-highlight[data-v-1e6e30cc] .tag,.code-highlight[data-v-1e6e30cc] .value{display:inline-block}.code-highlight[data-v-1e6e30cc] .tag{color:#905}.code-highlight[data-v-1e6e30cc] .property{color:#690;margin-left:2em}.code-highlight[data-v-1e6e30cc] .value{color:#07a}.code-highlight[data-v-1e6e30cc] .slot{margin-left:2em}.code-highlight[data-v-1e6e30cc] .slot .property{margin-left:0}.code-highlight[data-v-1e6e30cc] .slot .slot-contents{margin-left:4em}", ""]);
// exports
/***/ }),
/***/ "f6fd":
/***/ "2350":
/***/ (function(module, exports) {
// document.currentScript polyfill by Adam Miller
/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
*/
// css base code, injected by the css-loader
module.exports = function(useSourceMap) {
var list = [];
// MIT license
// return the list of modules as css string
list.toString = function toString() {
return this.map(function (item) {
var content = cssWithMappingToString(item, useSourceMap);
if(item[2]) {
return "@media " + item[2] + "{" + content + "}";
} else {
return content;
}
}).join("");
};
(function(document){
var currentScript = "currentScript",
scripts = document.getElementsByTagName('script'); // Live NodeList collection
// import a list of modules into the list
list.i = function(modules, mediaQuery) {
if(typeof modules === "string")
modules = [[null, modules, ""]];
var alreadyImportedModules = {};
for(var i = 0; i < this.length; i++) {
var id = this[i][0];
if(typeof id === "number")
alreadyImportedModules[id] = true;
}
for(i = 0; i < modules.length; i++) {
var item = modules[i];
// skip already imported module
// this implementation is not 100% perfect for weird media query combinations
// when a module is imported multiple times with different media queries.
// I hope this will never occur (Hey this way we have smaller bundles)
if(typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) {
if(mediaQuery && !item[2]) {
item[2] = mediaQuery;
} else if(mediaQuery) {
item[2] = "(" + item[2] + ") and (" + mediaQuery + ")";
}
list.push(item);
}
}
};
return list;
};
// If browser needs currentScript polyfill, add get currentScript() to the document object
if (!(currentScript in document)) {
Object.defineProperty(document, currentScript, {
get: function(){
function cssWithMappingToString(item, useSourceMap) {
var content = item[1] || '';
var cssMapping = item[3];
if (!cssMapping) {
return content;
}
// IE 6-10 supports script readyState
// IE 10+ support stack trace
try { throw new Error(); }
catch (err) {
if (useSourceMap && typeof btoa === 'function') {
var sourceMapping = toComment(cssMapping);
var sourceURLs = cssMapping.sources.map(function (source) {
return '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'
});
// Find the second match for the "at" string to get file src url from stack.
// Specifically works with the format of stack traces in IE.
var i, res = ((/.*at [^\(]*\((.*):.+:.+\)$/ig).exec(err.stack) || [false])[1];
return [content].concat(sourceURLs).concat([sourceMapping]).join('\n');
}
// For all scripts on the page, if src matches or if ready state is interactive, return the script tag
for(i in scripts){
if(scripts[i].src == res || scripts[i].readyState == "interactive"){
return scripts[i];
}
}
return [content].join('\n');
}
// If no match, return null
return null;
// Adapted from convert-source-map (MIT)
function toComment(sourceMap) {
// eslint-disable-next-line no-undef
var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));
var data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;
return '/*# ' + data + ' */';
}
/***/ }),
/***/ "499e":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/vue-style-loader/lib/listToStyles.js
/**
* Translates the list format produced by css-loader into something
* easier to manipulate.
*/
function listToStyles (parentId, list) {
var styles = []
var newStyles = {}
for (var i = 0; i < list.length; i++) {
var item = list[i]
var id = item[0]
var css = item[1]
var media = item[2]
var sourceMap = item[3]
var part = {
id: parentId + ':' + i,
css: css,
media: media,
sourceMap: sourceMap
}
if (!newStyles[id]) {
styles.push(newStyles[id] = { id: id, parts: [part] })
} else {
newStyles[id].parts.push(part)
}
}
return styles
}
// CONCATENATED MODULE: ./node_modules/vue-style-loader/lib/addStylesClient.js
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return addStylesClient; });
/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
Modified by Evan You @yyx990803
*/
var hasDocument = typeof document !== 'undefined'
if (typeof DEBUG !== 'undefined' && DEBUG) {
if (!hasDocument) {
throw new Error(
'vue-style-loader cannot be used in a non-browser environment. ' +
"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment."
) }
}
/*
type StyleObject = {
id: number;
parts: Array<StyleObjectPart>
}
type StyleObjectPart = {
css: string;
media: string;
sourceMap: ?string
}
*/
var stylesInDom = {/*
[id: number]: {
id: number,
refs: number,
parts: Array<(obj?: StyleObjectPart) => void>
}
*/}
var head = hasDocument && (document.head || document.getElementsByTagName('head')[0])
var singletonElement = null
var singletonCounter = 0
var isProduction = false
var noop = function () {}
var options = null
var ssrIdKey = 'data-vue-ssr-id'
// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>
// tags it will allow on a page
var isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\b/.test(navigator.userAgent.toLowerCase())
function addStylesClient (parentId, list, _isProduction, _options) {
isProduction = _isProduction
options = _options || {}
var styles = listToStyles(parentId, list)
addStylesToDom(styles)
return function update (newList) {
var mayRemove = []
for (var i = 0; i < styles.length; i++) {
var item = styles[i]
var domStyle = stylesInDom[item.id]
domStyle.refs--
mayRemove.push(domStyle)
}
if (newList) {
styles = listToStyles(parentId, newList)
addStylesToDom(styles)
} else {
styles = []
}
for (var i = 0; i < mayRemove.length; i++) {
var domStyle = mayRemove[i]
if (domStyle.refs === 0) {
for (var j = 0; j < domStyle.parts.length; j++) {
domStyle.parts[j]()
}
delete stylesInDom[domStyle.id]
}
});
}
}
})(document);
}
function addStylesToDom (styles /* Array<StyleObject> */) {
for (var i = 0; i < styles.length; i++) {
var item = styles[i]
var domStyle = stylesInDom[item.id]
if (domStyle) {
domStyle.refs++
for (var j = 0; j < domStyle.parts.length; j++) {
domStyle.parts[j](item.parts[j])
}
for (; j < item.parts.length; j++) {
domStyle.parts.push(addStyle(item.parts[j]))
}
if (domStyle.parts.length > item.parts.length) {
domStyle.parts.length = item.parts.length
}
} else {
var parts = []
for (var j = 0; j < item.parts.length; j++) {
parts.push(addStyle(item.parts[j]))
}
stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }
}
}
}
function createStyleElement () {
var styleElement = document.createElement('style')
styleElement.type = 'text/css'
head.appendChild(styleElement)
return styleElement
}
function addStyle (obj /* StyleObjectPart */) {
var update, remove
var styleElement = document.querySelector('style[' + ssrIdKey + '~="' + obj.id + '"]')
if (styleElement) {
if (isProduction) {
// has SSR styles and in production mode.
// simply do nothing.
return noop
} else {
// has SSR styles but in dev mode.
// for some reason Chrome can't handle source map in server-rendered
// style tags - source maps in <style> only works if the style tag is
// created and inserted dynamically. So we remove the server rendered
// styles and inject new ones.
styleElement.parentNode.removeChild(styleElement)
}
}
if (isOldIE) {
// use singleton mode for IE9.
var styleIndex = singletonCounter++
styleElement = singletonElement || (singletonElement = createStyleElement())
update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)
remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)
} else {
// use multi-style-tag mode in all other cases
styleElement = createStyleElement()
update = applyToTag.bind(null, styleElement)
remove = function () {
styleElement.parentNode.removeChild(styleElement)
}
}
update(obj)
return function updateStyle (newObj /* StyleObjectPart */) {
if (newObj) {
if (newObj.css === obj.css &&
newObj.media === obj.media &&
newObj.sourceMap === obj.sourceMap) {
return
}
update(obj = newObj)
} else {
remove()
}
}
}
var replaceText = (function () {
var textStore = []
return function (index, replacement) {
textStore[index] = replacement
return textStore.filter(Boolean).join('\n')
}
})()
function applyToSingletonTag (styleElement, index, remove, obj) {
var css = remove ? '' : obj.css
if (styleElement.styleSheet) {
styleElement.styleSheet.cssText = replaceText(index, css)
} else {
var cssNode = document.createTextNode(css)
var childNodes = styleElement.childNodes
if (childNodes[index]) styleElement.removeChild(childNodes[index])
if (childNodes.length) {
styleElement.insertBefore(cssNode, childNodes[index])
} else {
styleElement.appendChild(cssNode)
}
}
}
function applyToTag (styleElement, obj) {
var css = obj.css
var media = obj.media
var sourceMap = obj.sourceMap
if (media) {
styleElement.setAttribute('media', media)
}
if (options.ssrId) {
styleElement.setAttribute(ssrIdKey, obj.id)
}
if (sourceMap) {
// https://developer.chrome.com/devtools/docs/javascript-debugging
// this makes source maps inside style tags work properly in Chrome
css += '\n/*# sourceURL=' + sourceMap.sources[0] + ' */'
// http://stackoverflow.com/a/26603875
css += '\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'
}
if (styleElement.styleSheet) {
styleElement.styleSheet.cssText = css
} else {
while (styleElement.firstChild) {
styleElement.removeChild(styleElement.firstChild)
}
styleElement.appendChild(document.createTextNode(css))
}
}
/***/ }),
/***/ "fb15":
/***/ "955d":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_nvm_versions_node_v10_5_0_lib_node_modules_vue_cli_service_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_1e6e30cc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("02b5");
/* harmony import */ var _node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_nvm_versions_node_v10_5_0_lib_node_modules_vue_cli_service_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_1e6e30cc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_nvm_versions_node_v10_5_0_lib_node_modules_vue_cli_service_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_1e6e30cc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */
/* unused harmony default export */ var _unused_webpack_default_export = (_node_modules_vue_style_loader_index_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_nvm_versions_node_v10_5_0_lib_node_modules_vue_cli_service_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_VueDocumenter_vue_vue_type_style_index_0_id_1e6e30cc_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default.a);
/***/ }),
/***/ "980f":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
// CONCATENATED MODULE: /Users/ianjohnson/.nvm/versions/node/v10.5.0/lib/node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
// This file is imported into lib/wc client bundles.

@@ -173,3 +499,3 @@

if (true) {
__webpack_require__("f6fd")
__webpack_require__("e165")
}

@@ -186,3 +512,3 @@

// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"fc4fac74-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/VueDocumenter.vue?vue&type=template&id=7edd7376&scoped=true&
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"cdceb08a-vue-loader-template"}!/Users/ianjohnson/.nvm/versions/node/v10.5.0/lib/node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/VueDocumenter.vue?vue&type=template&id=1e6e30cc&scoped=true&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticStyle:{"display":"none"}},[_vm._t("default")],2),_c('div',{staticClass:"row"},[_c('div',{staticClass:"col-sm-3"},[_c('div',{staticClass:"card card-body"},[_c('h2',{staticClass:"mt-0"},[_vm._v("Components")]),_c('ul',_vm._l((_vm.loadedComponents),function(component){return _c('li',{key:("table-of-contents-" + (component.name))},[_c('a',{attrs:{"href":"#{component.name}"}},[_vm._v(_vm._s(component.name))])])}),0)])]),_c('div',{staticClass:"col-sm-9"},_vm._l((_vm.loadedComponents),function(component){return _c('div',{key:("component-" + (component.name)),staticClass:"card card-body mb-5"},[_c('h1',{attrs:{"id":_vm.getKebabCaseFromCamelCase(component.name)}},[_vm._v("<"+_vm._s(_vm.getKebabCaseFromCamelCase(component.name))+">")]),_c('h2',[_vm._v("Properties")]),_c('div',{staticClass:"table-responsive mb-3"},[_c('table',{staticClass:"table table-striped"},[_vm._m(0,true),_c('tbody',_vm._l((component.properties),function(property){return _c('tr',{key:("property-" + (property.name)),class:{ 'deprecated': property.deprecated }},[_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v("\n "+_vm._s(property.type !== 'string' ? ':' : '')+_vm._s(property.name)+"\n "),(property.required)?_c('span',{staticClass:"badge badge-danger",attrs:{"title":property.required}},[_vm._v("Required")]):_vm._e(),(property.deprecated)?_c('span',{staticClass:"badge badge-warning",attrs:{"title":property.deprecated,"data-tippy":""}},[_vm._v("Deprecated "),_c('i',{staticClass:"fas fa-question-circle"})]):_vm._e()]),_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(property.type))]),_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(property.defaultValue))]),_c('td',[_c('code',[_vm._v(_vm._s(property.example))])])])}),0)])]),_vm._m(1,true),_c('div',{staticClass:"row mb-3"},[_c('div',{staticClass:"col"},[(component.events)?_c('div',{staticClass:"table-responsive"},[_c('table',{staticClass:"table table-striped"},[_vm._m(2,true),_c('tbody',_vm._l((component.events),function(event){return _c('tr',{key:("event-" + (event.name))},[_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(event.name))]),_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(event.selector))]),_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(event.on))]),_c('td',{staticStyle:{"white-space":"nowrap"}},[_vm._v(_vm._s(event.example))])])}),0)])]):_c('h3',[_vm._v("None")])])]),_c('div',{staticClass:"row"},[_c('div',{staticClass:"col-sm-6"},[_c('h2',[_vm._v("Minimal Example")]),_c('div',{staticClass:"code-highlight",domProps:{"innerHTML":_vm._s(_vm.getComponentExampleHtml(component, { onlyRequired: true }))}})]),_c('div',{staticClass:"col-sm-6"},[_c('h2',[_vm._v("Full Example")]),_c('div',{staticClass:"code-highlight",domProps:{"innerHTML":_vm._s(_vm.getComponentExampleHtml(component))}})])])])}),0)]),_vm._m(3)])}

@@ -192,3 +518,3 @@ var staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v("Name")]),_c('th',[_vm._v("Type")]),_c('th',[_vm._v("Default Value")]),_c('th',[_vm._v("Example")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h2',[_vm._v("Events ("),_c('a',{attrs:{"href":"https://vuejs.org/v2/api/#vm-emit","target":"_blank"}},[_vm._v("Vue Docs")]),_vm._v(")")])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('thead',[_c('tr',[_c('th',[_vm._v("Name")]),_c('th',[_vm._v("Selector")]),_c('th',[_vm._v("On")]),_c('th',[_vm._v("Example Value")])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"alert alert-info d-flex"},[_c('i',{staticClass:"fas fa-exclamation-triangle fa-2x mr-4"}),_c('div',[_c('h2',[_vm._v("If you're building a new Vue component and you want it to be auto-documented here")]),_c('div',[_c('p',[_c('span',{staticClass:"badge badge-danger"},[_vm._v("Required")]),_vm._v(" The component must have it's properties defined with "),_c('code',[_vm._v("type")]),_vm._v(" and "),_c('code',[_vm._v("default")]),_vm._v(" properties, see "),_c('a',{attrs:{"href":"https://vuejs.org/v2/guide/components-props.html#Prop-Validation","target":"_blank"}},[_vm._v("Prop Validation")])]),_c('p',[_c('span',{staticClass:"badge badge-secondary"},[_vm._v("Optional")]),_vm._v(" The component maybe also include a top level "),_c('code',[_vm._v("meta")]),_vm._v(" property with slot and event availability, ex.\n"),_c('code',{staticStyle:{"white-space":"pre"}},[_vm._v("\nmeta: {\nslots: {\n default: {\n type: 'component',\n valid: ['ComponentNameOne', 'ComponentNameTwo'],\n ],\n named: [{\n name: 'filters',\n type: 'component',\n valid: ['OtherComponentName'],\n }],\n},\nevents: [{\n name: 'date-selected',\n selector: '.dates li',\n on: 'click',\n example: '2019-02-11',\n}],\n},\n")])]),_c('p',[_c('span',{staticClass:"badge badge-secondary"},[_vm._v("Optional")]),_vm._v(" The component's properties may also include an additional "),_c('code',[_vm._v("meta")]),_vm._v(" property in the property definition, ex.\n"),_c('code',{staticStyle:{"white-space":"pre"}},[_vm._v("\nmeta: {\nrequired: [true|false],\nexample: 'Example implementation code',\ndeprecated: 'Deprecation note that will appear on hover',\n},\n")])])])])])}]

// CONCATENATED MODULE: ./src/VueDocumenter.vue?vue&type=template&id=7edd7376&scoped=true&
// CONCATENATED MODULE: ./src/VueDocumenter.vue?vue&type=template&id=1e6e30cc&scoped=true&

@@ -351,8 +677,4 @@ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/VueDocumenter.vue?vue&type=script&lang=js&

loadComponents() {
this.log('loadComponents()');
const components = this.$slots.default.filter(vnode => vnode.tag !== undefined);
this.log('Components found', components);
if (!components) {

@@ -450,4 +772,2 @@ return [];

loadProperties(vnode) {
this.log('loadProperties()', vnode);
if (!vnode) {

@@ -462,4 +782,2 @@ return false;

this.log('Properties found', propertyKeys);
for (let i = 0; i < propertyKeys.length; i += 1) {

@@ -559,4 +877,2 @@ const item = propertyKeys[i];

this.log(properties);
return properties;

@@ -577,4 +893,4 @@ },

/* harmony default export */ var src_VueDocumentervue_type_script_lang_js_ = (VueDocumentervue_type_script_lang_js_);
// EXTERNAL MODULE: ./src/VueDocumenter.vue?vue&type=style&index=0&id=7edd7376&lang=scss&scoped=true&
var VueDocumentervue_type_style_index_0_id_7edd7376_lang_scss_scoped_true_ = __webpack_require__("e677");
// EXTERNAL MODULE: ./src/VueDocumenter.vue?vue&type=style&index=0&id=1e6e30cc&lang=scss&scoped=true&
var VueDocumentervue_type_style_index_0_id_1e6e30cc_lang_scss_scoped_true_ = __webpack_require__("955d");

@@ -691,3 +1007,3 @@ // CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js

null,
"7edd7376",
"1e6e30cc",
null

@@ -698,17 +1014,56 @@

/* harmony default export */ var VueDocumenter = (component.exports);
// CONCATENATED MODULE: ./src/index.js
// CONCATENATED MODULE: /Users/ianjohnson/.nvm/versions/node/v10.5.0/lib/node_modules/@vue/cli-service/lib/commands/build/entry-lib.js
/* harmony default export */ var src = (VueDocumenter);
// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js
/* harmony default export */ var entry_lib = __webpack_exports__["default"] = (VueDocumenter);
/* harmony default export */ var entry_lib = __webpack_exports__["default"] = (src);
/***/ }),
/***/ "e165":
/***/ (function(module, exports) {
// document.currentScript polyfill by Adam Miller
// MIT license
(function(document){
var currentScript = "currentScript",
scripts = document.getElementsByTagName('script'); // Live NodeList collection
// If browser needs currentScript polyfill, add get currentScript() to the document object
if (!(currentScript in document)) {
Object.defineProperty(document, currentScript, {
get: function(){
// IE 6-10 supports script readyState
// IE 10+ support stack trace
try { throw new Error(); }
catch (err) {
// Find the second match for the "at" string to get file src url from stack.
// Specifically works with the format of stack traces in IE.
var i, res = ((/.*at [^\(]*\((.*):.+:.+\)$/ig).exec(err.stack) || [false])[1];
// For all scripts on the page, if src matches or if ready state is interactive, return the script tag
for(i in scripts){
if(scripts[i].src == res || scripts[i].readyState == "interactive"){
return scripts[i];
}
}
// If no match, return null
return null;
}
}
});
}
})(document);
/***/ })
/******/ });
/******/ })["default"];
});
//# sourceMappingURL=vue-documenter.umd.js.map

2

dist/vue-documenter.umd.min.js

@@ -1,2 +0,2 @@

(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t():"function"===typeof define&&define.amd?define([],t):"object"===typeof exports?exports["vue-documenter"]=t():e["vue-documenter"]=t()})("undefined"!==typeof self?self:this,function(){return function(e){var t={};function n(a){if(t[a])return t[a].exports;var s=t[a]={i:a,l:!1,exports:{}};return e[a].call(s.exports,s,s.exports,n),s.l=!0,s.exports}return n.m=e,n.c=t,n.d=function(e,t,a){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},n.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)n.d(a,s,function(t){return e[t]}.bind(null,s));return a},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s="fb15")}({"230b":function(e,t,n){},e677:function(e,t,n){"use strict";var a=n("230b"),s=n.n(a);s.a},f6fd:function(e,t){(function(e){var t="currentScript",n=e.getElementsByTagName("script");t in e||Object.defineProperty(e,t,{get:function(){try{throw new Error}catch(a){var e,t=(/.*at [^\(]*\((.*):.+:.+\)$/gi.exec(a.stack)||[!1])[1];for(e in n)if(n[e].src==t||"interactive"==n[e].readyState)return n[e];return null}}})})(document)},fb15:function(e,t,n){"use strict";var a;(n.r(t),"undefined"!==typeof window)&&(n("f6fd"),(a=window.document.currentScript)&&(a=a.src.match(/(.+\/)[^\/]+\.js(\?.*)?$/))&&(n.p=a[1]));var s=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("div",{staticStyle:{display:"none"}},[e._t("default")],2),n("div",{staticClass:"row"},[n("div",{staticClass:"col-sm-3"},[n("div",{staticClass:"card card-body"},[n("h2",{staticClass:"mt-0"},[e._v("Components")]),n("ul",e._l(e.loadedComponents,function(t){return n("li",{key:"table-of-contents-"+t.name},[n("a",{attrs:{href:"#{component.name}"}},[e._v(e._s(t.name))])])}),0)])]),n("div",{staticClass:"col-sm-9"},e._l(e.loadedComponents,function(t){return n("div",{key:"component-"+t.name,staticClass:"card card-body mb-5"},[n("h1",{attrs:{id:e.getKebabCaseFromCamelCase(t.name)}},[e._v("<"+e._s(e.getKebabCaseFromCamelCase(t.name))+">")]),n("h2",[e._v("Properties")]),n("div",{staticClass:"table-responsive mb-3"},[n("table",{staticClass:"table table-striped"},[e._m(0,!0),n("tbody",e._l(t.properties,function(t){return n("tr",{key:"property-"+t.name,class:{deprecated:t.deprecated}},[n("td",{staticStyle:{"white-space":"nowrap"}},[e._v("\n "+e._s("string"!==t.type?":":"")+e._s(t.name)+"\n "),t.required?n("span",{staticClass:"badge badge-danger",attrs:{title:t.required}},[e._v("Required")]):e._e(),t.deprecated?n("span",{staticClass:"badge badge-warning",attrs:{title:t.deprecated,"data-tippy":""}},[e._v("Deprecated "),n("i",{staticClass:"fas fa-question-circle"})]):e._e()]),n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.type))]),n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.defaultValue))]),n("td",[n("code",[e._v(e._s(t.example))])])])}),0)])]),e._m(1,!0),n("div",{staticClass:"row mb-3"},[n("div",{staticClass:"col"},[t.events?n("div",{staticClass:"table-responsive"},[n("table",{staticClass:"table table-striped"},[e._m(2,!0),n("tbody",e._l(t.events,function(t){return n("tr",{key:"event-"+t.name},[n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.name))]),n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.selector))]),n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.on))]),n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.example))])])}),0)])]):n("h3",[e._v("None")])])]),n("div",{staticClass:"row"},[n("div",{staticClass:"col-sm-6"},[n("h2",[e._v("Minimal Example")]),n("div",{staticClass:"code-highlight",domProps:{innerHTML:e._s(e.getComponentExampleHtml(t,{onlyRequired:!0}))}})]),n("div",{staticClass:"col-sm-6"},[n("h2",[e._v("Full Example")]),n("div",{staticClass:"code-highlight",domProps:{innerHTML:e._s(e.getComponentExampleHtml(t))}})])])])}),0)]),e._m(3)])},o=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("thead",[n("tr",[n("th",[e._v("Name")]),n("th",[e._v("Type")]),n("th",[e._v("Default Value")]),n("th",[e._v("Example")])])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("h2",[e._v("Events ("),n("a",{attrs:{href:"https://vuejs.org/v2/api/#vm-emit",target:"_blank"}},[e._v("Vue Docs")]),e._v(")")])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("thead",[n("tr",[n("th",[e._v("Name")]),n("th",[e._v("Selector")]),n("th",[e._v("On")]),n("th",[e._v("Example Value")])])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"alert alert-info d-flex"},[n("i",{staticClass:"fas fa-exclamation-triangle fa-2x mr-4"}),n("div",[n("h2",[e._v("If you're building a new Vue component and you want it to be auto-documented here")]),n("div",[n("p",[n("span",{staticClass:"badge badge-danger"},[e._v("Required")]),e._v(" The component must have it's properties defined with "),n("code",[e._v("type")]),e._v(" and "),n("code",[e._v("default")]),e._v(" properties, see "),n("a",{attrs:{href:"https://vuejs.org/v2/guide/components-props.html#Prop-Validation",target:"_blank"}},[e._v("Prop Validation")])]),n("p",[n("span",{staticClass:"badge badge-secondary"},[e._v("Optional")]),e._v(" The component maybe also include a top level "),n("code",[e._v("meta")]),e._v(" property with slot and event availability, ex.\n"),n("code",{staticStyle:{"white-space":"pre"}},[e._v("\nmeta: {\nslots: {\n default: {\n type: 'component',\n valid: ['ComponentNameOne', 'ComponentNameTwo'],\n ],\n named: [{\n name: 'filters',\n type: 'component',\n valid: ['OtherComponentName'],\n }],\n},\nevents: [{\n name: 'date-selected',\n selector: '.dates li',\n on: 'click',\n example: '2019-02-11',\n}],\n},\n")])]),n("p",[n("span",{staticClass:"badge badge-secondary"},[e._v("Optional")]),e._v(" The component's properties may also include an additional "),n("code",[e._v("meta")]),e._v(" property in the property definition, ex.\n"),n("code",{staticStyle:{"white-space":"pre"}},[e._v("\nmeta: {\nrequired: [true|false],\nexample: 'Example implementation code',\ndeprecated: 'Deprecation note that will appear on hover',\n},\n")])])])])])}],r={data(){return{loadedComponents:[]}},mounted(){this.loadComponents()},methods:{loadComponents(){this.log("loadComponents()");const e=this.$slots.default.filter(e=>void 0!==e.tag);if(this.log("Components found",e),!e)return[];for(let t=0;t<e.length;t+=1){const n=this.loadProperties(e[t]),a={name:e[t].componentOptions.tag,properties:[...n],events:e[t].componentInstance.$options.meta&&e[t].componentInstance.$options.meta.events?e[t].componentInstance.$options.meta.events:null,slots:e[t].componentInstance.$options.meta&&e[t].componentInstance.$options.meta.slots?e[t].componentInstance.$options.meta.slots:null};this.loadedComponents.push(a)}return!0},getComponentExampleHtml(e,t=!1){const n=this.getKebabCaseFromCamelCase(e.name),a=t?e.properties&&e.properties.filter(e=>e.required&&!e.deprecated):e.properties&&e.properties.filter(e=>!e.deprecated);let s=a.map(e=>`<span class="property">${"string"===e.type?"":":"}${e.name}</span>="<span class="value">${e.example}</span>"`).join("<br>");s&&(s=`<br>${s}<br>`);let o="";t||(e.slots&&(e.slots.named.length>0&&e.slots.named.forEach(e=>{"component"===e.type&&e.valid.forEach(t=>{const n=this.getKebabCaseFromCamelCase(t);o=`\n ${o}\n <br>\n <div class="slot">\n &lt;template v-slot:${e.name}&gt;\n <br>\n <span class="slot-contents">&lt;${n}&gt;&lt;/${n}&gt;</span>\n <br>\n &lt;/template&gt;\n </div>\n `})}),e.slots.default&&(o=`${o}\n <br>\n <div class="slot">\n &lt;<span class="tag">template</span> <span class="property">v-slot:default</span>&gt;\n `,"component"===e.slots.default.type&&e.slots.default.valid.forEach(e=>{const t=this.getKebabCaseFromCamelCase(e);o=`${o}<br><span class="slot-contents"><a href="#${t}">&lt;<span class="tag">${t}</span>&gt;&lt;/<span class="tag">${t}</span>&gt;</a></span>`}),o=`${o}\n <br>\n &lt;/<span class="tag">template</span>&gt;\n </div>\n `)),o&&(o=`${o}`));const r=`&lt;<span class="tag">${n}</span>${s}&gt;${o}&lt;/<span class="tag">${n}</span>&gt;`;return r},loadProperties(e){if(this.log("loadProperties()",e),!e)return!1;const t=[],n=Object.keys(e.componentInstance.$options.props);n.sort(),this.log("Properties found",n);for(let a=0;a<n.length;a+=1){const s=n[a],o=this.getKebabCaseFromCamelCase(s),r=this.getPropertyType(e.componentInstance.$options.props[s].type);let i=e.componentInstance.$options.props[s].default&&e.componentInstance.$options.props[s].default.toString();const l=e.componentInstance.$options.props[s].meta&&e.componentInstance.$options.props[s].meta.required,p=e.componentInstance.$options.props[s].meta&&e.componentInstance.$options.props[s].meta.deprecated;let c=e.componentInstance.$options.props[s].meta&&e.componentInstance.$options.props[s].meta.example;switch(r){case"array":if(c=c||"[4, 8, 15, 16, 23, 42]",i){const e=i.match(/{\s*return\s*(.*);?\s*}/);e&&void 0!==e[1]&&([,i]=e)}break;case"object":if(c=c||"{ key1: value1, key2: value2 }",i){const e=i.match(/(?:_default|function)\(\)\s*(.*)/);e&&void 0!==e[1]&&([,i]=e)}break;case"string":c=c||"Some text";break;case"function":if(c=c||"(value) => { return value.toUpperCase() }",i){const e=i.match(/{(.*)}/);e&&void 0!==e[1]&&([,i]=e)}break;case"number":c=c||"14";break;case"boolean":c=c||"true";break;default:c=c||""}c=c.replace(/"/g,"'"),t.push({name:o,type:r,defaultValue:i,example:c,required:l,deprecated:p})}return t.length>0&&t.sort((e,t)=>{const n=!!e.required,a=!!t.required;return n===a?e.name>t.name:n!==a&&n&&!a?-1:1}),this.log(t),t},getKebabCaseFromCamelCase(e){return e&&e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()},getPropertyType(e){const t=e.toString().split(" ")[1];return t.substr(0,t.length-2).toLowerCase()}}},i=r;n("e677");function l(e,t,n,a,s,o,r,i){var l,p="function"===typeof e?e.options:e;if(t&&(p.render=t,p.staticRenderFns=n,p._compiled=!0),a&&(p.functional=!0),o&&(p._scopeId="data-v-"+o),r?(l=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),s&&s.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},p._ssrRegister=l):s&&(l=i?function(){s.call(this,this.$root.$options.shadowRoot)}:s),l)if(p.functional){p._injectStyles=l;var c=p.render;p.render=function(e,t){return l.call(t),c(e,t)}}else{var d=p.beforeCreate;p.beforeCreate=d?[].concat(d,l):[l]}return{exports:e,options:p}}var p=l(i,s,o,!1,null,"7edd7376",null),c=p.exports,d=c;t["default"]=d}})});
(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t():"function"===typeof define&&define.amd?define([],t):"object"===typeof exports?exports["vue-documenter"]=t():e["vue-documenter"]=t()})("undefined"!==typeof self?self:this,function(){return function(e){var t={};function n(a){if(t[a])return t[a].exports;var o=t[a]={i:a,l:!1,exports:{}};return e[a].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,a){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},n.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(a,o,function(t){return e[t]}.bind(null,o));return a},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s="980f")}({"02b5":function(e,t,n){var a=n("19d8");"string"===typeof a&&(a=[[e.i,a,""]]),a.locals&&(e.exports=a.locals);var o=n("499e").default;o("7fd1a97e",a,!0,{sourceMap:!1,shadowMode:!1})},"19d8":function(e,t,n){t=e.exports=n("2350")(!1),t.push([e.i,"h2[data-v-1e6e30cc]{margin-top:1rem}.alert h2[data-v-1e6e30cc]{margin-top:.25rem;margin-bottom:1rem}.indent[data-v-1e6e30cc]{margin-left:2rem}.code-highlight[data-v-1e6e30cc]{background:#f5f2f0;color:#999;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;overflow-x:scroll;padding:1em;text-shadow:0 1px #fff;white-space:nowrap}.code-highlight[data-v-1e6e30cc] .property,.code-highlight[data-v-1e6e30cc] .tag,.code-highlight[data-v-1e6e30cc] .value{display:inline-block}.code-highlight[data-v-1e6e30cc] .tag{color:#905}.code-highlight[data-v-1e6e30cc] .property{color:#690;margin-left:2em}.code-highlight[data-v-1e6e30cc] .value{color:#07a}.code-highlight[data-v-1e6e30cc] .slot{margin-left:2em}.code-highlight[data-v-1e6e30cc] .slot .property{margin-left:0}.code-highlight[data-v-1e6e30cc] .slot .slot-contents{margin-left:4em}",""])},2350:function(e,t){function n(e,t){var n=e[1]||"",o=e[3];if(!o)return n;if(t&&"function"===typeof btoa){var s=a(o),r=o.sources.map(function(e){return"/*# sourceURL="+o.sourceRoot+e+" */"});return[n].concat(r).concat([s]).join("\n")}return[n].join("\n")}function a(e){var t=btoa(unescape(encodeURIComponent(JSON.stringify(e)))),n="sourceMappingURL=data:application/json;charset=utf-8;base64,"+t;return"/*# "+n+" */"}e.exports=function(e){var t=[];return t.toString=function(){return this.map(function(t){var a=n(t,e);return t[2]?"@media "+t[2]+"{"+a+"}":a}).join("")},t.i=function(e,n){"string"===typeof e&&(e=[[null,e,""]]);for(var a={},o=0;o<this.length;o++){var s=this[o][0];"number"===typeof s&&(a[s]=!0)}for(o=0;o<e.length;o++){var r=e[o];"number"===typeof r[0]&&a[r[0]]||(n&&!r[2]?r[2]=n:n&&(r[2]="("+r[2]+") and ("+n+")"),t.push(r))}},t}},"499e":function(e,t,n){"use strict";function a(e,t){for(var n=[],a={},o=0;o<t.length;o++){var s=t[o],r=s[0],i=s[1],c=s[2],l=s[3],p={id:e+":"+o,css:i,media:c,sourceMap:l};a[r]?a[r].parts.push(p):n.push(a[r]={id:r,parts:[p]})}return n}n.r(t),n.d(t,"default",function(){return f});var o="undefined"!==typeof document;if("undefined"!==typeof DEBUG&&DEBUG&&!o)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var s={},r=o&&(document.head||document.getElementsByTagName("head")[0]),i=null,c=0,l=!1,p=function(){},d=null,u="data-vue-ssr-id",m="undefined"!==typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase());function f(e,t,n,o){l=n,d=o||{};var r=a(e,t);return v(r),function(t){for(var n=[],o=0;o<r.length;o++){var i=r[o],c=s[i.id];c.refs--,n.push(c)}t?(r=a(e,t),v(r)):r=[];for(o=0;o<n.length;o++){c=n[o];if(0===c.refs){for(var l=0;l<c.parts.length;l++)c.parts[l]();delete s[c.id]}}}}function v(e){for(var t=0;t<e.length;t++){var n=e[t],a=s[n.id];if(a){a.refs++;for(var o=0;o<a.parts.length;o++)a.parts[o](n.parts[o]);for(;o<n.parts.length;o++)a.parts.push(g(n.parts[o]));a.parts.length>n.parts.length&&(a.parts.length=n.parts.length)}else{var r=[];for(o=0;o<n.parts.length;o++)r.push(g(n.parts[o]));s[n.id]={id:n.id,refs:1,parts:r}}}}function h(){var e=document.createElement("style");return e.type="text/css",r.appendChild(e),e}function g(e){var t,n,a=document.querySelector("style["+u+'~="'+e.id+'"]');if(a){if(l)return p;a.parentNode.removeChild(a)}if(m){var o=c++;a=i||(i=h()),t=_.bind(null,a,o,!1),n=_.bind(null,a,o,!0)}else a=h(),t=y.bind(null,a),n=function(){a.parentNode.removeChild(a)};return t(e),function(a){if(a){if(a.css===e.css&&a.media===e.media&&a.sourceMap===e.sourceMap)return;t(e=a)}else n()}}var b=function(){var e=[];return function(t,n){return e[t]=n,e.filter(Boolean).join("\n")}}();function _(e,t,n,a){var o=n?"":a.css;if(e.styleSheet)e.styleSheet.cssText=b(t,o);else{var s=document.createTextNode(o),r=e.childNodes;r[t]&&e.removeChild(r[t]),r.length?e.insertBefore(s,r[t]):e.appendChild(s)}}function y(e,t){var n=t.css,a=t.media,o=t.sourceMap;if(a&&e.setAttribute("media",a),d.ssrId&&e.setAttribute(u,t.id),o&&(n+="\n/*# sourceURL="+o.sources[0]+" */",n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */"),e.styleSheet)e.styleSheet.cssText=n;else{while(e.firstChild)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}},"955d":function(e,t,n){"use strict";var a=n("02b5"),o=n.n(a);o.a},"980f":function(e,t,n){"use strict";var a;(n.r(t),"undefined"!==typeof window)&&(n("e165"),(a=window.document.currentScript)&&(a=a.src.match(/(.+\/)[^\/]+\.js(\?.*)?$/))&&(n.p=a[1]));var o=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("div",{staticStyle:{display:"none"}},[e._t("default")],2),n("div",{staticClass:"row"},[n("div",{staticClass:"col-sm-3"},[n("div",{staticClass:"card card-body"},[n("h2",{staticClass:"mt-0"},[e._v("Components")]),n("ul",e._l(e.loadedComponents,function(t){return n("li",{key:"table-of-contents-"+t.name},[n("a",{attrs:{href:"#{component.name}"}},[e._v(e._s(t.name))])])}),0)])]),n("div",{staticClass:"col-sm-9"},e._l(e.loadedComponents,function(t){return n("div",{key:"component-"+t.name,staticClass:"card card-body mb-5"},[n("h1",{attrs:{id:e.getKebabCaseFromCamelCase(t.name)}},[e._v("<"+e._s(e.getKebabCaseFromCamelCase(t.name))+">")]),n("h2",[e._v("Properties")]),n("div",{staticClass:"table-responsive mb-3"},[n("table",{staticClass:"table table-striped"},[e._m(0,!0),n("tbody",e._l(t.properties,function(t){return n("tr",{key:"property-"+t.name,class:{deprecated:t.deprecated}},[n("td",{staticStyle:{"white-space":"nowrap"}},[e._v("\n "+e._s("string"!==t.type?":":"")+e._s(t.name)+"\n "),t.required?n("span",{staticClass:"badge badge-danger",attrs:{title:t.required}},[e._v("Required")]):e._e(),t.deprecated?n("span",{staticClass:"badge badge-warning",attrs:{title:t.deprecated,"data-tippy":""}},[e._v("Deprecated "),n("i",{staticClass:"fas fa-question-circle"})]):e._e()]),n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.type))]),n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.defaultValue))]),n("td",[n("code",[e._v(e._s(t.example))])])])}),0)])]),e._m(1,!0),n("div",{staticClass:"row mb-3"},[n("div",{staticClass:"col"},[t.events?n("div",{staticClass:"table-responsive"},[n("table",{staticClass:"table table-striped"},[e._m(2,!0),n("tbody",e._l(t.events,function(t){return n("tr",{key:"event-"+t.name},[n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.name))]),n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.selector))]),n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.on))]),n("td",{staticStyle:{"white-space":"nowrap"}},[e._v(e._s(t.example))])])}),0)])]):n("h3",[e._v("None")])])]),n("div",{staticClass:"row"},[n("div",{staticClass:"col-sm-6"},[n("h2",[e._v("Minimal Example")]),n("div",{staticClass:"code-highlight",domProps:{innerHTML:e._s(e.getComponentExampleHtml(t,{onlyRequired:!0}))}})]),n("div",{staticClass:"col-sm-6"},[n("h2",[e._v("Full Example")]),n("div",{staticClass:"code-highlight",domProps:{innerHTML:e._s(e.getComponentExampleHtml(t))}})])])])}),0)]),e._m(3)])},s=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("thead",[n("tr",[n("th",[e._v("Name")]),n("th",[e._v("Type")]),n("th",[e._v("Default Value")]),n("th",[e._v("Example")])])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("h2",[e._v("Events ("),n("a",{attrs:{href:"https://vuejs.org/v2/api/#vm-emit",target:"_blank"}},[e._v("Vue Docs")]),e._v(")")])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("thead",[n("tr",[n("th",[e._v("Name")]),n("th",[e._v("Selector")]),n("th",[e._v("On")]),n("th",[e._v("Example Value")])])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"alert alert-info d-flex"},[n("i",{staticClass:"fas fa-exclamation-triangle fa-2x mr-4"}),n("div",[n("h2",[e._v("If you're building a new Vue component and you want it to be auto-documented here")]),n("div",[n("p",[n("span",{staticClass:"badge badge-danger"},[e._v("Required")]),e._v(" The component must have it's properties defined with "),n("code",[e._v("type")]),e._v(" and "),n("code",[e._v("default")]),e._v(" properties, see "),n("a",{attrs:{href:"https://vuejs.org/v2/guide/components-props.html#Prop-Validation",target:"_blank"}},[e._v("Prop Validation")])]),n("p",[n("span",{staticClass:"badge badge-secondary"},[e._v("Optional")]),e._v(" The component maybe also include a top level "),n("code",[e._v("meta")]),e._v(" property with slot and event availability, ex.\n"),n("code",{staticStyle:{"white-space":"pre"}},[e._v("\nmeta: {\nslots: {\n default: {\n type: 'component',\n valid: ['ComponentNameOne', 'ComponentNameTwo'],\n ],\n named: [{\n name: 'filters',\n type: 'component',\n valid: ['OtherComponentName'],\n }],\n},\nevents: [{\n name: 'date-selected',\n selector: '.dates li',\n on: 'click',\n example: '2019-02-11',\n}],\n},\n")])]),n("p",[n("span",{staticClass:"badge badge-secondary"},[e._v("Optional")]),e._v(" The component's properties may also include an additional "),n("code",[e._v("meta")]),e._v(" property in the property definition, ex.\n"),n("code",{staticStyle:{"white-space":"pre"}},[e._v("\nmeta: {\nrequired: [true|false],\nexample: 'Example implementation code',\ndeprecated: 'Deprecation note that will appear on hover',\n},\n")])])])])])}],r={data(){return{loadedComponents:[]}},mounted(){this.loadComponents()},methods:{loadComponents(){const e=this.$slots.default.filter(e=>void 0!==e.tag);if(!e)return[];for(let t=0;t<e.length;t+=1){const n=this.loadProperties(e[t]),a={name:e[t].componentOptions.tag,properties:[...n],events:e[t].componentInstance.$options.meta&&e[t].componentInstance.$options.meta.events?e[t].componentInstance.$options.meta.events:null,slots:e[t].componentInstance.$options.meta&&e[t].componentInstance.$options.meta.slots?e[t].componentInstance.$options.meta.slots:null};this.loadedComponents.push(a)}return!0},getComponentExampleHtml(e,t=!1){const n=this.getKebabCaseFromCamelCase(e.name),a=t?e.properties&&e.properties.filter(e=>e.required&&!e.deprecated):e.properties&&e.properties.filter(e=>!e.deprecated);let o=a.map(e=>`<span class="property">${"string"===e.type?"":":"}${e.name}</span>="<span class="value">${e.example}</span>"`).join("<br>");o&&(o=`<br>${o}<br>`);let s="";t||(e.slots&&(e.slots.named.length>0&&e.slots.named.forEach(e=>{"component"===e.type&&e.valid.forEach(t=>{const n=this.getKebabCaseFromCamelCase(t);s=`\n ${s}\n <br>\n <div class="slot">\n &lt;template v-slot:${e.name}&gt;\n <br>\n <span class="slot-contents">&lt;${n}&gt;&lt;/${n}&gt;</span>\n <br>\n &lt;/template&gt;\n </div>\n `})}),e.slots.default&&(s=`${s}\n <br>\n <div class="slot">\n &lt;<span class="tag">template</span> <span class="property">v-slot:default</span>&gt;\n `,"component"===e.slots.default.type&&e.slots.default.valid.forEach(e=>{const t=this.getKebabCaseFromCamelCase(e);s=`${s}<br><span class="slot-contents"><a href="#${t}">&lt;<span class="tag">${t}</span>&gt;&lt;/<span class="tag">${t}</span>&gt;</a></span>`}),s=`${s}\n <br>\n &lt;/<span class="tag">template</span>&gt;\n </div>\n `)),s&&(s=`${s}`));const r=`&lt;<span class="tag">${n}</span>${o}&gt;${s}&lt;/<span class="tag">${n}</span>&gt;`;return r},loadProperties(e){if(!e)return!1;const t=[],n=Object.keys(e.componentInstance.$options.props);n.sort();for(let a=0;a<n.length;a+=1){const o=n[a],s=this.getKebabCaseFromCamelCase(o),r=this.getPropertyType(e.componentInstance.$options.props[o].type);let i=e.componentInstance.$options.props[o].default&&e.componentInstance.$options.props[o].default.toString();const c=e.componentInstance.$options.props[o].meta&&e.componentInstance.$options.props[o].meta.required,l=e.componentInstance.$options.props[o].meta&&e.componentInstance.$options.props[o].meta.deprecated;let p=e.componentInstance.$options.props[o].meta&&e.componentInstance.$options.props[o].meta.example;switch(r){case"array":if(p=p||"[4, 8, 15, 16, 23, 42]",i){const e=i.match(/{\s*return\s*(.*);?\s*}/);e&&void 0!==e[1]&&([,i]=e)}break;case"object":if(p=p||"{ key1: value1, key2: value2 }",i){const e=i.match(/(?:_default|function)\(\)\s*(.*)/);e&&void 0!==e[1]&&([,i]=e)}break;case"string":p=p||"Some text";break;case"function":if(p=p||"(value) => { return value.toUpperCase() }",i){const e=i.match(/{(.*)}/);e&&void 0!==e[1]&&([,i]=e)}break;case"number":p=p||"14";break;case"boolean":p=p||"true";break;default:p=p||""}p=p.replace(/"/g,"'"),t.push({name:s,type:r,defaultValue:i,example:p,required:c,deprecated:l})}return t.length>0&&t.sort((e,t)=>{const n=!!e.required,a=!!t.required;return n===a?e.name>t.name:n!==a&&n&&!a?-1:1}),t},getKebabCaseFromCamelCase(e){return e&&e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()},getPropertyType(e){const t=e.toString().split(" ")[1];return t.substr(0,t.length-2).toLowerCase()}}},i=r;n("955d");function c(e,t,n,a,o,s,r,i){var c,l="function"===typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=n,l._compiled=!0),a&&(l.functional=!0),s&&(l._scopeId="data-v-"+s),r?(c=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},l._ssrRegister=c):o&&(c=i?function(){o.call(this,this.$root.$options.shadowRoot)}:o),c)if(l.functional){l._injectStyles=c;var p=l.render;l.render=function(e,t){return c.call(t),p(e,t)}}else{var d=l.beforeCreate;l.beforeCreate=d?[].concat(d,c):[c]}return{exports:e,options:l}}var l=c(i,o,s,!1,null,"1e6e30cc",null),p=l.exports;t["default"]=p},e165:function(e,t){(function(e){var t="currentScript",n=e.getElementsByTagName("script");t in e||Object.defineProperty(e,t,{get:function(){try{throw new Error}catch(a){var e,t=(/.*at [^\(]*\((.*):.+:.+\)$/gi.exec(a.stack)||[!1])[1];for(e in n)if(n[e].src==t||"interactive"==n[e].readyState)return n[e];return null}}})})(document)}})["default"]});
//# sourceMappingURL=vue-documenter.umd.min.js.map
{
"name": "vue-documenter",
"version": "0.0.4",
"version": "0.0.5",
"description": "An automatic Vue component documenter - yes - a component that documents components",
"main": "dist/vue-documenter.common.js",
"module": "dist/vue-documenter.umd.js",
"unpkg": "dist/vue-documenter.common.js",
"scripts": {

@@ -7,0 +9,0 @@ "build": "vue-cli-service build --target lib --name vue-documenter ./src/index.js",

@@ -1,10 +0,38 @@

# vue-documenter
An automatic Vue component documenter - yes - a component that documents components
# Vue Documenter
An automatic, living Vue component documenter - yes - a component that documents components, with no build step (ie Webpack or Rollup or extra commands to run, because it's just another component).
# Usage
```
<vue-documenter>
<your-component-here></your-component-here>
<another-component></another-component>
</vue-documenter>
// YourVueDocumentationPage.vue
<template>
<div>
<vue-documenter>
<some-component></some-component>
<another-component></another-component>
</vue-documenter>
</div>
</template>
<script>
import VueDocumenter from 'vue-documenter';
import SomeComponent from './components/SomeComponent.vue';
import AnotherComponent from './components/AnotherComponent.vue';
export default {
components: {
VueDocumenter,
SomeComponent,
AnotherComponent,
},
data () {
return {}
}
}
</script>
```
# Why?
For when you don't always have time to keep secondary documentation updated, or aren't able to roll out something like Storybook for everybody on your team.

@@ -1,3 +0,28 @@

import VueDocumenter from './VueDocumenter.vue'
// Import vue component
import VueDocumenter from './VueDocumenter.vue';
// Declare install function executed by Vue.use()
export function install(Vue) {
if (install.installed) return;
install.installed = true;
Vue.component('VueDocumenter', VueDocumenter);
}
// Create module definition for Vue.use()
const plugin = {
install,
};
// Auto-install when vue is found (eg. in browser via <script> tag)
let GlobalVue = null;
if (typeof window !== 'undefined') {
GlobalVue = window.Vue;
} else if (typeof global !== 'undefined') {
GlobalVue = global.Vue;
}
if (GlobalVue) {
GlobalVue.use(plugin);
}
// To allow use as module (npm/webpack/etc.) export component
export default VueDocumenter;

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc