Skip to content

Commit

Permalink
new docs
Browse files Browse the repository at this point in the history
  • Loading branch information
dijs committed Aug 15, 2021
1 parent 2bd77d6 commit 943c53c
Show file tree
Hide file tree
Showing 42 changed files with 23,886 additions and 0 deletions.
1,182 changes: 1,182 additions & 0 deletions docs/wikijs/6.3.1/QueryChain.html

Large diffs are not rendered by default.

2,422 changes: 2,422 additions & 0 deletions docs/wikijs/6.3.1/Wiki.html

Large diffs are not rendered by default.

2,721 changes: 2,721 additions & 0 deletions docs/wikijs/6.3.1/WikiPage.html

Large diffs are not rendered by default.

286 changes: 286 additions & 0 deletions docs/wikijs/6.3.1/chain.js.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,286 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>chain.js - Documentation</title>

<script src="scripts/prettify/prettify.js"></script>
<script src="scripts/prettify/lang-css.js"></script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css">
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>

<input type="checkbox" id="nav-trigger" class="nav-trigger" />
<label for="nav-trigger" class="navicon-button x">
<div class="navicon"></div>
</label>

<label for="nav-trigger" class="overlay"></label>

<nav>
<li class="nav-link nav-home-link"><a href="index.html">Home</a></li><li class="nav-heading">Namespaces</li><li class="nav-heading"><span class="nav-item-type type-namespace">N</span><span class="nav-item-name"><a href="QueryChain.html">QueryChain</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="QueryChain.html#categories">categories</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="QueryChain.html#content">content</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="QueryChain.html#coordinates">coordinates</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="QueryChain.html#extlinks">extlinks</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="QueryChain.html#geosearch">geosearch</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="QueryChain.html#image">image</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="QueryChain.html#langlinks">langlinks</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="QueryChain.html#links">links</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="QueryChain.html#request">request</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="QueryChain.html#summary">summary</a></span></li><li class="nav-heading"><span class="nav-item-type type-namespace">N</span><span class="nav-item-name"><a href="Wiki.html">Wiki</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#allCategories">allCategories</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#allPages">allPages</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#api">api</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#chain">chain</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#find">find</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#findById">findById</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#geoSearch">geoSearch</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#mostViewed">mostViewed</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#page">page</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#pagesInCategory">pagesInCategory</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#prefixSearch">prefixSearch</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#random">random</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Wiki.html#search">search</a></span></li><li class="nav-heading"><span class="nav-item-type type-namespace">N</span><span class="nav-item-name"><a href="WikiPage.html">WikiPage</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#backlinks">backlinks</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#categories">categories</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#chain">chain</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#content">content</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#coordinates">coordinates</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#externalLinks">externalLinks</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#fullInfo">fullInfo</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#html">html</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#images">images</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#info">info</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#langlinks">langlinks</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#links">links</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#mainImage">mainImage</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#pageImage">pageImage</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#rawContent">rawContent</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#rawImages">rawImages</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#references">references</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#summary">summary</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#tables">tables</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="WikiPage.html#url">url</a></span></li><li class="nav-heading"><a href="global.html">Globals</a></li><li class="nav-item"><span class="nav-item-type type-member">M</span><span class="nav-item-name"><a href="global.html#defaultOptions">defaultOptions</a></span></li>
</nav>

<div id="main">

<h1 class="page-title">chain.js</h1>







<section>
<article>
<pre class="prettyprint source linenums"><code>import { api } from './util';

const processors = {
extracts: data => {
return { extract: data.extract };
},
links: data => {
return { links: data.links.map(e => e.title) };
},
extlinks: data => {
return { extlinks: data.extlinks.map(e => e['*']) };
},
langlinks: data => {
return {
langlinks: data.langlinks.map(link => {
return {
lang: link.lang,
title: link['*'],
url: link.url
};
})
};
},
coordinates: data => {
if (data.coordinates) {
return { coordinates: data.coordinates[0] };
} else {
return {};
}
},
categories: data => {
return { categories: data.categories.map(e => e.title) };
},
pageimages: data => {
return {
image: {
name: data.pageimage,
thumbnail: data.thumbnail,
original: data.original
}
};
}
};

function process(props, rawPageData) {
const data = { title: rawPageData.title };
return props.reduce((memo, prop) => {
if (processors[prop]) Object.assign(memo, processors[prop](rawPageData));
return memo;
}, data);
}

/**
* Chain API requests together
* @example
* // Get page summary and images in same request
* wiki.page('batman').then(page => page.chain().summary().image().request()).then(console.log);
* @namespace QueryChain
*/
export default class QueryChain {
constructor(apiOptions, id) {
this.id = id;
this.apiOptions = apiOptions;
this._params = { pageids: id };
this.props = new Set();
}

params() {
const prop = [...this.props].join('|');
return Object.assign({}, this._params, { prop });
}

direct(key, ...args) {
return this[key](...args)
.request()
.then(res => res[key]);
}

// TODO: Add page searches for root calls - generators

// TODO: Add pagination helper method

/**
* Make combined API request
* @method QueryChain#request
* @returns {Object|Array} - Data object(s) depending on where the chain was created from
*/
request() {
const props = [...this.props];
return api(this.apiOptions, this.params())
.then(res => {
if (this.id) {
return res.query.pages[this.id];
} else {
return Object.values(res.query.pages);
}
})
.then(data => {
if (Array.isArray(data)) {
return data.map(e => process(props, e));
} else {
return process(props, data);
}
});
}

chain(prop, params = {}) {
if (prop) {
this.props.add(prop);
}
Object.assign(this._params, params);
return this;
}

/**
* @summary Finds pages near a specific point
* @method QueryChain#geosearch
* @returns {QueryChain}
*/
geosearch(latitude, longitude, radius) {
return this.chain(undefined, {
generator: 'geosearch',
ggsradius: radius,
ggscoord: `${latitude}|${longitude}`
});
}

search(query, limit = 50) {
return this.chain(undefined, {
list: 'search',
srsearch: query,
srlimit: limit
});
}

/**
* @summary Useful for extracting structured section content
* @method QueryChain#content
* @returns {QueryChain}
*/
content() {
return this.chain('extracts', {
explaintext: '1'
});
}

/**
* @summary Useful for extracting summary content
* @method QueryChain#summary
* @returns {QueryChain}
*/
summary() {
return this.chain('extracts', {
explaintext: '1',
exintro: '1'
});
}

/**
* @summary Extract image
* @method QueryChain#image
* @returns {QueryChain}
*/
image(types = { thumbnail: true, original: false, name: true }) {
return this.chain('pageimages', {
piprop: Object.keys(types)
.filter(k => types[k])
.join('|')
});
}

/**
* @summary Extract external links
* @method QueryChain#extlinks
* @returns {QueryChain}
*/
extlinks() {
return this.chain('extlinks', {
ellimit: 'max'
});
}

/**
* @summary Extract page links
* @method QueryChain#links
* @returns {QueryChain}
*/
links(limit = 100) {
return this.chain('links', {
plnamespace: 0,
pllimit: limit
});
}

/**
* @summary Extract categories
* @method QueryChain#categories
* @returns {QueryChain}
*/
categories(limit = 100) {
return this.chain('categories', {
pllimit: limit
});
}

/**
* @summary Extract coordinates
* @method QueryChain#coordinates
* @returns {QueryChain}
*/
coordinates() {
return this.chain('coordinates');
}

/**
* @summary Get list of links to different translations
* @method QueryChain#langlinks
* @returns {QueryChain}
*/
langlinks() {
return this.chain('langlinks', {
lllimit: 'max',
llprop: 'url'
});
}
}
</code></pre>
</article>
</section>




</div>

<br class="clear">

<footer>
Generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.7</a> on Sun Aug 15 2021 21:50:57 GMT+0300 (Eastern European Summer Time) using the Minami theme.
</footer>

<script>prettyPrint();</script>
<script src="scripts/linenumber.js"></script>
</body>
</html>
Binary file added docs/wikijs/6.3.1/fonts/OpenSans-Bold-webfont.eot
Binary file not shown.

0 comments on commit 943c53c

Please sign in to comment.