From 9128c808568a32a1fb993cd43a27844cedc8fb8d Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Mon, 25 Jan 2021 17:40:34 +0800
Subject: [PATCH 01/14] feat: get ready for implementing chapter, barrage and
voiceline functions
Changed:
- Added barrage, voiceline, chapters to the updater system
- Added barrage. voiceline, chapters sources to SaratogaUtil
- Added barrage, voiceline, chapters to the main Saratoga class
- Changed: how update checking works
---
src/Saratoga.js | 24 ++++++++++
src/store/SaratogaBarrages.js | 1 +
src/store/SaratogaChapters.js | 1 +
src/store/SaratogaStore.js | 78 +++++++++++++++++++++++++++++++-
src/store/SaratogaVoicelines.js | 1 +
src/updater/SaratogaUpdater.js | 64 +++++++++++++++++++++++---
src/updater/SaratogaValidator.js | 7 +--
src/util/SaratogaUtil.js | 34 +++++++++++++-
8 files changed, 197 insertions(+), 13 deletions(-)
create mode 100644 src/store/SaratogaBarrages.js
create mode 100644 src/store/SaratogaChapters.js
create mode 100644 src/store/SaratogaVoicelines.js
diff --git a/src/Saratoga.js b/src/Saratoga.js
index 2a77b06..b8917d2 100644
--- a/src/Saratoga.js
+++ b/src/Saratoga.js
@@ -85,5 +85,29 @@ class Saratoga extends EventEmitter {
if (!this.ready) return null;
return this.store.equipments;
}
+ /**
+ * Chapters related getters for this store
+ * @type {SaratogaChapters}
+ */
+ get chapters() {
+ if (!this.ready) return null;
+ return this.store.chapters;
+ }
+ /**
+ * Voiceline related getters for this store
+ * @type {SaratogaVoicelines}
+ */
+ get voicelines() {
+ if (!this.ready) return null;
+ return this.store.voicelines;
+ }
+ /**
+ * Barrage related getters for this store
+ * @type {SaratogaBarrages}
+ */
+ get barrages() {
+ if (!this.ready) return null;
+ return this.store.barrages;
+ }
}
module.exports = Saratoga;
diff --git a/src/store/SaratogaBarrages.js b/src/store/SaratogaBarrages.js
new file mode 100644
index 0000000..0ffdd02
--- /dev/null
+++ b/src/store/SaratogaBarrages.js
@@ -0,0 +1 @@
+// TODO
\ No newline at end of file
diff --git a/src/store/SaratogaChapters.js b/src/store/SaratogaChapters.js
new file mode 100644
index 0000000..0ffdd02
--- /dev/null
+++ b/src/store/SaratogaChapters.js
@@ -0,0 +1 @@
+// TODO
\ No newline at end of file
diff --git a/src/store/SaratogaStore.js b/src/store/SaratogaStore.js
index 13f7be5..270a70e 100644
--- a/src/store/SaratogaStore.js
+++ b/src/store/SaratogaStore.js
@@ -28,6 +28,21 @@ class SaratogaStore {
* @type {SaratogaEquipments}
*/
this.equipments = new SaratogaEquipments(this);
+ /**
+ * Chapters related getters for this store
+ * @type {SaratogaChapters}
+ */
+ // this.chapters = new SaratogaChapters TODO
+ /**
+ * Voiceline related getters for this store
+ * @type {SaratogaVoicelines}
+ */
+ // this.voicelines = new SaratogaVOicelines TODO
+ /**
+ * Barrage related getters for this store
+ * @type {SaratogaBarrages}
+ */
+ // this.barrages = new SaratogaBarrages TODO
/**
* Updater Class for the local data for this store
* @type {SaratogaUpdater}
@@ -41,6 +56,9 @@ class SaratogaStore {
Object.defineProperty(this, '_shipCache', { value: null, writable: true });
Object.defineProperty(this, '_equipCache', { value: null, writable: true });
+ Object.defineProperty(this, '_chapterCache', { value: null, writable: true });
+ Object.defineProperty(this, '_voicelineCache', { value: null, writable: true });
+ Object.defineProperty(this, '_barrageCache', { value: null, writable: true });
this.updater.startUpCheck();
this.updateOnFirstStartUp()
@@ -69,7 +87,7 @@ class SaratogaStore {
rawShips = Object.values(rawShips);
if (!rawShips.length) return;
this.clearShipsCache();
- this._shipCache = new Fuse(rawShips, { keys: [ 'names.en', 'names.cn', 'names.jp', 'names.kr' ], threshold: 0.4 });
+ this._shipCache = new Fuse(rawShips, { keys: [ 'names.en', 'names.cn', 'names.jp', 'names.kr', 'names.code' ], threshold: 0.4 });
}
loadEquipmentsCache(rawEquips) {
@@ -80,6 +98,28 @@ class SaratogaStore {
this._equipCache = new Fuse(rawEquips, { keys: [ 'names.en', 'names.cn', 'names.jp', 'names.kr' ], threshold: 0.4 });
}
+ loadChapterCache(rawChapters) {
+ if (!rawChapters) return;
+ rawChapters = Object.values(Object.values(rawChapters));
+ if (!rawChapters.length) return;
+ this.clearChapterCache();
+ this._chapterCache = new Fuse(rawChapters, { keys: [ 'names.en', 'names.cn', 'names.jp', 'names.kr' ], threshold: 0.4 });
+ }
+
+ loadVoicelineCache(rawVoicelines) {
+ if (!rawVoicelines) return;
+ this.clearVoicelineCache();
+ this._voicelineCache = rawVoicelines;
+ }
+
+ loadBarrageCache(rawBarrages) {
+ if (!rawBarrages) return;
+ rawBarrages = Object.values(rawBarrages);
+ if (!rawBarrages.length) return;
+ this.clearBarrageCache();
+ this._barrageCache = new Fuse(rawBarrages, { keys: [ 'id', 'name' ], threshold: 0.4 });
+ }
+
clearShipsCache() {
this._shipCache = null;
}
@@ -88,6 +128,18 @@ class SaratogaStore {
this._equipCache = null;
}
+ clearChapterCache() {
+ this._chapterCache = null;
+ }
+
+ clearVoicelineCache() {
+ this._voicelineCache = null;
+ }
+
+ clearBarrageCache() {
+ this._barrageCache = null;
+ }
+
updateShipsData(data) {
return SaratogaUtil.writeFile(SaratogaUtil.shipFilePath(), typeof data === 'string' ? data : JSON.stringify(data));
}
@@ -96,6 +148,18 @@ class SaratogaStore {
return SaratogaUtil.writeFile(SaratogaUtil.equipFilePath(), typeof data === 'string' ? data : JSON.stringify(data));
}
+ updateChapterData(data) {
+ return SaratogaUtil.writeFile(SaratogaUtil.chapterFilePath(), typeof data === 'string' ? data : JSON.stringify(data));
+ }
+
+ updateVoicelineData(data) {
+ return SaratogaUtil.writeFile(SaratogaUtil.voicelineFilePath(), typeof data === 'string' ? data : JSON.stringify(data));
+ }
+
+ updateBarrageData(data) {
+ return SaratogaUtil.writeFile(SaratogaUtil.barrageFilePath(), typeof data === 'string' ? data : JSON.stringify(data));
+ }
+
clearShipsData() {
return SaratogaUtil.writeFile(SaratogaUtil.shipFilePath(), JSON.stringify({}));
}
@@ -103,5 +167,17 @@ class SaratogaStore {
clearEquipmentsData() {
return SaratogaUtil.writeFile(SaratogaUtil.equipFilePath(), JSON.stringify({}));
}
+
+ clearChapterData() {
+ return SaratogaUtil.writeFile(SaratogaUtil.chapterFilePath(), JSON.stringify({}));
+ }
+
+ clearVoicelineData() {
+ return SaratogaUtil.writeFile(SaratogaUtil.voicelineFilePath(), JSON.stringify({}));
+ }
+
+ clearBarrageData() {
+ return SaratogaUtil.writeFile(SaratogaUtil.barrageFilePath(), JSON.stringify({}));
+ }
}
module.exports = SaratogaStore;
diff --git a/src/store/SaratogaVoicelines.js b/src/store/SaratogaVoicelines.js
new file mode 100644
index 0000000..0ffdd02
--- /dev/null
+++ b/src/store/SaratogaVoicelines.js
@@ -0,0 +1 @@
+// TODO
\ No newline at end of file
diff --git a/src/updater/SaratogaUpdater.js b/src/updater/SaratogaUpdater.js
index 427d52e..59e9bdb 100644
--- a/src/updater/SaratogaUpdater.js
+++ b/src/updater/SaratogaUpdater.js
@@ -46,7 +46,7 @@ class SaratogaUpdater {
this.cronUpdate = setInterval(() => {
this.checkForUpdate()
.then((data) => {
- if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) this.saratoga.emit('updateAvailable', data);
+ if (/*data.shipUpdateAvailable || data.equipmentUpdateAvailable()*/data) this.saratoga.emit('updateAvailable', data);
})
.catch((error) => this.saratoga.emit('error', error));
}, 3600000);
@@ -60,6 +60,9 @@ class SaratogaUpdater {
}
this.store.loadShipsCache(JSON.parse(SaratogaUtil.readFileSync(SaratogaUtil.shipFilePath())));
this.store.loadEquipmentsCache(JSON.parse(SaratogaUtil.readFileSync(SaratogaUtil.equipFilePath())));
+ this.store.loadChapterCache(JSON.parse(SaratogaUtil.readFileSync(SaratogaUtil.chapterFilePath())));
+ this.store.loadVoicelineCache(JSON.parse(SaratogaUtil.readFileSync(SaratogaUtil.voicelineFilePath())));
+ this.store.loadBarrageCache(JSON.parse(SaratogaUtil.readFileSync(SaratogaUtil.barrageFilePath())));
this.dataDirReady = true;
}
@@ -87,9 +90,10 @@ class SaratogaUpdater {
async checkForUpdate() {
const dataValidator = new SaratogaValidator();
await dataValidator.fetch();
- const shipUpdateAvailable = dataValidator.setType('ships').needsUpdate();
- const equipmentUpdateAvailable = dataValidator.setType('equipments').needsUpdate();
- return { shipUpdateAvailable, equipmentUpdateAvailable };
+ //const shipUpdateAvailable = dataValidator.setType('ships').needsUpdate();
+ //const equipmentUpdateAvailable = dataValidator.setType('equipments').needsUpdate();
+ //return { shipUpdateAvailable, equipmentUpdateAvailable };
+ return dataValidator.needsUpdate();
}
/**
@@ -103,16 +107,23 @@ class SaratogaUpdater {
if (dataValidator.noLocalData()) {
await this.updateStoredShips();
await this.updateStoredEquipments();
+ await this.updateStoredChapters();
+ await this.updateStoredVoicelines();
+ await this.updateStoredBarrages();
await dataValidator.updateVersionFile();
} else {
- if (dataValidator.setType('ships').needsUpdate()) {
+ if (dataValidator/*.setType('ships')*/.needsUpdate()) {
await this.updateStoredShips();
+ await this.updateStoredEquipments();
+ await this.updateStoredChapters();
+ await this.updateStoredVoicelines();
+ await this.updateStoredBarrages();
await dataValidator.updateVersionFile();
}
- if (dataValidator.setType('equipments').needsUpdate()) {
+ /*if (dataValidator.setType('equipments').needsUpdate()) {
await this.updateStoredEquipments();
await dataValidator.updateVersionFile();
- }
+ }*/
}
}
@@ -136,6 +147,21 @@ class SaratogaUpdater {
await this.store.updateEquipmentsData(await this.fetchEquipmentsFromRemote());
}
+ async updateStoredChapters() {
+ await this.store.clearChapterData();
+ await this.store.updateChapterData(await this.fetchChaptersFromRemote());
+ }
+
+ async updateStoredVoicelines() {
+ await this.store.clearVoicelineData();
+ await this.store.updateVoicelineData(await this.fetchVoicelinesFromRemote());
+ }
+
+ async updateStoredBarrages() {
+ await this.store.clearBarrageData();
+ await this.store.updateBarrageData(await this.fetchBarragesFromRemote());
+ }
+
fetchShipsFromRemote() {
return Fetch(SaratogaUtil.latestShipDataLink()).then(data => data.text());
}
@@ -144,6 +170,18 @@ class SaratogaUpdater {
return Fetch(SaratogaUtil.latestEquipmentDataLink()).then(data => data.text());
}
+ fetchChaptersFromRemote() {
+ return Fetch(SaratogaUtil.latestChapterDataLink()).then(data => data.text());
+ }
+
+ fetchVoicelinesFromRemote() {
+ return Fetch(SaratogaUtil.latestVoicelineDataLink()).then(data => data.text());
+ }
+
+ fetchBarragesFromRemote() {
+ return Fetch(SaratogaUtil.latestBarrageDataLink()).then(data => data.text());
+ }
+
fetchShipsFromLocal() {
return SaratogaUtil.readFile(SaratogaUtil.shipFilePath()).then(data => JSON.parse(data));
}
@@ -151,5 +189,17 @@ class SaratogaUpdater {
fetchEquipmentsFromLocal() {
return SaratogaUtil.readFile(SaratogaUtil.equipFilePath()).then(data => JSON.parse(data));
}
+
+ fetchChaptersFromLocal() {
+ return SaratogaUtil.readFile(SaratogaUtil.chapterFilePath()).then(data => JSON.parse(data));
+ }
+
+ fetchVoicelinesFromLocal() {
+ return SaratogaUtil.readFile(SaratogaUtil.voicelineFilePath()).then(data => JSON.parse(data));
+ }
+
+ fetchBarragesFromLocal() {
+ return SaratogaUtil.readFile(SaratogaUtil.barrageFilePath()).then(data => JSON.parse(data));
+ }
}
module.exports = SaratogaUpdater;
diff --git a/src/updater/SaratogaValidator.js b/src/updater/SaratogaValidator.js
index c154301..f898211 100644
--- a/src/updater/SaratogaValidator.js
+++ b/src/updater/SaratogaValidator.js
@@ -9,7 +9,7 @@ class SaratogaValidator {
this.remote = {};
}
- setType(name) {
+ /*setType(name) {
this.type = name;
return this;
}
@@ -33,7 +33,7 @@ class SaratogaValidator {
for (const { type, version } of this.parseShipAndEquipmentVersion('local')) data.downloaded[type] = version;
for (const { type, version } of this.parseShipAndEquipmentVersion('remote')) data.remote[type] = version;
return data;
- }
+ }*/
async fetch() {
if (!this.fetched) {
@@ -48,7 +48,8 @@ class SaratogaValidator {
}
needsUpdate() {
- return !this.local[this.type] || this.local[this.type]['version-number'] !== this.remote[this.type]['version-number'] || this.local[this.type]['last-data-refresh-date'] !== this.remote[this.type]['last-data-refresh-date'];
+ //return !this.local[this.type] || this.local[this.type]['version-number'] !== this.remote[this.type]['version-number'] || this.local[this.type]['last-data-refresh-date'] !== this.remote[this.type]['last-data-refresh-date'];
+ return this.local === this.remote ? true : false;
}
updateVersionFile() {
diff --git a/src/util/SaratogaUtil.js b/src/util/SaratogaUtil.js
index 98243bb..7bb82e9 100644
--- a/src/util/SaratogaUtil.js
+++ b/src/util/SaratogaUtil.js
@@ -11,12 +11,18 @@ const promise = {
const remoteLinks = {
version: 'https://raw.githubusercontent.com/AzurAPI/azurapi-js-setup/master/version-info.json',
ships: 'https://raw.githubusercontent.com/AzurAPI/azurapi-js-setup/master/ships.json',
- equipment: 'https://raw.githubusercontent.com/AzurAPI/azurapi-js-setup/master/equipments.json'
+ equipment: 'https://raw.githubusercontent.com/AzurAPI/azurapi-js-setup/master/equipments.json',
+ chapter: 'https://raw.githubusercontent.com/AzurAPI/azurapi-js-setup/master/chapters.json',
+ voiceline: 'https://raw.githubusercontent.com/AzurAPI/azurapi-js-setup/master/voice_lines.json',
+ barrage: 'https://raw.githubusercontent.com/AzurAPI/azurapi-js-setup/master/barrage.json'
};
const dataFilePath = {
ship: join(__dirname, '../data', 'ship.json'),
- equipment: join(__dirname, '../data', 'equipment.json')
+ equipment: join(__dirname, '../data', 'equipment.json'),
+ chapter: join(__dirname, '../data', 'chapter.json'),
+ voiceline: join(__dirname, '../data', 'voiceline.json'),
+ barrage: join(__dirname, '../data', 'barrage.json')
};
const versionFilePath = join(__dirname, '../data', 'version.json');
@@ -43,6 +49,18 @@ class SaratogaUtil {
return dataFilePath.equipment;
}
+ static chapterFilePath() {
+ return dataFilePath.chapter;
+ }
+
+ static voicelineFilePath() {
+ return dataFilePath.voiceline;
+ }
+
+ static barrageFilePath() {
+ return dataFilePath.barrage;
+ }
+
static latestVersionDataLink() {
return remoteLinks.version;
}
@@ -55,6 +73,18 @@ class SaratogaUtil {
return remoteLinks.equipment;
}
+ static latestChapterDataLink() {
+ return remoteLinks.chapter;
+ }
+
+ static latestVoicelineDataLink() {
+ return remoteLinks.voiceline;
+ }
+
+ static latestBarrageDataLink() {
+ return remoteLinks.barrage;
+ }
+
static existSync(path) {
return existsSync(path);
}
From 51d67292cffae20d713f8e3ca3cf16ad29be4414 Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Mon, 25 Jan 2021 17:45:15 +0800
Subject: [PATCH 02/14] minor: rebuild docs
Changed:
- Regenerated docma docs
- Minor info addition
---
docs/js/docma-web.js | 14 +++++++-------
index.js | 15 +++++++++++++++
2 files changed, 22 insertions(+), 7 deletions(-)
diff --git a/docs/js/docma-web.js b/docs/js/docma-web.js
index 084a5ee..6ca5cc6 100644
--- a/docs/js/docma-web.js
+++ b/docs/js/docma-web.js
@@ -6,7 +6,7 @@
* http://dustjs.com/
* Copyright (c) 2017 Aleksander Williams; Released under the MIT License */
!function(a,b){"function"==typeof define&&define.amd&&define.amd.dust===!0?define(["dust.core"],b):"object"==typeof exports?(module.exports=b(require("dustjs-linkedin")),module.exports.registerWith=b):b(a.dust)}(this,function(dust){function a(a,b,c){c=c||"INFO",a=a?"{@"+a+"}: ":"",dust.log(a+b,c)}function b(b){k[b]||(a(b,"Deprecation warning: "+b+" is deprecated and will be removed in a future version of dustjs-helpers","WARN"),a(null,"For help and a deprecation timeline, see https://github.com/linkedin/dustjs-helpers/wiki/Deprecated-Features#"+b.replace(/\W+/g,""),"WARN"),k[b]=!0)}function c(a){return a.stack.tail&&a.stack.tail.head&&"undefined"!=typeof a.stack.tail.head.__select__}function d(a){return c(a)&&a.get("__select__")}function e(a,b){var c,d=a.stack.head,e=a.rebase();a.stack&&a.stack.tail&&(e.stack=a.stack.tail);var f={isPending:!1,isResolved:!1,isDeferredComplete:!1,deferreds:[]};for(c in b)f[c]=b[c];return e.push({__select__:f}).push(d,a.stack.index,a.stack.of)}function f(a){var b,c;if(a.isDeferredPending=!0,a.deferreds.length)for(a.isDeferredComplete=!0,b=0,c=a.deferreds.length;c>b;b++)a.deferreds[b]();a.isDeferredPending=!1}function g(a,b){return"function"==typeof b?b.toString().replace(/(^\s+|\s+$)/gm,"").replace(/\n/gm,"").replace(/,\s*/gm,", ").replace(/\)\{/gm,") {"):b}function h(a,b){return function(c,d,e,f){return i(c,d,e,f,a,b)}}function i(b,c,e,f,g,h){var i,k,l,m,n=e.block,o=e["else"],p=d(c)||{};if(p.isResolved&&!p.isDeferredPending)return b;if(f.hasOwnProperty("key"))k=f.key;else{if(!p.hasOwnProperty("key"))return a(g,"No key specified","WARN"),b;k=p.key}return m=f.type||p.type,k=j(c.resolve(k),m),l=j(c.resolve(f.value),m),h(k,l)?(p.isPending||(i=!0,p.isPending=!0),n&&(b=b.render(n,c)),i&&(p.isResolved=!0)):o&&(b=b.render(o,c)),b}function j(a,b){switch(b&&(b=b.toLowerCase()),b){case"number":return+a;case"string":return String(a);case"boolean":return a="false"===a?!1:a,Boolean(a);case"date":return new Date(a)}return a}var k={},l={tap:function(a,c,d){return b("tap"),d.resolve(a)},sep:function(a,b,c){var d=c.block;return b.stack.index===b.stack.of-1?a:d?d(a,b):a},first:function(a,b,c){return 0===b.stack.index?c.block(a,b):a},last:function(a,b,c){return b.stack.index===b.stack.of-1?c.block(a,b):a},contextDump:function(b,c,d,e){var f,h,i=c.resolve(e.to),j=c.resolve(e.key);switch(j){case"full":f=c.stack;break;default:f=c.stack.head}switch(h=JSON.stringify(f,g,2),i){case"console":a("contextDump",h);break;default:h=h.replace(/a}),lte:h("lte",function(a,b){return b>=a}),gt:h("gt",function(a,b){return a>b}),gte:h("gte",function(a,b){return a>=b}),any:function(b,c,e){var f=d(c);return f?f.isDeferredComplete?a("any","Must not be nested inside {@any} or {@none} block","ERROR"):b=b.map(function(a){f.deferreds.push(function(){f.isResolved&&(a=a.render(e.block,c)),a.end()})}):a("any","Must be used inside a {@select} block","ERROR"),b},none:function(b,c,e){var f=d(c);return f?f.isDeferredComplete?a("none","Must not be nested inside {@any} or {@none} block","ERROR"):b=b.map(function(a){f.deferreds.push(function(){f.isResolved||(a=a.render(e.block,c)),a.end()})}):a("none","Must be used inside a {@select} block","ERROR"),b},size:function(a,b,c,d){var e,f,g=d.key;if(g=b.resolve(d.key),g&&g!==!0)if(dust.isArray(g))e=g.length;else if(!isNaN(parseFloat(g))&&isFinite(g))e=g;else if("object"==typeof g){e=0;for(f in g)g.hasOwnProperty(f)&&e++}else e=(g+"").length;else e=0;return a.write(e)}};for(var m in l)dust.helpers[m]=l[m];return dust});
-!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.page=e()}(this,function(){"use strict";function t(t){return r(a(t))}var p=Array.isArray||function(t){return"[object Array]"==Object.prototype.toString.call(t)},o=c,e=a,n=r,i=h,y=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^()])+)\\))?|\\(((?:\\\\.|[^()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function a(t){for(var e,n=[],i=0,o=0,r="";null!=(e=y.exec(t));){var a=e[0],s=e[1],h=e.index;if(r+=t.slice(o,h),o=h+a.length,s)r+=s[1];else{r&&(n.push(r),r="");var c=e[2],p=e[3],u=e[4],f=e[5],l=e[6],d=e[7],g="+"===l||"*"===l,v="?"===l||"*"===l,m=c||"/",w=u||f||(d?".*":"[^"+m+"]+?");n.push({name:p||i++,prefix:c||"",delimiter:m,optional:v,repeat:g,pattern:w.replace(/([=!:$\/()])/g,"\\$1")})}}return o]+>)?~?(.*)/,"$2").replace(/^"[^"]+"\.?~?([^"]+)$/,"$1").replace(/^(module\.)?exports\./,"").replace(/^module:/,""))}function getMetaCodeName(e){return cleanName(Utils.notate(e,"meta.code.name")||"")}function identity(e){return e}function hasConstructorTag(e){return/\*\s+@construct(s|or)\b/.test(e.comment)}Utils.type=function(e){return Object.prototype.toString.call(e).match(/\s(\w+)/i)[1].toLowerCase()},Utils.notate=function(e,t){if("object"==typeof e){var n,r=Array.isArray(t)?t:t.split("."),i=r[0];if(i)return n=e[i],1"+e+"
"}).join("")}).join("")},Utils.parseLinks=function(e,l){if("string"!=typeof e)return"";l=l||{};var t=e.replace(/\{@link +([^}]*?)\}/g,function(e,t){var n,r,i=t.split("|");return 1===i.length?n=r=i[0].trim():(n=i[0].trim(),r=i[1].trim()),!1===/[/?&=]/.test(n)&&"#"!==n[0]&&(n="#"+n),'"+r+" "});return Utils.parseTicks(t)},Utils.parse=function(e,t){return t=t||{},e=Utils.trimLeft(e),e=Utils.parseNewLines(e,t),e=Utils.parseTicks(e),Utils.parseLinks(e,t)},Utils.normalizeTabs=function(e){if("string"!=typeof e)return"";var r,t=e.match(/^\s*/gm),n=1/0;if(t.forEach(function(e,t){e=e.replace(/\t/g," "),0<"'`\n\r]/g,"").toLowerCase()},Utils.getCodeFileInfo=function(e){return{filename:Utils.notate(e,"meta.filename"),lineno:Utils.notate(e,"meta.lineno"),path:Utils.notate(e,"meta.path")}},Utils.getSymbolLink=function(e,t){if("string"!=typeof t)return t.$docmaLink;var n=Utils.getSymbolByName(e,t);return n?n.$docmaLink:""};var reEndBrackets=/\[\]$/,reTypeParts=/^([^<]+?)(?:\.)?(?:<\(([^>)]+)\)>)?(?:<([^>]+)>)?(\[\])?$/;function _link(e,t,n){var r,i=reEndBrackets.test(t)?"[]":"",l=(t||"").replace(reEndBrackets,""),o=n||{},a="";return"internal"!==o.linkType&&(r=Utils._getTypeExternalLink(l))&&(a=' target="_blank" rel="noopener noreferrer"'),r||"external"===o.linkType||(r=Utils.getSymbolLink(e,l)),r&&(t='"+(o.displayText||l)+i+" "),t}function serializer(r){var i=[],l=[];return function(e,t){if(2e3|')}).join(', '))&&"<"+l+">",_link(t,r[1],n)+l+i},Utils.getTypes=function(t,e,n){var r=n||{},i="class"===e.kind?["class"]:Utils.notate(e,"type.names")||[];return i=i.map(function(e){return r.links&&(e=Utils._parseAnchorLinks(t,e,{linkType:r.links})),e}).join('| '),e.isEnum?"enum<"+i+">":i},Utils.getReturnTypes=function(r,e,t){var n=e.returns;if(!Array.isArray(n))return"void";var i=t||{},l=n.reduce(function(e,t){var n=Utils.notate(t,"type.names")||[];return i.links&&(n=n.map(function(e){return Utils._parseAnchorLinks(r,e,{linkType:i.links})})),e.concat(n)},[]);return 0|'):"void"},Utils.getCodeTags=function(n,e,t){var r=t||{};return e.map(function(e){if(r.links){var t=Utils._parseAnchorLinks(n,e,{linkType:r.links});return Utils._wrapCode(t,!1)}return Utils._wrapCode(e,!0)}).join(r.demileter||",")},Utils.getFormattedTypeList=function(n,e,t){if(!Array.isArray(e)||0===e.length)return"";var r=t||{},i=''+(r.delimeter||"|")+" ",l="boolean"!=typeof r.descriptions||r.descriptions,o=r.descDelimeter||" — ",a="",s=e.map(function(e){return l&&(a=(a=Utils.parse(e.description||"",{keepIfSingle:!0}))&&o+a),e.type?(e.type.names||[]).map(function(e){if(r.links){var t=Utils._parseAnchorLinks(n,e,{linkType:r.links});return Utils._wrapCode(t,!1)}return Utils._wrapCode(e,!0)}).join(i)+a:a?"— "+a:""});return 1"+s.join(" ")+" ":s},Utils.getEmittedEvents=function(n,e,t){if(!e||0===e.length)return"";var r,i,l=t||{},o=l.delimeter||", ";return(e||[]).map(function(e){if(r=e.split(/\s*[\s-—]\s*/g),i=(r[0]||"").trim(),l.links){var t=Utils._parseAnchorLinks(n,i,{linkType:l.links});return Utils._wrapCode(t,!1)}return Utils._wrapCode(i,!0)}).join(o)},Utils._find=function(e,t){if(!e||!t)return null;var n,r,i=null;for(n=0;n /g,">")),e=""+e+"",n?""+e+" ":e)},Utils._tokenize=function(e,t){"function"!=typeof t&&(t=identity);if(e.indexOf("```")<0)return[t(e,!1)];var n,r="```".length,i="",l="",o=[],a=!1;for(n=0;nr&&(i=i.slice(-r)),"```"===i&&(l=(a=!a)?(o.push(t(l.slice(0,-r),!1)),i):(o.push(t(l,!0)),""));return o},Utils._ensureSlash=function(e,t,n){return t?(e&&"/"!==t.slice(0,1)&&(t="/"+t),n&&"/"!==t.slice(-1)&&(t+="/"),t):e||n?"/":""},Utils._safeStringify=function(t,e,n){try{return JSON.stringify(t,serializer(e),n)}catch(e){return String(t)}},Utils.DOM={};var ATTR_BODY_STYLE="data-body-style";Utils.DOM.getOffset=function(e){var t="object"==typeof e?e:document.getElementById(e);if(t){var n=t.getBoundingClientRect();if(n.width||n.height||t.getClientRects().length){var r=document.documentElement;return{top:n.top+window.pageYOffset-r.clientTop,left:n.left+window.pageXOffset-r.clientLeft}}}},Utils.DOM.scrollTo=function(e){var t=document.documentElement||document.body;if(e=decodeHash(e||window.location.hash||"")){var n=document.getElementById(e);if(n){var r=Utils.DOM.getOffset(n);r&&(t.scrollTop=r.top)}}else t.scrollTop=0},Utils.DOM._createChild=function(e,t,n){n=n||{};var r=document.createElement(t||"div");return Object.keys(n).forEach(function(e){r[e]=n[e]}),e.appendChild(r),r},Utils.DOM._removePrevBodyStyles=function(){for(var e=document.getElementsByTagName("head")[0].querySelectorAll("["+ATTR_BODY_STYLE+"]");0]+>)?~?(.*)/,"$2").replace(/^"[^"]+"\.?~?([^"]+)$/,"$1").replace(/^(module\.)?exports\./,"").replace(/^module:/,""))}function getMetaCodeName(e){return cleanName(Utils.notate(e,"meta.code.name")||"")}function identity(e){return e}function hasConstructorTag(e){return/\*\s+@construct(s|or)\b/.test(e.comment)}Utils.type=function(e){return Object.prototype.toString.call(e).match(/\s(\w+)/i)[1].toLowerCase()},Utils.notate=function(e,t){if("object"==typeof e){var n=Array.isArray(t)?t:t.split("."),t=n[0];if(t)return t=e[t],1"+e+""}).join("")}).join("")},Utils.parseLinks=function(e,i){if("string"!=typeof e)return"";i=i||{};e=e.replace(/\{@link +([^}]*?)\}/g,function(e,t){var n,r,t=t.split("|");return 1===t.length?n=r=t[0].trim():(n=t[0].trim(),r=t[1].trim()),'"+r+" "});return Utils.parseTicks(e)},Utils.parse=function(e,t){return t=t||{},e=Utils.trimLeft(e),e=Utils.parseNewLines(e,t),e=Utils.parseTicks(e),Utils.parseLinks(e,t)},Utils.normalizeTabs=function(e){if("string"!=typeof e)return"";var r,t=e.match(/^\s*/gm),n=1/0;return t.forEach(function(e,t){e=e.replace(/\t/g," "),0<"'`\n\r]/g,"").toLowerCase()},Utils.getCodeFileInfo=function(e){return{filename:Utils.notate(e,"meta.filename"),lineno:Utils.notate(e,"meta.lineno"),path:Utils.notate(e,"meta.path")}},Utils.getSymbolLink=function(e,t){if("string"!=typeof t)return t.$docmaLink;t=Utils.getSymbolByName(e,t);return t?t.$docmaLink:""};var reEndBrackets=/\[\]$/,reTypeParts=/^([^<]+?)(?:\.)?(?:<\(([^>)]+)\)>)?(?:<([^>]+)>)?(\[\])?$/;function _link(e,t,n){var r,i=reEndBrackets.test(t)?"[]":"",l=(t||"").replace(reEndBrackets,""),o=n||{},n="";return"internal"!==o.linkType&&(r=Utils._getTypeExternalLink(l))&&(n=' target="_blank" rel="noopener noreferrer"'),t=(r=!r&&"external"!==o.linkType?Utils.getSymbolLink(e,l):r)?'"+(o.displayText||l)+i+" ":t}function serializer(r){var i=[],l=[];return function(e,t){return 2e3|')}).join(', '))&&"<"+e+">",_link(t,r[1],n)+e+i},Utils.getTypes=function(t,e,n){var r=n||{},n=(n="class"===e.kind?["class"]:Utils.notate(e,"type.names")||[]).map(function(e){return e=r.links?Utils._parseAnchorLinks(t,e,{linkType:r.links}):e}).join('| ');return e.isEnum?"enum<"+n+">":n},Utils.getReturnTypes=function(n,e,t){e=e.returns;if(!Array.isArray(e))return"void";var r=t||{},e=e.reduce(function(e,t){t=Utils.notate(t,"type.names")||[];return r.links&&(t=t.map(function(e){return Utils._parseAnchorLinks(n,e,{linkType:r.links})})),e.concat(t)},[]);return 0|'):"void"},Utils.getCodeTags=function(n,e,t){var r=t||{};return e.map(function(e){if(r.links){var t=Utils._parseAnchorLinks(n,e,{linkType:r.links});return Utils._wrapCode(t,!1)}return Utils._wrapCode(e,!0)}).join(r.demileter||",")},Utils.getFormattedTypeList=function(n,e,t){if(!Array.isArray(e)||0===e.length)return"";var r=t||{},i=''+(r.delimeter||"|")+" ",l="boolean"!=typeof r.descriptions||r.descriptions,o=r.descDelimeter||" — ",a="",e=e.map(function(e){return l&&(a=(a=Utils.parse(e.description||"",{keepIfSingle:!0}))&&o+a),e.type?(e.type.names||[]).map(function(e){if(r.links){var t=Utils._parseAnchorLinks(n,e,{linkType:r.links});return Utils._wrapCode(t,!1)}return Utils._wrapCode(e,!0)}).join(i)+a:a?"— "+a:""});return 1"+e.join(" ")+" ":e},Utils.getEmittedEvents=function(t,e,n){if(!e||0===e.length)return"";var r,i=n||{},n=i.delimeter||", ";return(e||[]).map(function(e){if(r=e.split(/\s*[\s-—]\s*/g),r=(r[0]||"").trim(),i.links){e=Utils._parseAnchorLinks(t,r,{linkType:i.links});return Utils._wrapCode(e,!1)}return Utils._wrapCode(r,!0)}).join(n)},Utils._find=function(e,t){if(!e||!t)return null;for(var n,r=null,i=0;i"+(e=void 0===t||!0===t?e.replace(//g,">"):e)+"",n?""+e+" ":e)},Utils._tokenize=function(e,t){"function"!=typeof t&&(t=identity);if(e.indexOf("```")<0)return[t(e,!1)];for(var n="```".length,r="",i="",l=[],o=!1,a=0;an?r.slice(-n):r)&&(i=(o=!o)?(l.push(t(i.slice(0,-n),!1)),r):(l.push(t(i,!0)),""));return l},Utils._ensureSlash=function(e,t,n){return t?(e&&"/"!==t.slice(0,1)&&(t="/"+t),n&&"/"!==t.slice(-1)&&(t+="/"),t):e||n?"/":""},Utils._safeStringify=function(t,e,n){try{return JSON.stringify(t,serializer(e),n)}catch(e){return String(t)}},Utils.DOM={};var ATTR_BODY_STYLE="data-body-style";Utils.DOM.getOffset=function(e){var t="object"==typeof e?e:document.getElementById(e);if(t){e=t.getBoundingClientRect();if(e.width||e.height||t.getClientRects().length){t=document.documentElement;return{top:e.top+window.pageYOffset-t.clientTop,left:e.left+window.pageXOffset-t.clientLeft}}}},Utils.DOM.scrollTo=function(e){var t=document.documentElement||document.body;(e=decodeHash(e||window.location.hash||""))?!(e=document.getElementById(e))||(e=Utils.DOM.getOffset(e))&&(t.scrollTop=e.top):t.scrollTop=0},Utils.DOM._createChild=function(e,t,n){n=n||{};var r=document.createElement(t||"div");return Object.keys(n).forEach(function(e){r[e]=n[e]}),e.appendChild(r),r},Utils.DOM._removePrevBodyStyles=function(){for(var e=document.getElementsByTagName("head")[0].querySelectorAll("["+ATTR_BODY_STYLE+"]");0Saratoga, the starting point of this API","kind":"class","name":"Saratoga","augments":["EventEmitter"],"longname":"Saratoga","scope":"global","$longname":"Saratoga","$kind":"class","$docmaLink":"?api#Saratoga","$members":[{"comment":"/**\n * Azur Lane's Equipment related getter methods\n * @type {SaratogaEquipments}\n */","meta":{"range":[2293,2393],"filename":"Saratoga.js","lineno":84,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src","code":{"id":"astnode100000115","name":"Saratoga#equipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"Saratoga#equipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#equipments","$kind":"property","$docmaLink":"?api#Saratoga#equipments"},{"comment":"/**\n * If Saratoga is ready to operate\n * @type {Boolean}\n */","meta":{"range":[1910,1997],"filename":"Saratoga.js","lineno":67,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src","code":{"id":"astnode100000080","name":"Saratoga#ready","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"If Saratoga is ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"Saratoga#ready","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ready","$kind":"property","$docmaLink":"?api#Saratoga#ready"},{"comment":"/**\n * Azur Lane's Ship related getter methods\n * @type {SaratogaShips}\n */","meta":{"range":[2095,2185],"filename":"Saratoga.js","lineno":75,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src","code":{"id":"astnode100000098","name":"Saratoga#ships","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"Saratoga#ships","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ships","$kind":"property","$docmaLink":"?api#Saratoga#ships"},{"comment":"/**\n * Contains methods and props for managing cached data\n * @type {SaratogaStore}\n */","meta":{"range":[567,603],"filename":"Saratoga.js","lineno":19,"columnno":8,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src","code":{"id":"astnode100000053","name":"this.store","type":"NewExpression","value":"","paramnames":[]}},"description":"Contains methods and props for managing cached data
","type":{"names":["SaratogaStore"]},"name":"store","longname":"Saratoga#store","kind":"member","memberof":"Saratoga","scope":"instance","$longname":"Saratoga#store","$kind":"property","$docmaLink":"?api#Saratoga#store"},{"comment":"/**\n * Contains methods for updating Saratoga's local data & cache\n * @type {SaratogaUpdater}\n */","meta":{"range":[1770,1826],"filename":"Saratoga.js","lineno":59,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src","code":{"id":"astnode100000070","name":"Saratoga#updater","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Contains methods for updating Saratoga's local data & cache
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"Saratoga#updater","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#updater","$kind":"property","$docmaLink":"?api#Saratoga#updater"},{"comment":"/**\n * Emitted when there is a debug data\n * @event Saratoga#debug\n * @param {string} message Debug message\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":23,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src","code":{}},"description":"Emitted when there is a debug data
","kind":"event","name":"debug","params":[{"type":{"names":["string"]},"description":"Debug message
","name":"message"}],"memberof":"Saratoga","longname":"Saratoga#event:debug","scope":"instance","$longname":"Saratoga#event:debug","$kind":"event","$docmaLink":"?api#Saratoga#event:debug"},{"comment":"/**\n * Emitted when there is a pesky error\n * @event Saratoga#error\n * @param {Error} error The error encountered.\n * @memberof Saratoga\n * @example\n * Saratoga.on('error', console.error);\n */","meta":{"filename":"Saratoga.js","lineno":29,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src","code":{}},"description":"Emitted when there is a pesky error
","kind":"event","name":"error","params":[{"type":{"names":["Error"]},"description":"The error encountered.
","name":"error"}],"memberof":"Saratoga","examples":["Saratoga.on('error', console.error);"],"longname":"Saratoga#event:error","scope":"instance","$longname":"Saratoga#event:error","$kind":"event","$docmaLink":"?api#Saratoga#event:error"},{"comment":"/**\n * Emitted when Saratoga is ready\n * @event Saratoga#ready\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":49,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src","code":{}},"description":"Emitted when Saratoga is ready
","kind":"event","name":"ready","memberof":"Saratoga","longname":"Saratoga#event:ready","scope":"instance","$longname":"Saratoga#event:ready","$kind":"event","$docmaLink":"?api#Saratoga#event:ready"},{"comment":"/**\n * Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true\n * @event Saratoga#updateAvailable\n * @param {Object} data What data needs updating\n * @memberof Saratoga\n * @example\n * Saratoga.on('updateAvailable', (data) => {\n * if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n * // handle update\n * }\n * })\n */","meta":{"filename":"Saratoga.js","lineno":37,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src","code":{}},"description":"Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true
","kind":"event","name":"updateAvailable","params":[{"type":{"names":["Object"]},"description":"What data needs updating
","name":"data"}],"memberof":"Saratoga","examples":["Saratoga.on('updateAvailable', (data) => {\n if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n // handle update\n }\n})"],"longname":"Saratoga#event:updateAvailable","scope":"instance","$longname":"Saratoga#event:updateAvailable","$kind":"event","$docmaLink":"?api#Saratoga#event:updateAvailable"}],"$constructor":{"comment":"/**\n * @param {Object} options Object with a single parameter, which is notifyForNewUpdates, which is a boolean\n */","meta":{"range":[366,679],"filename":"Saratoga.js","lineno":13,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src","code":{"id":"astnode100000040","name":"Saratoga","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"description":"Object with a single parameter, which is notifyForNewUpdates, which is a boolean
","name":"options"}],"name":"Saratoga","longname":"Saratoga","kind":"class","scope":"global","$longname":"Saratoga","$kind":"constructor","$docmaLink":"?api#Saratoga"}},{"comment":"/**\n * Equipment related getters for Saratoga\n * @class SaratogaEquipments\n */","meta":{"filename":"SaratogaEquipments.js","lineno":1,"columnno":0,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{}},"description":"Equipment related getters for Saratoga
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments","$members":[{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[751,893],"filename":"SaratogaEquipments.js","lineno":29,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000196","name":"SaratogaEquipments#getAllByCategory","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByCategory","longname":"SaratogaEquipments#getAllByCategory","kind":"function","scope":"instance","$longname":"SaratogaEquipments#getAllByCategory","$kind":"method","$docmaLink":"?api#SaratogaEquipments#getAllByCategory"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1130,1284],"filename":"SaratogaEquipments.js","lineno":40,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000222","name":"SaratogaEquipments#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByNationality","longname":"SaratogaEquipments#getAllByNationality","kind":"function","scope":"instance","$longname":"SaratogaEquipments#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments#getAllByNationality"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1591,1835],"filename":"SaratogaEquipments.js","lineno":52,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000248","name":"SaratogaEquipments#searchByEquipmentName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"searchByEquipmentName","longname":"SaratogaEquipments#searchByEquipmentName","kind":"function","scope":"instance","$longname":"SaratogaEquipments#searchByEquipmentName","$kind":"method","$docmaLink":"?api#SaratogaEquipments#searchByEquipmentName"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[213,321],"filename":"SaratogaEquipments.js","lineno":9,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000143","name":"SaratogaEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaEquipments","longname":"SaratogaEquipments","kind":"class","scope":"global","$longname":"SaratogaEquipments","$kind":"constructor","$docmaLink":"?api#SaratogaEquipments"}},{"comment":"/**\n * Ship related getters for Saratoga\n * @class SaratogaShips\n */","meta":{"filename":"SaratogaShips.js","lineno":1,"columnno":0,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{}},"description":"Ship related getters for Saratoga
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips","$members":[{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[761,899],"filename":"SaratogaShips.js","lineno":29,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000349","name":"SaratogaShips#getAllByClass","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByClass","longname":"SaratogaShips#getAllByClass","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByClass","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByClass"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1559,1701],"filename":"SaratogaShips.js","lineno":51,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000401","name":"SaratogaShips#getAllByHullType","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByHullType","longname":"SaratogaShips#getAllByHullType","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByHullType","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByHullType"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1156,1310],"filename":"SaratogaShips.js","lineno":40,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000375","name":"SaratogaShips#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByNationality","longname":"SaratogaShips#getAllByNationality","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByNationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1937,2071],"filename":"SaratogaShips.js","lineno":62,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000427","name":"SaratogaShips#getAllByRarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByRarity","longname":"SaratogaShips#getAllByRarity","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByRarity","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByRarity"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2255,2434],"filename":"SaratogaShips.js","lineno":73,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000453","name":"SaratogaShips#getById","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"getById","longname":"SaratogaShips#getById","kind":"function","scope":"instance","$longname":"SaratogaShips#getById","$kind":"method","$docmaLink":"?api#SaratogaShips#getById"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2721,2946],"filename":"SaratogaShips.js","lineno":87,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000490","name":"SaratogaShips#searchShipByName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"searchShipByName","longname":"SaratogaShips#searchShipByName","kind":"function","scope":"instance","$longname":"SaratogaShips#searchShipByName","$kind":"method","$docmaLink":"?api#SaratogaShips#searchShipByName"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[198,306],"filename":"SaratogaShips.js","lineno":9,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000296","name":"SaratogaShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaShips","longname":"SaratogaShips","kind":"class","scope":"global","$longname":"SaratogaShips","$kind":"constructor","$docmaLink":"?api#SaratogaShips"}},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class SaratogaStore\n */","meta":{"filename":"SaratogaStore.js","lineno":7,"columnno":0,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"SaratogaStore","longname":"SaratogaStore","scope":"global","$longname":"SaratogaStore","$kind":"class","$docmaLink":"?api#SaratogaStore","$members":[{"comment":"/**\n * Equipment related getters for this store\n * @type {SaratogaEquipments}\n */","meta":{"range":[906,952],"filename":"SaratogaStore.js","lineno":30,"columnno":8,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000588","name":"this.equipments","type":"NewExpression","value":"","paramnames":[]}},"description":"Equipment related getters for this store
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"SaratogaStore#equipments","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#equipments","$kind":"property","$docmaLink":"?api#SaratogaStore#equipments"},{"comment":"/**\n * If this store is already ready to operate\n * @type {Boolean}\n */","meta":{"range":[1234,1252],"filename":"SaratogaStore.js","lineno":40,"columnno":8,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000604","name":"this.ready","type":"Literal","value":false,"paramnames":[]}},"description":"If this store is already ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"SaratogaStore#ready","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ready","$kind":"property","$docmaLink":"?api#SaratogaStore#ready"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[608,632],"filename":"SaratogaStore.js","lineno":20,"columnno":8,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000574","name":"this.saratoga","type":"Identifier","value":"saratoga","paramnames":[]}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaStore#saratoga","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#saratoga","$kind":"property","$docmaLink":"?api#SaratogaStore#saratoga"},{"comment":"/**\n * Ship related getters for this store\n * @type {SaratogaShips}\n */","meta":{"range":[746,782],"filename":"SaratogaStore.js","lineno":25,"columnno":8,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000580","name":"this.ships","type":"NewExpression","value":"","paramnames":[]}},"description":"Ship related getters for this store
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"SaratogaStore#ships","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ships","$kind":"property","$docmaLink":"?api#SaratogaStore#ships"},{"comment":"/**\n * Updater Class for the local data for this store\n * @type {SaratogaUpdater}\n */","meta":{"range":[1080,1120],"filename":"SaratogaStore.js","lineno":35,"columnno":8,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000596","name":"this.updater","type":"NewExpression","value":"","paramnames":[]}},"description":"Updater Class for the local data for this store
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"SaratogaStore#updater","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#updater","$kind":"property","$docmaLink":"?api#SaratogaStore#updater"}],"$constructor":{"comment":"/**\n * @param {Saratoga} saratoga The saratoga class that generated this instance\n */","meta":{"range":[462,1819],"filename":"SaratogaStore.js","lineno":15,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\store","code":{"id":"astnode100000568","name":"SaratogaStore","type":"MethodDefinition","paramnames":["saratoga"]},"vars":{"":null}},"params":[{"type":{"names":["Saratoga"]},"description":"The saratoga class that generated this instance
","name":"saratoga"}],"name":"SaratogaStore","longname":"SaratogaStore","kind":"class","scope":"global","$longname":"SaratogaStore","$kind":"constructor","$docmaLink":"?api#SaratogaStore"}},{"comment":"/**\n * Manages the local data & cache updates\n * @class SaratogaUpdater\n */","meta":{"filename":"SaratogaUpdater.js","lineno":5,"columnno":0,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{}},"description":"Manages the local data & cache updates
","kind":"class","name":"SaratogaUpdater","longname":"SaratogaUpdater","scope":"global","$longname":"SaratogaUpdater","$kind":"class","$docmaLink":"?api#SaratogaUpdater","$members":[{"comment":"/**\n * Checks if there is new updates for ship or equipment data\n * @memberof SaratogaUpdater\n * @returns {Promise}\n * @example\n * const api = new Saratoga();\n * api.updater.checkForUpdate()\n * .then((response) => {\n * if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n * })\n */","meta":{"range":[3180,3542],"filename":"SaratogaUpdater.js","lineno":87,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{"id":"astnode100001261","name":"SaratogaUpdater#checkForUpdate","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Checks if there is new updates for ship or equipment data
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"examples":["const api = new Saratoga();\napi.updater.checkForUpdate()\n .then((response) => {\n if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n })"],"name":"checkForUpdate","longname":"SaratogaUpdater#checkForUpdate","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#checkForUpdate","$kind":"method","$docmaLink":"?api#SaratogaUpdater#checkForUpdate"},{"comment":"/**\n * Updates the Cached Data, loaded from the local files of Saratoga\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[4568,4743],"filename":"SaratogaUpdater.js","lineno":124,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{"id":"astnode100001388","name":"SaratogaUpdater#updateCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Cached Data, loaded from the local files of Saratoga
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateCache","longname":"SaratogaUpdater#updateCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateCache"},{"comment":"/**\n * Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[2673,2779],"filename":"SaratogaUpdater.js","lineno":71,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{"id":"astnode100001245","name":"SaratogaUpdater#updateDataAndCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateDataAndCache","longname":"SaratogaUpdater#updateDataAndCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateDataAndCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateDataAndCache"},{"comment":"/**\n * Updates the Local Files of Saratoga if there is an update\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[3694,4409],"filename":"SaratogaUpdater.js","lineno":100,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{"id":"astnode100001304","name":"SaratogaUpdater#updateLocalData","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files of Saratoga if there is an update
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateLocalData","longname":"SaratogaUpdater#updateLocalData","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateLocalData","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateLocalData"},{"comment":"/**\n * The cron update checker which is responsible for Saratoga#updateAvailable event\n * @type {?Timeout}\n */","meta":{"range":[830,852],"filename":"SaratogaUpdater.js","lineno":28,"columnno":8,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{"id":"astnode100001029","name":"this.cronUpdate","type":"Literal","value":null,"paramnames":[]}},"description":"The cron update checker which is responsible for Saratoga#updateAvailable event
","type":{"names":["Timeout"]},"nullable":true,"name":"cronUpdate","longname":"SaratogaUpdater#cronUpdate","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#cronUpdate","$kind":"property","$docmaLink":"?api#SaratogaUpdater#cronUpdate"},{"comment":"/**\n * If the data directory of this updater is ready to operate\n * @type {Boolean}\n */","meta":{"range":[652,677],"filename":"SaratogaUpdater.js","lineno":23,"columnno":8,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{"id":"astnode100001023","name":"this.dataDirReady","type":"Literal","value":false,"paramnames":[]}},"description":"If the data directory of this updater is ready to operate
","type":{"names":["Boolean"]},"name":"dataDirReady","longname":"SaratogaUpdater#dataDirReady","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#dataDirReady","$kind":"property","$docmaLink":"?api#SaratogaUpdater#dataDirReady"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[963,1021],"filename":"SaratogaUpdater.js","lineno":35,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{"id":"astnode100001034","name":"SaratogaUpdater#saratoga","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaUpdater#saratoga","kind":"member","memberof":"SaratogaUpdater","scope":"instance","params":[],"$longname":"SaratogaUpdater#saratoga","$kind":"property","$docmaLink":"?api#SaratogaUpdater#saratoga"},{"comment":"/**\n * The updater instance that generated this instance\n * @type {SaratogaStore}\n */","meta":{"range":[504,522],"filename":"SaratogaUpdater.js","lineno":18,"columnno":8,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{"id":"astnode100001017","name":"this.store","type":"Identifier","value":"store","paramnames":[]}},"description":"The updater instance that generated this instance
","type":{"names":["SaratogaStore"]},"name":"store","longname":"SaratogaUpdater#store","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#store","$kind":"property","$docmaLink":"?api#SaratogaUpdater#store"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[357,859],"filename":"SaratogaUpdater.js","lineno":13,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{"id":"astnode100001011","name":"SaratogaUpdater","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaUpdater","longname":"SaratogaUpdater","kind":"class","scope":"global","$longname":"SaratogaUpdater","$kind":"constructor","$docmaLink":"?api#SaratogaUpdater"}},{"comment":"","meta":{"range":[122,250],"filename":"SaratogaValidator.js","lineno":5,"columnno":4,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga\\src\\updater","code":{"id":"astnode100001575","name":"SaratogaValidator","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"SaratogaValidator","longname":"SaratogaValidator","kind":"class","scope":"global","params":[],"$longname":"SaratogaValidator","$kind":"constructor","$docmaLink":"?api#SaratogaValidator"},{"comment":"/**\n * Equipment Data\n * @external Equipment\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":19,"columnno":0,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga","code":{}},"description":"Equipment Data
","kind":"external","name":"Equipment","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Equipment","scope":"global","$longname":"external:Equipment","$kind":"external","$docmaLink":"?api#external:Equipment"},{"comment":"/**\n * Node.js Event Emitter\n * @external EventEmitter\n * @see {@link https://nodejs.org/api/events.html}\n */","meta":{"filename":"index.js","lineno":1,"columnno":0,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga","code":{}},"description":"Node.js Event Emitter
","kind":"external","name":"EventEmitter","see":["{@link https://nodejs.org/api/events.html}"],"longname":"external:EventEmitter","scope":"global","$longname":"external:EventEmitter","$kind":"external","$docmaLink":"?api#external:EventEmitter"},{"comment":"/**\n * Ship Data\n * @external Ship\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}\n */","meta":{"filename":"index.js","lineno":13,"columnno":0,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga","code":{}},"description":"Ship Data
","kind":"external","name":"Ship","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}"],"longname":"external:Ship","scope":"global","$longname":"external:Ship","$kind":"external","$docmaLink":"?api#external:Ship"},{"comment":"/**\n * Node.js Timeout\n * @external Timeout\n * @see {@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}\n */","meta":{"filename":"index.js","lineno":7,"columnno":0,"path":"C:\\Users\\Deivu\\Desktop\\Work Related Data\\Saratoga","code":{}},"description":"Node.js Timeout
","kind":"external","name":"Timeout","see":["{@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}"],"longname":"external:Timeout","scope":"global","$longname":"external:Timeout","$kind":"external","$docmaLink":"?api#external:Timeout"}],"symbols":["external:Equipment","external:EventEmitter","external:Ship","external:Timeout","Saratoga","Saratoga#equipments","Saratoga#event:debug","Saratoga#event:error","Saratoga#event:ready","Saratoga#event:updateAvailable","Saratoga#ready","Saratoga#ships","Saratoga#store","Saratoga#updater","SaratogaEquipments","SaratogaEquipments#getAllByCategory","SaratogaEquipments#getAllByNationality","SaratogaEquipments#searchByEquipmentName","SaratogaShips","SaratogaShips#getAllByClass","SaratogaShips#getAllByHullType","SaratogaShips#getAllByNationality","SaratogaShips#getAllByRarity","SaratogaShips#getById","SaratogaShips#searchShipByName","SaratogaStore","SaratogaStore#equipments","SaratogaStore#ready","SaratogaStore#saratoga","SaratogaStore#ships","SaratogaStore#updater","SaratogaUpdater","SaratogaUpdater#checkForUpdate","SaratogaUpdater#cronUpdate","SaratogaUpdater#dataDirReady","SaratogaUpdater#saratoga","SaratogaUpdater#store","SaratogaUpdater#updateCache","SaratogaUpdater#updateDataAndCache","SaratogaUpdater#updateLocalData","SaratogaValidator"]}},"app":{"title":"Saratoga | An open source Azur Lane local library","routing":{"method":"query","caseSensitive":true},"entrance":"content:readme","base":"/Saratoga/","meta":null,"server":"static","favicon":""},"template":{"name":"docma-template-zebra","description":"Zebra - Default template for Docma. https://github.com/onury/docma","version":"2.3.1","supportedDocmaVersion":">=2.0.0","author":"Onur Yıldırım","license":"MIT","mainHTML":"index.html","options":{"title":{"label":"Saratoga","href":"."},"sidebar":{"enabled":true,"outline":"tree","collapsed":false,"toolbar":true,"itemsFolded":false,"itemsOverflow":"crop","badges":true,"search":true,"animations":true},"symbols":{"autoLink":true,"params":"list","enums":"list","props":"list","meta":false},"navbar":{"enabled":true,"dark":false,"animations":true,"menu":[{"label":"Readme","href":"."},{"label":"Documentation","href":"?api"},{"label":"GitHub","href":"https://github.com/AzurAPI/Saratoga"}],"fixed":true},"logo":null,"contentView":{"bookmarks":false,"faVersion":"5.5.0","faLibs":"all"}}},"partials":{"api":"docma-api","content":"docma-content","notFound":"docma-404"},"elementID":"docma-main","contentElementID":"docma-content","defaultApiName":"_def_","logsEnabled":false}));
+var docma = Object.freeze(new DocmaWeb({"version":"3.2.2","routes":[{"id":"api:","type":"api","name":"_def_","path":"?api","contentPath":null,"sourceType":"js"},{"id":"content:readme","type":"content","name":"readme","path":"?content=readme","contentPath":"content/readme.html","sourceType":"md"}],"apis":{"_def_":{"documentation":[{"comment":"/**\n * Saratoga, the starting point of this API\n * @class Saratoga\n * @extends {EventEmitter}\n */","meta":{"filename":"Saratoga.js","lineno":4,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"Saratoga","augments":["EventEmitter"],"longname":"Saratoga","scope":"global","$longname":"Saratoga","$kind":"class","$docmaLink":"?api#Saratoga","$members":[{"comment":"/**\n * Barrage related getters for this store\n * @type {SaratogaBarrages}\n */","meta":{"range":[2891,2987],"filename":"Saratoga.js","lineno":108,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000166","name":"Saratoga#barrages","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Barrage related getters for this store
","type":{"names":["SaratogaBarrages"]},"name":"barrages","longname":"Saratoga#barrages","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#barrages","$kind":"property","$docmaLink":"?api#Saratoga#barrages"},{"comment":"/**\n * Chapters related getters for this store\n * @type {SaratogaChapters}\n */","meta":{"range":[2493,2589],"filename":"Saratoga.js","lineno":92,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000132","name":"Saratoga#chapters","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Chapters related getters for this store
","type":{"names":["SaratogaChapters"]},"name":"chapters","longname":"Saratoga#chapters","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#chapters","$kind":"property","$docmaLink":"?api#Saratoga#chapters"},{"comment":"/**\n * Azur Lane's Equipment related getter methods\n * @type {SaratogaEquipments}\n */","meta":{"range":[2293,2393],"filename":"Saratoga.js","lineno":84,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000115","name":"Saratoga#equipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"Saratoga#equipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#equipments","$kind":"property","$docmaLink":"?api#Saratoga#equipments"},{"comment":"/**\n * If Saratoga is ready to operate\n * @type {Boolean}\n */","meta":{"range":[1910,1997],"filename":"Saratoga.js","lineno":67,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000080","name":"Saratoga#ready","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"If Saratoga is ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"Saratoga#ready","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ready","$kind":"property","$docmaLink":"?api#Saratoga#ready"},{"comment":"/**\n * Azur Lane's Ship related getter methods\n * @type {SaratogaShips}\n */","meta":{"range":[2095,2185],"filename":"Saratoga.js","lineno":75,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000098","name":"Saratoga#ships","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"Saratoga#ships","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ships","$kind":"property","$docmaLink":"?api#Saratoga#ships"},{"comment":"/**\n * Contains methods and props for managing cached data\n * @type {SaratogaStore}\n */","meta":{"range":[567,603],"filename":"Saratoga.js","lineno":19,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000053","name":"this.store","type":"NewExpression","value":"","paramnames":[]}},"description":"Contains methods and props for managing cached data
","type":{"names":["SaratogaStore"]},"name":"store","longname":"Saratoga#store","kind":"member","memberof":"Saratoga","scope":"instance","$longname":"Saratoga#store","$kind":"property","$docmaLink":"?api#Saratoga#store"},{"comment":"/**\n * Contains methods for updating Saratoga's local data & cache\n * @type {SaratogaUpdater}\n */","meta":{"range":[1770,1826],"filename":"Saratoga.js","lineno":59,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000070","name":"Saratoga#updater","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Contains methods for updating Saratoga's local data & cache
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"Saratoga#updater","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#updater","$kind":"property","$docmaLink":"?api#Saratoga#updater"},{"comment":"/**\n * Voiceline related getters for this store\n * @type {SaratogaVoicelines}\n */","meta":{"range":[2692,2792],"filename":"Saratoga.js","lineno":100,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000149","name":"Saratoga#voicelines","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Voiceline related getters for this store
","type":{"names":["SaratogaVoicelines"]},"name":"voicelines","longname":"Saratoga#voicelines","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#voicelines","$kind":"property","$docmaLink":"?api#Saratoga#voicelines"},{"comment":"/**\n * Emitted when there is a debug data\n * @event Saratoga#debug\n * @param {string} message Debug message\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":23,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a debug data
","kind":"event","name":"debug","params":[{"type":{"names":["string"]},"description":"Debug message
","name":"message"}],"memberof":"Saratoga","longname":"Saratoga#event:debug","scope":"instance","$longname":"Saratoga#event:debug","$kind":"event","$docmaLink":"?api#Saratoga#event:debug"},{"comment":"/**\n * Emitted when there is a pesky error\n * @event Saratoga#error\n * @param {Error} error The error encountered.\n * @memberof Saratoga\n * @example\n * Saratoga.on('error', console.error);\n */","meta":{"filename":"Saratoga.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a pesky error
","kind":"event","name":"error","params":[{"type":{"names":["Error"]},"description":"The error encountered.
","name":"error"}],"memberof":"Saratoga","examples":["Saratoga.on('error', console.error);"],"longname":"Saratoga#event:error","scope":"instance","$longname":"Saratoga#event:error","$kind":"event","$docmaLink":"?api#Saratoga#event:error"},{"comment":"/**\n * Emitted when Saratoga is ready\n * @event Saratoga#ready\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":49,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when Saratoga is ready
","kind":"event","name":"ready","memberof":"Saratoga","longname":"Saratoga#event:ready","scope":"instance","$longname":"Saratoga#event:ready","$kind":"event","$docmaLink":"?api#Saratoga#event:ready"},{"comment":"/**\n * Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true\n * @event Saratoga#updateAvailable\n * @param {Object} data What data needs updating\n * @memberof Saratoga\n * @example\n * Saratoga.on('updateAvailable', (data) => {\n * if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n * // handle update\n * }\n * })\n */","meta":{"filename":"Saratoga.js","lineno":37,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true
","kind":"event","name":"updateAvailable","params":[{"type":{"names":["Object"]},"description":"What data needs updating
","name":"data"}],"memberof":"Saratoga","examples":["Saratoga.on('updateAvailable', (data) => {\n if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n // handle update\n }\n})"],"longname":"Saratoga#event:updateAvailable","scope":"instance","$longname":"Saratoga#event:updateAvailable","$kind":"event","$docmaLink":"?api#Saratoga#event:updateAvailable"}],"$constructor":{"comment":"/**\n * @param {Object} options Object with a single parameter, which is notifyForNewUpdates, which is a boolean\n */","meta":{"range":[366,679],"filename":"Saratoga.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000040","name":"Saratoga","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"description":"Object with a single parameter, which is notifyForNewUpdates, which is a boolean
","name":"options"}],"name":"Saratoga","longname":"Saratoga","kind":"class","scope":"global","$longname":"Saratoga","$kind":"constructor","$docmaLink":"?api#Saratoga"}},{"comment":"/**\n * Equipment related getters for Saratoga\n * @class SaratogaEquipments\n */","meta":{"filename":"SaratogaEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments","$members":[{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[751,893],"filename":"SaratogaEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000251","name":"SaratogaEquipments#getAllByCategory","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByCategory","longname":"SaratogaEquipments#getAllByCategory","kind":"function","scope":"instance","$longname":"SaratogaEquipments#getAllByCategory","$kind":"method","$docmaLink":"?api#SaratogaEquipments#getAllByCategory"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1130,1284],"filename":"SaratogaEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000277","name":"SaratogaEquipments#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByNationality","longname":"SaratogaEquipments#getAllByNationality","kind":"function","scope":"instance","$longname":"SaratogaEquipments#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments#getAllByNationality"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1591,1835],"filename":"SaratogaEquipments.js","lineno":52,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000303","name":"SaratogaEquipments#searchByEquipmentName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"searchByEquipmentName","longname":"SaratogaEquipments#searchByEquipmentName","kind":"function","scope":"instance","$longname":"SaratogaEquipments#searchByEquipmentName","$kind":"method","$docmaLink":"?api#SaratogaEquipments#searchByEquipmentName"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[213,321],"filename":"SaratogaEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000198","name":"SaratogaEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaEquipments","longname":"SaratogaEquipments","kind":"class","scope":"global","$longname":"SaratogaEquipments","$kind":"constructor","$docmaLink":"?api#SaratogaEquipments"}},{"comment":"/**\n * Ship related getters for Saratoga\n * @class SaratogaShips\n */","meta":{"filename":"SaratogaShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips","$members":[{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[761,899],"filename":"SaratogaShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000404","name":"SaratogaShips#getAllByClass","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByClass","longname":"SaratogaShips#getAllByClass","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByClass","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByClass"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1559,1701],"filename":"SaratogaShips.js","lineno":51,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000456","name":"SaratogaShips#getAllByHullType","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByHullType","longname":"SaratogaShips#getAllByHullType","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByHullType","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByHullType"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1156,1310],"filename":"SaratogaShips.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000430","name":"SaratogaShips#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByNationality","longname":"SaratogaShips#getAllByNationality","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByNationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1937,2071],"filename":"SaratogaShips.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000482","name":"SaratogaShips#getAllByRarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByRarity","longname":"SaratogaShips#getAllByRarity","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByRarity","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByRarity"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2255,2434],"filename":"SaratogaShips.js","lineno":73,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000508","name":"SaratogaShips#getById","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"getById","longname":"SaratogaShips#getById","kind":"function","scope":"instance","$longname":"SaratogaShips#getById","$kind":"method","$docmaLink":"?api#SaratogaShips#getById"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2721,2946],"filename":"SaratogaShips.js","lineno":87,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000545","name":"SaratogaShips#searchShipByName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"searchShipByName","longname":"SaratogaShips#searchShipByName","kind":"function","scope":"instance","$longname":"SaratogaShips#searchShipByName","$kind":"method","$docmaLink":"?api#SaratogaShips#searchShipByName"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[198,306],"filename":"SaratogaShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000351","name":"SaratogaShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaShips","longname":"SaratogaShips","kind":"class","scope":"global","$longname":"SaratogaShips","$kind":"constructor","$docmaLink":"?api#SaratogaShips"}},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class SaratogaStore\n */","meta":{"filename":"SaratogaStore.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"SaratogaStore","longname":"SaratogaStore","scope":"global","$longname":"SaratogaStore","$kind":"class","$docmaLink":"?api#SaratogaStore","$members":[{"comment":"/**\n * Equipment related getters for this store\n * @type {SaratogaEquipments}\n */","meta":{"range":[906,952],"filename":"SaratogaStore.js","lineno":30,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000643","name":"this.equipments","type":"NewExpression","value":"","paramnames":[]}},"description":"Equipment related getters for this store
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"SaratogaStore#equipments","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#equipments","$kind":"property","$docmaLink":"?api#SaratogaStore#equipments"},{"comment":"/**\n * If this store is already ready to operate\n * @type {Boolean}\n */","meta":{"range":[1732,1750],"filename":"SaratogaStore.js","lineno":55,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000659","name":"this.ready","type":"Literal","value":false,"paramnames":[]}},"description":"If this store is already ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"SaratogaStore#ready","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ready","$kind":"property","$docmaLink":"?api#SaratogaStore#ready"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[608,632],"filename":"SaratogaStore.js","lineno":20,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000629","name":"this.saratoga","type":"Identifier","value":"saratoga","paramnames":[]}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaStore#saratoga","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#saratoga","$kind":"property","$docmaLink":"?api#SaratogaStore#saratoga"},{"comment":"/**\n * Ship related getters for this store\n * @type {SaratogaShips}\n */","meta":{"range":[746,782],"filename":"SaratogaStore.js","lineno":25,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000635","name":"this.ships","type":"NewExpression","value":"","paramnames":[]}},"description":"Ship related getters for this store
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"SaratogaStore#ships","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ships","$kind":"property","$docmaLink":"?api#SaratogaStore#ships"},{"comment":"/**\n * Updater Class for the local data for this store\n * @type {SaratogaUpdater}\n */","meta":{"range":[1578,1618],"filename":"SaratogaStore.js","lineno":50,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000651","name":"this.updater","type":"NewExpression","value":"","paramnames":[]}},"description":"Updater Class for the local data for this store
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"SaratogaStore#updater","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#updater","$kind":"property","$docmaLink":"?api#SaratogaStore#updater"}],"$constructor":{"comment":"/**\n * @param {Saratoga} saratoga The saratoga class that generated this instance\n */","meta":{"range":[462,2583],"filename":"SaratogaStore.js","lineno":15,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000623","name":"SaratogaStore","type":"MethodDefinition","paramnames":["saratoga"]},"vars":{"":null}},"params":[{"type":{"names":["Saratoga"]},"description":"The saratoga class that generated this instance
","name":"saratoga"}],"name":"SaratogaStore","longname":"SaratogaStore","kind":"class","scope":"global","$longname":"SaratogaStore","$kind":"constructor","$docmaLink":"?api#SaratogaStore"}},{"comment":"/**\n * Manages the local data & cache updates\n * @class SaratogaUpdater\n */","meta":{"filename":"SaratogaUpdater.js","lineno":5,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{}},"description":"Manages the local data & cache updates
","kind":"class","name":"SaratogaUpdater","longname":"SaratogaUpdater","scope":"global","$longname":"SaratogaUpdater","$kind":"class","$docmaLink":"?api#SaratogaUpdater","$members":[{"comment":"/**\n * Checks if there is new updates for ship or equipment data\n * @memberof SaratogaUpdater\n * @returns {Promise}\n * @example\n * const api = new Saratoga();\n * api.updater.checkForUpdate()\n * .then((response) => {\n * if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n * })\n */","meta":{"range":[3518,3930],"filename":"SaratogaUpdater.js","lineno":90,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001677","name":"SaratogaUpdater#checkForUpdate","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Checks if there is new updates for ship or equipment data
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"examples":["const api = new Saratoga();\napi.updater.checkForUpdate()\n .then((response) => {\n if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n })"],"name":"checkForUpdate","longname":"SaratogaUpdater#checkForUpdate","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#checkForUpdate","$kind":"method","$docmaLink":"?api#SaratogaUpdater#checkForUpdate"},{"comment":"/**\n * Updates the Cached Data, loaded from the local files of Saratoga\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[5315,5490],"filename":"SaratogaUpdater.js","lineno":135,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001797","name":"SaratogaUpdater#updateCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Cached Data, loaded from the local files of Saratoga
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateCache","longname":"SaratogaUpdater#updateCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateCache"},{"comment":"/**\n * Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[3011,3117],"filename":"SaratogaUpdater.js","lineno":74,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001661","name":"SaratogaUpdater#updateDataAndCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateDataAndCache","longname":"SaratogaUpdater#updateDataAndCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateDataAndCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateDataAndCache"},{"comment":"/**\n * Updates the Local Files of Saratoga if there is an update\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[4082,5156],"filename":"SaratogaUpdater.js","lineno":104,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001697","name":"SaratogaUpdater#updateLocalData","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files of Saratoga if there is an update
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateLocalData","longname":"SaratogaUpdater#updateLocalData","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateLocalData","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateLocalData"},{"comment":"/**\n * The cron update checker which is responsible for Saratoga#updateAvailable event\n * @type {?Timeout}\n */","meta":{"range":[830,852],"filename":"SaratogaUpdater.js","lineno":28,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001394","name":"this.cronUpdate","type":"Literal","value":null,"paramnames":[]}},"description":"The cron update checker which is responsible for Saratoga#updateAvailable event
","type":{"names":["Timeout"]},"nullable":true,"name":"cronUpdate","longname":"SaratogaUpdater#cronUpdate","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#cronUpdate","$kind":"property","$docmaLink":"?api#SaratogaUpdater#cronUpdate"},{"comment":"/**\n * If the data directory of this updater is ready to operate\n * @type {Boolean}\n */","meta":{"range":[652,677],"filename":"SaratogaUpdater.js","lineno":23,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001388","name":"this.dataDirReady","type":"Literal","value":false,"paramnames":[]}},"description":"If the data directory of this updater is ready to operate
","type":{"names":["Boolean"]},"name":"dataDirReady","longname":"SaratogaUpdater#dataDirReady","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#dataDirReady","$kind":"property","$docmaLink":"?api#SaratogaUpdater#dataDirReady"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[963,1021],"filename":"SaratogaUpdater.js","lineno":35,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001399","name":"SaratogaUpdater#saratoga","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaUpdater#saratoga","kind":"member","memberof":"SaratogaUpdater","scope":"instance","params":[],"$longname":"SaratogaUpdater#saratoga","$kind":"property","$docmaLink":"?api#SaratogaUpdater#saratoga"},{"comment":"/**\n * The updater instance that generated this instance\n * @type {SaratogaStore}\n */","meta":{"range":[504,522],"filename":"SaratogaUpdater.js","lineno":18,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001382","name":"this.store","type":"Identifier","value":"store","paramnames":[]}},"description":"The updater instance that generated this instance
","type":{"names":["SaratogaStore"]},"name":"store","longname":"SaratogaUpdater#store","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#store","$kind":"property","$docmaLink":"?api#SaratogaUpdater#store"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[357,859],"filename":"SaratogaUpdater.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001376","name":"SaratogaUpdater","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaUpdater","longname":"SaratogaUpdater","kind":"class","scope":"global","$longname":"SaratogaUpdater","$kind":"constructor","$docmaLink":"?api#SaratogaUpdater"}},{"comment":"","meta":{"range":[122,250],"filename":"SaratogaValidator.js","lineno":5,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002188","name":"SaratogaValidator","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"SaratogaValidator","longname":"SaratogaValidator","kind":"class","scope":"global","params":[],"$longname":"SaratogaValidator","$kind":"constructor","$docmaLink":"?api#SaratogaValidator"},{"comment":"/**\n * Barrage Data\n * @external Barrage\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":34,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Barrage Data
","kind":"external","name":"Barrage","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Barrage","scope":"global","$longname":"external:Barrage","$kind":"external","$docmaLink":"?api#external:Barrage"},{"comment":"/**\n * Chapter Data\n * @external Chapter\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":24,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Chapter Data
","kind":"external","name":"Chapter","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Chapter","scope":"global","$longname":"external:Chapter","$kind":"external","$docmaLink":"?api#external:Chapter"},{"comment":"/**\n * Equipment Data\n * @external Equipment\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":19,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Equipment Data
","kind":"external","name":"Equipment","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Equipment","scope":"global","$longname":"external:Equipment","$kind":"external","$docmaLink":"?api#external:Equipment"},{"comment":"/**\n * Node.js Event Emitter\n * @external EventEmitter\n * @see {@link https://nodejs.org/api/events.html}\n */","meta":{"filename":"index.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Event Emitter
","kind":"external","name":"EventEmitter","see":["{@link https://nodejs.org/api/events.html}"],"longname":"external:EventEmitter","scope":"global","$longname":"external:EventEmitter","$kind":"external","$docmaLink":"?api#external:EventEmitter"},{"comment":"/**\n * Ship Data\n * @external Ship\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}\n */","meta":{"filename":"index.js","lineno":13,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Ship Data
","kind":"external","name":"Ship","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}"],"longname":"external:Ship","scope":"global","$longname":"external:Ship","$kind":"external","$docmaLink":"?api#external:Ship"},{"comment":"/**\n * Node.js Timeout\n * @external Timeout\n * @see {@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}\n */","meta":{"filename":"index.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Timeout
","kind":"external","name":"Timeout","see":["{@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}"],"longname":"external:Timeout","scope":"global","$longname":"external:Timeout","$kind":"external","$docmaLink":"?api#external:Timeout"},{"comment":"/**\n * Voiceline Data\n * @external Voiceline\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":29,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Voiceline Data
","kind":"external","name":"Voiceline","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Voiceline","scope":"global","$longname":"external:Voiceline","$kind":"external","$docmaLink":"?api#external:Voiceline"}],"symbols":["external:Barrage","external:Chapter","external:Equipment","external:EventEmitter","external:Ship","external:Timeout","external:Voiceline","Saratoga","Saratoga#barrages","Saratoga#chapters","Saratoga#equipments","Saratoga#event:debug","Saratoga#event:error","Saratoga#event:ready","Saratoga#event:updateAvailable","Saratoga#ready","Saratoga#ships","Saratoga#store","Saratoga#updater","Saratoga#voicelines","SaratogaEquipments","SaratogaEquipments#getAllByCategory","SaratogaEquipments#getAllByNationality","SaratogaEquipments#searchByEquipmentName","SaratogaShips","SaratogaShips#getAllByClass","SaratogaShips#getAllByHullType","SaratogaShips#getAllByNationality","SaratogaShips#getAllByRarity","SaratogaShips#getById","SaratogaShips#searchShipByName","SaratogaStore","SaratogaStore#equipments","SaratogaStore#ready","SaratogaStore#saratoga","SaratogaStore#ships","SaratogaStore#updater","SaratogaUpdater","SaratogaUpdater#checkForUpdate","SaratogaUpdater#cronUpdate","SaratogaUpdater#dataDirReady","SaratogaUpdater#saratoga","SaratogaUpdater#store","SaratogaUpdater#updateCache","SaratogaUpdater#updateDataAndCache","SaratogaUpdater#updateLocalData","SaratogaValidator"]}},"app":{"title":"Saratoga | An open source Azur Lane local library","routing":{"method":"query","caseSensitive":true},"entrance":"content:readme","base":"/Saratoga/","meta":null,"server":"static","favicon":""},"template":{"name":"docma-template-zebra","description":"Zebra - Default template for Docma. https://github.com/onury/docma","version":"2.3.1","supportedDocmaVersion":">=2.0.0","author":"Onur Yıldırım","license":"MIT","mainHTML":"index.html","options":{"title":{"label":"Saratoga","href":"."},"sidebar":{"enabled":true,"outline":"tree","collapsed":false,"toolbar":true,"itemsFolded":false,"itemsOverflow":"crop","badges":true,"search":true,"animations":true},"symbols":{"autoLink":true,"params":"list","enums":"list","props":"list","meta":false},"navbar":{"enabled":true,"dark":false,"animations":true,"menu":[{"label":"Readme","href":"."},{"label":"Documentation","href":"?api"},{"label":"GitHub","href":"https://github.com/AzurAPI/Saratoga"}],"fixed":true},"logo":null,"contentView":{"bookmarks":false,"faVersion":"5.5.0","faLibs":"all"}}},"partials":{"api":"docma-api","content":"docma-content","notFound":"docma-404"},"elementID":"docma-main","contentElementID":"docma-content","defaultApiName":"_def_","logsEnabled":false}));
-!function(){"use strict";var r="path"===docma.app.routing.method;function n(a){return(a.params[1]||"").replace(/\/$/,"")}function a(a,e){var o=n(a)||docma._.defaultApiName,t=docma.createRoute(o,DocmaWeb.Route.Type.API);if(!t||!t.exists())return e();t.apply()}docma.app.base&&page.base(docma.app.base),page.redirect("(/)?"+docma.template.main,""),r&&(page("(/)?api/(.+)",a),page("(/)?api(/)?",a),page("(/)?(.*)",function(a,e){var o=n(a),t=docma.createRoute(o,DocmaWeb.Route.Type.CONTENT);if(!t||!t.exists())return e();t.apply()})),page("(/)?",function(c,i){!function(){if(r){var a=sessionStorage.getItem("redirectPath")||null;if(a)return sessionStorage.removeItem("redirectPath"),docma.info("Redirecting to:",a),page.redirect(a),1}}()&&setTimeout(function(){var a,e,o,t=(e=c.querystring,o=e||window.location.search,/^[?&]/.test(o)&&(o=o.slice(1)),o||null);if(r){if(t)return i();a=docma._.appEntranceRI}else docma.log("Query-string:",t),a=t?docma.createRouteFromQuery(t):docma._.appEntranceRI;if(!a||!a.exists())return i();function n(){docma._trigger(DocmaWeb.Event.Navigate,[a])}a.isCurrent()?n():a.apply(function(a){200===a&&n()})},100)}),page("*",function(a){docma.warn("Unknown Route:",a.path),docma.log("context:",a),docma.createRoute(null).apply()}),docma.info("Docma SPA Configuration:"),docma.info("App Title: ",docma.app.title),docma.info("Routing Method: ",docma.app.routing.method),docma.info("App Server: ",docma.app.server),docma.info("Base Path: ",docma.app.base),docma.info("Entrance Route ID: ",docma.app.entrance),window.onload=function(){docma._.initialLoad=!0,docma._.appEntranceRI=docma.createRouteFromID(docma.app.entrance),page.start({click:!0,popstate:!0,dispatch:!0,hashbang:!1,decodeURLComponents:!0}),docma.info("Docma SPA loaded!")}}();
\ No newline at end of file
+!function(){"use strict";var c="path"===docma.app.routing.method;function o(a){return(a.params[1]||"").replace(/\/$/,"")}function a(a,e){a=o(a)||docma._.defaultApiName,a=docma.createRoute(a,DocmaWeb.Route.Type.API);if(!a||!a.exists())return e();a.apply()}docma.app.base&&page.base(docma.app.base),page.redirect("(/)?"+docma.template.main,""),c&&(page("(/)?api/(.+)",a),page("(/)?api(/)?",a),page("(/)?(.*)",function(a,e){a=o(a),a=docma.createRoute(a,DocmaWeb.Route.Type.CONTENT);if(!a||!a.exists())return e();a.apply()})),page("(/)?",function(t,n){!function(){if(c){var a=sessionStorage.getItem("redirectPath")||null;if(a)return sessionStorage.removeItem("redirectPath"),docma.info("Redirecting to:",a),page.redirect(a),1}}()&&setTimeout(function(){var a,e,e=(e=(e=t.querystring)||window.location.search,(e=/^[?&]/.test(e)?e.slice(1):e)||null);if(c){if(e)return n();a=docma._.appEntranceRI}else docma.log("Query-string:",e),a=e?docma.createRouteFromQuery(e):docma._.appEntranceRI;if(!a||!a.exists())return n();function o(){docma._trigger(DocmaWeb.Event.Navigate,[a])}a.isCurrent()?o():a.apply(function(a){200===a&&o()})},100)}),page("*",function(a){docma.warn("Unknown Route:",a.path),docma.log("context:",a),docma.createRoute(null).apply()}),docma.info("Docma SPA Configuration:"),docma.info("App Title: ",docma.app.title),docma.info("Routing Method: ",docma.app.routing.method),docma.info("App Server: ",docma.app.server),docma.info("Base Path: ",docma.app.base),docma.info("Entrance Route ID: ",docma.app.entrance),window.onload=function(){docma._.initialLoad=!0,docma._.appEntranceRI=docma.createRouteFromID(docma.app.entrance),page.start({click:!0,popstate:!0,dispatch:!0,hashbang:!1,decodeURLComponents:!0}),docma.info("Docma SPA loaded!")}}();
\ No newline at end of file
diff --git a/index.js b/index.js
index 3e1a9e7..57a3889 100644
--- a/index.js
+++ b/index.js
@@ -21,6 +21,21 @@
* @external Equipment
* @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}
*/
+/**
+ * Chapter Data
+ * @external Chapter
+ * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}
+ */
+/**
+ * Voiceline Data
+ * @external Voiceline
+ * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}
+ */
+/**
+ * Barrage Data
+ * @external Barrage
+ * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}
+ */
module.exports = {
Saratoga: require('./src/Saratoga'),
From c7d69d0dc23098767d4f81cb926895b18d972530 Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Mon, 25 Jan 2021 17:54:56 +0800
Subject: [PATCH 03/14] feat: add filter and search for ships and equipments
Changes:
- Added .filter() and .search() functions for ship data and equipment data
- Regenerate docma docs
---
docs/js/docma-web.js | 2 +-
src/store/SaratogaEquipments.js | 16 ++++++++++++++++
src/store/SaratogaShips.js | 16 ++++++++++++++++
3 files changed, 33 insertions(+), 1 deletion(-)
diff --git a/docs/js/docma-web.js b/docs/js/docma-web.js
index 6ca5cc6..c4c7cd8 100644
--- a/docs/js/docma-web.js
+++ b/docs/js/docma-web.js
@@ -44,6 +44,6 @@ dust.filters=dust.filters||{},dust.filters.$pt=function(e){return DocmaWeb.Utils
DocmaWeb.version = "3.2.2";
return DocmaWeb;
})();
-var docma = Object.freeze(new DocmaWeb({"version":"3.2.2","routes":[{"id":"api:","type":"api","name":"_def_","path":"?api","contentPath":null,"sourceType":"js"},{"id":"content:readme","type":"content","name":"readme","path":"?content=readme","contentPath":"content/readme.html","sourceType":"md"}],"apis":{"_def_":{"documentation":[{"comment":"/**\n * Saratoga, the starting point of this API\n * @class Saratoga\n * @extends {EventEmitter}\n */","meta":{"filename":"Saratoga.js","lineno":4,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"Saratoga","augments":["EventEmitter"],"longname":"Saratoga","scope":"global","$longname":"Saratoga","$kind":"class","$docmaLink":"?api#Saratoga","$members":[{"comment":"/**\n * Barrage related getters for this store\n * @type {SaratogaBarrages}\n */","meta":{"range":[2891,2987],"filename":"Saratoga.js","lineno":108,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000166","name":"Saratoga#barrages","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Barrage related getters for this store
","type":{"names":["SaratogaBarrages"]},"name":"barrages","longname":"Saratoga#barrages","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#barrages","$kind":"property","$docmaLink":"?api#Saratoga#barrages"},{"comment":"/**\n * Chapters related getters for this store\n * @type {SaratogaChapters}\n */","meta":{"range":[2493,2589],"filename":"Saratoga.js","lineno":92,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000132","name":"Saratoga#chapters","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Chapters related getters for this store
","type":{"names":["SaratogaChapters"]},"name":"chapters","longname":"Saratoga#chapters","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#chapters","$kind":"property","$docmaLink":"?api#Saratoga#chapters"},{"comment":"/**\n * Azur Lane's Equipment related getter methods\n * @type {SaratogaEquipments}\n */","meta":{"range":[2293,2393],"filename":"Saratoga.js","lineno":84,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000115","name":"Saratoga#equipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"Saratoga#equipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#equipments","$kind":"property","$docmaLink":"?api#Saratoga#equipments"},{"comment":"/**\n * If Saratoga is ready to operate\n * @type {Boolean}\n */","meta":{"range":[1910,1997],"filename":"Saratoga.js","lineno":67,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000080","name":"Saratoga#ready","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"If Saratoga is ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"Saratoga#ready","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ready","$kind":"property","$docmaLink":"?api#Saratoga#ready"},{"comment":"/**\n * Azur Lane's Ship related getter methods\n * @type {SaratogaShips}\n */","meta":{"range":[2095,2185],"filename":"Saratoga.js","lineno":75,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000098","name":"Saratoga#ships","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"Saratoga#ships","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ships","$kind":"property","$docmaLink":"?api#Saratoga#ships"},{"comment":"/**\n * Contains methods and props for managing cached data\n * @type {SaratogaStore}\n */","meta":{"range":[567,603],"filename":"Saratoga.js","lineno":19,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000053","name":"this.store","type":"NewExpression","value":"","paramnames":[]}},"description":"Contains methods and props for managing cached data
","type":{"names":["SaratogaStore"]},"name":"store","longname":"Saratoga#store","kind":"member","memberof":"Saratoga","scope":"instance","$longname":"Saratoga#store","$kind":"property","$docmaLink":"?api#Saratoga#store"},{"comment":"/**\n * Contains methods for updating Saratoga's local data & cache\n * @type {SaratogaUpdater}\n */","meta":{"range":[1770,1826],"filename":"Saratoga.js","lineno":59,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000070","name":"Saratoga#updater","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Contains methods for updating Saratoga's local data & cache
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"Saratoga#updater","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#updater","$kind":"property","$docmaLink":"?api#Saratoga#updater"},{"comment":"/**\n * Voiceline related getters for this store\n * @type {SaratogaVoicelines}\n */","meta":{"range":[2692,2792],"filename":"Saratoga.js","lineno":100,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000149","name":"Saratoga#voicelines","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Voiceline related getters for this store
","type":{"names":["SaratogaVoicelines"]},"name":"voicelines","longname":"Saratoga#voicelines","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#voicelines","$kind":"property","$docmaLink":"?api#Saratoga#voicelines"},{"comment":"/**\n * Emitted when there is a debug data\n * @event Saratoga#debug\n * @param {string} message Debug message\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":23,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a debug data
","kind":"event","name":"debug","params":[{"type":{"names":["string"]},"description":"Debug message
","name":"message"}],"memberof":"Saratoga","longname":"Saratoga#event:debug","scope":"instance","$longname":"Saratoga#event:debug","$kind":"event","$docmaLink":"?api#Saratoga#event:debug"},{"comment":"/**\n * Emitted when there is a pesky error\n * @event Saratoga#error\n * @param {Error} error The error encountered.\n * @memberof Saratoga\n * @example\n * Saratoga.on('error', console.error);\n */","meta":{"filename":"Saratoga.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a pesky error
","kind":"event","name":"error","params":[{"type":{"names":["Error"]},"description":"The error encountered.
","name":"error"}],"memberof":"Saratoga","examples":["Saratoga.on('error', console.error);"],"longname":"Saratoga#event:error","scope":"instance","$longname":"Saratoga#event:error","$kind":"event","$docmaLink":"?api#Saratoga#event:error"},{"comment":"/**\n * Emitted when Saratoga is ready\n * @event Saratoga#ready\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":49,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when Saratoga is ready
","kind":"event","name":"ready","memberof":"Saratoga","longname":"Saratoga#event:ready","scope":"instance","$longname":"Saratoga#event:ready","$kind":"event","$docmaLink":"?api#Saratoga#event:ready"},{"comment":"/**\n * Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true\n * @event Saratoga#updateAvailable\n * @param {Object} data What data needs updating\n * @memberof Saratoga\n * @example\n * Saratoga.on('updateAvailable', (data) => {\n * if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n * // handle update\n * }\n * })\n */","meta":{"filename":"Saratoga.js","lineno":37,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true
","kind":"event","name":"updateAvailable","params":[{"type":{"names":["Object"]},"description":"What data needs updating
","name":"data"}],"memberof":"Saratoga","examples":["Saratoga.on('updateAvailable', (data) => {\n if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n // handle update\n }\n})"],"longname":"Saratoga#event:updateAvailable","scope":"instance","$longname":"Saratoga#event:updateAvailable","$kind":"event","$docmaLink":"?api#Saratoga#event:updateAvailable"}],"$constructor":{"comment":"/**\n * @param {Object} options Object with a single parameter, which is notifyForNewUpdates, which is a boolean\n */","meta":{"range":[366,679],"filename":"Saratoga.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000040","name":"Saratoga","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"description":"Object with a single parameter, which is notifyForNewUpdates, which is a boolean
","name":"options"}],"name":"Saratoga","longname":"Saratoga","kind":"class","scope":"global","$longname":"Saratoga","$kind":"constructor","$docmaLink":"?api#Saratoga"}},{"comment":"/**\n * Equipment related getters for Saratoga\n * @class SaratogaEquipments\n */","meta":{"filename":"SaratogaEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments","$members":[{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[751,893],"filename":"SaratogaEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000251","name":"SaratogaEquipments#getAllByCategory","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByCategory","longname":"SaratogaEquipments#getAllByCategory","kind":"function","scope":"instance","$longname":"SaratogaEquipments#getAllByCategory","$kind":"method","$docmaLink":"?api#SaratogaEquipments#getAllByCategory"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1130,1284],"filename":"SaratogaEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000277","name":"SaratogaEquipments#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByNationality","longname":"SaratogaEquipments#getAllByNationality","kind":"function","scope":"instance","$longname":"SaratogaEquipments#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments#getAllByNationality"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1591,1835],"filename":"SaratogaEquipments.js","lineno":52,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000303","name":"SaratogaEquipments#searchByEquipmentName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"searchByEquipmentName","longname":"SaratogaEquipments#searchByEquipmentName","kind":"function","scope":"instance","$longname":"SaratogaEquipments#searchByEquipmentName","$kind":"method","$docmaLink":"?api#SaratogaEquipments#searchByEquipmentName"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[213,321],"filename":"SaratogaEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000198","name":"SaratogaEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaEquipments","longname":"SaratogaEquipments","kind":"class","scope":"global","$longname":"SaratogaEquipments","$kind":"constructor","$docmaLink":"?api#SaratogaEquipments"}},{"comment":"/**\n * Ship related getters for Saratoga\n * @class SaratogaShips\n */","meta":{"filename":"SaratogaShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips","$members":[{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[761,899],"filename":"SaratogaShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000404","name":"SaratogaShips#getAllByClass","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByClass","longname":"SaratogaShips#getAllByClass","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByClass","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByClass"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1559,1701],"filename":"SaratogaShips.js","lineno":51,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000456","name":"SaratogaShips#getAllByHullType","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByHullType","longname":"SaratogaShips#getAllByHullType","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByHullType","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByHullType"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1156,1310],"filename":"SaratogaShips.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000430","name":"SaratogaShips#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByNationality","longname":"SaratogaShips#getAllByNationality","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByNationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1937,2071],"filename":"SaratogaShips.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000482","name":"SaratogaShips#getAllByRarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByRarity","longname":"SaratogaShips#getAllByRarity","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByRarity","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByRarity"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2255,2434],"filename":"SaratogaShips.js","lineno":73,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000508","name":"SaratogaShips#getById","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"getById","longname":"SaratogaShips#getById","kind":"function","scope":"instance","$longname":"SaratogaShips#getById","$kind":"method","$docmaLink":"?api#SaratogaShips#getById"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2721,2946],"filename":"SaratogaShips.js","lineno":87,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000545","name":"SaratogaShips#searchShipByName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"searchShipByName","longname":"SaratogaShips#searchShipByName","kind":"function","scope":"instance","$longname":"SaratogaShips#searchShipByName","$kind":"method","$docmaLink":"?api#SaratogaShips#searchShipByName"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[198,306],"filename":"SaratogaShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000351","name":"SaratogaShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaShips","longname":"SaratogaShips","kind":"class","scope":"global","$longname":"SaratogaShips","$kind":"constructor","$docmaLink":"?api#SaratogaShips"}},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class SaratogaStore\n */","meta":{"filename":"SaratogaStore.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"SaratogaStore","longname":"SaratogaStore","scope":"global","$longname":"SaratogaStore","$kind":"class","$docmaLink":"?api#SaratogaStore","$members":[{"comment":"/**\n * Equipment related getters for this store\n * @type {SaratogaEquipments}\n */","meta":{"range":[906,952],"filename":"SaratogaStore.js","lineno":30,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000643","name":"this.equipments","type":"NewExpression","value":"","paramnames":[]}},"description":"Equipment related getters for this store
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"SaratogaStore#equipments","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#equipments","$kind":"property","$docmaLink":"?api#SaratogaStore#equipments"},{"comment":"/**\n * If this store is already ready to operate\n * @type {Boolean}\n */","meta":{"range":[1732,1750],"filename":"SaratogaStore.js","lineno":55,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000659","name":"this.ready","type":"Literal","value":false,"paramnames":[]}},"description":"If this store is already ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"SaratogaStore#ready","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ready","$kind":"property","$docmaLink":"?api#SaratogaStore#ready"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[608,632],"filename":"SaratogaStore.js","lineno":20,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000629","name":"this.saratoga","type":"Identifier","value":"saratoga","paramnames":[]}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaStore#saratoga","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#saratoga","$kind":"property","$docmaLink":"?api#SaratogaStore#saratoga"},{"comment":"/**\n * Ship related getters for this store\n * @type {SaratogaShips}\n */","meta":{"range":[746,782],"filename":"SaratogaStore.js","lineno":25,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000635","name":"this.ships","type":"NewExpression","value":"","paramnames":[]}},"description":"Ship related getters for this store
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"SaratogaStore#ships","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ships","$kind":"property","$docmaLink":"?api#SaratogaStore#ships"},{"comment":"/**\n * Updater Class for the local data for this store\n * @type {SaratogaUpdater}\n */","meta":{"range":[1578,1618],"filename":"SaratogaStore.js","lineno":50,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000651","name":"this.updater","type":"NewExpression","value":"","paramnames":[]}},"description":"Updater Class for the local data for this store
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"SaratogaStore#updater","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#updater","$kind":"property","$docmaLink":"?api#SaratogaStore#updater"}],"$constructor":{"comment":"/**\n * @param {Saratoga} saratoga The saratoga class that generated this instance\n */","meta":{"range":[462,2583],"filename":"SaratogaStore.js","lineno":15,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000623","name":"SaratogaStore","type":"MethodDefinition","paramnames":["saratoga"]},"vars":{"":null}},"params":[{"type":{"names":["Saratoga"]},"description":"The saratoga class that generated this instance
","name":"saratoga"}],"name":"SaratogaStore","longname":"SaratogaStore","kind":"class","scope":"global","$longname":"SaratogaStore","$kind":"constructor","$docmaLink":"?api#SaratogaStore"}},{"comment":"/**\n * Manages the local data & cache updates\n * @class SaratogaUpdater\n */","meta":{"filename":"SaratogaUpdater.js","lineno":5,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{}},"description":"Manages the local data & cache updates
","kind":"class","name":"SaratogaUpdater","longname":"SaratogaUpdater","scope":"global","$longname":"SaratogaUpdater","$kind":"class","$docmaLink":"?api#SaratogaUpdater","$members":[{"comment":"/**\n * Checks if there is new updates for ship or equipment data\n * @memberof SaratogaUpdater\n * @returns {Promise}\n * @example\n * const api = new Saratoga();\n * api.updater.checkForUpdate()\n * .then((response) => {\n * if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n * })\n */","meta":{"range":[3518,3930],"filename":"SaratogaUpdater.js","lineno":90,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001677","name":"SaratogaUpdater#checkForUpdate","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Checks if there is new updates for ship or equipment data
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"examples":["const api = new Saratoga();\napi.updater.checkForUpdate()\n .then((response) => {\n if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n })"],"name":"checkForUpdate","longname":"SaratogaUpdater#checkForUpdate","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#checkForUpdate","$kind":"method","$docmaLink":"?api#SaratogaUpdater#checkForUpdate"},{"comment":"/**\n * Updates the Cached Data, loaded from the local files of Saratoga\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[5315,5490],"filename":"SaratogaUpdater.js","lineno":135,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001797","name":"SaratogaUpdater#updateCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Cached Data, loaded from the local files of Saratoga
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateCache","longname":"SaratogaUpdater#updateCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateCache"},{"comment":"/**\n * Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[3011,3117],"filename":"SaratogaUpdater.js","lineno":74,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001661","name":"SaratogaUpdater#updateDataAndCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateDataAndCache","longname":"SaratogaUpdater#updateDataAndCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateDataAndCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateDataAndCache"},{"comment":"/**\n * Updates the Local Files of Saratoga if there is an update\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[4082,5156],"filename":"SaratogaUpdater.js","lineno":104,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001697","name":"SaratogaUpdater#updateLocalData","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files of Saratoga if there is an update
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateLocalData","longname":"SaratogaUpdater#updateLocalData","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateLocalData","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateLocalData"},{"comment":"/**\n * The cron update checker which is responsible for Saratoga#updateAvailable event\n * @type {?Timeout}\n */","meta":{"range":[830,852],"filename":"SaratogaUpdater.js","lineno":28,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001394","name":"this.cronUpdate","type":"Literal","value":null,"paramnames":[]}},"description":"The cron update checker which is responsible for Saratoga#updateAvailable event
","type":{"names":["Timeout"]},"nullable":true,"name":"cronUpdate","longname":"SaratogaUpdater#cronUpdate","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#cronUpdate","$kind":"property","$docmaLink":"?api#SaratogaUpdater#cronUpdate"},{"comment":"/**\n * If the data directory of this updater is ready to operate\n * @type {Boolean}\n */","meta":{"range":[652,677],"filename":"SaratogaUpdater.js","lineno":23,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001388","name":"this.dataDirReady","type":"Literal","value":false,"paramnames":[]}},"description":"If the data directory of this updater is ready to operate
","type":{"names":["Boolean"]},"name":"dataDirReady","longname":"SaratogaUpdater#dataDirReady","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#dataDirReady","$kind":"property","$docmaLink":"?api#SaratogaUpdater#dataDirReady"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[963,1021],"filename":"SaratogaUpdater.js","lineno":35,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001399","name":"SaratogaUpdater#saratoga","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaUpdater#saratoga","kind":"member","memberof":"SaratogaUpdater","scope":"instance","params":[],"$longname":"SaratogaUpdater#saratoga","$kind":"property","$docmaLink":"?api#SaratogaUpdater#saratoga"},{"comment":"/**\n * The updater instance that generated this instance\n * @type {SaratogaStore}\n */","meta":{"range":[504,522],"filename":"SaratogaUpdater.js","lineno":18,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001382","name":"this.store","type":"Identifier","value":"store","paramnames":[]}},"description":"The updater instance that generated this instance
","type":{"names":["SaratogaStore"]},"name":"store","longname":"SaratogaUpdater#store","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#store","$kind":"property","$docmaLink":"?api#SaratogaUpdater#store"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[357,859],"filename":"SaratogaUpdater.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001376","name":"SaratogaUpdater","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaUpdater","longname":"SaratogaUpdater","kind":"class","scope":"global","$longname":"SaratogaUpdater","$kind":"constructor","$docmaLink":"?api#SaratogaUpdater"}},{"comment":"","meta":{"range":[122,250],"filename":"SaratogaValidator.js","lineno":5,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002188","name":"SaratogaValidator","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"SaratogaValidator","longname":"SaratogaValidator","kind":"class","scope":"global","params":[],"$longname":"SaratogaValidator","$kind":"constructor","$docmaLink":"?api#SaratogaValidator"},{"comment":"/**\n * Barrage Data\n * @external Barrage\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":34,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Barrage Data
","kind":"external","name":"Barrage","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Barrage","scope":"global","$longname":"external:Barrage","$kind":"external","$docmaLink":"?api#external:Barrage"},{"comment":"/**\n * Chapter Data\n * @external Chapter\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":24,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Chapter Data
","kind":"external","name":"Chapter","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Chapter","scope":"global","$longname":"external:Chapter","$kind":"external","$docmaLink":"?api#external:Chapter"},{"comment":"/**\n * Equipment Data\n * @external Equipment\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":19,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Equipment Data
","kind":"external","name":"Equipment","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Equipment","scope":"global","$longname":"external:Equipment","$kind":"external","$docmaLink":"?api#external:Equipment"},{"comment":"/**\n * Node.js Event Emitter\n * @external EventEmitter\n * @see {@link https://nodejs.org/api/events.html}\n */","meta":{"filename":"index.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Event Emitter
","kind":"external","name":"EventEmitter","see":["{@link https://nodejs.org/api/events.html}"],"longname":"external:EventEmitter","scope":"global","$longname":"external:EventEmitter","$kind":"external","$docmaLink":"?api#external:EventEmitter"},{"comment":"/**\n * Ship Data\n * @external Ship\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}\n */","meta":{"filename":"index.js","lineno":13,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Ship Data
","kind":"external","name":"Ship","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}"],"longname":"external:Ship","scope":"global","$longname":"external:Ship","$kind":"external","$docmaLink":"?api#external:Ship"},{"comment":"/**\n * Node.js Timeout\n * @external Timeout\n * @see {@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}\n */","meta":{"filename":"index.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Timeout
","kind":"external","name":"Timeout","see":["{@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}"],"longname":"external:Timeout","scope":"global","$longname":"external:Timeout","$kind":"external","$docmaLink":"?api#external:Timeout"},{"comment":"/**\n * Voiceline Data\n * @external Voiceline\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":29,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Voiceline Data
","kind":"external","name":"Voiceline","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Voiceline","scope":"global","$longname":"external:Voiceline","$kind":"external","$docmaLink":"?api#external:Voiceline"}],"symbols":["external:Barrage","external:Chapter","external:Equipment","external:EventEmitter","external:Ship","external:Timeout","external:Voiceline","Saratoga","Saratoga#barrages","Saratoga#chapters","Saratoga#equipments","Saratoga#event:debug","Saratoga#event:error","Saratoga#event:ready","Saratoga#event:updateAvailable","Saratoga#ready","Saratoga#ships","Saratoga#store","Saratoga#updater","Saratoga#voicelines","SaratogaEquipments","SaratogaEquipments#getAllByCategory","SaratogaEquipments#getAllByNationality","SaratogaEquipments#searchByEquipmentName","SaratogaShips","SaratogaShips#getAllByClass","SaratogaShips#getAllByHullType","SaratogaShips#getAllByNationality","SaratogaShips#getAllByRarity","SaratogaShips#getById","SaratogaShips#searchShipByName","SaratogaStore","SaratogaStore#equipments","SaratogaStore#ready","SaratogaStore#saratoga","SaratogaStore#ships","SaratogaStore#updater","SaratogaUpdater","SaratogaUpdater#checkForUpdate","SaratogaUpdater#cronUpdate","SaratogaUpdater#dataDirReady","SaratogaUpdater#saratoga","SaratogaUpdater#store","SaratogaUpdater#updateCache","SaratogaUpdater#updateDataAndCache","SaratogaUpdater#updateLocalData","SaratogaValidator"]}},"app":{"title":"Saratoga | An open source Azur Lane local library","routing":{"method":"query","caseSensitive":true},"entrance":"content:readme","base":"/Saratoga/","meta":null,"server":"static","favicon":""},"template":{"name":"docma-template-zebra","description":"Zebra - Default template for Docma. https://github.com/onury/docma","version":"2.3.1","supportedDocmaVersion":">=2.0.0","author":"Onur Yıldırım","license":"MIT","mainHTML":"index.html","options":{"title":{"label":"Saratoga","href":"."},"sidebar":{"enabled":true,"outline":"tree","collapsed":false,"toolbar":true,"itemsFolded":false,"itemsOverflow":"crop","badges":true,"search":true,"animations":true},"symbols":{"autoLink":true,"params":"list","enums":"list","props":"list","meta":false},"navbar":{"enabled":true,"dark":false,"animations":true,"menu":[{"label":"Readme","href":"."},{"label":"Documentation","href":"?api"},{"label":"GitHub","href":"https://github.com/AzurAPI/Saratoga"}],"fixed":true},"logo":null,"contentView":{"bookmarks":false,"faVersion":"5.5.0","faLibs":"all"}}},"partials":{"api":"docma-api","content":"docma-content","notFound":"docma-404"},"elementID":"docma-main","contentElementID":"docma-content","defaultApiName":"_def_","logsEnabled":false}));
+var docma = Object.freeze(new DocmaWeb({"version":"3.2.2","routes":[{"id":"api:","type":"api","name":"_def_","path":"?api","contentPath":null,"sourceType":"js"},{"id":"content:readme","type":"content","name":"readme","path":"?content=readme","contentPath":"content/readme.html","sourceType":"md"}],"apis":{"_def_":{"documentation":[{"comment":"/**\n * Saratoga, the starting point of this API\n * @class Saratoga\n * @extends {EventEmitter}\n */","meta":{"filename":"Saratoga.js","lineno":4,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"Saratoga","augments":["EventEmitter"],"longname":"Saratoga","scope":"global","$longname":"Saratoga","$kind":"class","$docmaLink":"?api#Saratoga","$members":[{"comment":"/**\n * Barrage related getters for this store\n * @type {SaratogaBarrages}\n */","meta":{"range":[2891,2987],"filename":"Saratoga.js","lineno":108,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000166","name":"Saratoga#barrages","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Barrage related getters for this store
","type":{"names":["SaratogaBarrages"]},"name":"barrages","longname":"Saratoga#barrages","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#barrages","$kind":"property","$docmaLink":"?api#Saratoga#barrages"},{"comment":"/**\n * Chapters related getters for this store\n * @type {SaratogaChapters}\n */","meta":{"range":[2493,2589],"filename":"Saratoga.js","lineno":92,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000132","name":"Saratoga#chapters","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Chapters related getters for this store
","type":{"names":["SaratogaChapters"]},"name":"chapters","longname":"Saratoga#chapters","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#chapters","$kind":"property","$docmaLink":"?api#Saratoga#chapters"},{"comment":"/**\n * Azur Lane's Equipment related getter methods\n * @type {SaratogaEquipments}\n */","meta":{"range":[2293,2393],"filename":"Saratoga.js","lineno":84,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000115","name":"Saratoga#equipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"Saratoga#equipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#equipments","$kind":"property","$docmaLink":"?api#Saratoga#equipments"},{"comment":"/**\n * If Saratoga is ready to operate\n * @type {Boolean}\n */","meta":{"range":[1910,1997],"filename":"Saratoga.js","lineno":67,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000080","name":"Saratoga#ready","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"If Saratoga is ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"Saratoga#ready","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ready","$kind":"property","$docmaLink":"?api#Saratoga#ready"},{"comment":"/**\n * Azur Lane's Ship related getter methods\n * @type {SaratogaShips}\n */","meta":{"range":[2095,2185],"filename":"Saratoga.js","lineno":75,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000098","name":"Saratoga#ships","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"Saratoga#ships","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ships","$kind":"property","$docmaLink":"?api#Saratoga#ships"},{"comment":"/**\n * Contains methods and props for managing cached data\n * @type {SaratogaStore}\n */","meta":{"range":[567,603],"filename":"Saratoga.js","lineno":19,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000053","name":"this.store","type":"NewExpression","value":"","paramnames":[]}},"description":"Contains methods and props for managing cached data
","type":{"names":["SaratogaStore"]},"name":"store","longname":"Saratoga#store","kind":"member","memberof":"Saratoga","scope":"instance","$longname":"Saratoga#store","$kind":"property","$docmaLink":"?api#Saratoga#store"},{"comment":"/**\n * Contains methods for updating Saratoga's local data & cache\n * @type {SaratogaUpdater}\n */","meta":{"range":[1770,1826],"filename":"Saratoga.js","lineno":59,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000070","name":"Saratoga#updater","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Contains methods for updating Saratoga's local data & cache
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"Saratoga#updater","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#updater","$kind":"property","$docmaLink":"?api#Saratoga#updater"},{"comment":"/**\n * Voiceline related getters for this store\n * @type {SaratogaVoicelines}\n */","meta":{"range":[2692,2792],"filename":"Saratoga.js","lineno":100,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000149","name":"Saratoga#voicelines","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Voiceline related getters for this store
","type":{"names":["SaratogaVoicelines"]},"name":"voicelines","longname":"Saratoga#voicelines","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#voicelines","$kind":"property","$docmaLink":"?api#Saratoga#voicelines"},{"comment":"/**\n * Emitted when there is a debug data\n * @event Saratoga#debug\n * @param {string} message Debug message\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":23,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a debug data
","kind":"event","name":"debug","params":[{"type":{"names":["string"]},"description":"Debug message
","name":"message"}],"memberof":"Saratoga","longname":"Saratoga#event:debug","scope":"instance","$longname":"Saratoga#event:debug","$kind":"event","$docmaLink":"?api#Saratoga#event:debug"},{"comment":"/**\n * Emitted when there is a pesky error\n * @event Saratoga#error\n * @param {Error} error The error encountered.\n * @memberof Saratoga\n * @example\n * Saratoga.on('error', console.error);\n */","meta":{"filename":"Saratoga.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a pesky error
","kind":"event","name":"error","params":[{"type":{"names":["Error"]},"description":"The error encountered.
","name":"error"}],"memberof":"Saratoga","examples":["Saratoga.on('error', console.error);"],"longname":"Saratoga#event:error","scope":"instance","$longname":"Saratoga#event:error","$kind":"event","$docmaLink":"?api#Saratoga#event:error"},{"comment":"/**\n * Emitted when Saratoga is ready\n * @event Saratoga#ready\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":49,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when Saratoga is ready
","kind":"event","name":"ready","memberof":"Saratoga","longname":"Saratoga#event:ready","scope":"instance","$longname":"Saratoga#event:ready","$kind":"event","$docmaLink":"?api#Saratoga#event:ready"},{"comment":"/**\n * Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true\n * @event Saratoga#updateAvailable\n * @param {Object} data What data needs updating\n * @memberof Saratoga\n * @example\n * Saratoga.on('updateAvailable', (data) => {\n * if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n * // handle update\n * }\n * })\n */","meta":{"filename":"Saratoga.js","lineno":37,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true
","kind":"event","name":"updateAvailable","params":[{"type":{"names":["Object"]},"description":"What data needs updating
","name":"data"}],"memberof":"Saratoga","examples":["Saratoga.on('updateAvailable', (data) => {\n if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n // handle update\n }\n})"],"longname":"Saratoga#event:updateAvailable","scope":"instance","$longname":"Saratoga#event:updateAvailable","$kind":"event","$docmaLink":"?api#Saratoga#event:updateAvailable"}],"$constructor":{"comment":"/**\n * @param {Object} options Object with a single parameter, which is notifyForNewUpdates, which is a boolean\n */","meta":{"range":[366,679],"filename":"Saratoga.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000040","name":"Saratoga","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"description":"Object with a single parameter, which is notifyForNewUpdates, which is a boolean
","name":"options"}],"name":"Saratoga","longname":"Saratoga","kind":"class","scope":"global","$longname":"Saratoga","$kind":"constructor","$docmaLink":"?api#Saratoga"}},{"comment":"/**\n * Equipment related getters for Saratoga\n * @class SaratogaEquipments\n */","meta":{"filename":"SaratogaEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments","$members":[{"comment":"/**\n * Custom filter for equipment data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[1976,2088],"filename":"SaratogaEquipments.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000340","name":"SaratogaEquipments#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for equipment data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaEquipments#filter","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#filter","$kind":"method","$docmaLink":"?api#SaratogaEquipments#filter"},{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[751,893],"filename":"SaratogaEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000251","name":"SaratogaEquipments#getAllByCategory","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByCategory","longname":"SaratogaEquipments#getAllByCategory","kind":"function","scope":"instance","$longname":"SaratogaEquipments#getAllByCategory","$kind":"method","$docmaLink":"?api#SaratogaEquipments#getAllByCategory"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1130,1284],"filename":"SaratogaEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000277","name":"SaratogaEquipments#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByNationality","longname":"SaratogaEquipments#getAllByNationality","kind":"function","scope":"instance","$longname":"SaratogaEquipments#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments#getAllByNationality"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2204,2311],"filename":"SaratogaEquipments.js","lineno":70,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000360","name":"SaratogaEquipments#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaEquipments#search","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#search","$kind":"method","$docmaLink":"?api#SaratogaEquipments#search"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1591,1835],"filename":"SaratogaEquipments.js","lineno":52,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000303","name":"SaratogaEquipments#searchByEquipmentName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"searchByEquipmentName","longname":"SaratogaEquipments#searchByEquipmentName","kind":"function","scope":"instance","$longname":"SaratogaEquipments#searchByEquipmentName","$kind":"method","$docmaLink":"?api#SaratogaEquipments#searchByEquipmentName"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[213,321],"filename":"SaratogaEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000198","name":"SaratogaEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaEquipments","longname":"SaratogaEquipments","kind":"class","scope":"global","$longname":"SaratogaEquipments","$kind":"constructor","$docmaLink":"?api#SaratogaEquipments"}},{"comment":"/**\n * Ship related getters for Saratoga\n * @class SaratogaShips\n */","meta":{"filename":"SaratogaShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips","$members":[{"comment":"/**\n * Custom filter for ship data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[3082,3194],"filename":"SaratogaShips.js","lineno":97,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000622","name":"SaratogaShips#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for ship data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaShips#filter","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#filter","$kind":"method","$docmaLink":"?api#SaratogaShips#filter"},{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[761,899],"filename":"SaratogaShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000444","name":"SaratogaShips#getAllByClass","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByClass","longname":"SaratogaShips#getAllByClass","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByClass","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByClass"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1559,1701],"filename":"SaratogaShips.js","lineno":51,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000496","name":"SaratogaShips#getAllByHullType","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByHullType","longname":"SaratogaShips#getAllByHullType","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByHullType","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByHullType"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1156,1310],"filename":"SaratogaShips.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000470","name":"SaratogaShips#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByNationality","longname":"SaratogaShips#getAllByNationality","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByNationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1937,2071],"filename":"SaratogaShips.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000522","name":"SaratogaShips#getAllByRarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByRarity","longname":"SaratogaShips#getAllByRarity","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByRarity","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByRarity"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2255,2434],"filename":"SaratogaShips.js","lineno":73,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000548","name":"SaratogaShips#getById","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"getById","longname":"SaratogaShips#getById","kind":"function","scope":"instance","$longname":"SaratogaShips#getById","$kind":"method","$docmaLink":"?api#SaratogaShips#getById"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[3310,3417],"filename":"SaratogaShips.js","lineno":105,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000642","name":"SaratogaShips#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaShips#search","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#search","$kind":"method","$docmaLink":"?api#SaratogaShips#search"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2721,2946],"filename":"SaratogaShips.js","lineno":87,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000585","name":"SaratogaShips#searchShipByName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"searchShipByName","longname":"SaratogaShips#searchShipByName","kind":"function","scope":"instance","$longname":"SaratogaShips#searchShipByName","$kind":"method","$docmaLink":"?api#SaratogaShips#searchShipByName"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[198,306],"filename":"SaratogaShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000391","name":"SaratogaShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaShips","longname":"SaratogaShips","kind":"class","scope":"global","$longname":"SaratogaShips","$kind":"constructor","$docmaLink":"?api#SaratogaShips"}},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class SaratogaStore\n */","meta":{"filename":"SaratogaStore.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"SaratogaStore","longname":"SaratogaStore","scope":"global","$longname":"SaratogaStore","$kind":"class","$docmaLink":"?api#SaratogaStore","$members":[{"comment":"/**\n * Equipment related getters for this store\n * @type {SaratogaEquipments}\n */","meta":{"range":[906,952],"filename":"SaratogaStore.js","lineno":30,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000723","name":"this.equipments","type":"NewExpression","value":"","paramnames":[]}},"description":"Equipment related getters for this store
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"SaratogaStore#equipments","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#equipments","$kind":"property","$docmaLink":"?api#SaratogaStore#equipments"},{"comment":"/**\n * If this store is already ready to operate\n * @type {Boolean}\n */","meta":{"range":[1732,1750],"filename":"SaratogaStore.js","lineno":55,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000739","name":"this.ready","type":"Literal","value":false,"paramnames":[]}},"description":"If this store is already ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"SaratogaStore#ready","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ready","$kind":"property","$docmaLink":"?api#SaratogaStore#ready"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[608,632],"filename":"SaratogaStore.js","lineno":20,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000709","name":"this.saratoga","type":"Identifier","value":"saratoga","paramnames":[]}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaStore#saratoga","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#saratoga","$kind":"property","$docmaLink":"?api#SaratogaStore#saratoga"},{"comment":"/**\n * Ship related getters for this store\n * @type {SaratogaShips}\n */","meta":{"range":[746,782],"filename":"SaratogaStore.js","lineno":25,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000715","name":"this.ships","type":"NewExpression","value":"","paramnames":[]}},"description":"Ship related getters for this store
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"SaratogaStore#ships","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ships","$kind":"property","$docmaLink":"?api#SaratogaStore#ships"},{"comment":"/**\n * Updater Class for the local data for this store\n * @type {SaratogaUpdater}\n */","meta":{"range":[1578,1618],"filename":"SaratogaStore.js","lineno":50,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000731","name":"this.updater","type":"NewExpression","value":"","paramnames":[]}},"description":"Updater Class for the local data for this store
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"SaratogaStore#updater","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#updater","$kind":"property","$docmaLink":"?api#SaratogaStore#updater"}],"$constructor":{"comment":"/**\n * @param {Saratoga} saratoga The saratoga class that generated this instance\n */","meta":{"range":[462,2583],"filename":"SaratogaStore.js","lineno":15,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000703","name":"SaratogaStore","type":"MethodDefinition","paramnames":["saratoga"]},"vars":{"":null}},"params":[{"type":{"names":["Saratoga"]},"description":"The saratoga class that generated this instance
","name":"saratoga"}],"name":"SaratogaStore","longname":"SaratogaStore","kind":"class","scope":"global","$longname":"SaratogaStore","$kind":"constructor","$docmaLink":"?api#SaratogaStore"}},{"comment":"/**\n * Manages the local data & cache updates\n * @class SaratogaUpdater\n */","meta":{"filename":"SaratogaUpdater.js","lineno":5,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{}},"description":"Manages the local data & cache updates
","kind":"class","name":"SaratogaUpdater","longname":"SaratogaUpdater","scope":"global","$longname":"SaratogaUpdater","$kind":"class","$docmaLink":"?api#SaratogaUpdater","$members":[{"comment":"/**\n * Checks if there is new updates for ship or equipment data\n * @memberof SaratogaUpdater\n * @returns {Promise}\n * @example\n * const api = new Saratoga();\n * api.updater.checkForUpdate()\n * .then((response) => {\n * if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n * })\n */","meta":{"range":[3518,3930],"filename":"SaratogaUpdater.js","lineno":90,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001757","name":"SaratogaUpdater#checkForUpdate","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Checks if there is new updates for ship or equipment data
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"examples":["const api = new Saratoga();\napi.updater.checkForUpdate()\n .then((response) => {\n if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n })"],"name":"checkForUpdate","longname":"SaratogaUpdater#checkForUpdate","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#checkForUpdate","$kind":"method","$docmaLink":"?api#SaratogaUpdater#checkForUpdate"},{"comment":"/**\n * Updates the Cached Data, loaded from the local files of Saratoga\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[5315,5490],"filename":"SaratogaUpdater.js","lineno":135,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001877","name":"SaratogaUpdater#updateCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Cached Data, loaded from the local files of Saratoga
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateCache","longname":"SaratogaUpdater#updateCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateCache"},{"comment":"/**\n * Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[3011,3117],"filename":"SaratogaUpdater.js","lineno":74,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001741","name":"SaratogaUpdater#updateDataAndCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateDataAndCache","longname":"SaratogaUpdater#updateDataAndCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateDataAndCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateDataAndCache"},{"comment":"/**\n * Updates the Local Files of Saratoga if there is an update\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[4082,5156],"filename":"SaratogaUpdater.js","lineno":104,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001777","name":"SaratogaUpdater#updateLocalData","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files of Saratoga if there is an update
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateLocalData","longname":"SaratogaUpdater#updateLocalData","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateLocalData","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateLocalData"},{"comment":"/**\n * The cron update checker which is responsible for Saratoga#updateAvailable event\n * @type {?Timeout}\n */","meta":{"range":[830,852],"filename":"SaratogaUpdater.js","lineno":28,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001474","name":"this.cronUpdate","type":"Literal","value":null,"paramnames":[]}},"description":"The cron update checker which is responsible for Saratoga#updateAvailable event
","type":{"names":["Timeout"]},"nullable":true,"name":"cronUpdate","longname":"SaratogaUpdater#cronUpdate","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#cronUpdate","$kind":"property","$docmaLink":"?api#SaratogaUpdater#cronUpdate"},{"comment":"/**\n * If the data directory of this updater is ready to operate\n * @type {Boolean}\n */","meta":{"range":[652,677],"filename":"SaratogaUpdater.js","lineno":23,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001468","name":"this.dataDirReady","type":"Literal","value":false,"paramnames":[]}},"description":"If the data directory of this updater is ready to operate
","type":{"names":["Boolean"]},"name":"dataDirReady","longname":"SaratogaUpdater#dataDirReady","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#dataDirReady","$kind":"property","$docmaLink":"?api#SaratogaUpdater#dataDirReady"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[963,1021],"filename":"SaratogaUpdater.js","lineno":35,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001479","name":"SaratogaUpdater#saratoga","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaUpdater#saratoga","kind":"member","memberof":"SaratogaUpdater","scope":"instance","params":[],"$longname":"SaratogaUpdater#saratoga","$kind":"property","$docmaLink":"?api#SaratogaUpdater#saratoga"},{"comment":"/**\n * The updater instance that generated this instance\n * @type {SaratogaStore}\n */","meta":{"range":[504,522],"filename":"SaratogaUpdater.js","lineno":18,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001462","name":"this.store","type":"Identifier","value":"store","paramnames":[]}},"description":"The updater instance that generated this instance
","type":{"names":["SaratogaStore"]},"name":"store","longname":"SaratogaUpdater#store","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#store","$kind":"property","$docmaLink":"?api#SaratogaUpdater#store"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[357,859],"filename":"SaratogaUpdater.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001456","name":"SaratogaUpdater","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaUpdater","longname":"SaratogaUpdater","kind":"class","scope":"global","$longname":"SaratogaUpdater","$kind":"constructor","$docmaLink":"?api#SaratogaUpdater"}},{"comment":"","meta":{"range":[122,250],"filename":"SaratogaValidator.js","lineno":5,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002268","name":"SaratogaValidator","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"SaratogaValidator","longname":"SaratogaValidator","kind":"class","scope":"global","params":[],"$longname":"SaratogaValidator","$kind":"constructor","$docmaLink":"?api#SaratogaValidator"},{"comment":"/**\n * Barrage Data\n * @external Barrage\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":34,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Barrage Data
","kind":"external","name":"Barrage","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Barrage","scope":"global","$longname":"external:Barrage","$kind":"external","$docmaLink":"?api#external:Barrage"},{"comment":"/**\n * Chapter Data\n * @external Chapter\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":24,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Chapter Data
","kind":"external","name":"Chapter","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Chapter","scope":"global","$longname":"external:Chapter","$kind":"external","$docmaLink":"?api#external:Chapter"},{"comment":"/**\n * Equipment Data\n * @external Equipment\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":19,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Equipment Data
","kind":"external","name":"Equipment","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Equipment","scope":"global","$longname":"external:Equipment","$kind":"external","$docmaLink":"?api#external:Equipment"},{"comment":"/**\n * Node.js Event Emitter\n * @external EventEmitter\n * @see {@link https://nodejs.org/api/events.html}\n */","meta":{"filename":"index.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Event Emitter
","kind":"external","name":"EventEmitter","see":["{@link https://nodejs.org/api/events.html}"],"longname":"external:EventEmitter","scope":"global","$longname":"external:EventEmitter","$kind":"external","$docmaLink":"?api#external:EventEmitter"},{"comment":"/**\n * Ship Data\n * @external Ship\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}\n */","meta":{"filename":"index.js","lineno":13,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Ship Data
","kind":"external","name":"Ship","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}"],"longname":"external:Ship","scope":"global","$longname":"external:Ship","$kind":"external","$docmaLink":"?api#external:Ship"},{"comment":"/**\n * Node.js Timeout\n * @external Timeout\n * @see {@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}\n */","meta":{"filename":"index.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Timeout
","kind":"external","name":"Timeout","see":["{@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}"],"longname":"external:Timeout","scope":"global","$longname":"external:Timeout","$kind":"external","$docmaLink":"?api#external:Timeout"},{"comment":"/**\n * Voiceline Data\n * @external Voiceline\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":29,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Voiceline Data
","kind":"external","name":"Voiceline","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Voiceline","scope":"global","$longname":"external:Voiceline","$kind":"external","$docmaLink":"?api#external:Voiceline"}],"symbols":["external:Barrage","external:Chapter","external:Equipment","external:EventEmitter","external:Ship","external:Timeout","external:Voiceline","Saratoga","Saratoga#barrages","Saratoga#chapters","Saratoga#equipments","Saratoga#event:debug","Saratoga#event:error","Saratoga#event:ready","Saratoga#event:updateAvailable","Saratoga#ready","Saratoga#ships","Saratoga#store","Saratoga#updater","Saratoga#voicelines","SaratogaEquipments","SaratogaEquipments#filter","SaratogaEquipments#getAllByCategory","SaratogaEquipments#getAllByNationality","SaratogaEquipments#search","SaratogaEquipments#searchByEquipmentName","SaratogaShips","SaratogaShips#filter","SaratogaShips#getAllByClass","SaratogaShips#getAllByHullType","SaratogaShips#getAllByNationality","SaratogaShips#getAllByRarity","SaratogaShips#getById","SaratogaShips#search","SaratogaShips#searchShipByName","SaratogaStore","SaratogaStore#equipments","SaratogaStore#ready","SaratogaStore#saratoga","SaratogaStore#ships","SaratogaStore#updater","SaratogaUpdater","SaratogaUpdater#checkForUpdate","SaratogaUpdater#cronUpdate","SaratogaUpdater#dataDirReady","SaratogaUpdater#saratoga","SaratogaUpdater#store","SaratogaUpdater#updateCache","SaratogaUpdater#updateDataAndCache","SaratogaUpdater#updateLocalData","SaratogaValidator"]}},"app":{"title":"Saratoga | An open source Azur Lane local library","routing":{"method":"query","caseSensitive":true},"entrance":"content:readme","base":"/Saratoga/","meta":null,"server":"static","favicon":""},"template":{"name":"docma-template-zebra","description":"Zebra - Default template for Docma. https://github.com/onury/docma","version":"2.3.1","supportedDocmaVersion":">=2.0.0","author":"Onur Yıldırım","license":"MIT","mainHTML":"index.html","options":{"title":{"label":"Saratoga","href":"."},"sidebar":{"enabled":true,"outline":"tree","collapsed":false,"toolbar":true,"itemsFolded":false,"itemsOverflow":"crop","badges":true,"search":true,"animations":true},"symbols":{"autoLink":true,"params":"list","enums":"list","props":"list","meta":false},"navbar":{"enabled":true,"dark":false,"animations":true,"menu":[{"label":"Readme","href":"."},{"label":"Documentation","href":"?api"},{"label":"GitHub","href":"https://github.com/AzurAPI/Saratoga"}],"fixed":true},"logo":null,"contentView":{"bookmarks":false,"faVersion":"5.5.0","faLibs":"all"}}},"partials":{"api":"docma-api","content":"docma-content","notFound":"docma-404"},"elementID":"docma-main","contentElementID":"docma-content","defaultApiName":"_def_","logsEnabled":false}));
!function(){"use strict";var c="path"===docma.app.routing.method;function o(a){return(a.params[1]||"").replace(/\/$/,"")}function a(a,e){a=o(a)||docma._.defaultApiName,a=docma.createRoute(a,DocmaWeb.Route.Type.API);if(!a||!a.exists())return e();a.apply()}docma.app.base&&page.base(docma.app.base),page.redirect("(/)?"+docma.template.main,""),c&&(page("(/)?api/(.+)",a),page("(/)?api(/)?",a),page("(/)?(.*)",function(a,e){a=o(a),a=docma.createRoute(a,DocmaWeb.Route.Type.CONTENT);if(!a||!a.exists())return e();a.apply()})),page("(/)?",function(t,n){!function(){if(c){var a=sessionStorage.getItem("redirectPath")||null;if(a)return sessionStorage.removeItem("redirectPath"),docma.info("Redirecting to:",a),page.redirect(a),1}}()&&setTimeout(function(){var a,e,e=(e=(e=t.querystring)||window.location.search,(e=/^[?&]/.test(e)?e.slice(1):e)||null);if(c){if(e)return n();a=docma._.appEntranceRI}else docma.log("Query-string:",e),a=e?docma.createRouteFromQuery(e):docma._.appEntranceRI;if(!a||!a.exists())return n();function o(){docma._trigger(DocmaWeb.Event.Navigate,[a])}a.isCurrent()?o():a.apply(function(a){200===a&&o()})},100)}),page("*",function(a){docma.warn("Unknown Route:",a.path),docma.log("context:",a),docma.createRoute(null).apply()}),docma.info("Docma SPA Configuration:"),docma.info("App Title: ",docma.app.title),docma.info("Routing Method: ",docma.app.routing.method),docma.info("App Server: ",docma.app.server),docma.info("Base Path: ",docma.app.base),docma.info("Entrance Route ID: ",docma.app.entrance),window.onload=function(){docma._.initialLoad=!0,docma._.appEntranceRI=docma.createRouteFromID(docma.app.entrance),page.start({click:!0,popstate:!0,dispatch:!0,hashbang:!1,decodeURLComponents:!0}),docma.info("Docma SPA loaded!")}}();
\ No newline at end of file
diff --git a/src/store/SaratogaEquipments.js b/src/store/SaratogaEquipments.js
index 72a1c2c..d52bbc9 100644
--- a/src/store/SaratogaEquipments.js
+++ b/src/store/SaratogaEquipments.js
@@ -55,5 +55,21 @@ class SaratogaEquipments {
if (!possibleEquipments.length) return null;
return possibleEquipments;
}
+ /**
+ * Custom filter for equipment data
+ * @param {requestCallback} callback the callback that handles the response
+ */
+ filter(callback) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(callback);
+ }
+ /**
+ * Custom search for data in Fuse instance
+ * @param {any} options Fuse search options
+ */
+ search(options) {
+ if (!this.rawCache) return null;
+ return this.cache.search(options);
+ }
}
module.exports = SaratogaEquipments;
diff --git a/src/store/SaratogaShips.js b/src/store/SaratogaShips.js
index f0f5fd7..827432f 100644
--- a/src/store/SaratogaShips.js
+++ b/src/store/SaratogaShips.js
@@ -90,5 +90,21 @@ class SaratogaShips {
if (!possibleShips.length) return null;
return possibleShips;
}
+ /**
+ * Custom filter for ship data
+ * @param {requestCallback} callback the callback that handles the response
+ */
+ filter(callback) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(callback);
+ }
+ /**
+ * Custom search for data in Fuse instance
+ * @param {any} options Fuse search options
+ */
+ search(options) {
+ if (!this.rawCache) return null;
+ return this.cache.search(options);
+ }
}
module.exports = SaratogaShips;
From 9cb18e98a549c1327fdc057eeac71ad1a64bb81e Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Mon, 25 Jan 2021 18:04:00 +0800
Subject: [PATCH 04/14] feat: change version number
Changed:
- version number (i forgot lmao)
---
package.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/package.json b/package.json
index 1d32ecf..b4122f3 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "saratoga",
- "version": "1.1.0-beta",
+ "version": "1.1.1-beta",
"description": "Open Source Azur Lane Local Database",
"main": "index.js",
"scripts": {
From 57a7f59944cfe3f9f4bd5f8288df7c5713754253 Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Mon, 25 Jan 2021 18:09:59 +0800
Subject: [PATCH 05/14] feat: fix checking file exists
Changed:
- add checks for file exists before accessing file
---
src/updater/SaratogaUpdater.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/updater/SaratogaUpdater.js b/src/updater/SaratogaUpdater.js
index 59e9bdb..b2f90d8 100644
--- a/src/updater/SaratogaUpdater.js
+++ b/src/updater/SaratogaUpdater.js
@@ -55,7 +55,7 @@ class SaratogaUpdater {
startUpCheck() {
if (this.dataDirReady) return;
if (!SaratogaUtil.existSync(SaratogaUtil.folderDataPath())) SaratogaUtil.createDirectorySync(SaratogaUtil.folderDataPath());
- for (const prop of ['versionFilePath', 'shipFilePath', 'equipFilePath']) {
+ for (const prop of ['versionFilePath', 'shipFilePath', 'equipFilePath', 'chapterFilePath', 'voicelineFilePath', 'barrageFilePath']) {
if (!SaratogaUtil.existSync( SaratogaUtil[prop]() )) SaratogaUtil.writeFileSync(SaratogaUtil[prop](), JSON.stringify({}));
}
this.store.loadShipsCache(JSON.parse(SaratogaUtil.readFileSync(SaratogaUtil.shipFilePath())));
From 3329434d675a0600f1cab7992d14a6b5d8500198 Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Mon, 25 Jan 2021 18:13:56 +0800
Subject: [PATCH 06/14] feat: fix updater on first start
Changed:
- how checking for updates works
---
src/store/SaratogaStore.js | 6 +++---
src/updater/SaratogaValidator.js | 3 ++-
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/src/store/SaratogaStore.js b/src/store/SaratogaStore.js
index 270a70e..bd140cd 100644
--- a/src/store/SaratogaStore.js
+++ b/src/store/SaratogaStore.js
@@ -75,9 +75,9 @@ class SaratogaStore {
async updateOnFirstStartUp() {
if (this.ready) return;
- let update = await this.updater.checkForUpdate();
- update = update.shipUpdateAvailable || update.equipmentUpdateAvailable;
- if (update && (!this._shipCache || !this._equipCache)) await this.updater.updateDataAndCache();
+ const update = await this.updater.checkForUpdate();
+ //update = update.shipUpdateAvailable || update.equipmentUpdateAvailable;
+ if (update || (!this._shipCache || !this._equipCache)) await this.updater.updateDataAndCache();
this.saratoga.emit('debug', `Loaded ${this._shipCache.list.length} stored ships from ${SaratogaUtil.shipFilePath()}`);
this.saratoga.emit('debug', `Loaded ${this._equipCache.list.length} stored equipments from ${SaratogaUtil.equipFilePath()}`);
}
diff --git a/src/updater/SaratogaValidator.js b/src/updater/SaratogaValidator.js
index f898211..a107652 100644
--- a/src/updater/SaratogaValidator.js
+++ b/src/updater/SaratogaValidator.js
@@ -49,7 +49,8 @@ class SaratogaValidator {
needsUpdate() {
//return !this.local[this.type] || this.local[this.type]['version-number'] !== this.remote[this.type]['version-number'] || this.local[this.type]['last-data-refresh-date'] !== this.remote[this.type]['last-data-refresh-date'];
- return this.local === this.remote ? true : false;
+ if (this.local === this.remote) return true;
+ return false;
}
updateVersionFile() {
From 5faebd4360e75e0779464d4aa1d855b966639415 Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Mon, 25 Jan 2021 18:35:10 +0800
Subject: [PATCH 07/14] feat: add jest tests
changed:
- add jest test
- add github actions file
---
.github/workflows/action.yml | 25 +++++
jest.config.js | 193 +++++++++++++++++++++++++++++++++++
package.json | 6 +-
tests/jest.test.js | 15 +++
4 files changed, 237 insertions(+), 2 deletions(-)
create mode 100644 .github/workflows/action.yml
create mode 100644 jest.config.js
create mode 100644 tests/jest.test.js
diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml
new file mode 100644
index 0000000..b00b0ca
--- /dev/null
+++ b/.github/workflows/action.yml
@@ -0,0 +1,25 @@
+name: Test on Push
+
+on: [push]
+
+jobs:
+ jest:
+ name: Jest Tests
+ runs-on: ubuntu-latest
+
+ strategy:
+ matrix:
+ node-version: [12.x]
+
+ steps:
+ - uses: actions/checkout@v1
+ - name: Use Node.js ${{ matrix.node-version }}
+ uses: actions/setup-node@v1
+ with:
+ node-version: ${{ matrix.node-version }}
+ - name: Test
+ run: |
+ npm i --also=dev
+ npm run jest
+ env:
+ CI: true
\ No newline at end of file
diff --git a/jest.config.js b/jest.config.js
new file mode 100644
index 0000000..e668f4a
--- /dev/null
+++ b/jest.config.js
@@ -0,0 +1,193 @@
+/*
+ * For a detailed explanation regarding each configuration property, visit:
+ * https://jestjs.io/docs/en/configuration.html
+ */
+
+module.exports = {
+ // All imported modules in your tests should be mocked automatically
+ // automock: false,
+
+ // Stop running tests after `n` failures
+ // bail: 0,
+
+ // The directory where Jest should store its cached dependency information
+ // cacheDirectory: "/private/var/folders/h6/96fr20fx4711gw0qkhyc0p6r0000gn/T/jest_dx",
+
+ // Automatically clear mock calls and instances between every test
+ clearMocks: true,
+
+ // Indicates whether the coverage information should be collected while executing the test
+ // collectCoverage: false,
+
+ // An array of glob patterns indicating a set of files for which coverage information should be collected
+ // collectCoverageFrom: undefined,
+
+ // The directory where Jest should output its coverage files
+ coverageDirectory: 'coverage',
+
+ // An array of regexp pattern strings used to skip coverage collection
+ // coveragePathIgnorePatterns: [
+ // "/node_modules/"
+ // ],
+
+ // Indicates which provider should be used to instrument code for coverage
+ coverageProvider: 'v8',
+
+ // A list of reporter names that Jest uses when writing coverage reports
+ // coverageReporters: [
+ // "json",
+ // "text",
+ // "lcov",
+ // "clover"
+ // ],
+
+ // An object that configures minimum threshold enforcement for coverage results
+ // coverageThreshold: undefined,
+
+ // A path to a custom dependency extractor
+ // dependencyExtractor: undefined,
+
+ // Make calling deprecated APIs throw helpful error messages
+ // errorOnDeprecated: false,
+
+ // Force coverage collection from ignored files using an array of glob patterns
+ // forceCoverageMatch: [],
+
+ // A path to a module which exports an async function that is triggered once before all test suites
+ // globalSetup: undefined,
+
+ // A path to a module which exports an async function that is triggered once after all test suites
+ // globalTeardown: undefined,
+
+ // A set of global variables that need to be available in all test environments
+ // globals: {},
+
+ // The maximum amount of workers used to run your tests. Can be specified as % or a number. E.g. maxWorkers: 10% will use 10% of your CPU amount + 1 as the maximum worker number. maxWorkers: 2 will use a maximum of 2 workers.
+ // maxWorkers: "50%",
+
+ // An array of directory names to be searched recursively up from the requiring module's location
+ // moduleDirectories: [
+ // "node_modules"
+ // ],
+
+ // An array of file extensions your modules use
+ // moduleFileExtensions: [
+ // "js",
+ // "json",
+ // "jsx",
+ // "ts",
+ // "tsx",
+ // "node"
+ // ],
+
+ // A map from regular expressions to module names or to arrays of module names that allow to stub out resources with a single module
+ // moduleNameMapper: {},
+
+ // An array of regexp pattern strings, matched against all module paths before considered 'visible' to the module loader
+ // modulePathIgnorePatterns: [],
+
+ // Activates notifications for test results
+ // notify: false,
+
+ // An enum that specifies notification mode. Requires { notify: true }
+ // notifyMode: "failure-change",
+
+ // A preset that is used as a base for Jest's configuration
+ // preset: undefined,
+
+ // Run tests from one or more projects
+ // projects: undefined,
+
+ // Use this configuration option to add custom reporters to Jest
+ // reporters: undefined,
+
+ // Automatically reset mock state between every test
+ // resetMocks: false,
+
+ // Reset the module registry before running each individual test
+ // resetModules: false,
+
+ // A path to a custom resolver
+ // resolver: undefined,
+
+ // Automatically restore mock state between every test
+ // restoreMocks: false,
+
+ // The root directory that Jest should scan for tests and modules within
+ // rootDir: undefined,
+
+ // A list of paths to directories that Jest should use to search for files in
+ // roots: [
+ // ""
+ // ],
+
+ // Allows you to use a custom runner instead of Jest's default test runner
+ // runner: "jest-runner",
+
+ // The paths to modules that run some code to configure or set up the testing environment before each test
+ // setupFiles: [],
+
+ // A list of paths to modules that run some code to configure or set up the testing framework before each test
+ // setupFilesAfterEnv: [],
+
+ // The number of seconds after which a test is considered as slow and reported as such in the results.
+ // slowTestThreshold: 5,
+
+ // A list of paths to snapshot serializer modules Jest should use for snapshot testing
+ // snapshotSerializers: [],
+
+ // The test environment that will be used for testing
+ testEnvironment: 'node',
+
+ // Options that will be passed to the testEnvironment
+ // testEnvironmentOptions: {},
+
+ // Adds a location field to test results
+ // testLocationInResults: false,
+
+ // The glob patterns Jest uses to detect test files
+ testMatch: [
+ '/tests/*.test.js'
+ ],
+
+ // An array of regexp pattern strings that are matched against all test paths, matched tests are skipped
+ // testPathIgnorePatterns: [
+ // "/node_modules/"
+ // ],
+
+ // The regexp pattern or array of patterns that Jest uses to detect test files
+ // testRegex: [],
+
+ // This option allows the use of a custom results processor
+ // testResultsProcessor: undefined,
+
+ // This option allows use of a custom test runner
+ // testRunner: "jasmine2",
+
+ // This option sets the URL for the jsdom environment. It is reflected in properties such as location.href
+ // testURL: "http://localhost",
+
+ // Setting this value to "fake" allows the use of fake timers for functions such as "setTimeout"
+ // timers: "real",
+
+ // A map from regular expressions to paths to transformers
+ // transform: undefined,
+
+ // An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation
+ // transformIgnorePatterns: [
+ // "/node_modules/",
+ // "\\.pnp\\.[^\\/]+$"
+ // ],
+
+ // An array of regexp pattern strings that are matched against all modules before the module loader will automatically return a mock for them
+ // unmockedModulePathPatterns: undefined,
+
+ // Indicates whether each individual test should be reported during the run
+ // verbose: undefined,
+
+ // An array of regexp patterns that are matched against all source file paths before re-running tests in watch mode
+ // watchPathIgnorePatterns: [],
+
+ // Whether to use watchman for file crawling
+ // watchman: true,
+};
diff --git a/package.json b/package.json
index b4122f3..810f4dc 100644
--- a/package.json
+++ b/package.json
@@ -4,7 +4,8 @@
"description": "Open Source Azur Lane Local Database",
"main": "index.js",
"scripts": {
- "test": "node ./tests/Client.js"
+ "test": "node ./tests/Client.js",
+ "jest": "jest"
},
"keywords": [
"api",
@@ -26,6 +27,7 @@
},
"devDependencies": {
"docma": "^3.2.2",
- "eslint": "^6.8.0"
+ "eslint": "^6.8.0",
+ "jest": "^26.6.3"
}
}
diff --git a/tests/jest.test.js b/tests/jest.test.js
new file mode 100644
index 0000000..f0746da
--- /dev/null
+++ b/tests/jest.test.js
@@ -0,0 +1,15 @@
+const { Saratoga } = require('../index');
+
+const saratoga = new Saratoga();
+
+test('Search Ship By Name', async () => {
+ saratoga.on('ready', () => {
+ expect(saratoga.ships.searchShipByName('saratoga')[0].item.id).toBe('074');
+ });
+});
+
+test('Search Equipment By Name', async () => {
+ saratoga.on('ready', () => {
+ expect(saratoga.equipments.searchByEquipmentName('130mm 1932')[0].item.wikiUrl).toBe('https://azurlane.koumakan.jp/Single_130mm_(B13_Pattern_1936)');
+ });
+});
From db88621365e46d24daff0df146ee4e8f3e4a2fe8 Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Mon, 25 Jan 2021 21:12:31 +0800
Subject: [PATCH 08/14] Update SaratogaValidator.js
---
src/updater/SaratogaValidator.js | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/updater/SaratogaValidator.js b/src/updater/SaratogaValidator.js
index a107652..c676690 100644
--- a/src/updater/SaratogaValidator.js
+++ b/src/updater/SaratogaValidator.js
@@ -49,8 +49,7 @@ class SaratogaValidator {
needsUpdate() {
//return !this.local[this.type] || this.local[this.type]['version-number'] !== this.remote[this.type]['version-number'] || this.local[this.type]['last-data-refresh-date'] !== this.remote[this.type]['last-data-refresh-date'];
- if (this.local === this.remote) return true;
- return false;
+ return this.local === this.remote;
}
updateVersionFile() {
From 5c0e33e7cde81545c82205092a4277bf506245a1 Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Thu, 28 Jan 2021 23:55:54 +0800
Subject: [PATCH 09/14] feat: comply v2 specs
Changes:
- Comply to: https://docs.google.com/document/d/16rmt309dP2iOlG0tJL2XHgdMGrieUbgmWv-aFVJKmhU/edit
- Fix jest causing errors in eslint
- Restructure jest tests
---
.eslintrc.yml | 1 +
package.json | 1 +
src/store/SaratogaEquipments.js | 34 +++++-
src/store/SaratogaShips.js | 181 ++++++++++++++++++++++++--------
src/store/SaratogaStore.js | 4 +
tests/equip.test.js | 9 ++
tests/jest.test.js | 15 ---
tests/ship.test.js | 11 ++
8 files changed, 194 insertions(+), 62 deletions(-)
create mode 100644 tests/equip.test.js
delete mode 100644 tests/jest.test.js
create mode 100644 tests/ship.test.js
diff --git a/.eslintrc.yml b/.eslintrc.yml
index 63e0f34..958ac60 100644
--- a/.eslintrc.yml
+++ b/.eslintrc.yml
@@ -2,6 +2,7 @@ env:
commonjs: true
es6: true
node: true
+ jest/globals: true
extends: 'eslint:recommended'
globals:
Atomics: readonly
diff --git a/package.json b/package.json
index 810f4dc..f91e89c 100644
--- a/package.json
+++ b/package.json
@@ -28,6 +28,7 @@
"devDependencies": {
"docma": "^3.2.2",
"eslint": "^6.8.0",
+ "eslint-plugin-jest": "^24.1.3",
"jest": "^26.6.3"
}
}
diff --git a/src/store/SaratogaEquipments.js b/src/store/SaratogaEquipments.js
index d52bbc9..ca1fb3d 100644
--- a/src/store/SaratogaEquipments.js
+++ b/src/store/SaratogaEquipments.js
@@ -26,7 +26,7 @@ class SaratogaEquipments {
* @memberof SaratogaEquipments
* @returns {Array | null}
*/
- getAllByCategory(category) {
+ category(category) {
if (!this.rawCache) return null;
return this.rawCache.filter(d => d.category === category);
}
@@ -37,7 +37,7 @@ class SaratogaEquipments {
* @memberof SaratogaEquipments
* @returns {Array | null}
*/
- getAllByNationality(nationality) {
+ nationality(nationality) {
if (!this.rawCache) return null;
return this.rawCache.filter(d => d.nationality === nationality);
}
@@ -45,16 +45,42 @@ class SaratogaEquipments {
/**
* Searches for a specific equipment. (EN, CN, JP, KR names are supported)
* @param {string} name name of the equipment you want to search for
+ * @param {string} language optional language to search by
* @param {number} [limit=10] limit of the search results
* @memberof SaratogaEquipments
* @returns {Equipment | null}
*/
- searchByEquipmentName(name, limit = 10) {
+ name(name, language, limit = 10) {
+ if (language) {
+ if (!this.rawCache) return null;
+ let lang;
+ switch(language) {
+ case 'en':
+ lang = this.cache.names.en;
+ break;
+ case 'cn':
+ lang = this.cache.names.cn;
+ break;
+ case 'jp':
+ lang = this.cache.names.jp;
+ break;
+ }
+ return lang.find(d => d.includes(name));
+ }
if (!this.cache) return null;
const possibleEquipments = this.cache.search(name, { limit });
if (!possibleEquipments.length) return null;
return possibleEquipments;
}
+
+ /**
+ * Get an unfiltered equipment list
+ */
+ all() {
+ if (!this.rawCache) return null;
+ return this.rawCache;
+ }
+
/**
* Custom filter for equipment data
* @param {requestCallback} callback the callback that handles the response
@@ -72,4 +98,4 @@ class SaratogaEquipments {
return this.cache.search(options);
}
}
-module.exports = SaratogaEquipments;
+module.exports = SaratogaEquipments;
\ No newline at end of file
diff --git a/src/store/SaratogaShips.js b/src/store/SaratogaShips.js
index 827432f..4bc6e30 100644
--- a/src/store/SaratogaShips.js
+++ b/src/store/SaratogaShips.js
@@ -21,48 +21,25 @@ class SaratogaShips {
}
/**
- * Lists all the ships that matches a specific shjp class
- * @param {string} shipClass class of the ship you want to search for (Case Sensitive)
+ * Search from all ships
+ * @param {number | string} id
* @memberof SaratogaShips
- * @returns {Array | null}
- */
- getAllByClass(shipClass) {
- if (!this.rawCache) return null;
- return this.rawCache.filter(d => d.class === shipClass);
- }
-
- /**
- * Lists all the ships that matches a specific ship nationality
- * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)
- * @memberof SaratogaShips
- * @returns {Array | null}
- */
- getAllByNationality(nationality) {
- if (!this.rawCache) return null;
- return this.rawCache.filter(d => d.nationality === nationality);
- }
-
- /**
- * Lists all the ships that matches a specific ship hull type
- * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)
- * @memberof SaratogaShips
- * @returns {Array | null}
- */
- getAllByHullType(hullType) {
- if (!this.rawCache) return null;
- return this.rawCache.filter(d => d.hullType === hullType);
- }
-
- /**
- * Lists all the ship that matches a specific rarity
- * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)
- * @memberof SaratogaShips
- * @returns {Array | null}
+ * @returns {Ship | null}
*/
- getAllByRarity(rarity) {
- if (!this.rawCache) return null;
- return this.rawCache.filter(d => d.rarity === rarity);
- }
+ get(id) {
+ const data = this.rawCache;
+ if (!data) return null;
+ const ships = data.filter(ship => {
+ if (ship.id === id) return true;
+ for (const key of Object.keys(ship.names)) {
+ if (ship.names[key].includes(id)) return true;
+ }
+ return false;
+ });
+
+ if (!ships.length) throw new UnknownShipError(id);
+ return ships[0];
+ }
/**
* Fetches a specific ship via its id
@@ -70,7 +47,7 @@ class SaratogaShips {
* @memberof SaratogaShips
* @returns {Ship | null}
*/
- getById(id) {
+ id(id) {
if (!this.rawCache) return null;
const ship = this.rawCache.find(d => d.id === id);
if (!ship.length) return null;
@@ -80,11 +57,31 @@ class SaratogaShips {
/**
* Searches for a specific ship. (EN, CN, JP, KR names are supported)
* @param {string} name name of the ship you want to search for
+ * @param {string} language optional language to search by
* @param {number} [limit=10] limit of the search results
* @memberof SaratogaShips
* @returns {Ship | null}
*/
- searchShipByName(name, limit = 10) {
+ name(name, language, limit = 10) {
+ if (language) {
+ if (!this.rawCache) return null;
+ let lang;
+ switch(language) {
+ case 'en':
+ lang = this.cache.names.en;
+ break;
+ case 'cn':
+ lang = this.cache.names.cn;
+ break;
+ case 'jp':
+ lang = this.cache.names.jp;
+ break;
+ case 'kr':
+ lang = this.cache.names.kr;
+ break;
+ }
+ return lang.find(d => d.includes(name));
+ }
if (!this.cache) return null;
const possibleShips = this.cache.search(name, { limit });
if (!possibleShips.length) return null;
@@ -107,4 +104,102 @@ class SaratogaShips {
return this.cache.search(options);
}
}
-module.exports = SaratogaShips;
+
+class ShipExtAll extends SaratogaShips {
+ constructor() {
+ super();
+ }
+
+ /**
+ * Get an unfiltered ship list
+ */
+ get() {
+ if (!this.rawCache) return null;
+ return this.rawCache;
+ }
+
+ /**
+ * Filter ships via language
+ * @param {string} language
+ */
+ name(language) {
+ if (!this.rawCache) return null;
+ let lang;
+ switch(language) {
+ case 'en':
+ lang = this.rawCache.names.en;
+ break;
+ case 'cn':
+ lang = this.rawCache.names.cn;
+ break;
+ case 'jp':
+ lang = this.rawCache.names.jp;
+ break;
+ case 'kr':
+ lang = this.rawCache.names.kr;
+ break;
+ case 'code':
+ lang = this.rawCache.names.code;
+ }
+ return lang;
+ }
+
+ /**
+ * Filter ships via id
+ */
+ id() {
+ if (!this.rawCache) return null;
+ return this.rawCache.id;
+ }
+}
+
+class ShipExtFilter extends SaratogaShips {
+ constructor() {
+ super();
+ }
+ /**
+ * Lists all the ships that matches a specific shjp class
+ * @param {string} shipClass class of the ship you want to search for (Case Sensitive)
+ * @memberof SaratogaShips
+ * @returns {Array | null}
+ */
+ class(shipClass) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(d => d.class === shipClass);
+ }
+
+ /**
+ * Lists all the ships that matches a specific ship nationality
+ * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)
+ * @memberof SaratogaShips
+ * @returns {Array | null}
+ */
+ nationality(nationality) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(d => d.nationality === nationality);
+ }
+
+ /**
+ * Lists all the ships that matches a specific ship hull type
+ * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)
+ * @memberof SaratogaShips
+ * @returns {Array | null}
+ */
+ type(hullType) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(d => d.hullType === hullType);
+ }
+
+ /**
+ * Lists all the ship that matches a specific rarity
+ * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)
+ * @memberof SaratogaShips
+ * @returns {Array | null}
+ */
+ rarity(rarity) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(d => d.rarity === rarity);
+ }
+}
+
+module.exports = SaratogaShips, ShipExtAll, ShipExtFilter;
diff --git a/src/store/SaratogaStore.js b/src/store/SaratogaStore.js
index bd140cd..0ec7053 100644
--- a/src/store/SaratogaStore.js
+++ b/src/store/SaratogaStore.js
@@ -1,6 +1,8 @@
const Fuse = require('fuse.js');
const SaratogaUpdater = require('../updater/SaratogaUpdater');
+const ShipExtFilter = require('./SaratogaShips');
const SaratogaShips = require('./SaratogaShips');
+const ShipExtAll = require('./SaratogaShips');
const SaratogaEquipments = require('./SaratogaEquipments');
const SaratogaUtil = require('../util/SaratogaUtil');
@@ -23,6 +25,8 @@ class SaratogaStore {
* @type {SaratogaShips}
*/
this.ships = new SaratogaShips(this);
+ this.ships.all = new ShipExtAll(this);
+ this.ships.sort = new ShipExtFilter(this);
/**
* Equipment related getters for this store
* @type {SaratogaEquipments}
diff --git a/tests/equip.test.js b/tests/equip.test.js
new file mode 100644
index 0000000..44a30e6
--- /dev/null
+++ b/tests/equip.test.js
@@ -0,0 +1,9 @@
+const { Saratoga } = require('../index');
+
+const saratoga = new Saratoga();
+
+test('Search Equipment By Name', async () => {
+ saratoga.on('ready', () => {
+ expect(saratoga.equipments.name('130mm 1932')[0].item.wikiUrl).toBe('https://azurlane.koumakan.jp/Single_130mm_(B13_Pattern_1936)');
+ });
+});
\ No newline at end of file
diff --git a/tests/jest.test.js b/tests/jest.test.js
deleted file mode 100644
index f0746da..0000000
--- a/tests/jest.test.js
+++ /dev/null
@@ -1,15 +0,0 @@
-const { Saratoga } = require('../index');
-
-const saratoga = new Saratoga();
-
-test('Search Ship By Name', async () => {
- saratoga.on('ready', () => {
- expect(saratoga.ships.searchShipByName('saratoga')[0].item.id).toBe('074');
- });
-});
-
-test('Search Equipment By Name', async () => {
- saratoga.on('ready', () => {
- expect(saratoga.equipments.searchByEquipmentName('130mm 1932')[0].item.wikiUrl).toBe('https://azurlane.koumakan.jp/Single_130mm_(B13_Pattern_1936)');
- });
-});
diff --git a/tests/ship.test.js b/tests/ship.test.js
new file mode 100644
index 0000000..c05c5cf
--- /dev/null
+++ b/tests/ship.test.js
@@ -0,0 +1,11 @@
+const { Saratoga } = require('../index');
+
+const saratoga = new Saratoga();
+
+test('Search Ship By Name', async () => {
+ saratoga.on('ready', () => {
+ expect(saratoga.ships.name('saratoga')[0].item.id).toBe('074');
+ });
+});
+
+
From 37577110ed09ca8f40cae5510f5e1aa46ae05e39 Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Fri, 29 Jan 2021 00:04:32 +0800
Subject: [PATCH 10/14] minor: regenerate docma docs
Changes:
- Regenerated docma docs
- Change version number
---
docs/js/docma-web.js | 2 +-
package.json | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/docs/js/docma-web.js b/docs/js/docma-web.js
index c4c7cd8..3acd0f3 100644
--- a/docs/js/docma-web.js
+++ b/docs/js/docma-web.js
@@ -44,6 +44,6 @@ dust.filters=dust.filters||{},dust.filters.$pt=function(e){return DocmaWeb.Utils
DocmaWeb.version = "3.2.2";
return DocmaWeb;
})();
-var docma = Object.freeze(new DocmaWeb({"version":"3.2.2","routes":[{"id":"api:","type":"api","name":"_def_","path":"?api","contentPath":null,"sourceType":"js"},{"id":"content:readme","type":"content","name":"readme","path":"?content=readme","contentPath":"content/readme.html","sourceType":"md"}],"apis":{"_def_":{"documentation":[{"comment":"/**\n * Saratoga, the starting point of this API\n * @class Saratoga\n * @extends {EventEmitter}\n */","meta":{"filename":"Saratoga.js","lineno":4,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"Saratoga","augments":["EventEmitter"],"longname":"Saratoga","scope":"global","$longname":"Saratoga","$kind":"class","$docmaLink":"?api#Saratoga","$members":[{"comment":"/**\n * Barrage related getters for this store\n * @type {SaratogaBarrages}\n */","meta":{"range":[2891,2987],"filename":"Saratoga.js","lineno":108,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000166","name":"Saratoga#barrages","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Barrage related getters for this store
","type":{"names":["SaratogaBarrages"]},"name":"barrages","longname":"Saratoga#barrages","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#barrages","$kind":"property","$docmaLink":"?api#Saratoga#barrages"},{"comment":"/**\n * Chapters related getters for this store\n * @type {SaratogaChapters}\n */","meta":{"range":[2493,2589],"filename":"Saratoga.js","lineno":92,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000132","name":"Saratoga#chapters","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Chapters related getters for this store
","type":{"names":["SaratogaChapters"]},"name":"chapters","longname":"Saratoga#chapters","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#chapters","$kind":"property","$docmaLink":"?api#Saratoga#chapters"},{"comment":"/**\n * Azur Lane's Equipment related getter methods\n * @type {SaratogaEquipments}\n */","meta":{"range":[2293,2393],"filename":"Saratoga.js","lineno":84,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000115","name":"Saratoga#equipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"Saratoga#equipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#equipments","$kind":"property","$docmaLink":"?api#Saratoga#equipments"},{"comment":"/**\n * If Saratoga is ready to operate\n * @type {Boolean}\n */","meta":{"range":[1910,1997],"filename":"Saratoga.js","lineno":67,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000080","name":"Saratoga#ready","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"If Saratoga is ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"Saratoga#ready","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ready","$kind":"property","$docmaLink":"?api#Saratoga#ready"},{"comment":"/**\n * Azur Lane's Ship related getter methods\n * @type {SaratogaShips}\n */","meta":{"range":[2095,2185],"filename":"Saratoga.js","lineno":75,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000098","name":"Saratoga#ships","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"Saratoga#ships","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ships","$kind":"property","$docmaLink":"?api#Saratoga#ships"},{"comment":"/**\n * Contains methods and props for managing cached data\n * @type {SaratogaStore}\n */","meta":{"range":[567,603],"filename":"Saratoga.js","lineno":19,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000053","name":"this.store","type":"NewExpression","value":"","paramnames":[]}},"description":"Contains methods and props for managing cached data
","type":{"names":["SaratogaStore"]},"name":"store","longname":"Saratoga#store","kind":"member","memberof":"Saratoga","scope":"instance","$longname":"Saratoga#store","$kind":"property","$docmaLink":"?api#Saratoga#store"},{"comment":"/**\n * Contains methods for updating Saratoga's local data & cache\n * @type {SaratogaUpdater}\n */","meta":{"range":[1770,1826],"filename":"Saratoga.js","lineno":59,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000070","name":"Saratoga#updater","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Contains methods for updating Saratoga's local data & cache
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"Saratoga#updater","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#updater","$kind":"property","$docmaLink":"?api#Saratoga#updater"},{"comment":"/**\n * Voiceline related getters for this store\n * @type {SaratogaVoicelines}\n */","meta":{"range":[2692,2792],"filename":"Saratoga.js","lineno":100,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000149","name":"Saratoga#voicelines","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Voiceline related getters for this store
","type":{"names":["SaratogaVoicelines"]},"name":"voicelines","longname":"Saratoga#voicelines","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#voicelines","$kind":"property","$docmaLink":"?api#Saratoga#voicelines"},{"comment":"/**\n * Emitted when there is a debug data\n * @event Saratoga#debug\n * @param {string} message Debug message\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":23,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a debug data
","kind":"event","name":"debug","params":[{"type":{"names":["string"]},"description":"Debug message
","name":"message"}],"memberof":"Saratoga","longname":"Saratoga#event:debug","scope":"instance","$longname":"Saratoga#event:debug","$kind":"event","$docmaLink":"?api#Saratoga#event:debug"},{"comment":"/**\n * Emitted when there is a pesky error\n * @event Saratoga#error\n * @param {Error} error The error encountered.\n * @memberof Saratoga\n * @example\n * Saratoga.on('error', console.error);\n */","meta":{"filename":"Saratoga.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a pesky error
","kind":"event","name":"error","params":[{"type":{"names":["Error"]},"description":"The error encountered.
","name":"error"}],"memberof":"Saratoga","examples":["Saratoga.on('error', console.error);"],"longname":"Saratoga#event:error","scope":"instance","$longname":"Saratoga#event:error","$kind":"event","$docmaLink":"?api#Saratoga#event:error"},{"comment":"/**\n * Emitted when Saratoga is ready\n * @event Saratoga#ready\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":49,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when Saratoga is ready
","kind":"event","name":"ready","memberof":"Saratoga","longname":"Saratoga#event:ready","scope":"instance","$longname":"Saratoga#event:ready","$kind":"event","$docmaLink":"?api#Saratoga#event:ready"},{"comment":"/**\n * Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true\n * @event Saratoga#updateAvailable\n * @param {Object} data What data needs updating\n * @memberof Saratoga\n * @example\n * Saratoga.on('updateAvailable', (data) => {\n * if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n * // handle update\n * }\n * })\n */","meta":{"filename":"Saratoga.js","lineno":37,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true
","kind":"event","name":"updateAvailable","params":[{"type":{"names":["Object"]},"description":"What data needs updating
","name":"data"}],"memberof":"Saratoga","examples":["Saratoga.on('updateAvailable', (data) => {\n if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n // handle update\n }\n})"],"longname":"Saratoga#event:updateAvailable","scope":"instance","$longname":"Saratoga#event:updateAvailable","$kind":"event","$docmaLink":"?api#Saratoga#event:updateAvailable"}],"$constructor":{"comment":"/**\n * @param {Object} options Object with a single parameter, which is notifyForNewUpdates, which is a boolean\n */","meta":{"range":[366,679],"filename":"Saratoga.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000040","name":"Saratoga","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"description":"Object with a single parameter, which is notifyForNewUpdates, which is a boolean
","name":"options"}],"name":"Saratoga","longname":"Saratoga","kind":"class","scope":"global","$longname":"Saratoga","$kind":"constructor","$docmaLink":"?api#Saratoga"}},{"comment":"/**\n * Equipment related getters for Saratoga\n * @class SaratogaEquipments\n */","meta":{"filename":"SaratogaEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments","$members":[{"comment":"/**\n * Custom filter for equipment data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[1976,2088],"filename":"SaratogaEquipments.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000340","name":"SaratogaEquipments#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for equipment data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaEquipments#filter","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#filter","$kind":"method","$docmaLink":"?api#SaratogaEquipments#filter"},{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[751,893],"filename":"SaratogaEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000251","name":"SaratogaEquipments#getAllByCategory","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByCategory","longname":"SaratogaEquipments#getAllByCategory","kind":"function","scope":"instance","$longname":"SaratogaEquipments#getAllByCategory","$kind":"method","$docmaLink":"?api#SaratogaEquipments#getAllByCategory"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1130,1284],"filename":"SaratogaEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000277","name":"SaratogaEquipments#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByNationality","longname":"SaratogaEquipments#getAllByNationality","kind":"function","scope":"instance","$longname":"SaratogaEquipments#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments#getAllByNationality"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2204,2311],"filename":"SaratogaEquipments.js","lineno":70,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000360","name":"SaratogaEquipments#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaEquipments#search","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#search","$kind":"method","$docmaLink":"?api#SaratogaEquipments#search"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1591,1835],"filename":"SaratogaEquipments.js","lineno":52,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000303","name":"SaratogaEquipments#searchByEquipmentName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"searchByEquipmentName","longname":"SaratogaEquipments#searchByEquipmentName","kind":"function","scope":"instance","$longname":"SaratogaEquipments#searchByEquipmentName","$kind":"method","$docmaLink":"?api#SaratogaEquipments#searchByEquipmentName"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[213,321],"filename":"SaratogaEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000198","name":"SaratogaEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaEquipments","longname":"SaratogaEquipments","kind":"class","scope":"global","$longname":"SaratogaEquipments","$kind":"constructor","$docmaLink":"?api#SaratogaEquipments"}},{"comment":"/**\n * Ship related getters for Saratoga\n * @class SaratogaShips\n */","meta":{"filename":"SaratogaShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips","$members":[{"comment":"/**\n * Custom filter for ship data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[3082,3194],"filename":"SaratogaShips.js","lineno":97,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000622","name":"SaratogaShips#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for ship data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaShips#filter","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#filter","$kind":"method","$docmaLink":"?api#SaratogaShips#filter"},{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[761,899],"filename":"SaratogaShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000444","name":"SaratogaShips#getAllByClass","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByClass","longname":"SaratogaShips#getAllByClass","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByClass","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByClass"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1559,1701],"filename":"SaratogaShips.js","lineno":51,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000496","name":"SaratogaShips#getAllByHullType","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByHullType","longname":"SaratogaShips#getAllByHullType","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByHullType","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByHullType"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1156,1310],"filename":"SaratogaShips.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000470","name":"SaratogaShips#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByNationality","longname":"SaratogaShips#getAllByNationality","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByNationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1937,2071],"filename":"SaratogaShips.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000522","name":"SaratogaShips#getAllByRarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"getAllByRarity","longname":"SaratogaShips#getAllByRarity","kind":"function","scope":"instance","$longname":"SaratogaShips#getAllByRarity","$kind":"method","$docmaLink":"?api#SaratogaShips#getAllByRarity"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2255,2434],"filename":"SaratogaShips.js","lineno":73,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000548","name":"SaratogaShips#getById","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"getById","longname":"SaratogaShips#getById","kind":"function","scope":"instance","$longname":"SaratogaShips#getById","$kind":"method","$docmaLink":"?api#SaratogaShips#getById"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[3310,3417],"filename":"SaratogaShips.js","lineno":105,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000642","name":"SaratogaShips#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaShips#search","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#search","$kind":"method","$docmaLink":"?api#SaratogaShips#search"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2721,2946],"filename":"SaratogaShips.js","lineno":87,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000585","name":"SaratogaShips#searchShipByName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"searchShipByName","longname":"SaratogaShips#searchShipByName","kind":"function","scope":"instance","$longname":"SaratogaShips#searchShipByName","$kind":"method","$docmaLink":"?api#SaratogaShips#searchShipByName"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[198,306],"filename":"SaratogaShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000391","name":"SaratogaShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaShips","longname":"SaratogaShips","kind":"class","scope":"global","$longname":"SaratogaShips","$kind":"constructor","$docmaLink":"?api#SaratogaShips"}},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class SaratogaStore\n */","meta":{"filename":"SaratogaStore.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"SaratogaStore","longname":"SaratogaStore","scope":"global","$longname":"SaratogaStore","$kind":"class","$docmaLink":"?api#SaratogaStore","$members":[{"comment":"/**\n * Equipment related getters for this store\n * @type {SaratogaEquipments}\n */","meta":{"range":[906,952],"filename":"SaratogaStore.js","lineno":30,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000723","name":"this.equipments","type":"NewExpression","value":"","paramnames":[]}},"description":"Equipment related getters for this store
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"SaratogaStore#equipments","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#equipments","$kind":"property","$docmaLink":"?api#SaratogaStore#equipments"},{"comment":"/**\n * If this store is already ready to operate\n * @type {Boolean}\n */","meta":{"range":[1732,1750],"filename":"SaratogaStore.js","lineno":55,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000739","name":"this.ready","type":"Literal","value":false,"paramnames":[]}},"description":"If this store is already ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"SaratogaStore#ready","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ready","$kind":"property","$docmaLink":"?api#SaratogaStore#ready"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[608,632],"filename":"SaratogaStore.js","lineno":20,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000709","name":"this.saratoga","type":"Identifier","value":"saratoga","paramnames":[]}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaStore#saratoga","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#saratoga","$kind":"property","$docmaLink":"?api#SaratogaStore#saratoga"},{"comment":"/**\n * Ship related getters for this store\n * @type {SaratogaShips}\n */","meta":{"range":[746,782],"filename":"SaratogaStore.js","lineno":25,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000715","name":"this.ships","type":"NewExpression","value":"","paramnames":[]}},"description":"Ship related getters for this store
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"SaratogaStore#ships","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ships","$kind":"property","$docmaLink":"?api#SaratogaStore#ships"},{"comment":"/**\n * Updater Class for the local data for this store\n * @type {SaratogaUpdater}\n */","meta":{"range":[1578,1618],"filename":"SaratogaStore.js","lineno":50,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000731","name":"this.updater","type":"NewExpression","value":"","paramnames":[]}},"description":"Updater Class for the local data for this store
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"SaratogaStore#updater","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#updater","$kind":"property","$docmaLink":"?api#SaratogaStore#updater"}],"$constructor":{"comment":"/**\n * @param {Saratoga} saratoga The saratoga class that generated this instance\n */","meta":{"range":[462,2583],"filename":"SaratogaStore.js","lineno":15,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000703","name":"SaratogaStore","type":"MethodDefinition","paramnames":["saratoga"]},"vars":{"":null}},"params":[{"type":{"names":["Saratoga"]},"description":"The saratoga class that generated this instance
","name":"saratoga"}],"name":"SaratogaStore","longname":"SaratogaStore","kind":"class","scope":"global","$longname":"SaratogaStore","$kind":"constructor","$docmaLink":"?api#SaratogaStore"}},{"comment":"/**\n * Manages the local data & cache updates\n * @class SaratogaUpdater\n */","meta":{"filename":"SaratogaUpdater.js","lineno":5,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{}},"description":"Manages the local data & cache updates
","kind":"class","name":"SaratogaUpdater","longname":"SaratogaUpdater","scope":"global","$longname":"SaratogaUpdater","$kind":"class","$docmaLink":"?api#SaratogaUpdater","$members":[{"comment":"/**\n * Checks if there is new updates for ship or equipment data\n * @memberof SaratogaUpdater\n * @returns {Promise}\n * @example\n * const api = new Saratoga();\n * api.updater.checkForUpdate()\n * .then((response) => {\n * if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n * })\n */","meta":{"range":[3518,3930],"filename":"SaratogaUpdater.js","lineno":90,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001757","name":"SaratogaUpdater#checkForUpdate","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Checks if there is new updates for ship or equipment data
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"examples":["const api = new Saratoga();\napi.updater.checkForUpdate()\n .then((response) => {\n if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n })"],"name":"checkForUpdate","longname":"SaratogaUpdater#checkForUpdate","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#checkForUpdate","$kind":"method","$docmaLink":"?api#SaratogaUpdater#checkForUpdate"},{"comment":"/**\n * Updates the Cached Data, loaded from the local files of Saratoga\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[5315,5490],"filename":"SaratogaUpdater.js","lineno":135,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001877","name":"SaratogaUpdater#updateCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Cached Data, loaded from the local files of Saratoga
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateCache","longname":"SaratogaUpdater#updateCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateCache"},{"comment":"/**\n * Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[3011,3117],"filename":"SaratogaUpdater.js","lineno":74,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001741","name":"SaratogaUpdater#updateDataAndCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateDataAndCache","longname":"SaratogaUpdater#updateDataAndCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateDataAndCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateDataAndCache"},{"comment":"/**\n * Updates the Local Files of Saratoga if there is an update\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[4082,5156],"filename":"SaratogaUpdater.js","lineno":104,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001777","name":"SaratogaUpdater#updateLocalData","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files of Saratoga if there is an update
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateLocalData","longname":"SaratogaUpdater#updateLocalData","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateLocalData","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateLocalData"},{"comment":"/**\n * The cron update checker which is responsible for Saratoga#updateAvailable event\n * @type {?Timeout}\n */","meta":{"range":[830,852],"filename":"SaratogaUpdater.js","lineno":28,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001474","name":"this.cronUpdate","type":"Literal","value":null,"paramnames":[]}},"description":"The cron update checker which is responsible for Saratoga#updateAvailable event
","type":{"names":["Timeout"]},"nullable":true,"name":"cronUpdate","longname":"SaratogaUpdater#cronUpdate","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#cronUpdate","$kind":"property","$docmaLink":"?api#SaratogaUpdater#cronUpdate"},{"comment":"/**\n * If the data directory of this updater is ready to operate\n * @type {Boolean}\n */","meta":{"range":[652,677],"filename":"SaratogaUpdater.js","lineno":23,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001468","name":"this.dataDirReady","type":"Literal","value":false,"paramnames":[]}},"description":"If the data directory of this updater is ready to operate
","type":{"names":["Boolean"]},"name":"dataDirReady","longname":"SaratogaUpdater#dataDirReady","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#dataDirReady","$kind":"property","$docmaLink":"?api#SaratogaUpdater#dataDirReady"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[963,1021],"filename":"SaratogaUpdater.js","lineno":35,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001479","name":"SaratogaUpdater#saratoga","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaUpdater#saratoga","kind":"member","memberof":"SaratogaUpdater","scope":"instance","params":[],"$longname":"SaratogaUpdater#saratoga","$kind":"property","$docmaLink":"?api#SaratogaUpdater#saratoga"},{"comment":"/**\n * The updater instance that generated this instance\n * @type {SaratogaStore}\n */","meta":{"range":[504,522],"filename":"SaratogaUpdater.js","lineno":18,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001462","name":"this.store","type":"Identifier","value":"store","paramnames":[]}},"description":"The updater instance that generated this instance
","type":{"names":["SaratogaStore"]},"name":"store","longname":"SaratogaUpdater#store","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#store","$kind":"property","$docmaLink":"?api#SaratogaUpdater#store"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[357,859],"filename":"SaratogaUpdater.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001456","name":"SaratogaUpdater","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaUpdater","longname":"SaratogaUpdater","kind":"class","scope":"global","$longname":"SaratogaUpdater","$kind":"constructor","$docmaLink":"?api#SaratogaUpdater"}},{"comment":"","meta":{"range":[122,250],"filename":"SaratogaValidator.js","lineno":5,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002268","name":"SaratogaValidator","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"SaratogaValidator","longname":"SaratogaValidator","kind":"class","scope":"global","params":[],"$longname":"SaratogaValidator","$kind":"constructor","$docmaLink":"?api#SaratogaValidator"},{"comment":"/**\n * Barrage Data\n * @external Barrage\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":34,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Barrage Data
","kind":"external","name":"Barrage","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Barrage","scope":"global","$longname":"external:Barrage","$kind":"external","$docmaLink":"?api#external:Barrage"},{"comment":"/**\n * Chapter Data\n * @external Chapter\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":24,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Chapter Data
","kind":"external","name":"Chapter","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Chapter","scope":"global","$longname":"external:Chapter","$kind":"external","$docmaLink":"?api#external:Chapter"},{"comment":"/**\n * Equipment Data\n * @external Equipment\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":19,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Equipment Data
","kind":"external","name":"Equipment","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Equipment","scope":"global","$longname":"external:Equipment","$kind":"external","$docmaLink":"?api#external:Equipment"},{"comment":"/**\n * Node.js Event Emitter\n * @external EventEmitter\n * @see {@link https://nodejs.org/api/events.html}\n */","meta":{"filename":"index.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Event Emitter
","kind":"external","name":"EventEmitter","see":["{@link https://nodejs.org/api/events.html}"],"longname":"external:EventEmitter","scope":"global","$longname":"external:EventEmitter","$kind":"external","$docmaLink":"?api#external:EventEmitter"},{"comment":"/**\n * Ship Data\n * @external Ship\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}\n */","meta":{"filename":"index.js","lineno":13,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Ship Data
","kind":"external","name":"Ship","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}"],"longname":"external:Ship","scope":"global","$longname":"external:Ship","$kind":"external","$docmaLink":"?api#external:Ship"},{"comment":"/**\n * Node.js Timeout\n * @external Timeout\n * @see {@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}\n */","meta":{"filename":"index.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Timeout
","kind":"external","name":"Timeout","see":["{@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}"],"longname":"external:Timeout","scope":"global","$longname":"external:Timeout","$kind":"external","$docmaLink":"?api#external:Timeout"},{"comment":"/**\n * Voiceline Data\n * @external Voiceline\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":29,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Voiceline Data
","kind":"external","name":"Voiceline","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Voiceline","scope":"global","$longname":"external:Voiceline","$kind":"external","$docmaLink":"?api#external:Voiceline"}],"symbols":["external:Barrage","external:Chapter","external:Equipment","external:EventEmitter","external:Ship","external:Timeout","external:Voiceline","Saratoga","Saratoga#barrages","Saratoga#chapters","Saratoga#equipments","Saratoga#event:debug","Saratoga#event:error","Saratoga#event:ready","Saratoga#event:updateAvailable","Saratoga#ready","Saratoga#ships","Saratoga#store","Saratoga#updater","Saratoga#voicelines","SaratogaEquipments","SaratogaEquipments#filter","SaratogaEquipments#getAllByCategory","SaratogaEquipments#getAllByNationality","SaratogaEquipments#search","SaratogaEquipments#searchByEquipmentName","SaratogaShips","SaratogaShips#filter","SaratogaShips#getAllByClass","SaratogaShips#getAllByHullType","SaratogaShips#getAllByNationality","SaratogaShips#getAllByRarity","SaratogaShips#getById","SaratogaShips#search","SaratogaShips#searchShipByName","SaratogaStore","SaratogaStore#equipments","SaratogaStore#ready","SaratogaStore#saratoga","SaratogaStore#ships","SaratogaStore#updater","SaratogaUpdater","SaratogaUpdater#checkForUpdate","SaratogaUpdater#cronUpdate","SaratogaUpdater#dataDirReady","SaratogaUpdater#saratoga","SaratogaUpdater#store","SaratogaUpdater#updateCache","SaratogaUpdater#updateDataAndCache","SaratogaUpdater#updateLocalData","SaratogaValidator"]}},"app":{"title":"Saratoga | An open source Azur Lane local library","routing":{"method":"query","caseSensitive":true},"entrance":"content:readme","base":"/Saratoga/","meta":null,"server":"static","favicon":""},"template":{"name":"docma-template-zebra","description":"Zebra - Default template for Docma. https://github.com/onury/docma","version":"2.3.1","supportedDocmaVersion":">=2.0.0","author":"Onur Yıldırım","license":"MIT","mainHTML":"index.html","options":{"title":{"label":"Saratoga","href":"."},"sidebar":{"enabled":true,"outline":"tree","collapsed":false,"toolbar":true,"itemsFolded":false,"itemsOverflow":"crop","badges":true,"search":true,"animations":true},"symbols":{"autoLink":true,"params":"list","enums":"list","props":"list","meta":false},"navbar":{"enabled":true,"dark":false,"animations":true,"menu":[{"label":"Readme","href":"."},{"label":"Documentation","href":"?api"},{"label":"GitHub","href":"https://github.com/AzurAPI/Saratoga"}],"fixed":true},"logo":null,"contentView":{"bookmarks":false,"faVersion":"5.5.0","faLibs":"all"}}},"partials":{"api":"docma-api","content":"docma-content","notFound":"docma-404"},"elementID":"docma-main","contentElementID":"docma-content","defaultApiName":"_def_","logsEnabled":false}));
+var docma = Object.freeze(new DocmaWeb({"version":"3.2.2","routes":[{"id":"api:","type":"api","name":"_def_","path":"?api","contentPath":null,"sourceType":"js"},{"id":"content:readme","type":"content","name":"readme","path":"?content=readme","contentPath":"content/readme.html","sourceType":"md"}],"apis":{"_def_":{"documentation":[{"comment":"/**\n * Saratoga, the starting point of this API\n * @class Saratoga\n * @extends {EventEmitter}\n */","meta":{"filename":"Saratoga.js","lineno":4,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"Saratoga","augments":["EventEmitter"],"longname":"Saratoga","scope":"global","$longname":"Saratoga","$kind":"class","$docmaLink":"?api#Saratoga","$members":[{"comment":"/**\n * Barrage related getters for this store\n * @type {SaratogaBarrages}\n */","meta":{"range":[2891,2987],"filename":"Saratoga.js","lineno":108,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000166","name":"Saratoga#barrages","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Barrage related getters for this store
","type":{"names":["SaratogaBarrages"]},"name":"barrages","longname":"Saratoga#barrages","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#barrages","$kind":"property","$docmaLink":"?api#Saratoga#barrages"},{"comment":"/**\n * Chapters related getters for this store\n * @type {SaratogaChapters}\n */","meta":{"range":[2493,2589],"filename":"Saratoga.js","lineno":92,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000132","name":"Saratoga#chapters","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Chapters related getters for this store
","type":{"names":["SaratogaChapters"]},"name":"chapters","longname":"Saratoga#chapters","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#chapters","$kind":"property","$docmaLink":"?api#Saratoga#chapters"},{"comment":"/**\n * Azur Lane's Equipment related getter methods\n * @type {SaratogaEquipments}\n */","meta":{"range":[2293,2393],"filename":"Saratoga.js","lineno":84,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000115","name":"Saratoga#equipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"Saratoga#equipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#equipments","$kind":"property","$docmaLink":"?api#Saratoga#equipments"},{"comment":"/**\n * If Saratoga is ready to operate\n * @type {Boolean}\n */","meta":{"range":[1910,1997],"filename":"Saratoga.js","lineno":67,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000080","name":"Saratoga#ready","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"If Saratoga is ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"Saratoga#ready","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ready","$kind":"property","$docmaLink":"?api#Saratoga#ready"},{"comment":"/**\n * Azur Lane's Ship related getter methods\n * @type {SaratogaShips}\n */","meta":{"range":[2095,2185],"filename":"Saratoga.js","lineno":75,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000098","name":"Saratoga#ships","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"Saratoga#ships","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ships","$kind":"property","$docmaLink":"?api#Saratoga#ships"},{"comment":"/**\n * Contains methods and props for managing cached data\n * @type {SaratogaStore}\n */","meta":{"range":[567,603],"filename":"Saratoga.js","lineno":19,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000053","name":"this.store","type":"NewExpression","value":"","paramnames":[]}},"description":"Contains methods and props for managing cached data
","type":{"names":["SaratogaStore"]},"name":"store","longname":"Saratoga#store","kind":"member","memberof":"Saratoga","scope":"instance","$longname":"Saratoga#store","$kind":"property","$docmaLink":"?api#Saratoga#store"},{"comment":"/**\n * Contains methods for updating Saratoga's local data & cache\n * @type {SaratogaUpdater}\n */","meta":{"range":[1770,1826],"filename":"Saratoga.js","lineno":59,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000070","name":"Saratoga#updater","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Contains methods for updating Saratoga's local data & cache
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"Saratoga#updater","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#updater","$kind":"property","$docmaLink":"?api#Saratoga#updater"},{"comment":"/**\n * Voiceline related getters for this store\n * @type {SaratogaVoicelines}\n */","meta":{"range":[2692,2792],"filename":"Saratoga.js","lineno":100,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000149","name":"Saratoga#voicelines","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Voiceline related getters for this store
","type":{"names":["SaratogaVoicelines"]},"name":"voicelines","longname":"Saratoga#voicelines","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#voicelines","$kind":"property","$docmaLink":"?api#Saratoga#voicelines"},{"comment":"/**\n * Emitted when there is a debug data\n * @event Saratoga#debug\n * @param {string} message Debug message\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":23,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a debug data
","kind":"event","name":"debug","params":[{"type":{"names":["string"]},"description":"Debug message
","name":"message"}],"memberof":"Saratoga","longname":"Saratoga#event:debug","scope":"instance","$longname":"Saratoga#event:debug","$kind":"event","$docmaLink":"?api#Saratoga#event:debug"},{"comment":"/**\n * Emitted when there is a pesky error\n * @event Saratoga#error\n * @param {Error} error The error encountered.\n * @memberof Saratoga\n * @example\n * Saratoga.on('error', console.error);\n */","meta":{"filename":"Saratoga.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a pesky error
","kind":"event","name":"error","params":[{"type":{"names":["Error"]},"description":"The error encountered.
","name":"error"}],"memberof":"Saratoga","examples":["Saratoga.on('error', console.error);"],"longname":"Saratoga#event:error","scope":"instance","$longname":"Saratoga#event:error","$kind":"event","$docmaLink":"?api#Saratoga#event:error"},{"comment":"/**\n * Emitted when Saratoga is ready\n * @event Saratoga#ready\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":49,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when Saratoga is ready
","kind":"event","name":"ready","memberof":"Saratoga","longname":"Saratoga#event:ready","scope":"instance","$longname":"Saratoga#event:ready","$kind":"event","$docmaLink":"?api#Saratoga#event:ready"},{"comment":"/**\n * Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true\n * @event Saratoga#updateAvailable\n * @param {Object} data What data needs updating\n * @memberof Saratoga\n * @example\n * Saratoga.on('updateAvailable', (data) => {\n * if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n * // handle update\n * }\n * })\n */","meta":{"filename":"Saratoga.js","lineno":37,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true
","kind":"event","name":"updateAvailable","params":[{"type":{"names":["Object"]},"description":"What data needs updating
","name":"data"}],"memberof":"Saratoga","examples":["Saratoga.on('updateAvailable', (data) => {\n if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n // handle update\n }\n})"],"longname":"Saratoga#event:updateAvailable","scope":"instance","$longname":"Saratoga#event:updateAvailable","$kind":"event","$docmaLink":"?api#Saratoga#event:updateAvailable"}],"$constructor":{"comment":"/**\n * @param {Object} options Object with a single parameter, which is notifyForNewUpdates, which is a boolean\n */","meta":{"range":[366,679],"filename":"Saratoga.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000040","name":"Saratoga","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"description":"Object with a single parameter, which is notifyForNewUpdates, which is a boolean
","name":"options"}],"name":"Saratoga","longname":"Saratoga","kind":"class","scope":"global","$longname":"Saratoga","$kind":"constructor","$docmaLink":"?api#Saratoga"}},{"comment":"/**\n * Equipment related getters for Saratoga\n * @class SaratogaEquipments\n */","meta":{"filename":"SaratogaEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments","$members":[{"comment":"/**\n * Get an unfiltered equipment list\n */","meta":{"range":[2442,2526],"filename":"SaratogaEquipments.js","lineno":79,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000407","name":"SaratogaEquipments#all","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Get an unfiltered equipment list
","name":"all","longname":"SaratogaEquipments#all","kind":"function","memberof":"SaratogaEquipments","scope":"instance","params":[],"$longname":"SaratogaEquipments#all","$kind":"method","$docmaLink":"?api#SaratogaEquipments#all"},{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[751,885],"filename":"SaratogaEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000251","name":"SaratogaEquipments#category","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"category","longname":"SaratogaEquipments#category","kind":"function","scope":"instance","$longname":"SaratogaEquipments#category","$kind":"method","$docmaLink":"?api#SaratogaEquipments#category"},{"comment":"/**\n * Custom filter for equipment data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[2668,2780],"filename":"SaratogaEquipments.js","lineno":88,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000422","name":"SaratogaEquipments#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for equipment data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaEquipments#filter","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#filter","$kind":"method","$docmaLink":"?api#SaratogaEquipments#filter"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {string} language optional language to search by\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1638,2380],"filename":"SaratogaEquipments.js","lineno":53,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000303","name":"SaratogaEquipments#name","type":"MethodDefinition","paramnames":["name","language","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["string"]},"description":"optional language to search by
","name":"language"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"name","longname":"SaratogaEquipments#name","kind":"function","scope":"instance","$longname":"SaratogaEquipments#name","$kind":"method","$docmaLink":"?api#SaratogaEquipments#name"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1122,1268],"filename":"SaratogaEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000277","name":"SaratogaEquipments#nationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"nationality","longname":"SaratogaEquipments#nationality","kind":"function","scope":"instance","$longname":"SaratogaEquipments#nationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments#nationality"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2896,3003],"filename":"SaratogaEquipments.js","lineno":96,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000442","name":"SaratogaEquipments#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaEquipments#search","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#search","$kind":"method","$docmaLink":"?api#SaratogaEquipments#search"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[213,321],"filename":"SaratogaEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000198","name":"SaratogaEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaEquipments","longname":"SaratogaEquipments","kind":"class","scope":"global","$longname":"SaratogaEquipments","$kind":"constructor","$docmaLink":"?api#SaratogaEquipments"}},{"comment":"/**\n * Ship related getters for Saratoga\n * @class SaratogaShips\n */","meta":{"filename":"SaratogaShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips","$members":[{"comment":"/**\n * Custom filter for ship data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[2763,2875],"filename":"SaratogaShips.js","lineno":94,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000753","name":"SaratogaShips#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for ship data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaShips#filter","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#filter","$kind":"method","$docmaLink":"?api#SaratogaShips#filter"},{"comment":"/**\n * Search from all ships\n * @param {number | string} id \n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[666,1089],"filename":"SaratogaShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000526","name":"SaratogaShips#get","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Search from all ships
","params":[{"type":{"names":["number","string"]},"name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"get","longname":"SaratogaShips#get","kind":"function","scope":"instance","$longname":"SaratogaShips#get","$kind":"method","$docmaLink":"?api#SaratogaShips#get"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[1273,1447],"filename":"SaratogaShips.js","lineno":50,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000599","name":"SaratogaShips#id","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"id","longname":"SaratogaShips#id","kind":"function","scope":"instance","$longname":"SaratogaShips#id","$kind":"method","$docmaLink":"?api#SaratogaShips#id"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {string} language optional language to search by\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[1797,2627],"filename":"SaratogaShips.js","lineno":65,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000636","name":"SaratogaShips#name","type":"MethodDefinition","paramnames":["name","language","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["string"]},"description":"optional language to search by
","name":"language"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"name","longname":"SaratogaShips#name","kind":"function","scope":"instance","$longname":"SaratogaShips#name","$kind":"method","$docmaLink":"?api#SaratogaShips#name"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2991,3098],"filename":"SaratogaShips.js","lineno":102,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000773","name":"SaratogaShips#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaShips#search","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#search","$kind":"method","$docmaLink":"?api#SaratogaShips#search"},{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[4410,4540],"filename":"SaratogaShips.js","lineno":166,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000930","name":"ShipExtFilter#class","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#class","longname":"SaratogaShips.ShipExtFilter#class","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#class","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#class"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[4797,4943],"filename":"SaratogaShips.js","lineno":177,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000956","name":"ShipExtFilter#nationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#nationality","longname":"SaratogaShips.ShipExtFilter#nationality","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#nationality","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#nationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[5558,5684],"filename":"SaratogaShips.js","lineno":199,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001008","name":"ShipExtFilter#rarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#rarity","longname":"SaratogaShips.ShipExtFilter#rarity","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#rarity","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#rarity"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[5192,5322],"filename":"SaratogaShips.js","lineno":188,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000982","name":"ShipExtFilter#type","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#type","longname":"SaratogaShips.ShipExtFilter#type","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#type","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#type"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[198,306],"filename":"SaratogaShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000473","name":"SaratogaShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaShips","longname":"SaratogaShips","kind":"class","scope":"global","$longname":"SaratogaShips","$kind":"constructor","$docmaLink":"?api#SaratogaShips"}},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class SaratogaStore\n */","meta":{"filename":"SaratogaStore.js","lineno":9,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"SaratogaStore","longname":"SaratogaStore","scope":"global","$longname":"SaratogaStore","$kind":"class","$docmaLink":"?api#SaratogaStore","$members":[{"comment":"/**\n * Equipment related getters for this store\n * @type {SaratogaEquipments}\n */","meta":{"range":[1101,1147],"filename":"SaratogaStore.js","lineno":34,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001130","name":"this.equipments","type":"NewExpression","value":"","paramnames":[]}},"description":"Equipment related getters for this store
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"SaratogaStore#equipments","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#equipments","$kind":"property","$docmaLink":"?api#SaratogaStore#equipments"},{"comment":"/**\n * If this store is already ready to operate\n * @type {Boolean}\n */","meta":{"range":[1927,1945],"filename":"SaratogaStore.js","lineno":59,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001146","name":"this.ready","type":"Literal","value":false,"paramnames":[]}},"description":"If this store is already ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"SaratogaStore#ready","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ready","$kind":"property","$docmaLink":"?api#SaratogaStore#ready"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[705,729],"filename":"SaratogaStore.js","lineno":22,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001096","name":"this.saratoga","type":"Identifier","value":"saratoga","paramnames":[]}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaStore#saratoga","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#saratoga","$kind":"property","$docmaLink":"?api#SaratogaStore#saratoga"},{"comment":"/**\n * Ship related getters for this store\n * @type {SaratogaShips}\n */","meta":{"range":[843,879],"filename":"SaratogaStore.js","lineno":27,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001102","name":"this.ships","type":"NewExpression","value":"","paramnames":[]}},"description":"Ship related getters for this store
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"SaratogaStore#ships","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ships","$kind":"property","$docmaLink":"?api#SaratogaStore#ships"},{"comment":"/**\n * Updater Class for the local data for this store\n * @type {SaratogaUpdater}\n */","meta":{"range":[1773,1813],"filename":"SaratogaStore.js","lineno":54,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001138","name":"this.updater","type":"NewExpression","value":"","paramnames":[]}},"description":"Updater Class for the local data for this store
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"SaratogaStore#updater","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#updater","$kind":"property","$docmaLink":"?api#SaratogaStore#updater"}],"$constructor":{"comment":"/**\n * @param {Saratoga} saratoga The saratoga class that generated this instance\n */","meta":{"range":[559,2778],"filename":"SaratogaStore.js","lineno":17,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001090","name":"SaratogaStore","type":"MethodDefinition","paramnames":["saratoga"]},"vars":{"":null}},"params":[{"type":{"names":["Saratoga"]},"description":"The saratoga class that generated this instance
","name":"saratoga"}],"name":"SaratogaStore","longname":"SaratogaStore","kind":"class","scope":"global","$longname":"SaratogaStore","$kind":"constructor","$docmaLink":"?api#SaratogaStore"}},{"comment":"/**\n * Manages the local data & cache updates\n * @class SaratogaUpdater\n */","meta":{"filename":"SaratogaUpdater.js","lineno":5,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{}},"description":"Manages the local data & cache updates
","kind":"class","name":"SaratogaUpdater","longname":"SaratogaUpdater","scope":"global","$longname":"SaratogaUpdater","$kind":"class","$docmaLink":"?api#SaratogaUpdater","$members":[{"comment":"/**\n * Checks if there is new updates for ship or equipment data\n * @memberof SaratogaUpdater\n * @returns {Promise}\n * @example\n * const api = new Saratoga();\n * api.updater.checkForUpdate()\n * .then((response) => {\n * if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n * })\n */","meta":{"range":[3577,3989],"filename":"SaratogaUpdater.js","lineno":90,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002157","name":"SaratogaUpdater#checkForUpdate","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Checks if there is new updates for ship or equipment data
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"examples":["const api = new Saratoga();\napi.updater.checkForUpdate()\n .then((response) => {\n if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n })"],"name":"checkForUpdate","longname":"SaratogaUpdater#checkForUpdate","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#checkForUpdate","$kind":"method","$docmaLink":"?api#SaratogaUpdater#checkForUpdate"},{"comment":"/**\n * Updates the Cached Data, loaded from the local files of Saratoga\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[5374,5549],"filename":"SaratogaUpdater.js","lineno":135,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002277","name":"SaratogaUpdater#updateCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Cached Data, loaded from the local files of Saratoga
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateCache","longname":"SaratogaUpdater#updateCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateCache"},{"comment":"/**\n * Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[3070,3176],"filename":"SaratogaUpdater.js","lineno":74,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002141","name":"SaratogaUpdater#updateDataAndCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateDataAndCache","longname":"SaratogaUpdater#updateDataAndCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateDataAndCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateDataAndCache"},{"comment":"/**\n * Updates the Local Files of Saratoga if there is an update\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[4141,5215],"filename":"SaratogaUpdater.js","lineno":104,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002177","name":"SaratogaUpdater#updateLocalData","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files of Saratoga if there is an update
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateLocalData","longname":"SaratogaUpdater#updateLocalData","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateLocalData","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateLocalData"},{"comment":"/**\n * The cron update checker which is responsible for Saratoga#updateAvailable event\n * @type {?Timeout}\n */","meta":{"range":[830,852],"filename":"SaratogaUpdater.js","lineno":28,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001871","name":"this.cronUpdate","type":"Literal","value":null,"paramnames":[]}},"description":"The cron update checker which is responsible for Saratoga#updateAvailable event
","type":{"names":["Timeout"]},"nullable":true,"name":"cronUpdate","longname":"SaratogaUpdater#cronUpdate","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#cronUpdate","$kind":"property","$docmaLink":"?api#SaratogaUpdater#cronUpdate"},{"comment":"/**\n * If the data directory of this updater is ready to operate\n * @type {Boolean}\n */","meta":{"range":[652,677],"filename":"SaratogaUpdater.js","lineno":23,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001865","name":"this.dataDirReady","type":"Literal","value":false,"paramnames":[]}},"description":"If the data directory of this updater is ready to operate
","type":{"names":["Boolean"]},"name":"dataDirReady","longname":"SaratogaUpdater#dataDirReady","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#dataDirReady","$kind":"property","$docmaLink":"?api#SaratogaUpdater#dataDirReady"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[963,1021],"filename":"SaratogaUpdater.js","lineno":35,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001876","name":"SaratogaUpdater#saratoga","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaUpdater#saratoga","kind":"member","memberof":"SaratogaUpdater","scope":"instance","params":[],"$longname":"SaratogaUpdater#saratoga","$kind":"property","$docmaLink":"?api#SaratogaUpdater#saratoga"},{"comment":"/**\n * The updater instance that generated this instance\n * @type {SaratogaStore}\n */","meta":{"range":[504,522],"filename":"SaratogaUpdater.js","lineno":18,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001859","name":"this.store","type":"Identifier","value":"store","paramnames":[]}},"description":"The updater instance that generated this instance
","type":{"names":["SaratogaStore"]},"name":"store","longname":"SaratogaUpdater#store","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#store","$kind":"property","$docmaLink":"?api#SaratogaUpdater#store"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[357,859],"filename":"SaratogaUpdater.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001853","name":"SaratogaUpdater","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaUpdater","longname":"SaratogaUpdater","kind":"class","scope":"global","$longname":"SaratogaUpdater","$kind":"constructor","$docmaLink":"?api#SaratogaUpdater"}},{"comment":"","meta":{"range":[122,250],"filename":"SaratogaValidator.js","lineno":5,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002668","name":"SaratogaValidator","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"SaratogaValidator","longname":"SaratogaValidator","kind":"class","scope":"global","params":[],"$longname":"SaratogaValidator","$kind":"constructor","$docmaLink":"?api#SaratogaValidator"},{"comment":"","meta":{"range":[3147,3185],"filename":"SaratogaShips.js","lineno":109,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000797","name":"ShipExtAll","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"ShipExtAll","longname":"ShipExtAll","kind":"class","scope":"global","params":[],"$longname":"ShipExtAll","$kind":"constructor","$docmaLink":"?api#ShipExtAll"},{"comment":"","meta":{"range":[4130,4168],"filename":"SaratogaShips.js","lineno":157,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000923","name":"ShipExtFilter","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"ShipExtFilter","longname":"ShipExtFilter","kind":"class","scope":"global","params":[],"$longname":"ShipExtFilter","$kind":"constructor","$docmaLink":"?api#ShipExtFilter"},{"comment":"/**\n * Get an unfiltered ship list\n */","meta":{"range":[3242,3326],"filename":"SaratogaShips.js","lineno":116,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000804","name":"ShipExtAll#get","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Get an unfiltered ship list
","name":"get","longname":"ShipExtAll#get","kind":"function","memberof":"ShipExtAll","scope":"instance","params":[],"$longname":"ShipExtAll#get","$kind":"method","$docmaLink":"?api#ShipExtAll#get"},{"comment":"/**\n * Filter ships via id\n */","meta":{"range":[3992,4078],"filename":"SaratogaShips.js","lineno":150,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000902","name":"ShipExtAll#id","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Filter ships via id
","name":"id","longname":"ShipExtAll#id","kind":"function","memberof":"ShipExtAll","scope":"instance","params":[],"$longname":"ShipExtAll#id","$kind":"method","$docmaLink":"?api#ShipExtAll#id"},{"comment":"/**\n * Filter ships via language\n * @param {string} language \n */","meta":{"range":[3414,3943],"filename":"SaratogaShips.js","lineno":125,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000819","name":"ShipExtAll#name","type":"MethodDefinition","paramnames":["language"]},"vars":{"":null}},"description":"Filter ships via language
","params":[{"type":{"names":["string"]},"name":"language"}],"name":"name","longname":"ShipExtAll#name","kind":"function","memberof":"ShipExtAll","scope":"instance","$longname":"ShipExtAll#name","$kind":"method","$docmaLink":"?api#ShipExtAll#name"},{"comment":"/**\n * Barrage Data\n * @external Barrage\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":34,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Barrage Data
","kind":"external","name":"Barrage","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Barrage","scope":"global","$longname":"external:Barrage","$kind":"external","$docmaLink":"?api#external:Barrage"},{"comment":"/**\n * Chapter Data\n * @external Chapter\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":24,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Chapter Data
","kind":"external","name":"Chapter","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Chapter","scope":"global","$longname":"external:Chapter","$kind":"external","$docmaLink":"?api#external:Chapter"},{"comment":"/**\n * Equipment Data\n * @external Equipment\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":19,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Equipment Data
","kind":"external","name":"Equipment","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Equipment","scope":"global","$longname":"external:Equipment","$kind":"external","$docmaLink":"?api#external:Equipment"},{"comment":"/**\n * Node.js Event Emitter\n * @external EventEmitter\n * @see {@link https://nodejs.org/api/events.html}\n */","meta":{"filename":"index.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Event Emitter
","kind":"external","name":"EventEmitter","see":["{@link https://nodejs.org/api/events.html}"],"longname":"external:EventEmitter","scope":"global","$longname":"external:EventEmitter","$kind":"external","$docmaLink":"?api#external:EventEmitter"},{"comment":"/**\n * Ship Data\n * @external Ship\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}\n */","meta":{"filename":"index.js","lineno":13,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Ship Data
","kind":"external","name":"Ship","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}"],"longname":"external:Ship","scope":"global","$longname":"external:Ship","$kind":"external","$docmaLink":"?api#external:Ship"},{"comment":"/**\n * Node.js Timeout\n * @external Timeout\n * @see {@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}\n */","meta":{"filename":"index.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Timeout
","kind":"external","name":"Timeout","see":["{@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}"],"longname":"external:Timeout","scope":"global","$longname":"external:Timeout","$kind":"external","$docmaLink":"?api#external:Timeout"},{"comment":"/**\n * Voiceline Data\n * @external Voiceline\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":29,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Voiceline Data
","kind":"external","name":"Voiceline","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Voiceline","scope":"global","$longname":"external:Voiceline","$kind":"external","$docmaLink":"?api#external:Voiceline"}],"symbols":["external:Barrage","external:Chapter","external:Equipment","external:EventEmitter","external:Ship","external:Timeout","external:Voiceline","Saratoga","Saratoga#barrages","Saratoga#chapters","Saratoga#equipments","Saratoga#event:debug","Saratoga#event:error","Saratoga#event:ready","Saratoga#event:updateAvailable","Saratoga#ready","Saratoga#ships","Saratoga#store","Saratoga#updater","Saratoga#voicelines","SaratogaEquipments","SaratogaEquipments#all","SaratogaEquipments#category","SaratogaEquipments#filter","SaratogaEquipments#name","SaratogaEquipments#nationality","SaratogaEquipments#search","SaratogaShips","SaratogaShips#filter","SaratogaShips#get","SaratogaShips#id","SaratogaShips#name","SaratogaShips#search","SaratogaShips.ShipExtFilter#class","SaratogaShips.ShipExtFilter#nationality","SaratogaShips.ShipExtFilter#rarity","SaratogaShips.ShipExtFilter#type","SaratogaStore","SaratogaStore#equipments","SaratogaStore#ready","SaratogaStore#saratoga","SaratogaStore#ships","SaratogaStore#updater","SaratogaUpdater","SaratogaUpdater#checkForUpdate","SaratogaUpdater#cronUpdate","SaratogaUpdater#dataDirReady","SaratogaUpdater#saratoga","SaratogaUpdater#store","SaratogaUpdater#updateCache","SaratogaUpdater#updateDataAndCache","SaratogaUpdater#updateLocalData","SaratogaValidator","ShipExtAll","ShipExtAll#get","ShipExtAll#id","ShipExtAll#name","ShipExtFilter"]}},"app":{"title":"Saratoga | An open source Azur Lane local library","routing":{"method":"query","caseSensitive":true},"entrance":"content:readme","base":"/Saratoga/","meta":null,"server":"static","favicon":""},"template":{"name":"docma-template-zebra","description":"Zebra - Default template for Docma. https://github.com/onury/docma","version":"2.3.1","supportedDocmaVersion":">=2.0.0","author":"Onur Yıldırım","license":"MIT","mainHTML":"index.html","options":{"title":{"label":"Saratoga","href":"."},"sidebar":{"enabled":true,"outline":"tree","collapsed":false,"toolbar":true,"itemsFolded":false,"itemsOverflow":"crop","badges":true,"search":true,"animations":true},"symbols":{"autoLink":true,"params":"list","enums":"list","props":"list","meta":false},"navbar":{"enabled":true,"dark":false,"animations":true,"menu":[{"label":"Readme","href":"."},{"label":"Documentation","href":"?api"},{"label":"GitHub","href":"https://github.com/AzurAPI/Saratoga"}],"fixed":true},"logo":null,"contentView":{"bookmarks":false,"faVersion":"5.5.0","faLibs":"all"}}},"partials":{"api":"docma-api","content":"docma-content","notFound":"docma-404"},"elementID":"docma-main","contentElementID":"docma-content","defaultApiName":"_def_","logsEnabled":false}));
!function(){"use strict";var c="path"===docma.app.routing.method;function o(a){return(a.params[1]||"").replace(/\/$/,"")}function a(a,e){a=o(a)||docma._.defaultApiName,a=docma.createRoute(a,DocmaWeb.Route.Type.API);if(!a||!a.exists())return e();a.apply()}docma.app.base&&page.base(docma.app.base),page.redirect("(/)?"+docma.template.main,""),c&&(page("(/)?api/(.+)",a),page("(/)?api(/)?",a),page("(/)?(.*)",function(a,e){a=o(a),a=docma.createRoute(a,DocmaWeb.Route.Type.CONTENT);if(!a||!a.exists())return e();a.apply()})),page("(/)?",function(t,n){!function(){if(c){var a=sessionStorage.getItem("redirectPath")||null;if(a)return sessionStorage.removeItem("redirectPath"),docma.info("Redirecting to:",a),page.redirect(a),1}}()&&setTimeout(function(){var a,e,e=(e=(e=t.querystring)||window.location.search,(e=/^[?&]/.test(e)?e.slice(1):e)||null);if(c){if(e)return n();a=docma._.appEntranceRI}else docma.log("Query-string:",e),a=e?docma.createRouteFromQuery(e):docma._.appEntranceRI;if(!a||!a.exists())return n();function o(){docma._trigger(DocmaWeb.Event.Navigate,[a])}a.isCurrent()?o():a.apply(function(a){200===a&&o()})},100)}),page("*",function(a){docma.warn("Unknown Route:",a.path),docma.log("context:",a),docma.createRoute(null).apply()}),docma.info("Docma SPA Configuration:"),docma.info("App Title: ",docma.app.title),docma.info("Routing Method: ",docma.app.routing.method),docma.info("App Server: ",docma.app.server),docma.info("Base Path: ",docma.app.base),docma.info("Entrance Route ID: ",docma.app.entrance),window.onload=function(){docma._.initialLoad=!0,docma._.appEntranceRI=docma.createRouteFromID(docma.app.entrance),page.start({click:!0,popstate:!0,dispatch:!0,hashbang:!1,decodeURLComponents:!0}),docma.info("Docma SPA loaded!")}}();
\ No newline at end of file
diff --git a/package.json b/package.json
index f91e89c..d6f2b84 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "saratoga",
- "version": "1.1.1-beta",
+ "version": "1.1.2-beta",
"description": "Open Source Azur Lane Local Database",
"main": "index.js",
"scripts": {
From 09b99bbad8da8bf095c9c3c910541989f891d358 Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Sat, 13 Feb 2021 16:34:09 +0800
Subject: [PATCH 11/14] legacy api support
Changed:
- Legacy api support
- Version number
- Regenerated docs
---
docs/js/docma-web.js | 2 +-
package.json | 7 ++-
src/Saratoga.js | 16 +++++
src/store/LegacyEquipments.js | 75 +++++++++++++++++++++++
src/store/LegacyShips.js | 110 ++++++++++++++++++++++++++++++++++
src/store/SaratogaStore.js | 7 +++
tests/Client.js | 10 ----
tests/LegacyClient.js | 10 ++++
8 files changed, 223 insertions(+), 14 deletions(-)
create mode 100644 src/store/LegacyEquipments.js
create mode 100644 src/store/LegacyShips.js
delete mode 100644 tests/Client.js
create mode 100644 tests/LegacyClient.js
diff --git a/docs/js/docma-web.js b/docs/js/docma-web.js
index 3acd0f3..d74c6b8 100644
--- a/docs/js/docma-web.js
+++ b/docs/js/docma-web.js
@@ -44,6 +44,6 @@ dust.filters=dust.filters||{},dust.filters.$pt=function(e){return DocmaWeb.Utils
DocmaWeb.version = "3.2.2";
return DocmaWeb;
})();
-var docma = Object.freeze(new DocmaWeb({"version":"3.2.2","routes":[{"id":"api:","type":"api","name":"_def_","path":"?api","contentPath":null,"sourceType":"js"},{"id":"content:readme","type":"content","name":"readme","path":"?content=readme","contentPath":"content/readme.html","sourceType":"md"}],"apis":{"_def_":{"documentation":[{"comment":"/**\n * Saratoga, the starting point of this API\n * @class Saratoga\n * @extends {EventEmitter}\n */","meta":{"filename":"Saratoga.js","lineno":4,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"Saratoga","augments":["EventEmitter"],"longname":"Saratoga","scope":"global","$longname":"Saratoga","$kind":"class","$docmaLink":"?api#Saratoga","$members":[{"comment":"/**\n * Barrage related getters for this store\n * @type {SaratogaBarrages}\n */","meta":{"range":[2891,2987],"filename":"Saratoga.js","lineno":108,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000166","name":"Saratoga#barrages","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Barrage related getters for this store
","type":{"names":["SaratogaBarrages"]},"name":"barrages","longname":"Saratoga#barrages","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#barrages","$kind":"property","$docmaLink":"?api#Saratoga#barrages"},{"comment":"/**\n * Chapters related getters for this store\n * @type {SaratogaChapters}\n */","meta":{"range":[2493,2589],"filename":"Saratoga.js","lineno":92,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000132","name":"Saratoga#chapters","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Chapters related getters for this store
","type":{"names":["SaratogaChapters"]},"name":"chapters","longname":"Saratoga#chapters","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#chapters","$kind":"property","$docmaLink":"?api#Saratoga#chapters"},{"comment":"/**\n * Azur Lane's Equipment related getter methods\n * @type {SaratogaEquipments}\n */","meta":{"range":[2293,2393],"filename":"Saratoga.js","lineno":84,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000115","name":"Saratoga#equipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"Saratoga#equipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#equipments","$kind":"property","$docmaLink":"?api#Saratoga#equipments"},{"comment":"/**\n * If Saratoga is ready to operate\n * @type {Boolean}\n */","meta":{"range":[1910,1997],"filename":"Saratoga.js","lineno":67,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000080","name":"Saratoga#ready","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"If Saratoga is ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"Saratoga#ready","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ready","$kind":"property","$docmaLink":"?api#Saratoga#ready"},{"comment":"/**\n * Azur Lane's Ship related getter methods\n * @type {SaratogaShips}\n */","meta":{"range":[2095,2185],"filename":"Saratoga.js","lineno":75,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000098","name":"Saratoga#ships","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"Saratoga#ships","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ships","$kind":"property","$docmaLink":"?api#Saratoga#ships"},{"comment":"/**\n * Contains methods and props for managing cached data\n * @type {SaratogaStore}\n */","meta":{"range":[567,603],"filename":"Saratoga.js","lineno":19,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000053","name":"this.store","type":"NewExpression","value":"","paramnames":[]}},"description":"Contains methods and props for managing cached data
","type":{"names":["SaratogaStore"]},"name":"store","longname":"Saratoga#store","kind":"member","memberof":"Saratoga","scope":"instance","$longname":"Saratoga#store","$kind":"property","$docmaLink":"?api#Saratoga#store"},{"comment":"/**\n * Contains methods for updating Saratoga's local data & cache\n * @type {SaratogaUpdater}\n */","meta":{"range":[1770,1826],"filename":"Saratoga.js","lineno":59,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000070","name":"Saratoga#updater","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Contains methods for updating Saratoga's local data & cache
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"Saratoga#updater","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#updater","$kind":"property","$docmaLink":"?api#Saratoga#updater"},{"comment":"/**\n * Voiceline related getters for this store\n * @type {SaratogaVoicelines}\n */","meta":{"range":[2692,2792],"filename":"Saratoga.js","lineno":100,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000149","name":"Saratoga#voicelines","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Voiceline related getters for this store
","type":{"names":["SaratogaVoicelines"]},"name":"voicelines","longname":"Saratoga#voicelines","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#voicelines","$kind":"property","$docmaLink":"?api#Saratoga#voicelines"},{"comment":"/**\n * Emitted when there is a debug data\n * @event Saratoga#debug\n * @param {string} message Debug message\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":23,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a debug data
","kind":"event","name":"debug","params":[{"type":{"names":["string"]},"description":"Debug message
","name":"message"}],"memberof":"Saratoga","longname":"Saratoga#event:debug","scope":"instance","$longname":"Saratoga#event:debug","$kind":"event","$docmaLink":"?api#Saratoga#event:debug"},{"comment":"/**\n * Emitted when there is a pesky error\n * @event Saratoga#error\n * @param {Error} error The error encountered.\n * @memberof Saratoga\n * @example\n * Saratoga.on('error', console.error);\n */","meta":{"filename":"Saratoga.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a pesky error
","kind":"event","name":"error","params":[{"type":{"names":["Error"]},"description":"The error encountered.
","name":"error"}],"memberof":"Saratoga","examples":["Saratoga.on('error', console.error);"],"longname":"Saratoga#event:error","scope":"instance","$longname":"Saratoga#event:error","$kind":"event","$docmaLink":"?api#Saratoga#event:error"},{"comment":"/**\n * Emitted when Saratoga is ready\n * @event Saratoga#ready\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":49,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when Saratoga is ready
","kind":"event","name":"ready","memberof":"Saratoga","longname":"Saratoga#event:ready","scope":"instance","$longname":"Saratoga#event:ready","$kind":"event","$docmaLink":"?api#Saratoga#event:ready"},{"comment":"/**\n * Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true\n * @event Saratoga#updateAvailable\n * @param {Object} data What data needs updating\n * @memberof Saratoga\n * @example\n * Saratoga.on('updateAvailable', (data) => {\n * if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n * // handle update\n * }\n * })\n */","meta":{"filename":"Saratoga.js","lineno":37,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true
","kind":"event","name":"updateAvailable","params":[{"type":{"names":["Object"]},"description":"What data needs updating
","name":"data"}],"memberof":"Saratoga","examples":["Saratoga.on('updateAvailable', (data) => {\n if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n // handle update\n }\n})"],"longname":"Saratoga#event:updateAvailable","scope":"instance","$longname":"Saratoga#event:updateAvailable","$kind":"event","$docmaLink":"?api#Saratoga#event:updateAvailable"}],"$constructor":{"comment":"/**\n * @param {Object} options Object with a single parameter, which is notifyForNewUpdates, which is a boolean\n */","meta":{"range":[366,679],"filename":"Saratoga.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000040","name":"Saratoga","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"description":"Object with a single parameter, which is notifyForNewUpdates, which is a boolean
","name":"options"}],"name":"Saratoga","longname":"Saratoga","kind":"class","scope":"global","$longname":"Saratoga","$kind":"constructor","$docmaLink":"?api#Saratoga"}},{"comment":"/**\n * Equipment related getters for Saratoga\n * @class SaratogaEquipments\n */","meta":{"filename":"SaratogaEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments","$members":[{"comment":"/**\n * Get an unfiltered equipment list\n */","meta":{"range":[2442,2526],"filename":"SaratogaEquipments.js","lineno":79,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000407","name":"SaratogaEquipments#all","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Get an unfiltered equipment list
","name":"all","longname":"SaratogaEquipments#all","kind":"function","memberof":"SaratogaEquipments","scope":"instance","params":[],"$longname":"SaratogaEquipments#all","$kind":"method","$docmaLink":"?api#SaratogaEquipments#all"},{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[751,885],"filename":"SaratogaEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000251","name":"SaratogaEquipments#category","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"category","longname":"SaratogaEquipments#category","kind":"function","scope":"instance","$longname":"SaratogaEquipments#category","$kind":"method","$docmaLink":"?api#SaratogaEquipments#category"},{"comment":"/**\n * Custom filter for equipment data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[2668,2780],"filename":"SaratogaEquipments.js","lineno":88,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000422","name":"SaratogaEquipments#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for equipment data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaEquipments#filter","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#filter","$kind":"method","$docmaLink":"?api#SaratogaEquipments#filter"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {string} language optional language to search by\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1638,2380],"filename":"SaratogaEquipments.js","lineno":53,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000303","name":"SaratogaEquipments#name","type":"MethodDefinition","paramnames":["name","language","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["string"]},"description":"optional language to search by
","name":"language"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"name","longname":"SaratogaEquipments#name","kind":"function","scope":"instance","$longname":"SaratogaEquipments#name","$kind":"method","$docmaLink":"?api#SaratogaEquipments#name"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1122,1268],"filename":"SaratogaEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000277","name":"SaratogaEquipments#nationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"nationality","longname":"SaratogaEquipments#nationality","kind":"function","scope":"instance","$longname":"SaratogaEquipments#nationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments#nationality"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2896,3003],"filename":"SaratogaEquipments.js","lineno":96,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000442","name":"SaratogaEquipments#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaEquipments#search","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#search","$kind":"method","$docmaLink":"?api#SaratogaEquipments#search"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[213,321],"filename":"SaratogaEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000198","name":"SaratogaEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaEquipments","longname":"SaratogaEquipments","kind":"class","scope":"global","$longname":"SaratogaEquipments","$kind":"constructor","$docmaLink":"?api#SaratogaEquipments"}},{"comment":"/**\n * Ship related getters for Saratoga\n * @class SaratogaShips\n */","meta":{"filename":"SaratogaShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips","$members":[{"comment":"/**\n * Custom filter for ship data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[2763,2875],"filename":"SaratogaShips.js","lineno":94,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000753","name":"SaratogaShips#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for ship data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaShips#filter","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#filter","$kind":"method","$docmaLink":"?api#SaratogaShips#filter"},{"comment":"/**\n * Search from all ships\n * @param {number | string} id \n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[666,1089],"filename":"SaratogaShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000526","name":"SaratogaShips#get","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Search from all ships
","params":[{"type":{"names":["number","string"]},"name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"get","longname":"SaratogaShips#get","kind":"function","scope":"instance","$longname":"SaratogaShips#get","$kind":"method","$docmaLink":"?api#SaratogaShips#get"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[1273,1447],"filename":"SaratogaShips.js","lineno":50,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000599","name":"SaratogaShips#id","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"id","longname":"SaratogaShips#id","kind":"function","scope":"instance","$longname":"SaratogaShips#id","$kind":"method","$docmaLink":"?api#SaratogaShips#id"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {string} language optional language to search by\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[1797,2627],"filename":"SaratogaShips.js","lineno":65,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000636","name":"SaratogaShips#name","type":"MethodDefinition","paramnames":["name","language","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["string"]},"description":"optional language to search by
","name":"language"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"name","longname":"SaratogaShips#name","kind":"function","scope":"instance","$longname":"SaratogaShips#name","$kind":"method","$docmaLink":"?api#SaratogaShips#name"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2991,3098],"filename":"SaratogaShips.js","lineno":102,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000773","name":"SaratogaShips#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaShips#search","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#search","$kind":"method","$docmaLink":"?api#SaratogaShips#search"},{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[4410,4540],"filename":"SaratogaShips.js","lineno":166,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000930","name":"ShipExtFilter#class","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#class","longname":"SaratogaShips.ShipExtFilter#class","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#class","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#class"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[4797,4943],"filename":"SaratogaShips.js","lineno":177,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000956","name":"ShipExtFilter#nationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#nationality","longname":"SaratogaShips.ShipExtFilter#nationality","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#nationality","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#nationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[5558,5684],"filename":"SaratogaShips.js","lineno":199,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001008","name":"ShipExtFilter#rarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#rarity","longname":"SaratogaShips.ShipExtFilter#rarity","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#rarity","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#rarity"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[5192,5322],"filename":"SaratogaShips.js","lineno":188,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000982","name":"ShipExtFilter#type","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#type","longname":"SaratogaShips.ShipExtFilter#type","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#type","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#type"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[198,306],"filename":"SaratogaShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000473","name":"SaratogaShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaShips","longname":"SaratogaShips","kind":"class","scope":"global","$longname":"SaratogaShips","$kind":"constructor","$docmaLink":"?api#SaratogaShips"}},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class SaratogaStore\n */","meta":{"filename":"SaratogaStore.js","lineno":9,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"SaratogaStore","longname":"SaratogaStore","scope":"global","$longname":"SaratogaStore","$kind":"class","$docmaLink":"?api#SaratogaStore","$members":[{"comment":"/**\n * Equipment related getters for this store\n * @type {SaratogaEquipments}\n */","meta":{"range":[1101,1147],"filename":"SaratogaStore.js","lineno":34,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001130","name":"this.equipments","type":"NewExpression","value":"","paramnames":[]}},"description":"Equipment related getters for this store
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"SaratogaStore#equipments","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#equipments","$kind":"property","$docmaLink":"?api#SaratogaStore#equipments"},{"comment":"/**\n * If this store is already ready to operate\n * @type {Boolean}\n */","meta":{"range":[1927,1945],"filename":"SaratogaStore.js","lineno":59,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001146","name":"this.ready","type":"Literal","value":false,"paramnames":[]}},"description":"If this store is already ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"SaratogaStore#ready","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ready","$kind":"property","$docmaLink":"?api#SaratogaStore#ready"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[705,729],"filename":"SaratogaStore.js","lineno":22,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001096","name":"this.saratoga","type":"Identifier","value":"saratoga","paramnames":[]}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaStore#saratoga","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#saratoga","$kind":"property","$docmaLink":"?api#SaratogaStore#saratoga"},{"comment":"/**\n * Ship related getters for this store\n * @type {SaratogaShips}\n */","meta":{"range":[843,879],"filename":"SaratogaStore.js","lineno":27,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001102","name":"this.ships","type":"NewExpression","value":"","paramnames":[]}},"description":"Ship related getters for this store
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"SaratogaStore#ships","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ships","$kind":"property","$docmaLink":"?api#SaratogaStore#ships"},{"comment":"/**\n * Updater Class for the local data for this store\n * @type {SaratogaUpdater}\n */","meta":{"range":[1773,1813],"filename":"SaratogaStore.js","lineno":54,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001138","name":"this.updater","type":"NewExpression","value":"","paramnames":[]}},"description":"Updater Class for the local data for this store
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"SaratogaStore#updater","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#updater","$kind":"property","$docmaLink":"?api#SaratogaStore#updater"}],"$constructor":{"comment":"/**\n * @param {Saratoga} saratoga The saratoga class that generated this instance\n */","meta":{"range":[559,2778],"filename":"SaratogaStore.js","lineno":17,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001090","name":"SaratogaStore","type":"MethodDefinition","paramnames":["saratoga"]},"vars":{"":null}},"params":[{"type":{"names":["Saratoga"]},"description":"The saratoga class that generated this instance
","name":"saratoga"}],"name":"SaratogaStore","longname":"SaratogaStore","kind":"class","scope":"global","$longname":"SaratogaStore","$kind":"constructor","$docmaLink":"?api#SaratogaStore"}},{"comment":"/**\n * Manages the local data & cache updates\n * @class SaratogaUpdater\n */","meta":{"filename":"SaratogaUpdater.js","lineno":5,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{}},"description":"Manages the local data & cache updates
","kind":"class","name":"SaratogaUpdater","longname":"SaratogaUpdater","scope":"global","$longname":"SaratogaUpdater","$kind":"class","$docmaLink":"?api#SaratogaUpdater","$members":[{"comment":"/**\n * Checks if there is new updates for ship or equipment data\n * @memberof SaratogaUpdater\n * @returns {Promise}\n * @example\n * const api = new Saratoga();\n * api.updater.checkForUpdate()\n * .then((response) => {\n * if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n * })\n */","meta":{"range":[3577,3989],"filename":"SaratogaUpdater.js","lineno":90,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002157","name":"SaratogaUpdater#checkForUpdate","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Checks if there is new updates for ship or equipment data
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"examples":["const api = new Saratoga();\napi.updater.checkForUpdate()\n .then((response) => {\n if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n })"],"name":"checkForUpdate","longname":"SaratogaUpdater#checkForUpdate","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#checkForUpdate","$kind":"method","$docmaLink":"?api#SaratogaUpdater#checkForUpdate"},{"comment":"/**\n * Updates the Cached Data, loaded from the local files of Saratoga\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[5374,5549],"filename":"SaratogaUpdater.js","lineno":135,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002277","name":"SaratogaUpdater#updateCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Cached Data, loaded from the local files of Saratoga
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateCache","longname":"SaratogaUpdater#updateCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateCache"},{"comment":"/**\n * Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[3070,3176],"filename":"SaratogaUpdater.js","lineno":74,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002141","name":"SaratogaUpdater#updateDataAndCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateDataAndCache","longname":"SaratogaUpdater#updateDataAndCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateDataAndCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateDataAndCache"},{"comment":"/**\n * Updates the Local Files of Saratoga if there is an update\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[4141,5215],"filename":"SaratogaUpdater.js","lineno":104,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002177","name":"SaratogaUpdater#updateLocalData","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files of Saratoga if there is an update
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateLocalData","longname":"SaratogaUpdater#updateLocalData","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateLocalData","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateLocalData"},{"comment":"/**\n * The cron update checker which is responsible for Saratoga#updateAvailable event\n * @type {?Timeout}\n */","meta":{"range":[830,852],"filename":"SaratogaUpdater.js","lineno":28,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001871","name":"this.cronUpdate","type":"Literal","value":null,"paramnames":[]}},"description":"The cron update checker which is responsible for Saratoga#updateAvailable event
","type":{"names":["Timeout"]},"nullable":true,"name":"cronUpdate","longname":"SaratogaUpdater#cronUpdate","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#cronUpdate","$kind":"property","$docmaLink":"?api#SaratogaUpdater#cronUpdate"},{"comment":"/**\n * If the data directory of this updater is ready to operate\n * @type {Boolean}\n */","meta":{"range":[652,677],"filename":"SaratogaUpdater.js","lineno":23,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001865","name":"this.dataDirReady","type":"Literal","value":false,"paramnames":[]}},"description":"If the data directory of this updater is ready to operate
","type":{"names":["Boolean"]},"name":"dataDirReady","longname":"SaratogaUpdater#dataDirReady","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#dataDirReady","$kind":"property","$docmaLink":"?api#SaratogaUpdater#dataDirReady"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[963,1021],"filename":"SaratogaUpdater.js","lineno":35,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001876","name":"SaratogaUpdater#saratoga","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaUpdater#saratoga","kind":"member","memberof":"SaratogaUpdater","scope":"instance","params":[],"$longname":"SaratogaUpdater#saratoga","$kind":"property","$docmaLink":"?api#SaratogaUpdater#saratoga"},{"comment":"/**\n * The updater instance that generated this instance\n * @type {SaratogaStore}\n */","meta":{"range":[504,522],"filename":"SaratogaUpdater.js","lineno":18,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001859","name":"this.store","type":"Identifier","value":"store","paramnames":[]}},"description":"The updater instance that generated this instance
","type":{"names":["SaratogaStore"]},"name":"store","longname":"SaratogaUpdater#store","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#store","$kind":"property","$docmaLink":"?api#SaratogaUpdater#store"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[357,859],"filename":"SaratogaUpdater.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100001853","name":"SaratogaUpdater","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaUpdater","longname":"SaratogaUpdater","kind":"class","scope":"global","$longname":"SaratogaUpdater","$kind":"constructor","$docmaLink":"?api#SaratogaUpdater"}},{"comment":"","meta":{"range":[122,250],"filename":"SaratogaValidator.js","lineno":5,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002668","name":"SaratogaValidator","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"SaratogaValidator","longname":"SaratogaValidator","kind":"class","scope":"global","params":[],"$longname":"SaratogaValidator","$kind":"constructor","$docmaLink":"?api#SaratogaValidator"},{"comment":"","meta":{"range":[3147,3185],"filename":"SaratogaShips.js","lineno":109,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000797","name":"ShipExtAll","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"ShipExtAll","longname":"ShipExtAll","kind":"class","scope":"global","params":[],"$longname":"ShipExtAll","$kind":"constructor","$docmaLink":"?api#ShipExtAll"},{"comment":"","meta":{"range":[4130,4168],"filename":"SaratogaShips.js","lineno":157,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000923","name":"ShipExtFilter","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"ShipExtFilter","longname":"ShipExtFilter","kind":"class","scope":"global","params":[],"$longname":"ShipExtFilter","$kind":"constructor","$docmaLink":"?api#ShipExtFilter"},{"comment":"/**\n * Get an unfiltered ship list\n */","meta":{"range":[3242,3326],"filename":"SaratogaShips.js","lineno":116,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000804","name":"ShipExtAll#get","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Get an unfiltered ship list
","name":"get","longname":"ShipExtAll#get","kind":"function","memberof":"ShipExtAll","scope":"instance","params":[],"$longname":"ShipExtAll#get","$kind":"method","$docmaLink":"?api#ShipExtAll#get"},{"comment":"/**\n * Filter ships via id\n */","meta":{"range":[3992,4078],"filename":"SaratogaShips.js","lineno":150,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000902","name":"ShipExtAll#id","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Filter ships via id
","name":"id","longname":"ShipExtAll#id","kind":"function","memberof":"ShipExtAll","scope":"instance","params":[],"$longname":"ShipExtAll#id","$kind":"method","$docmaLink":"?api#ShipExtAll#id"},{"comment":"/**\n * Filter ships via language\n * @param {string} language \n */","meta":{"range":[3414,3943],"filename":"SaratogaShips.js","lineno":125,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000819","name":"ShipExtAll#name","type":"MethodDefinition","paramnames":["language"]},"vars":{"":null}},"description":"Filter ships via language
","params":[{"type":{"names":["string"]},"name":"language"}],"name":"name","longname":"ShipExtAll#name","kind":"function","memberof":"ShipExtAll","scope":"instance","$longname":"ShipExtAll#name","$kind":"method","$docmaLink":"?api#ShipExtAll#name"},{"comment":"/**\n * Barrage Data\n * @external Barrage\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":34,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Barrage Data
","kind":"external","name":"Barrage","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Barrage","scope":"global","$longname":"external:Barrage","$kind":"external","$docmaLink":"?api#external:Barrage"},{"comment":"/**\n * Chapter Data\n * @external Chapter\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":24,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Chapter Data
","kind":"external","name":"Chapter","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Chapter","scope":"global","$longname":"external:Chapter","$kind":"external","$docmaLink":"?api#external:Chapter"},{"comment":"/**\n * Equipment Data\n * @external Equipment\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":19,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Equipment Data
","kind":"external","name":"Equipment","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Equipment","scope":"global","$longname":"external:Equipment","$kind":"external","$docmaLink":"?api#external:Equipment"},{"comment":"/**\n * Node.js Event Emitter\n * @external EventEmitter\n * @see {@link https://nodejs.org/api/events.html}\n */","meta":{"filename":"index.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Event Emitter
","kind":"external","name":"EventEmitter","see":["{@link https://nodejs.org/api/events.html}"],"longname":"external:EventEmitter","scope":"global","$longname":"external:EventEmitter","$kind":"external","$docmaLink":"?api#external:EventEmitter"},{"comment":"/**\n * Ship Data\n * @external Ship\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}\n */","meta":{"filename":"index.js","lineno":13,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Ship Data
","kind":"external","name":"Ship","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}"],"longname":"external:Ship","scope":"global","$longname":"external:Ship","$kind":"external","$docmaLink":"?api#external:Ship"},{"comment":"/**\n * Node.js Timeout\n * @external Timeout\n * @see {@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}\n */","meta":{"filename":"index.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Timeout
","kind":"external","name":"Timeout","see":["{@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}"],"longname":"external:Timeout","scope":"global","$longname":"external:Timeout","$kind":"external","$docmaLink":"?api#external:Timeout"},{"comment":"/**\n * Voiceline Data\n * @external Voiceline\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":29,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Voiceline Data
","kind":"external","name":"Voiceline","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Voiceline","scope":"global","$longname":"external:Voiceline","$kind":"external","$docmaLink":"?api#external:Voiceline"}],"symbols":["external:Barrage","external:Chapter","external:Equipment","external:EventEmitter","external:Ship","external:Timeout","external:Voiceline","Saratoga","Saratoga#barrages","Saratoga#chapters","Saratoga#equipments","Saratoga#event:debug","Saratoga#event:error","Saratoga#event:ready","Saratoga#event:updateAvailable","Saratoga#ready","Saratoga#ships","Saratoga#store","Saratoga#updater","Saratoga#voicelines","SaratogaEquipments","SaratogaEquipments#all","SaratogaEquipments#category","SaratogaEquipments#filter","SaratogaEquipments#name","SaratogaEquipments#nationality","SaratogaEquipments#search","SaratogaShips","SaratogaShips#filter","SaratogaShips#get","SaratogaShips#id","SaratogaShips#name","SaratogaShips#search","SaratogaShips.ShipExtFilter#class","SaratogaShips.ShipExtFilter#nationality","SaratogaShips.ShipExtFilter#rarity","SaratogaShips.ShipExtFilter#type","SaratogaStore","SaratogaStore#equipments","SaratogaStore#ready","SaratogaStore#saratoga","SaratogaStore#ships","SaratogaStore#updater","SaratogaUpdater","SaratogaUpdater#checkForUpdate","SaratogaUpdater#cronUpdate","SaratogaUpdater#dataDirReady","SaratogaUpdater#saratoga","SaratogaUpdater#store","SaratogaUpdater#updateCache","SaratogaUpdater#updateDataAndCache","SaratogaUpdater#updateLocalData","SaratogaValidator","ShipExtAll","ShipExtAll#get","ShipExtAll#id","ShipExtAll#name","ShipExtFilter"]}},"app":{"title":"Saratoga | An open source Azur Lane local library","routing":{"method":"query","caseSensitive":true},"entrance":"content:readme","base":"/Saratoga/","meta":null,"server":"static","favicon":""},"template":{"name":"docma-template-zebra","description":"Zebra - Default template for Docma. https://github.com/onury/docma","version":"2.3.1","supportedDocmaVersion":">=2.0.0","author":"Onur Yıldırım","license":"MIT","mainHTML":"index.html","options":{"title":{"label":"Saratoga","href":"."},"sidebar":{"enabled":true,"outline":"tree","collapsed":false,"toolbar":true,"itemsFolded":false,"itemsOverflow":"crop","badges":true,"search":true,"animations":true},"symbols":{"autoLink":true,"params":"list","enums":"list","props":"list","meta":false},"navbar":{"enabled":true,"dark":false,"animations":true,"menu":[{"label":"Readme","href":"."},{"label":"Documentation","href":"?api"},{"label":"GitHub","href":"https://github.com/AzurAPI/Saratoga"}],"fixed":true},"logo":null,"contentView":{"bookmarks":false,"faVersion":"5.5.0","faLibs":"all"}}},"partials":{"api":"docma-api","content":"docma-content","notFound":"docma-404"},"elementID":"docma-main","contentElementID":"docma-content","defaultApiName":"_def_","logsEnabled":false}));
+var docma = Object.freeze(new DocmaWeb({"version":"3.2.2","routes":[{"id":"api:","type":"api","name":"_def_","path":"?api","contentPath":null,"sourceType":"js"},{"id":"content:readme","type":"content","name":"readme","path":"?content=readme","contentPath":"content/readme.html","sourceType":"md"}],"apis":{"_def_":{"documentation":[{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[226,334],"filename":"LegacyEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000228","name":"LegacyEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"LegacyEquipments","longname":"LegacyEquipments","kind":"class","scope":"global","$longname":"LegacyEquipments","$kind":"constructor","$docmaLink":"?api#LegacyEquipments"},{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[211,319],"filename":"LegacyShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000421","name":"LegacyShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"LegacyShips","longname":"LegacyShips","kind":"class","scope":"global","$longname":"LegacyShips","$kind":"constructor","$docmaLink":"?api#LegacyShips"},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class Saratoga\n * @extends {EventEmitter}\n */","meta":{"filename":"Saratoga.js","lineno":4,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"Saratoga","augments":["EventEmitter"],"longname":"Saratoga","scope":"global","$longname":"Saratoga","$kind":"class","$docmaLink":"?api#Saratoga","$members":[{"comment":"/**\n * Barrage related getters for this store\n * @type {SaratogaBarrages}\n */","meta":{"range":[2891,2987],"filename":"Saratoga.js","lineno":108,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000166","name":"Saratoga#barrages","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Barrage related getters for this store
","type":{"names":["SaratogaBarrages"]},"name":"barrages","longname":"Saratoga#barrages","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#barrages","$kind":"property","$docmaLink":"?api#Saratoga#barrages"},{"comment":"/**\n * Chapters related getters for this store\n * @type {SaratogaChapters}\n */","meta":{"range":[2493,2589],"filename":"Saratoga.js","lineno":92,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000132","name":"Saratoga#chapters","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Chapters related getters for this store
","type":{"names":["SaratogaChapters"]},"name":"chapters","longname":"Saratoga#chapters","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#chapters","$kind":"property","$docmaLink":"?api#Saratoga#chapters"},{"comment":"/**\n * Azur Lane's Equipment related getter methods\n * @type {SaratogaEquipments}\n */","meta":{"range":[2293,2393],"filename":"Saratoga.js","lineno":84,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000115","name":"Saratoga#equipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"Saratoga#equipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#equipments","$kind":"property","$docmaLink":"?api#Saratoga#equipments"},{"comment":"/**\n * Azur Lane's Equipment related getter methods with LegacyAPI\n * @type {SaratogaLegacyEquipments}\n */","meta":{"range":[3335,3447],"filename":"Saratoga.js","lineno":124,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000200","name":"Saratoga#legacyEquipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods with LegacyAPI
","type":{"names":["SaratogaLegacyEquipments"]},"name":"legacyEquipments","longname":"Saratoga#legacyEquipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#legacyEquipments","$kind":"property","$docmaLink":"?api#Saratoga#legacyEquipments"},{"comment":"/**\n * Azur Lane's Ship related getter methods with LegacyAPI\n * @type {SaratogaLegacyShips}\n */","meta":{"range":[3105,3207],"filename":"Saratoga.js","lineno":116,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000183","name":"Saratoga#legacyShips","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods with LegacyAPI
","type":{"names":["SaratogaLegacyShips"]},"name":"legacyShips","longname":"Saratoga#legacyShips","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#legacyShips","$kind":"property","$docmaLink":"?api#Saratoga#legacyShips"},{"comment":"/**\n * If Saratoga is ready to operate\n * @type {Boolean}\n */","meta":{"range":[1910,1997],"filename":"Saratoga.js","lineno":67,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000080","name":"Saratoga#ready","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"If Saratoga is ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"Saratoga#ready","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ready","$kind":"property","$docmaLink":"?api#Saratoga#ready"},{"comment":"/**\n * Azur Lane's Ship related getter methods\n * @type {SaratogaShips}\n */","meta":{"range":[2095,2185],"filename":"Saratoga.js","lineno":75,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000098","name":"Saratoga#ships","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"Saratoga#ships","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ships","$kind":"property","$docmaLink":"?api#Saratoga#ships"},{"comment":"/**\n * Contains methods and props for managing cached data\n * @type {SaratogaStore}\n */","meta":{"range":[567,603],"filename":"Saratoga.js","lineno":19,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000053","name":"this.store","type":"NewExpression","value":"","paramnames":[]}},"description":"Contains methods and props for managing cached data
","type":{"names":["SaratogaStore"]},"name":"store","longname":"Saratoga#store","kind":"member","memberof":"Saratoga","scope":"instance","$longname":"Saratoga#store","$kind":"property","$docmaLink":"?api#Saratoga#store"},{"comment":"/**\n * Contains methods for updating Saratoga's local data & cache\n * @type {SaratogaUpdater}\n */","meta":{"range":[1770,1826],"filename":"Saratoga.js","lineno":59,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000070","name":"Saratoga#updater","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Contains methods for updating Saratoga's local data & cache
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"Saratoga#updater","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#updater","$kind":"property","$docmaLink":"?api#Saratoga#updater"},{"comment":"/**\n * Voiceline related getters for this store\n * @type {SaratogaVoicelines}\n */","meta":{"range":[2692,2792],"filename":"Saratoga.js","lineno":100,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000149","name":"Saratoga#voicelines","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Voiceline related getters for this store
","type":{"names":["SaratogaVoicelines"]},"name":"voicelines","longname":"Saratoga#voicelines","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#voicelines","$kind":"property","$docmaLink":"?api#Saratoga#voicelines"},{"comment":"/**\n * Emitted when there is a debug data\n * @event Saratoga#debug\n * @param {string} message Debug message\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":23,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a debug data
","kind":"event","name":"debug","params":[{"type":{"names":["string"]},"description":"Debug message
","name":"message"}],"memberof":"Saratoga","longname":"Saratoga#event:debug","scope":"instance","$longname":"Saratoga#event:debug","$kind":"event","$docmaLink":"?api#Saratoga#event:debug"},{"comment":"/**\n * Emitted when there is a pesky error\n * @event Saratoga#error\n * @param {Error} error The error encountered.\n * @memberof Saratoga\n * @example\n * Saratoga.on('error', console.error);\n */","meta":{"filename":"Saratoga.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a pesky error
","kind":"event","name":"error","params":[{"type":{"names":["Error"]},"description":"The error encountered.
","name":"error"}],"memberof":"Saratoga","examples":["Saratoga.on('error', console.error);"],"longname":"Saratoga#event:error","scope":"instance","$longname":"Saratoga#event:error","$kind":"event","$docmaLink":"?api#Saratoga#event:error"},{"comment":"/**\n * Emitted when Saratoga is ready\n * @event Saratoga#ready\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":49,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when Saratoga is ready
","kind":"event","name":"ready","memberof":"Saratoga","longname":"Saratoga#event:ready","scope":"instance","$longname":"Saratoga#event:ready","$kind":"event","$docmaLink":"?api#Saratoga#event:ready"},{"comment":"/**\n * Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true\n * @event Saratoga#updateAvailable\n * @param {Object} data What data needs updating\n * @memberof Saratoga\n * @example\n * Saratoga.on('updateAvailable', (data) => {\n * if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n * // handle update\n * }\n * })\n */","meta":{"filename":"Saratoga.js","lineno":37,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true
","kind":"event","name":"updateAvailable","params":[{"type":{"names":["Object"]},"description":"What data needs updating
","name":"data"}],"memberof":"Saratoga","examples":["Saratoga.on('updateAvailable', (data) => {\n if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n // handle update\n }\n})"],"longname":"Saratoga#event:updateAvailable","scope":"instance","$longname":"Saratoga#event:updateAvailable","$kind":"event","$docmaLink":"?api#Saratoga#event:updateAvailable"}],"$constructor":{"comment":"/**\n * @param {Object} options Object with a single parameter, which is notifyForNewUpdates, which is a boolean\n */","meta":{"range":[366,679],"filename":"Saratoga.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000040","name":"Saratoga","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"description":"Object with a single parameter, which is notifyForNewUpdates, which is a boolean
","name":"options"}],"name":"Saratoga","longname":"Saratoga","kind":"class","scope":"global","$longname":"Saratoga","$kind":"constructor","$docmaLink":"?api#Saratoga"}},{"comment":"/**\n * Equipment related getters for Saratoga with LegacyAPI\n * @class SaratogaEquipments\n */","meta":{"filename":"LegacyEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga with LegacyAPI
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments","$members":[{"comment":"/**\n * Get an unfiltered equipment list\n */","meta":{"range":[2442,2526],"filename":"SaratogaEquipments.js","lineno":79,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000916","name":"SaratogaEquipments#all","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Get an unfiltered equipment list
","name":"all","longname":"SaratogaEquipments#all","kind":"function","memberof":"SaratogaEquipments","scope":"instance","params":[],"$longname":"SaratogaEquipments#all","$kind":"method","$docmaLink":"?api#SaratogaEquipments#all"},{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[751,885],"filename":"SaratogaEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000760","name":"SaratogaEquipments#category","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"category","longname":"SaratogaEquipments#category","kind":"function","scope":"instance","$longname":"SaratogaEquipments#category","$kind":"method","$docmaLink":"?api#SaratogaEquipments#category"},{"comment":"/**\n * Custom filter for equipment data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[2668,2780],"filename":"SaratogaEquipments.js","lineno":88,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000931","name":"SaratogaEquipments#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for equipment data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaEquipments#filter","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#filter","$kind":"method","$docmaLink":"?api#SaratogaEquipments#filter"},{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[764,906],"filename":"LegacyEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000281","name":"LegacyEquipments#getAllByCategory","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyEquipments#getAllByCategory","longname":"SaratogaEquipments.LegacyEquipments#getAllByCategory","kind":"function","scope":"static","$longname":"SaratogaEquipments.LegacyEquipments#getAllByCategory","$kind":"method","$docmaLink":"?api#SaratogaEquipments.LegacyEquipments#getAllByCategory"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1143,1297],"filename":"LegacyEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000307","name":"LegacyEquipments#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyEquipments#getAllByNationality","longname":"SaratogaEquipments.LegacyEquipments#getAllByNationality","kind":"function","scope":"static","$longname":"SaratogaEquipments.LegacyEquipments#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments.LegacyEquipments#getAllByNationality"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1604,1848],"filename":"LegacyEquipments.js","lineno":52,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000333","name":"LegacyEquipments#searchByEquipmentName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"LegacyEquipments#searchByEquipmentName","longname":"SaratogaEquipments.LegacyEquipments#searchByEquipmentName","kind":"function","scope":"static","$longname":"SaratogaEquipments.LegacyEquipments#searchByEquipmentName","$kind":"method","$docmaLink":"?api#SaratogaEquipments.LegacyEquipments#searchByEquipmentName"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {string} language optional language to search by\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1638,2380],"filename":"SaratogaEquipments.js","lineno":53,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000812","name":"SaratogaEquipments#name","type":"MethodDefinition","paramnames":["name","language","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["string"]},"description":"optional language to search by
","name":"language"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"name","longname":"SaratogaEquipments#name","kind":"function","scope":"instance","$longname":"SaratogaEquipments#name","$kind":"method","$docmaLink":"?api#SaratogaEquipments#name"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1122,1268],"filename":"SaratogaEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000786","name":"SaratogaEquipments#nationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"nationality","longname":"SaratogaEquipments#nationality","kind":"function","scope":"instance","$longname":"SaratogaEquipments#nationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments#nationality"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2896,3003],"filename":"SaratogaEquipments.js","lineno":96,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000951","name":"SaratogaEquipments#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaEquipments#search","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#search","$kind":"method","$docmaLink":"?api#SaratogaEquipments#search"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[213,321],"filename":"SaratogaEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000707","name":"SaratogaEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaEquipments","longname":"SaratogaEquipments","kind":"class","scope":"global","$longname":"SaratogaEquipments","$kind":"constructor","$docmaLink":"?api#SaratogaEquipments"}},{"comment":"/**\n * Equipment related getters for Saratoga\n * @class SaratogaEquipments\n */","meta":{"filename":"SaratogaEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments"},{"comment":"/**\n * Ship related getters for Saratoga with LegacyAPI\n * @class SaratogaShips\n */","meta":{"filename":"LegacyShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga with LegacyAPI
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips","$members":[{"comment":"/**\n * Custom filter for ship data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[2763,2875],"filename":"SaratogaShips.js","lineno":94,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001262","name":"SaratogaShips#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for ship data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaShips#filter","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#filter","$kind":"method","$docmaLink":"?api#SaratogaShips#filter"},{"comment":"/**\n * Search from all ships\n * @param {number | string} id \n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[666,1089],"filename":"SaratogaShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001035","name":"SaratogaShips#get","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Search from all ships
","params":[{"type":{"names":["number","string"]},"name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"get","longname":"SaratogaShips#get","kind":"function","scope":"instance","$longname":"SaratogaShips#get","$kind":"method","$docmaLink":"?api#SaratogaShips#get"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[1273,1447],"filename":"SaratogaShips.js","lineno":50,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001108","name":"SaratogaShips#id","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"id","longname":"SaratogaShips#id","kind":"function","scope":"instance","$longname":"SaratogaShips#id","$kind":"method","$docmaLink":"?api#SaratogaShips#id"},{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[774,912],"filename":"LegacyShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000474","name":"LegacyShips#getAllByClass","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByClass","longname":"SaratogaShips.LegacyShips#getAllByClass","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByClass","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByClass"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1572,1714],"filename":"LegacyShips.js","lineno":51,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000526","name":"LegacyShips#getAllByHullType","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByHullType","longname":"SaratogaShips.LegacyShips#getAllByHullType","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByHullType","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByHullType"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1169,1323],"filename":"LegacyShips.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000500","name":"LegacyShips#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByNationality","longname":"SaratogaShips.LegacyShips#getAllByNationality","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByNationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1950,2084],"filename":"LegacyShips.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000552","name":"LegacyShips#getAllByRarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByRarity","longname":"SaratogaShips.LegacyShips#getAllByRarity","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByRarity","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByRarity"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2268,2447],"filename":"LegacyShips.js","lineno":73,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000578","name":"LegacyShips#getById","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"LegacyShips#getById","longname":"SaratogaShips.LegacyShips#getById","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getById","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getById"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2734,2959],"filename":"LegacyShips.js","lineno":87,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000615","name":"LegacyShips#searchShipByName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"LegacyShips#searchShipByName","longname":"SaratogaShips.LegacyShips#searchShipByName","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#searchShipByName","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#searchShipByName"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {string} language optional language to search by\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[1797,2627],"filename":"SaratogaShips.js","lineno":65,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001145","name":"SaratogaShips#name","type":"MethodDefinition","paramnames":["name","language","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["string"]},"description":"optional language to search by
","name":"language"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"name","longname":"SaratogaShips#name","kind":"function","scope":"instance","$longname":"SaratogaShips#name","$kind":"method","$docmaLink":"?api#SaratogaShips#name"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2991,3098],"filename":"SaratogaShips.js","lineno":102,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001282","name":"SaratogaShips#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaShips#search","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#search","$kind":"method","$docmaLink":"?api#SaratogaShips#search"},{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[4410,4540],"filename":"SaratogaShips.js","lineno":166,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001439","name":"ShipExtFilter#class","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#class","longname":"SaratogaShips.ShipExtFilter#class","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#class","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#class"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[4797,4943],"filename":"SaratogaShips.js","lineno":177,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001465","name":"ShipExtFilter#nationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#nationality","longname":"SaratogaShips.ShipExtFilter#nationality","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#nationality","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#nationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[5558,5684],"filename":"SaratogaShips.js","lineno":199,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001517","name":"ShipExtFilter#rarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#rarity","longname":"SaratogaShips.ShipExtFilter#rarity","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#rarity","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#rarity"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[5192,5322],"filename":"SaratogaShips.js","lineno":188,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001491","name":"ShipExtFilter#type","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#type","longname":"SaratogaShips.ShipExtFilter#type","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#type","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#type"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[198,306],"filename":"SaratogaShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000982","name":"SaratogaShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaShips","longname":"SaratogaShips","kind":"class","scope":"global","$longname":"SaratogaShips","$kind":"constructor","$docmaLink":"?api#SaratogaShips"}},{"comment":"/**\n * Ship related getters for Saratoga\n * @class SaratogaShips\n */","meta":{"filename":"SaratogaShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips"},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class SaratogaStore\n */","meta":{"filename":"SaratogaStore.js","lineno":11,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"SaratogaStore","longname":"SaratogaStore","scope":"global","$longname":"SaratogaStore","$kind":"class","$docmaLink":"?api#SaratogaStore","$members":[{"comment":"/**\n * Equipment related getters for this store\n * @type {SaratogaEquipments}\n */","meta":{"range":[1203,1249],"filename":"SaratogaStore.js","lineno":36,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001651","name":"this.equipments","type":"NewExpression","value":"","paramnames":[]}},"description":"Equipment related getters for this store
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"SaratogaStore#equipments","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#equipments","$kind":"property","$docmaLink":"?api#SaratogaStore#equipments"},{"comment":"/**\n * Legacy API instances\n */","meta":{"range":[1813,1853],"filename":"SaratogaStore.js","lineno":55,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001659","name":"this.legacyShips","type":"NewExpression","value":"","paramnames":[]}},"description":"Legacy API instances
","name":"legacyShips","longname":"SaratogaStore#legacyShips","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#legacyShips","$kind":"property","$docmaLink":"?api#SaratogaStore#legacyShips"},{"comment":"/**\n * If this store is already ready to operate\n * @type {Boolean}\n */","meta":{"range":[2193,2211],"filename":"SaratogaStore.js","lineno":66,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001683","name":"this.ready","type":"Literal","value":false,"paramnames":[]}},"description":"If this store is already ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"SaratogaStore#ready","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ready","$kind":"property","$docmaLink":"?api#SaratogaStore#ready"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[807,831],"filename":"SaratogaStore.js","lineno":24,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001617","name":"this.saratoga","type":"Identifier","value":"saratoga","paramnames":[]}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaStore#saratoga","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#saratoga","$kind":"property","$docmaLink":"?api#SaratogaStore#saratoga"},{"comment":"/**\n * Ship related getters for this store\n * @type {SaratogaShips}\n */","meta":{"range":[945,981],"filename":"SaratogaStore.js","lineno":29,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001623","name":"this.ships","type":"NewExpression","value":"","paramnames":[]}},"description":"Ship related getters for this store
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"SaratogaStore#ships","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ships","$kind":"property","$docmaLink":"?api#SaratogaStore#ships"},{"comment":"/**\n * Updater Class for the local data for this store\n * @type {SaratogaUpdater}\n */","meta":{"range":[2039,2079],"filename":"SaratogaStore.js","lineno":61,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001675","name":"this.updater","type":"NewExpression","value":"","paramnames":[]}},"description":"Updater Class for the local data for this store
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"SaratogaStore#updater","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#updater","$kind":"property","$docmaLink":"?api#SaratogaStore#updater"}],"$constructor":{"comment":"/**\n * @param {Saratoga} saratoga The saratoga class that generated this instance\n */","meta":{"range":[661,3044],"filename":"SaratogaStore.js","lineno":19,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001611","name":"SaratogaStore","type":"MethodDefinition","paramnames":["saratoga"]},"vars":{"":null}},"params":[{"type":{"names":["Saratoga"]},"description":"The saratoga class that generated this instance
","name":"saratoga"}],"name":"SaratogaStore","longname":"SaratogaStore","kind":"class","scope":"global","$longname":"SaratogaStore","$kind":"constructor","$docmaLink":"?api#SaratogaStore"}},{"comment":"/**\n * Manages the local data & cache updates\n * @class SaratogaUpdater\n */","meta":{"filename":"SaratogaUpdater.js","lineno":5,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{}},"description":"Manages the local data & cache updates
","kind":"class","name":"SaratogaUpdater","longname":"SaratogaUpdater","scope":"global","$longname":"SaratogaUpdater","$kind":"class","$docmaLink":"?api#SaratogaUpdater","$members":[{"comment":"/**\n * Checks if there is new updates for ship or equipment data\n * @memberof SaratogaUpdater\n * @returns {Promise}\n * @example\n * const api = new Saratoga();\n * api.updater.checkForUpdate()\n * .then((response) => {\n * if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n * })\n */","meta":{"range":[3577,3989],"filename":"SaratogaUpdater.js","lineno":90,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002694","name":"SaratogaUpdater#checkForUpdate","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Checks if there is new updates for ship or equipment data
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"examples":["const api = new Saratoga();\napi.updater.checkForUpdate()\n .then((response) => {\n if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n })"],"name":"checkForUpdate","longname":"SaratogaUpdater#checkForUpdate","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#checkForUpdate","$kind":"method","$docmaLink":"?api#SaratogaUpdater#checkForUpdate"},{"comment":"/**\n * Updates the Cached Data, loaded from the local files of Saratoga\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[5374,5549],"filename":"SaratogaUpdater.js","lineno":135,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002814","name":"SaratogaUpdater#updateCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Cached Data, loaded from the local files of Saratoga
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateCache","longname":"SaratogaUpdater#updateCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateCache"},{"comment":"/**\n * Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[3070,3176],"filename":"SaratogaUpdater.js","lineno":74,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002678","name":"SaratogaUpdater#updateDataAndCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateDataAndCache","longname":"SaratogaUpdater#updateDataAndCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateDataAndCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateDataAndCache"},{"comment":"/**\n * Updates the Local Files of Saratoga if there is an update\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[4141,5215],"filename":"SaratogaUpdater.js","lineno":104,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002714","name":"SaratogaUpdater#updateLocalData","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files of Saratoga if there is an update
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateLocalData","longname":"SaratogaUpdater#updateLocalData","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateLocalData","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateLocalData"},{"comment":"/**\n * The cron update checker which is responsible for Saratoga#updateAvailable event\n * @type {?Timeout}\n */","meta":{"range":[830,852],"filename":"SaratogaUpdater.js","lineno":28,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002408","name":"this.cronUpdate","type":"Literal","value":null,"paramnames":[]}},"description":"The cron update checker which is responsible for Saratoga#updateAvailable event
","type":{"names":["Timeout"]},"nullable":true,"name":"cronUpdate","longname":"SaratogaUpdater#cronUpdate","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#cronUpdate","$kind":"property","$docmaLink":"?api#SaratogaUpdater#cronUpdate"},{"comment":"/**\n * If the data directory of this updater is ready to operate\n * @type {Boolean}\n */","meta":{"range":[652,677],"filename":"SaratogaUpdater.js","lineno":23,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002402","name":"this.dataDirReady","type":"Literal","value":false,"paramnames":[]}},"description":"If the data directory of this updater is ready to operate
","type":{"names":["Boolean"]},"name":"dataDirReady","longname":"SaratogaUpdater#dataDirReady","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#dataDirReady","$kind":"property","$docmaLink":"?api#SaratogaUpdater#dataDirReady"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[963,1021],"filename":"SaratogaUpdater.js","lineno":35,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002413","name":"SaratogaUpdater#saratoga","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaUpdater#saratoga","kind":"member","memberof":"SaratogaUpdater","scope":"instance","params":[],"$longname":"SaratogaUpdater#saratoga","$kind":"property","$docmaLink":"?api#SaratogaUpdater#saratoga"},{"comment":"/**\n * The updater instance that generated this instance\n * @type {SaratogaStore}\n */","meta":{"range":[504,522],"filename":"SaratogaUpdater.js","lineno":18,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002396","name":"this.store","type":"Identifier","value":"store","paramnames":[]}},"description":"The updater instance that generated this instance
","type":{"names":["SaratogaStore"]},"name":"store","longname":"SaratogaUpdater#store","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#store","$kind":"property","$docmaLink":"?api#SaratogaUpdater#store"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[357,859],"filename":"SaratogaUpdater.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002390","name":"SaratogaUpdater","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaUpdater","longname":"SaratogaUpdater","kind":"class","scope":"global","$longname":"SaratogaUpdater","$kind":"constructor","$docmaLink":"?api#SaratogaUpdater"}},{"comment":"","meta":{"range":[122,250],"filename":"SaratogaValidator.js","lineno":5,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100003205","name":"SaratogaValidator","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"SaratogaValidator","longname":"SaratogaValidator","kind":"class","scope":"global","params":[],"$longname":"SaratogaValidator","$kind":"constructor","$docmaLink":"?api#SaratogaValidator"},{"comment":"","meta":{"range":[3147,3185],"filename":"SaratogaShips.js","lineno":109,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001306","name":"ShipExtAll","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"ShipExtAll","longname":"ShipExtAll","kind":"class","scope":"global","params":[],"$longname":"ShipExtAll","$kind":"constructor","$docmaLink":"?api#ShipExtAll"},{"comment":"","meta":{"range":[4130,4168],"filename":"SaratogaShips.js","lineno":157,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001432","name":"ShipExtFilter","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"ShipExtFilter","longname":"ShipExtFilter","kind":"class","scope":"global","params":[],"$longname":"ShipExtFilter","$kind":"constructor","$docmaLink":"?api#ShipExtFilter"},{"comment":"/**\n * Custom filter for equipment data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[1989,2101],"filename":"LegacyEquipments.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000370","name":"LegacyEquipments#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for equipment data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"LegacyEquipments#filter","kind":"function","memberof":"LegacyEquipments","scope":"instance","$longname":"LegacyEquipments#filter","$kind":"method","$docmaLink":"?api#LegacyEquipments#filter"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2217,2324],"filename":"LegacyEquipments.js","lineno":70,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000390","name":"LegacyEquipments#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"LegacyEquipments#search","kind":"function","memberof":"LegacyEquipments","scope":"instance","$longname":"LegacyEquipments#search","$kind":"method","$docmaLink":"?api#LegacyEquipments#search"},{"comment":"/**\n * Custom filter for ship data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[3095,3207],"filename":"LegacyShips.js","lineno":97,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000652","name":"LegacyShips#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for ship data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"LegacyShips#filter","kind":"function","memberof":"LegacyShips","scope":"instance","$longname":"LegacyShips#filter","$kind":"method","$docmaLink":"?api#LegacyShips#filter"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[3323,3430],"filename":"LegacyShips.js","lineno":105,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000672","name":"LegacyShips#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"LegacyShips#search","kind":"function","memberof":"LegacyShips","scope":"instance","$longname":"LegacyShips#search","$kind":"method","$docmaLink":"?api#LegacyShips#search"},{"comment":"/**\n * Get an unfiltered ship list\n */","meta":{"range":[3242,3326],"filename":"SaratogaShips.js","lineno":116,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001313","name":"ShipExtAll#get","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Get an unfiltered ship list
","name":"get","longname":"ShipExtAll#get","kind":"function","memberof":"ShipExtAll","scope":"instance","params":[],"$longname":"ShipExtAll#get","$kind":"method","$docmaLink":"?api#ShipExtAll#get"},{"comment":"/**\n * Filter ships via id\n */","meta":{"range":[3992,4078],"filename":"SaratogaShips.js","lineno":150,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001411","name":"ShipExtAll#id","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Filter ships via id
","name":"id","longname":"ShipExtAll#id","kind":"function","memberof":"ShipExtAll","scope":"instance","params":[],"$longname":"ShipExtAll#id","$kind":"method","$docmaLink":"?api#ShipExtAll#id"},{"comment":"/**\n * Filter ships via language\n * @param {string} language \n */","meta":{"range":[3414,3943],"filename":"SaratogaShips.js","lineno":125,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001328","name":"ShipExtAll#name","type":"MethodDefinition","paramnames":["language"]},"vars":{"":null}},"description":"Filter ships via language
","params":[{"type":{"names":["string"]},"name":"language"}],"name":"name","longname":"ShipExtAll#name","kind":"function","memberof":"ShipExtAll","scope":"instance","$longname":"ShipExtAll#name","$kind":"method","$docmaLink":"?api#ShipExtAll#name"},{"comment":"/**\n * Barrage Data\n * @external Barrage\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":34,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Barrage Data
","kind":"external","name":"Barrage","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Barrage","scope":"global","$longname":"external:Barrage","$kind":"external","$docmaLink":"?api#external:Barrage"},{"comment":"/**\n * Chapter Data\n * @external Chapter\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":24,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Chapter Data
","kind":"external","name":"Chapter","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Chapter","scope":"global","$longname":"external:Chapter","$kind":"external","$docmaLink":"?api#external:Chapter"},{"comment":"/**\n * Equipment Data\n * @external Equipment\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":19,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Equipment Data
","kind":"external","name":"Equipment","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Equipment","scope":"global","$longname":"external:Equipment","$kind":"external","$docmaLink":"?api#external:Equipment"},{"comment":"/**\n * Node.js Event Emitter\n * @external EventEmitter\n * @see {@link https://nodejs.org/api/events.html}\n */","meta":{"filename":"index.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Event Emitter
","kind":"external","name":"EventEmitter","see":["{@link https://nodejs.org/api/events.html}"],"longname":"external:EventEmitter","scope":"global","$longname":"external:EventEmitter","$kind":"external","$docmaLink":"?api#external:EventEmitter"},{"comment":"/**\n * Ship Data\n * @external Ship\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}\n */","meta":{"filename":"index.js","lineno":13,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Ship Data
","kind":"external","name":"Ship","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}"],"longname":"external:Ship","scope":"global","$longname":"external:Ship","$kind":"external","$docmaLink":"?api#external:Ship"},{"comment":"/**\n * Node.js Timeout\n * @external Timeout\n * @see {@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}\n */","meta":{"filename":"index.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Timeout
","kind":"external","name":"Timeout","see":["{@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}"],"longname":"external:Timeout","scope":"global","$longname":"external:Timeout","$kind":"external","$docmaLink":"?api#external:Timeout"},{"comment":"/**\n * Voiceline Data\n * @external Voiceline\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":29,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Voiceline Data
","kind":"external","name":"Voiceline","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Voiceline","scope":"global","$longname":"external:Voiceline","$kind":"external","$docmaLink":"?api#external:Voiceline"}],"symbols":["external:Barrage","external:Chapter","external:Equipment","external:EventEmitter","external:Ship","external:Timeout","external:Voiceline","LegacyEquipments","LegacyEquipments#filter","LegacyEquipments#search","LegacyShips","LegacyShips#filter","LegacyShips#search","Saratoga","Saratoga#barrages","Saratoga#chapters","Saratoga#equipments","Saratoga#event:debug","Saratoga#event:error","Saratoga#event:ready","Saratoga#event:updateAvailable","Saratoga#legacyEquipments","Saratoga#legacyShips","Saratoga#ready","Saratoga#ships","Saratoga#store","Saratoga#updater","Saratoga#voicelines","SaratogaEquipments","SaratogaEquipments","SaratogaEquipments#all","SaratogaEquipments#category","SaratogaEquipments#filter","SaratogaEquipments.LegacyEquipments#getAllByCategory","SaratogaEquipments.LegacyEquipments#getAllByNationality","SaratogaEquipments.LegacyEquipments#searchByEquipmentName","SaratogaEquipments#name","SaratogaEquipments#nationality","SaratogaEquipments#search","SaratogaShips","SaratogaShips","SaratogaShips#filter","SaratogaShips#get","SaratogaShips#id","SaratogaShips.LegacyShips#getAllByClass","SaratogaShips.LegacyShips#getAllByHullType","SaratogaShips.LegacyShips#getAllByNationality","SaratogaShips.LegacyShips#getAllByRarity","SaratogaShips.LegacyShips#getById","SaratogaShips.LegacyShips#searchShipByName","SaratogaShips#name","SaratogaShips#search","SaratogaShips.ShipExtFilter#class","SaratogaShips.ShipExtFilter#nationality","SaratogaShips.ShipExtFilter#rarity","SaratogaShips.ShipExtFilter#type","SaratogaStore","SaratogaStore#equipments","SaratogaStore#legacyShips","SaratogaStore#ready","SaratogaStore#saratoga","SaratogaStore#ships","SaratogaStore#updater","SaratogaUpdater","SaratogaUpdater#checkForUpdate","SaratogaUpdater#cronUpdate","SaratogaUpdater#dataDirReady","SaratogaUpdater#saratoga","SaratogaUpdater#store","SaratogaUpdater#updateCache","SaratogaUpdater#updateDataAndCache","SaratogaUpdater#updateLocalData","SaratogaValidator","ShipExtAll","ShipExtAll#get","ShipExtAll#id","ShipExtAll#name","ShipExtFilter"]}},"app":{"title":"Saratoga | An open source Azur Lane local library","routing":{"method":"query","caseSensitive":true},"entrance":"content:readme","base":"/Saratoga/","meta":null,"server":"static","favicon":""},"template":{"name":"docma-template-zebra","description":"Zebra - Default template for Docma. https://github.com/onury/docma","version":"2.3.1","supportedDocmaVersion":">=2.0.0","author":"Onur Yıldırım","license":"MIT","mainHTML":"index.html","options":{"title":{"label":"Saratoga","href":"."},"sidebar":{"enabled":true,"outline":"tree","collapsed":false,"toolbar":true,"itemsFolded":false,"itemsOverflow":"crop","badges":true,"search":true,"animations":true},"symbols":{"autoLink":true,"params":"list","enums":"list","props":"list","meta":false},"navbar":{"enabled":true,"dark":false,"animations":true,"menu":[{"label":"Readme","href":"."},{"label":"Documentation","href":"?api"},{"label":"GitHub","href":"https://github.com/AzurAPI/Saratoga"}],"fixed":true},"logo":null,"contentView":{"bookmarks":false,"faVersion":"5.5.0","faLibs":"all"}}},"partials":{"api":"docma-api","content":"docma-content","notFound":"docma-404"},"elementID":"docma-main","contentElementID":"docma-content","defaultApiName":"_def_","logsEnabled":false}));
!function(){"use strict";var c="path"===docma.app.routing.method;function o(a){return(a.params[1]||"").replace(/\/$/,"")}function a(a,e){a=o(a)||docma._.defaultApiName,a=docma.createRoute(a,DocmaWeb.Route.Type.API);if(!a||!a.exists())return e();a.apply()}docma.app.base&&page.base(docma.app.base),page.redirect("(/)?"+docma.template.main,""),c&&(page("(/)?api/(.+)",a),page("(/)?api(/)?",a),page("(/)?(.*)",function(a,e){a=o(a),a=docma.createRoute(a,DocmaWeb.Route.Type.CONTENT);if(!a||!a.exists())return e();a.apply()})),page("(/)?",function(t,n){!function(){if(c){var a=sessionStorage.getItem("redirectPath")||null;if(a)return sessionStorage.removeItem("redirectPath"),docma.info("Redirecting to:",a),page.redirect(a),1}}()&&setTimeout(function(){var a,e,e=(e=(e=t.querystring)||window.location.search,(e=/^[?&]/.test(e)?e.slice(1):e)||null);if(c){if(e)return n();a=docma._.appEntranceRI}else docma.log("Query-string:",e),a=e?docma.createRouteFromQuery(e):docma._.appEntranceRI;if(!a||!a.exists())return n();function o(){docma._trigger(DocmaWeb.Event.Navigate,[a])}a.isCurrent()?o():a.apply(function(a){200===a&&o()})},100)}),page("*",function(a){docma.warn("Unknown Route:",a.path),docma.log("context:",a),docma.createRoute(null).apply()}),docma.info("Docma SPA Configuration:"),docma.info("App Title: ",docma.app.title),docma.info("Routing Method: ",docma.app.routing.method),docma.info("App Server: ",docma.app.server),docma.info("Base Path: ",docma.app.base),docma.info("Entrance Route ID: ",docma.app.entrance),window.onload=function(){docma._.initialLoad=!0,docma._.appEntranceRI=docma.createRouteFromID(docma.app.entrance),page.start({click:!0,popstate:!0,dispatch:!0,hashbang:!1,decodeURLComponents:!0}),docma.info("Docma SPA loaded!")}}();
\ No newline at end of file
diff --git a/package.json b/package.json
index d6f2b84..7c95481 100644
--- a/package.json
+++ b/package.json
@@ -1,11 +1,12 @@
{
"name": "saratoga",
- "version": "1.1.2-beta",
+ "version": "1.1.3-beta",
"description": "Open Source Azur Lane Local Database",
"main": "index.js",
"scripts": {
- "test": "node ./tests/Client.js",
- "jest": "jest"
+ "test": "node ./tests/LegacyClient.js",
+ "jest": "jest",
+ "docs": "docma"
},
"keywords": [
"api",
diff --git a/src/Saratoga.js b/src/Saratoga.js
index b8917d2..02f47c7 100644
--- a/src/Saratoga.js
+++ b/src/Saratoga.js
@@ -109,5 +109,21 @@ class Saratoga extends EventEmitter {
if (!this.ready) return null;
return this.store.barrages;
}
+ /**
+ * Azur Lane's Ship related getter methods with LegacyAPI
+ * @type {SaratogaLegacyShips}
+ */
+ get legacyShips() {
+ if (!this.ready) return null;
+ return this.store.legacyShips;
+ }
+ /**
+ * Azur Lane's Equipment related getter methods with LegacyAPI
+ * @type {SaratogaLegacyEquipments}
+ */
+ get legacyEquipments() {
+ if (!this.ready) return null;
+ return this.store.legacyEquipments;
+ }
}
module.exports = Saratoga;
diff --git a/src/store/LegacyEquipments.js b/src/store/LegacyEquipments.js
new file mode 100644
index 0000000..694bf90
--- /dev/null
+++ b/src/store/LegacyEquipments.js
@@ -0,0 +1,75 @@
+/**
+ * Equipment related getters for Saratoga with LegacyAPI
+ * @class SaratogaEquipments
+ */
+class LegacyEquipments {
+ /**
+ * @param {SaratogaStore} store The updater instance that generated this instance
+ */
+ constructor(store) {
+ Object.defineProperty(this, '_store', { value: store, writable: false });
+ }
+
+ get cache() {
+ if (!this._store._equipCache) return null;
+ return this._store._equipCache;
+ }
+
+ get rawCache() {
+ if (!this.cache) return null;
+ return this.cache.list;
+ }
+
+ /**
+ * Lists the equipments by category
+ * @param {string} category name of the category you want to search for
+ * @memberof SaratogaEquipments
+ * @returns {Array | null}
+ */
+ getAllByCategory(category) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(d => d.category === category);
+ }
+
+ /**
+ * Lists the equipments by nationality
+ * @param {string} nationality naitionality name of the equipments you want to search for
+ * @memberof SaratogaEquipments
+ * @returns {Array | null}
+ */
+ getAllByNationality(nationality) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(d => d.nationality === nationality);
+ }
+
+ /**
+ * Searches for a specific equipment. (EN, CN, JP, KR names are supported)
+ * @param {string} name name of the equipment you want to search for
+ * @param {number} [limit=10] limit of the search results
+ * @memberof SaratogaEquipments
+ * @returns {Equipment | null}
+ */
+ searchByEquipmentName(name, limit = 10) {
+ if (!this.cache) return null;
+ const possibleEquipments = this.cache.search(name, { limit });
+ if (!possibleEquipments.length) return null;
+ return possibleEquipments;
+ }
+ /**
+ * Custom filter for equipment data
+ * @param {requestCallback} callback the callback that handles the response
+ */
+ filter(callback) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(callback);
+ }
+ /**
+ * Custom search for data in Fuse instance
+ * @param {any} options Fuse search options
+ */
+ search(options) {
+ if (!this.rawCache) return null;
+ return this.cache.search(options);
+ }
+}
+module.exports = LegacyEquipments;
\ No newline at end of file
diff --git a/src/store/LegacyShips.js b/src/store/LegacyShips.js
new file mode 100644
index 0000000..27f39b3
--- /dev/null
+++ b/src/store/LegacyShips.js
@@ -0,0 +1,110 @@
+/**
+ * Ship related getters for Saratoga with LegacyAPI
+ * @class SaratogaShips
+ */
+class LegacyShips {
+ /**
+ * @param {SaratogaStore} store The updater instance that generated this instance
+ */
+ constructor(store) {
+ Object.defineProperty(this, '_store', { value: store, writable: false });
+ }
+
+ get cache() {
+ if (!this._store._shipCache) return null;
+ return this._store._shipCache;
+ }
+
+ get rawCache() {
+ if (!this.cache) return null;
+ return this.cache.list;
+ }
+
+ /**
+ * Lists all the ships that matches a specific shjp class
+ * @param {string} shipClass class of the ship you want to search for (Case Sensitive)
+ * @memberof SaratogaShips
+ * @returns {Array | null}
+ */
+ getAllByClass(shipClass) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(d => d.class === shipClass);
+ }
+
+ /**
+ * Lists all the ships that matches a specific ship nationality
+ * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)
+ * @memberof SaratogaShips
+ * @returns {Array | null}
+ */
+ getAllByNationality(nationality) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(d => d.nationality === nationality);
+ }
+
+ /**
+ * Lists all the ships that matches a specific ship hull type
+ * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)
+ * @memberof SaratogaShips
+ * @returns {Array | null}
+ */
+ getAllByHullType(hullType) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(d => d.hullType === hullType);
+ }
+
+ /**
+ * Lists all the ship that matches a specific rarity
+ * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)
+ * @memberof SaratogaShips
+ * @returns {Array | null}
+ */
+ getAllByRarity(rarity) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(d => d.rarity === rarity);
+ }
+
+ /**
+ * Fetches a specific ship via its id
+ * @param {number} id id of the ship you want to fetch
+ * @memberof SaratogaShips
+ * @returns {Ship | null}
+ */
+ getById(id) {
+ if (!this.rawCache) return null;
+ const ship = this.rawCache.find(d => d.id === id);
+ if (!ship.length) return null;
+ return ship;
+ }
+
+ /**
+ * Searches for a specific ship. (EN, CN, JP, KR names are supported)
+ * @param {string} name name of the ship you want to search for
+ * @param {number} [limit=10] limit of the search results
+ * @memberof SaratogaShips
+ * @returns {Ship | null}
+ */
+ searchShipByName(name, limit = 10) {
+ if (!this.cache) return null;
+ const possibleShips = this.cache.search(name, { limit });
+ if (!possibleShips.length) return null;
+ return possibleShips;
+ }
+ /**
+ * Custom filter for ship data
+ * @param {requestCallback} callback the callback that handles the response
+ */
+ filter(callback) {
+ if (!this.rawCache) return null;
+ return this.rawCache.filter(callback);
+ }
+ /**
+ * Custom search for data in Fuse instance
+ * @param {any} options Fuse search options
+ */
+ search(options) {
+ if (!this.rawCache) return null;
+ return this.cache.search(options);
+ }
+}
+module.exports = LegacyShips;
\ No newline at end of file
diff --git a/src/store/SaratogaStore.js b/src/store/SaratogaStore.js
index 0ec7053..e3b14c2 100644
--- a/src/store/SaratogaStore.js
+++ b/src/store/SaratogaStore.js
@@ -5,6 +5,8 @@ const SaratogaShips = require('./SaratogaShips');
const ShipExtAll = require('./SaratogaShips');
const SaratogaEquipments = require('./SaratogaEquipments');
const SaratogaUtil = require('../util/SaratogaUtil');
+const LegacyShips = require('./LegacyShips');
+const LegacyEquipments = require('./LegacyEquipments');
/**
* Saratoga, the starting point of this API
@@ -47,6 +49,11 @@ class SaratogaStore {
* @type {SaratogaBarrages}
*/
// this.barrages = new SaratogaBarrages TODO
+ /**
+ * Legacy API instances
+ */
+ this.legacyShips = new LegacyShips(this)
+ this.legacyEquipments = new LegacyEquipments(this)
/**
* Updater Class for the local data for this store
* @type {SaratogaUpdater}
diff --git a/tests/Client.js b/tests/Client.js
deleted file mode 100644
index 2fbc0a9..0000000
--- a/tests/Client.js
+++ /dev/null
@@ -1,10 +0,0 @@
-const { Saratoga } = require('../index');
-
-const saratoga = new Saratoga();
-
-saratoga.on('ready', () => {
- console.log('== Ships ==> ', saratoga.ships.searchShipByName('saratoga'));
- console.log('== Equipments ==> ', saratoga.equipments.searchByEquipmentName('130mm 1932'));
-});
-saratoga.on('debug', console.log);
-saratoga.on('error', console.error);
diff --git a/tests/LegacyClient.js b/tests/LegacyClient.js
new file mode 100644
index 0000000..8579f15
--- /dev/null
+++ b/tests/LegacyClient.js
@@ -0,0 +1,10 @@
+const { Saratoga } = require('../index');
+
+const saratoga = new Saratoga();
+
+saratoga.on('ready', () => {
+ console.log('== Ships ==> ', saratoga.legacyShips.searchShipByName('saratoga'));
+ console.log('== Equipments ==> ', saratoga.legacyEquipments.searchByEquipmentName('130mm 1932'));
+});
+saratoga.on('debug', console.log);
+saratoga.on('error', console.error);
From db084d85c804a3812d45bc90ea33a2be0c3a78f7 Mon Sep 17 00:00:00 2001
From: 0t4u <61939142+0t4u@users.noreply.github.com>
Date: Mon, 10 May 2021 18:51:34 +0800
Subject: [PATCH 12/14] Add barrage functions
This version adds:
- Barrage functions
- Typings for voicelines, barrages, and ships
- Regenerated docs
- Partially added JP info
---
docs/js/docma-web.js | 2 +-
src/Saratoga.js | 21 +++-
src/store/SaratogaBarrages.js | 98 +++++++++++++++++-
src/store/SaratogaChapters.js | 19 +++-
src/store/SaratogaStore.js | 31 +++++-
src/store/SaratogaVoicelines.js | 19 +++-
src/types/barrage.d.ts | 21 ++++
src/types/ship.d.ts | 170 ++++++++++++++++++++++++++++++++
src/types/voiceline.d.ts | 13 +++
src/updater/SaratogaUpdater.js | 4 +
10 files changed, 386 insertions(+), 12 deletions(-)
create mode 100644 src/types/barrage.d.ts
create mode 100644 src/types/ship.d.ts
create mode 100644 src/types/voiceline.d.ts
diff --git a/docs/js/docma-web.js b/docs/js/docma-web.js
index d74c6b8..8a77ebc 100644
--- a/docs/js/docma-web.js
+++ b/docs/js/docma-web.js
@@ -44,6 +44,6 @@ dust.filters=dust.filters||{},dust.filters.$pt=function(e){return DocmaWeb.Utils
DocmaWeb.version = "3.2.2";
return DocmaWeb;
})();
-var docma = Object.freeze(new DocmaWeb({"version":"3.2.2","routes":[{"id":"api:","type":"api","name":"_def_","path":"?api","contentPath":null,"sourceType":"js"},{"id":"content:readme","type":"content","name":"readme","path":"?content=readme","contentPath":"content/readme.html","sourceType":"md"}],"apis":{"_def_":{"documentation":[{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[226,334],"filename":"LegacyEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000228","name":"LegacyEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"LegacyEquipments","longname":"LegacyEquipments","kind":"class","scope":"global","$longname":"LegacyEquipments","$kind":"constructor","$docmaLink":"?api#LegacyEquipments"},{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[211,319],"filename":"LegacyShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000421","name":"LegacyShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"LegacyShips","longname":"LegacyShips","kind":"class","scope":"global","$longname":"LegacyShips","$kind":"constructor","$docmaLink":"?api#LegacyShips"},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class Saratoga\n * @extends {EventEmitter}\n */","meta":{"filename":"Saratoga.js","lineno":4,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"Saratoga","augments":["EventEmitter"],"longname":"Saratoga","scope":"global","$longname":"Saratoga","$kind":"class","$docmaLink":"?api#Saratoga","$members":[{"comment":"/**\n * Barrage related getters for this store\n * @type {SaratogaBarrages}\n */","meta":{"range":[2891,2987],"filename":"Saratoga.js","lineno":108,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000166","name":"Saratoga#barrages","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Barrage related getters for this store
","type":{"names":["SaratogaBarrages"]},"name":"barrages","longname":"Saratoga#barrages","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#barrages","$kind":"property","$docmaLink":"?api#Saratoga#barrages"},{"comment":"/**\n * Chapters related getters for this store\n * @type {SaratogaChapters}\n */","meta":{"range":[2493,2589],"filename":"Saratoga.js","lineno":92,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000132","name":"Saratoga#chapters","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Chapters related getters for this store
","type":{"names":["SaratogaChapters"]},"name":"chapters","longname":"Saratoga#chapters","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#chapters","$kind":"property","$docmaLink":"?api#Saratoga#chapters"},{"comment":"/**\n * Azur Lane's Equipment related getter methods\n * @type {SaratogaEquipments}\n */","meta":{"range":[2293,2393],"filename":"Saratoga.js","lineno":84,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000115","name":"Saratoga#equipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"Saratoga#equipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#equipments","$kind":"property","$docmaLink":"?api#Saratoga#equipments"},{"comment":"/**\n * Azur Lane's Equipment related getter methods with LegacyAPI\n * @type {SaratogaLegacyEquipments}\n */","meta":{"range":[3335,3447],"filename":"Saratoga.js","lineno":124,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000200","name":"Saratoga#legacyEquipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Equipment related getter methods with LegacyAPI
","type":{"names":["SaratogaLegacyEquipments"]},"name":"legacyEquipments","longname":"Saratoga#legacyEquipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#legacyEquipments","$kind":"property","$docmaLink":"?api#Saratoga#legacyEquipments"},{"comment":"/**\n * Azur Lane's Ship related getter methods with LegacyAPI\n * @type {SaratogaLegacyShips}\n */","meta":{"range":[3105,3207],"filename":"Saratoga.js","lineno":116,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000183","name":"Saratoga#legacyShips","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods with LegacyAPI
","type":{"names":["SaratogaLegacyShips"]},"name":"legacyShips","longname":"Saratoga#legacyShips","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#legacyShips","$kind":"property","$docmaLink":"?api#Saratoga#legacyShips"},{"comment":"/**\n * If Saratoga is ready to operate\n * @type {Boolean}\n */","meta":{"range":[1910,1997],"filename":"Saratoga.js","lineno":67,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000080","name":"Saratoga#ready","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"If Saratoga is ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"Saratoga#ready","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ready","$kind":"property","$docmaLink":"?api#Saratoga#ready"},{"comment":"/**\n * Azur Lane's Ship related getter methods\n * @type {SaratogaShips}\n */","meta":{"range":[2095,2185],"filename":"Saratoga.js","lineno":75,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000098","name":"Saratoga#ships","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Azur Lane's Ship related getter methods
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"Saratoga#ships","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ships","$kind":"property","$docmaLink":"?api#Saratoga#ships"},{"comment":"/**\n * Contains methods and props for managing cached data\n * @type {SaratogaStore}\n */","meta":{"range":[567,603],"filename":"Saratoga.js","lineno":19,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000053","name":"this.store","type":"NewExpression","value":"","paramnames":[]}},"description":"Contains methods and props for managing cached data
","type":{"names":["SaratogaStore"]},"name":"store","longname":"Saratoga#store","kind":"member","memberof":"Saratoga","scope":"instance","$longname":"Saratoga#store","$kind":"property","$docmaLink":"?api#Saratoga#store"},{"comment":"/**\n * Contains methods for updating Saratoga's local data & cache\n * @type {SaratogaUpdater}\n */","meta":{"range":[1770,1826],"filename":"Saratoga.js","lineno":59,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000070","name":"Saratoga#updater","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Contains methods for updating Saratoga's local data & cache
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"Saratoga#updater","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#updater","$kind":"property","$docmaLink":"?api#Saratoga#updater"},{"comment":"/**\n * Voiceline related getters for this store\n * @type {SaratogaVoicelines}\n */","meta":{"range":[2692,2792],"filename":"Saratoga.js","lineno":100,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000149","name":"Saratoga#voicelines","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Voiceline related getters for this store
","type":{"names":["SaratogaVoicelines"]},"name":"voicelines","longname":"Saratoga#voicelines","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#voicelines","$kind":"property","$docmaLink":"?api#Saratoga#voicelines"},{"comment":"/**\n * Emitted when there is a debug data\n * @event Saratoga#debug\n * @param {string} message Debug message\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":23,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a debug data
","kind":"event","name":"debug","params":[{"type":{"names":["string"]},"description":"Debug message
","name":"message"}],"memberof":"Saratoga","longname":"Saratoga#event:debug","scope":"instance","$longname":"Saratoga#event:debug","$kind":"event","$docmaLink":"?api#Saratoga#event:debug"},{"comment":"/**\n * Emitted when there is a pesky error\n * @event Saratoga#error\n * @param {Error} error The error encountered.\n * @memberof Saratoga\n * @example\n * Saratoga.on('error', console.error);\n */","meta":{"filename":"Saratoga.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is a pesky error
","kind":"event","name":"error","params":[{"type":{"names":["Error"]},"description":"The error encountered.
","name":"error"}],"memberof":"Saratoga","examples":["Saratoga.on('error', console.error);"],"longname":"Saratoga#event:error","scope":"instance","$longname":"Saratoga#event:error","$kind":"event","$docmaLink":"?api#Saratoga#event:error"},{"comment":"/**\n * Emitted when Saratoga is ready\n * @event Saratoga#ready\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":49,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when Saratoga is ready
","kind":"event","name":"ready","memberof":"Saratoga","longname":"Saratoga#event:ready","scope":"instance","$longname":"Saratoga#event:ready","$kind":"event","$docmaLink":"?api#Saratoga#event:ready"},{"comment":"/**\n * Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true\n * @event Saratoga#updateAvailable\n * @param {Object} data What data needs updating\n * @memberof Saratoga\n * @example\n * Saratoga.on('updateAvailable', (data) => {\n * if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n * // handle update\n * }\n * })\n */","meta":{"filename":"Saratoga.js","lineno":37,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true
","kind":"event","name":"updateAvailable","params":[{"type":{"names":["Object"]},"description":"What data needs updating
","name":"data"}],"memberof":"Saratoga","examples":["Saratoga.on('updateAvailable', (data) => {\n if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n // handle update\n }\n})"],"longname":"Saratoga#event:updateAvailable","scope":"instance","$longname":"Saratoga#event:updateAvailable","$kind":"event","$docmaLink":"?api#Saratoga#event:updateAvailable"}],"$constructor":{"comment":"/**\n * @param {Object} options Object with a single parameter, which is notifyForNewUpdates, which is a boolean\n */","meta":{"range":[366,679],"filename":"Saratoga.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000040","name":"Saratoga","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"description":"Object with a single parameter, which is notifyForNewUpdates, which is a boolean
","name":"options"}],"name":"Saratoga","longname":"Saratoga","kind":"class","scope":"global","$longname":"Saratoga","$kind":"constructor","$docmaLink":"?api#Saratoga"}},{"comment":"/**\n * Equipment related getters for Saratoga with LegacyAPI\n * @class SaratogaEquipments\n */","meta":{"filename":"LegacyEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga with LegacyAPI
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments","$members":[{"comment":"/**\n * Get an unfiltered equipment list\n */","meta":{"range":[2442,2526],"filename":"SaratogaEquipments.js","lineno":79,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000916","name":"SaratogaEquipments#all","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Get an unfiltered equipment list
","name":"all","longname":"SaratogaEquipments#all","kind":"function","memberof":"SaratogaEquipments","scope":"instance","params":[],"$longname":"SaratogaEquipments#all","$kind":"method","$docmaLink":"?api#SaratogaEquipments#all"},{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[751,885],"filename":"SaratogaEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000760","name":"SaratogaEquipments#category","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"category","longname":"SaratogaEquipments#category","kind":"function","scope":"instance","$longname":"SaratogaEquipments#category","$kind":"method","$docmaLink":"?api#SaratogaEquipments#category"},{"comment":"/**\n * Custom filter for equipment data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[2668,2780],"filename":"SaratogaEquipments.js","lineno":88,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000931","name":"SaratogaEquipments#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for equipment data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaEquipments#filter","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#filter","$kind":"method","$docmaLink":"?api#SaratogaEquipments#filter"},{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[764,906],"filename":"LegacyEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000281","name":"LegacyEquipments#getAllByCategory","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyEquipments#getAllByCategory","longname":"SaratogaEquipments.LegacyEquipments#getAllByCategory","kind":"function","scope":"static","$longname":"SaratogaEquipments.LegacyEquipments#getAllByCategory","$kind":"method","$docmaLink":"?api#SaratogaEquipments.LegacyEquipments#getAllByCategory"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1143,1297],"filename":"LegacyEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000307","name":"LegacyEquipments#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyEquipments#getAllByNationality","longname":"SaratogaEquipments.LegacyEquipments#getAllByNationality","kind":"function","scope":"static","$longname":"SaratogaEquipments.LegacyEquipments#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments.LegacyEquipments#getAllByNationality"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1604,1848],"filename":"LegacyEquipments.js","lineno":52,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000333","name":"LegacyEquipments#searchByEquipmentName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"LegacyEquipments#searchByEquipmentName","longname":"SaratogaEquipments.LegacyEquipments#searchByEquipmentName","kind":"function","scope":"static","$longname":"SaratogaEquipments.LegacyEquipments#searchByEquipmentName","$kind":"method","$docmaLink":"?api#SaratogaEquipments.LegacyEquipments#searchByEquipmentName"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {string} language optional language to search by\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1638,2380],"filename":"SaratogaEquipments.js","lineno":53,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000812","name":"SaratogaEquipments#name","type":"MethodDefinition","paramnames":["name","language","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["string"]},"description":"optional language to search by
","name":"language"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"name","longname":"SaratogaEquipments#name","kind":"function","scope":"instance","$longname":"SaratogaEquipments#name","$kind":"method","$docmaLink":"?api#SaratogaEquipments#name"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1122,1268],"filename":"SaratogaEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000786","name":"SaratogaEquipments#nationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"nationality","longname":"SaratogaEquipments#nationality","kind":"function","scope":"instance","$longname":"SaratogaEquipments#nationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments#nationality"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2896,3003],"filename":"SaratogaEquipments.js","lineno":96,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000951","name":"SaratogaEquipments#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaEquipments#search","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#search","$kind":"method","$docmaLink":"?api#SaratogaEquipments#search"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[213,321],"filename":"SaratogaEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000707","name":"SaratogaEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaEquipments","longname":"SaratogaEquipments","kind":"class","scope":"global","$longname":"SaratogaEquipments","$kind":"constructor","$docmaLink":"?api#SaratogaEquipments"}},{"comment":"/**\n * Equipment related getters for Saratoga\n * @class SaratogaEquipments\n */","meta":{"filename":"SaratogaEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments"},{"comment":"/**\n * Ship related getters for Saratoga with LegacyAPI\n * @class SaratogaShips\n */","meta":{"filename":"LegacyShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga with LegacyAPI
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips","$members":[{"comment":"/**\n * Custom filter for ship data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[2763,2875],"filename":"SaratogaShips.js","lineno":94,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001262","name":"SaratogaShips#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for ship data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaShips#filter","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#filter","$kind":"method","$docmaLink":"?api#SaratogaShips#filter"},{"comment":"/**\n * Search from all ships\n * @param {number | string} id \n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[666,1089],"filename":"SaratogaShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001035","name":"SaratogaShips#get","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Search from all ships
","params":[{"type":{"names":["number","string"]},"name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"get","longname":"SaratogaShips#get","kind":"function","scope":"instance","$longname":"SaratogaShips#get","$kind":"method","$docmaLink":"?api#SaratogaShips#get"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[1273,1447],"filename":"SaratogaShips.js","lineno":50,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001108","name":"SaratogaShips#id","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"id","longname":"SaratogaShips#id","kind":"function","scope":"instance","$longname":"SaratogaShips#id","$kind":"method","$docmaLink":"?api#SaratogaShips#id"},{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[774,912],"filename":"LegacyShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000474","name":"LegacyShips#getAllByClass","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByClass","longname":"SaratogaShips.LegacyShips#getAllByClass","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByClass","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByClass"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1572,1714],"filename":"LegacyShips.js","lineno":51,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000526","name":"LegacyShips#getAllByHullType","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByHullType","longname":"SaratogaShips.LegacyShips#getAllByHullType","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByHullType","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByHullType"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1169,1323],"filename":"LegacyShips.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000500","name":"LegacyShips#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByNationality","longname":"SaratogaShips.LegacyShips#getAllByNationality","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByNationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1950,2084],"filename":"LegacyShips.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000552","name":"LegacyShips#getAllByRarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByRarity","longname":"SaratogaShips.LegacyShips#getAllByRarity","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByRarity","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByRarity"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2268,2447],"filename":"LegacyShips.js","lineno":73,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000578","name":"LegacyShips#getById","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"LegacyShips#getById","longname":"SaratogaShips.LegacyShips#getById","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getById","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getById"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2734,2959],"filename":"LegacyShips.js","lineno":87,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000615","name":"LegacyShips#searchShipByName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"LegacyShips#searchShipByName","longname":"SaratogaShips.LegacyShips#searchShipByName","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#searchShipByName","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#searchShipByName"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {string} language optional language to search by\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[1797,2627],"filename":"SaratogaShips.js","lineno":65,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001145","name":"SaratogaShips#name","type":"MethodDefinition","paramnames":["name","language","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["string"]},"description":"optional language to search by
","name":"language"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"name","longname":"SaratogaShips#name","kind":"function","scope":"instance","$longname":"SaratogaShips#name","$kind":"method","$docmaLink":"?api#SaratogaShips#name"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2991,3098],"filename":"SaratogaShips.js","lineno":102,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001282","name":"SaratogaShips#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaShips#search","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#search","$kind":"method","$docmaLink":"?api#SaratogaShips#search"},{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[4410,4540],"filename":"SaratogaShips.js","lineno":166,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001439","name":"ShipExtFilter#class","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#class","longname":"SaratogaShips.ShipExtFilter#class","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#class","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#class"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[4797,4943],"filename":"SaratogaShips.js","lineno":177,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001465","name":"ShipExtFilter#nationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#nationality","longname":"SaratogaShips.ShipExtFilter#nationality","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#nationality","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#nationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[5558,5684],"filename":"SaratogaShips.js","lineno":199,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001517","name":"ShipExtFilter#rarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#rarity","longname":"SaratogaShips.ShipExtFilter#rarity","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#rarity","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#rarity"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[5192,5322],"filename":"SaratogaShips.js","lineno":188,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001491","name":"ShipExtFilter#type","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"ShipExtFilter#type","longname":"SaratogaShips.ShipExtFilter#type","kind":"function","scope":"static","$longname":"SaratogaShips.ShipExtFilter#type","$kind":"method","$docmaLink":"?api#SaratogaShips.ShipExtFilter#type"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[198,306],"filename":"SaratogaShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000982","name":"SaratogaShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaShips","longname":"SaratogaShips","kind":"class","scope":"global","$longname":"SaratogaShips","$kind":"constructor","$docmaLink":"?api#SaratogaShips"}},{"comment":"/**\n * Ship related getters for Saratoga\n * @class SaratogaShips\n */","meta":{"filename":"SaratogaShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips"},{"comment":"/**\n * Saratoga, the starting point of this API\n * @class SaratogaStore\n */","meta":{"filename":"SaratogaStore.js","lineno":11,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Saratoga, the starting point of this API
","kind":"class","name":"SaratogaStore","longname":"SaratogaStore","scope":"global","$longname":"SaratogaStore","$kind":"class","$docmaLink":"?api#SaratogaStore","$members":[{"comment":"/**\n * Equipment related getters for this store\n * @type {SaratogaEquipments}\n */","meta":{"range":[1203,1249],"filename":"SaratogaStore.js","lineno":36,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001651","name":"this.equipments","type":"NewExpression","value":"","paramnames":[]}},"description":"Equipment related getters for this store
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"SaratogaStore#equipments","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#equipments","$kind":"property","$docmaLink":"?api#SaratogaStore#equipments"},{"comment":"/**\n * Legacy API instances\n */","meta":{"range":[1813,1853],"filename":"SaratogaStore.js","lineno":55,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001659","name":"this.legacyShips","type":"NewExpression","value":"","paramnames":[]}},"description":"Legacy API instances
","name":"legacyShips","longname":"SaratogaStore#legacyShips","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#legacyShips","$kind":"property","$docmaLink":"?api#SaratogaStore#legacyShips"},{"comment":"/**\n * If this store is already ready to operate\n * @type {Boolean}\n */","meta":{"range":[2193,2211],"filename":"SaratogaStore.js","lineno":66,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001683","name":"this.ready","type":"Literal","value":false,"paramnames":[]}},"description":"If this store is already ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"SaratogaStore#ready","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ready","$kind":"property","$docmaLink":"?api#SaratogaStore#ready"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[807,831],"filename":"SaratogaStore.js","lineno":24,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001617","name":"this.saratoga","type":"Identifier","value":"saratoga","paramnames":[]}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaStore#saratoga","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#saratoga","$kind":"property","$docmaLink":"?api#SaratogaStore#saratoga"},{"comment":"/**\n * Ship related getters for this store\n * @type {SaratogaShips}\n */","meta":{"range":[945,981],"filename":"SaratogaStore.js","lineno":29,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001623","name":"this.ships","type":"NewExpression","value":"","paramnames":[]}},"description":"Ship related getters for this store
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"SaratogaStore#ships","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#ships","$kind":"property","$docmaLink":"?api#SaratogaStore#ships"},{"comment":"/**\n * Updater Class for the local data for this store\n * @type {SaratogaUpdater}\n */","meta":{"range":[2039,2079],"filename":"SaratogaStore.js","lineno":61,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001675","name":"this.updater","type":"NewExpression","value":"","paramnames":[]}},"description":"Updater Class for the local data for this store
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"SaratogaStore#updater","kind":"member","memberof":"SaratogaStore","scope":"instance","$longname":"SaratogaStore#updater","$kind":"property","$docmaLink":"?api#SaratogaStore#updater"}],"$constructor":{"comment":"/**\n * @param {Saratoga} saratoga The saratoga class that generated this instance\n */","meta":{"range":[661,3044],"filename":"SaratogaStore.js","lineno":19,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001611","name":"SaratogaStore","type":"MethodDefinition","paramnames":["saratoga"]},"vars":{"":null}},"params":[{"type":{"names":["Saratoga"]},"description":"The saratoga class that generated this instance
","name":"saratoga"}],"name":"SaratogaStore","longname":"SaratogaStore","kind":"class","scope":"global","$longname":"SaratogaStore","$kind":"constructor","$docmaLink":"?api#SaratogaStore"}},{"comment":"/**\n * Manages the local data & cache updates\n * @class SaratogaUpdater\n */","meta":{"filename":"SaratogaUpdater.js","lineno":5,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{}},"description":"Manages the local data & cache updates
","kind":"class","name":"SaratogaUpdater","longname":"SaratogaUpdater","scope":"global","$longname":"SaratogaUpdater","$kind":"class","$docmaLink":"?api#SaratogaUpdater","$members":[{"comment":"/**\n * Checks if there is new updates for ship or equipment data\n * @memberof SaratogaUpdater\n * @returns {Promise}\n * @example\n * const api = new Saratoga();\n * api.updater.checkForUpdate()\n * .then((response) => {\n * if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n * })\n */","meta":{"range":[3577,3989],"filename":"SaratogaUpdater.js","lineno":90,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002694","name":"SaratogaUpdater#checkForUpdate","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Checks if there is new updates for ship or equipment data
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"examples":["const api = new Saratoga();\napi.updater.checkForUpdate()\n .then((response) => {\n if (response.shipUpdateAvailable || response.equipmentUpdateAvailable) console.log('update available');\n })"],"name":"checkForUpdate","longname":"SaratogaUpdater#checkForUpdate","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#checkForUpdate","$kind":"method","$docmaLink":"?api#SaratogaUpdater#checkForUpdate"},{"comment":"/**\n * Updates the Cached Data, loaded from the local files of Saratoga\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[5374,5549],"filename":"SaratogaUpdater.js","lineno":135,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002814","name":"SaratogaUpdater#updateCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Cached Data, loaded from the local files of Saratoga
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateCache","longname":"SaratogaUpdater#updateCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateCache"},{"comment":"/**\n * Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[3070,3176],"filename":"SaratogaUpdater.js","lineno":74,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002678","name":"SaratogaUpdater#updateDataAndCache","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files & Cached Data in one method, good for single process scenarios as it's easy. Not for multi sharded programs that has its own Saratoga instance per shard.
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateDataAndCache","longname":"SaratogaUpdater#updateDataAndCache","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateDataAndCache","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateDataAndCache"},{"comment":"/**\n * Updates the Local Files of Saratoga if there is an update\n * @memberof SaratogaUpdater\n * @returns {Promise}\n */","meta":{"range":[4141,5215],"filename":"SaratogaUpdater.js","lineno":104,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002714","name":"SaratogaUpdater#updateLocalData","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Updates the Local Files of Saratoga if there is an update
","memberof":"SaratogaUpdater","returns":[{"type":{"names":["Promise."]}}],"name":"updateLocalData","longname":"SaratogaUpdater#updateLocalData","kind":"function","scope":"instance","params":[],"async":true,"$longname":"SaratogaUpdater#updateLocalData","$kind":"method","$docmaLink":"?api#SaratogaUpdater#updateLocalData"},{"comment":"/**\n * The cron update checker which is responsible for Saratoga#updateAvailable event\n * @type {?Timeout}\n */","meta":{"range":[830,852],"filename":"SaratogaUpdater.js","lineno":28,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002408","name":"this.cronUpdate","type":"Literal","value":null,"paramnames":[]}},"description":"The cron update checker which is responsible for Saratoga#updateAvailable event
","type":{"names":["Timeout"]},"nullable":true,"name":"cronUpdate","longname":"SaratogaUpdater#cronUpdate","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#cronUpdate","$kind":"property","$docmaLink":"?api#SaratogaUpdater#cronUpdate"},{"comment":"/**\n * If the data directory of this updater is ready to operate\n * @type {Boolean}\n */","meta":{"range":[652,677],"filename":"SaratogaUpdater.js","lineno":23,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002402","name":"this.dataDirReady","type":"Literal","value":false,"paramnames":[]}},"description":"If the data directory of this updater is ready to operate
","type":{"names":["Boolean"]},"name":"dataDirReady","longname":"SaratogaUpdater#dataDirReady","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#dataDirReady","$kind":"property","$docmaLink":"?api#SaratogaUpdater#dataDirReady"},{"comment":"/**\n * The saratoga instance that generated this instance\n * @type {Saratoga}\n */","meta":{"range":[963,1021],"filename":"SaratogaUpdater.js","lineno":35,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002413","name":"SaratogaUpdater#saratoga","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"The saratoga instance that generated this instance
","type":{"names":["Saratoga"]},"name":"saratoga","longname":"SaratogaUpdater#saratoga","kind":"member","memberof":"SaratogaUpdater","scope":"instance","params":[],"$longname":"SaratogaUpdater#saratoga","$kind":"property","$docmaLink":"?api#SaratogaUpdater#saratoga"},{"comment":"/**\n * The updater instance that generated this instance\n * @type {SaratogaStore}\n */","meta":{"range":[504,522],"filename":"SaratogaUpdater.js","lineno":18,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002396","name":"this.store","type":"Identifier","value":"store","paramnames":[]}},"description":"The updater instance that generated this instance
","type":{"names":["SaratogaStore"]},"name":"store","longname":"SaratogaUpdater#store","kind":"member","memberof":"SaratogaUpdater","scope":"instance","$longname":"SaratogaUpdater#store","$kind":"property","$docmaLink":"?api#SaratogaUpdater#store"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[357,859],"filename":"SaratogaUpdater.js","lineno":13,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100002390","name":"SaratogaUpdater","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaUpdater","longname":"SaratogaUpdater","kind":"class","scope":"global","$longname":"SaratogaUpdater","$kind":"constructor","$docmaLink":"?api#SaratogaUpdater"}},{"comment":"","meta":{"range":[122,250],"filename":"SaratogaValidator.js","lineno":5,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/updater","code":{"id":"astnode100003205","name":"SaratogaValidator","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"SaratogaValidator","longname":"SaratogaValidator","kind":"class","scope":"global","params":[],"$longname":"SaratogaValidator","$kind":"constructor","$docmaLink":"?api#SaratogaValidator"},{"comment":"","meta":{"range":[3147,3185],"filename":"SaratogaShips.js","lineno":109,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001306","name":"ShipExtAll","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"ShipExtAll","longname":"ShipExtAll","kind":"class","scope":"global","params":[],"$longname":"ShipExtAll","$kind":"constructor","$docmaLink":"?api#ShipExtAll"},{"comment":"","meta":{"range":[4130,4168],"filename":"SaratogaShips.js","lineno":157,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001432","name":"ShipExtFilter","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"undocumented":true,"name":"ShipExtFilter","longname":"ShipExtFilter","kind":"class","scope":"global","params":[],"$longname":"ShipExtFilter","$kind":"constructor","$docmaLink":"?api#ShipExtFilter"},{"comment":"/**\n * Custom filter for equipment data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[1989,2101],"filename":"LegacyEquipments.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000370","name":"LegacyEquipments#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for equipment data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"LegacyEquipments#filter","kind":"function","memberof":"LegacyEquipments","scope":"instance","$longname":"LegacyEquipments#filter","$kind":"method","$docmaLink":"?api#LegacyEquipments#filter"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2217,2324],"filename":"LegacyEquipments.js","lineno":70,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000390","name":"LegacyEquipments#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"LegacyEquipments#search","kind":"function","memberof":"LegacyEquipments","scope":"instance","$longname":"LegacyEquipments#search","$kind":"method","$docmaLink":"?api#LegacyEquipments#search"},{"comment":"/**\n * Custom filter for ship data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[3095,3207],"filename":"LegacyShips.js","lineno":97,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000652","name":"LegacyShips#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for ship data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"LegacyShips#filter","kind":"function","memberof":"LegacyShips","scope":"instance","$longname":"LegacyShips#filter","$kind":"method","$docmaLink":"?api#LegacyShips#filter"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[3323,3430],"filename":"LegacyShips.js","lineno":105,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000672","name":"LegacyShips#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"LegacyShips#search","kind":"function","memberof":"LegacyShips","scope":"instance","$longname":"LegacyShips#search","$kind":"method","$docmaLink":"?api#LegacyShips#search"},{"comment":"/**\n * Get an unfiltered ship list\n */","meta":{"range":[3242,3326],"filename":"SaratogaShips.js","lineno":116,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001313","name":"ShipExtAll#get","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Get an unfiltered ship list
","name":"get","longname":"ShipExtAll#get","kind":"function","memberof":"ShipExtAll","scope":"instance","params":[],"$longname":"ShipExtAll#get","$kind":"method","$docmaLink":"?api#ShipExtAll#get"},{"comment":"/**\n * Filter ships via id\n */","meta":{"range":[3992,4078],"filename":"SaratogaShips.js","lineno":150,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001411","name":"ShipExtAll#id","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Filter ships via id
","name":"id","longname":"ShipExtAll#id","kind":"function","memberof":"ShipExtAll","scope":"instance","params":[],"$longname":"ShipExtAll#id","$kind":"method","$docmaLink":"?api#ShipExtAll#id"},{"comment":"/**\n * Filter ships via language\n * @param {string} language \n */","meta":{"range":[3414,3943],"filename":"SaratogaShips.js","lineno":125,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001328","name":"ShipExtAll#name","type":"MethodDefinition","paramnames":["language"]},"vars":{"":null}},"description":"Filter ships via language
","params":[{"type":{"names":["string"]},"name":"language"}],"name":"name","longname":"ShipExtAll#name","kind":"function","memberof":"ShipExtAll","scope":"instance","$longname":"ShipExtAll#name","$kind":"method","$docmaLink":"?api#ShipExtAll#name"},{"comment":"/**\n * Barrage Data\n * @external Barrage\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":34,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Barrage Data
","kind":"external","name":"Barrage","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Barrage","scope":"global","$longname":"external:Barrage","$kind":"external","$docmaLink":"?api#external:Barrage"},{"comment":"/**\n * Chapter Data\n * @external Chapter\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":24,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Chapter Data
","kind":"external","name":"Chapter","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Chapter","scope":"global","$longname":"external:Chapter","$kind":"external","$docmaLink":"?api#external:Chapter"},{"comment":"/**\n * Equipment Data\n * @external Equipment\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":19,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Equipment Data
","kind":"external","name":"Equipment","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Equipment","scope":"global","$longname":"external:Equipment","$kind":"external","$docmaLink":"?api#external:Equipment"},{"comment":"/**\n * Node.js Event Emitter\n * @external EventEmitter\n * @see {@link https://nodejs.org/api/events.html}\n */","meta":{"filename":"index.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Event Emitter
","kind":"external","name":"EventEmitter","see":["{@link https://nodejs.org/api/events.html}"],"longname":"external:EventEmitter","scope":"global","$longname":"external:EventEmitter","$kind":"external","$docmaLink":"?api#external:EventEmitter"},{"comment":"/**\n * Ship Data\n * @external Ship\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}\n */","meta":{"filename":"index.js","lineno":13,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Ship Data
","kind":"external","name":"Ship","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#ship-getters}"],"longname":"external:Ship","scope":"global","$longname":"external:Ship","$kind":"external","$docmaLink":"?api#external:Ship"},{"comment":"/**\n * Node.js Timeout\n * @external Timeout\n * @see {@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}\n */","meta":{"filename":"index.js","lineno":7,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Node.js Timeout
","kind":"external","name":"Timeout","see":["{@link https://nodejs.org/dist/latest/docs/api/timers.html#timers_class_timeout}"],"longname":"external:Timeout","scope":"global","$longname":"external:Timeout","$kind":"external","$docmaLink":"?api#external:Timeout"},{"comment":"/**\n * Voiceline Data\n * @external Voiceline\n * @see {@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}\n */","meta":{"filename":"index.js","lineno":29,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga","code":{}},"description":"Voiceline Data
","kind":"external","name":"Voiceline","see":["{@link https://github.com/AzurAPI/Saratoga/wiki/More-Get-Methods#equipment-getters}"],"longname":"external:Voiceline","scope":"global","$longname":"external:Voiceline","$kind":"external","$docmaLink":"?api#external:Voiceline"}],"symbols":["external:Barrage","external:Chapter","external:Equipment","external:EventEmitter","external:Ship","external:Timeout","external:Voiceline","LegacyEquipments","LegacyEquipments#filter","LegacyEquipments#search","LegacyShips","LegacyShips#filter","LegacyShips#search","Saratoga","Saratoga#barrages","Saratoga#chapters","Saratoga#equipments","Saratoga#event:debug","Saratoga#event:error","Saratoga#event:ready","Saratoga#event:updateAvailable","Saratoga#legacyEquipments","Saratoga#legacyShips","Saratoga#ready","Saratoga#ships","Saratoga#store","Saratoga#updater","Saratoga#voicelines","SaratogaEquipments","SaratogaEquipments","SaratogaEquipments#all","SaratogaEquipments#category","SaratogaEquipments#filter","SaratogaEquipments.LegacyEquipments#getAllByCategory","SaratogaEquipments.LegacyEquipments#getAllByNationality","SaratogaEquipments.LegacyEquipments#searchByEquipmentName","SaratogaEquipments#name","SaratogaEquipments#nationality","SaratogaEquipments#search","SaratogaShips","SaratogaShips","SaratogaShips#filter","SaratogaShips#get","SaratogaShips#id","SaratogaShips.LegacyShips#getAllByClass","SaratogaShips.LegacyShips#getAllByHullType","SaratogaShips.LegacyShips#getAllByNationality","SaratogaShips.LegacyShips#getAllByRarity","SaratogaShips.LegacyShips#getById","SaratogaShips.LegacyShips#searchShipByName","SaratogaShips#name","SaratogaShips#search","SaratogaShips.ShipExtFilter#class","SaratogaShips.ShipExtFilter#nationality","SaratogaShips.ShipExtFilter#rarity","SaratogaShips.ShipExtFilter#type","SaratogaStore","SaratogaStore#equipments","SaratogaStore#legacyShips","SaratogaStore#ready","SaratogaStore#saratoga","SaratogaStore#ships","SaratogaStore#updater","SaratogaUpdater","SaratogaUpdater#checkForUpdate","SaratogaUpdater#cronUpdate","SaratogaUpdater#dataDirReady","SaratogaUpdater#saratoga","SaratogaUpdater#store","SaratogaUpdater#updateCache","SaratogaUpdater#updateDataAndCache","SaratogaUpdater#updateLocalData","SaratogaValidator","ShipExtAll","ShipExtAll#get","ShipExtAll#id","ShipExtAll#name","ShipExtFilter"]}},"app":{"title":"Saratoga | An open source Azur Lane local library","routing":{"method":"query","caseSensitive":true},"entrance":"content:readme","base":"/Saratoga/","meta":null,"server":"static","favicon":""},"template":{"name":"docma-template-zebra","description":"Zebra - Default template for Docma. https://github.com/onury/docma","version":"2.3.1","supportedDocmaVersion":">=2.0.0","author":"Onur Yıldırım","license":"MIT","mainHTML":"index.html","options":{"title":{"label":"Saratoga","href":"."},"sidebar":{"enabled":true,"outline":"tree","collapsed":false,"toolbar":true,"itemsFolded":false,"itemsOverflow":"crop","badges":true,"search":true,"animations":true},"symbols":{"autoLink":true,"params":"list","enums":"list","props":"list","meta":false},"navbar":{"enabled":true,"dark":false,"animations":true,"menu":[{"label":"Readme","href":"."},{"label":"Documentation","href":"?api"},{"label":"GitHub","href":"https://github.com/AzurAPI/Saratoga"}],"fixed":true},"logo":null,"contentView":{"bookmarks":false,"faVersion":"5.5.0","faLibs":"all"}}},"partials":{"api":"docma-api","content":"docma-content","notFound":"docma-404"},"elementID":"docma-main","contentElementID":"docma-content","defaultApiName":"_def_","logsEnabled":false}));
+var docma = Object.freeze(new DocmaWeb({"version":"3.2.2","routes":[{"id":"api:","type":"api","name":"_def_","path":"?api","contentPath":null,"sourceType":"js"},{"id":"content:readme","type":"content","name":"readme","path":"?content=readme","contentPath":"content/readme.html","sourceType":"md"}],"apis":{"_def_":{"documentation":[{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[226,334],"filename":"LegacyEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000228","name":"LegacyEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"LegacyEquipments","longname":"LegacyEquipments","kind":"class","scope":"global","$longname":"LegacyEquipments","$kind":"constructor","$docmaLink":"?api#LegacyEquipments"},{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[211,319],"filename":"LegacyShips.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000421","name":"LegacyShips","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"LegacyShips","longname":"LegacyShips","kind":"class","scope":"global","$longname":"LegacyShips","$kind":"constructor","$docmaLink":"?api#LegacyShips"},{"comment":"/**\n * 本APIの出発点\n * Saratoga, the starting point of this API\n * @class Saratoga\n * @extends {EventEmitter}\n */","meta":{"filename":"Saratoga.js","lineno":4,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"本APIの出発点\nSaratoga, the starting point of this API
","kind":"class","name":"Saratoga","augments":["EventEmitter"],"longname":"Saratoga","scope":"global","$longname":"Saratoga","$kind":"class","$docmaLink":"?api#Saratoga","$members":[{"comment":"/**\n * 連打のデータを取得する\n * Barrage related getters for this store\n * @type {SaratogaBarrages}\n */","meta":{"range":[3148,3244],"filename":"Saratoga.js","lineno":121,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000166","name":"Saratoga#barrages","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"連打のデータを取得する\nBarrage related getters for this store
","type":{"names":["SaratogaBarrages"]},"name":"barrages","longname":"Saratoga#barrages","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#barrages","$kind":"property","$docmaLink":"?api#Saratoga#barrages"},{"comment":"/**\n * チャプターのデータを取得する\n * Chapters related getters for this store\n * @type {SaratogaChapters}\n */","meta":{"range":[2708,2804],"filename":"Saratoga.js","lineno":103,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000132","name":"Saratoga#chapters","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"チャプターのデータを取得する\nChapters related getters for this store
","type":{"names":["SaratogaChapters"]},"name":"chapters","longname":"Saratoga#chapters","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#chapters","$kind":"property","$docmaLink":"?api#Saratoga#chapters"},{"comment":"/**\n * 装置のデータを取得する\n * Azur Lane's Equipment related getter methods\n * @type {SaratogaEquipments}\n */","meta":{"range":[2486,2586],"filename":"Saratoga.js","lineno":94,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000115","name":"Saratoga#equipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"装置のデータを取得する\nAzur Lane's Equipment related getter methods
","type":{"names":["SaratogaEquipments"]},"name":"equipments","longname":"Saratoga#equipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#equipments","$kind":"property","$docmaLink":"?api#Saratoga#equipments"},{"comment":"/**\n * 旧装置のデータを取得する\n * Azur Lane's Equipment related getter methods with legacy API\n * @type {SaratogaLegacyEquipments}\n */","meta":{"range":[3633,3745],"filename":"Saratoga.js","lineno":139,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000200","name":"Saratoga#legacyEquipments","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"旧装置のデータを取得する\nAzur Lane's Equipment related getter methods with legacy API
","type":{"names":["SaratogaLegacyEquipments"]},"name":"legacyEquipments","longname":"Saratoga#legacyEquipments","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#legacyEquipments","$kind":"property","$docmaLink":"?api#Saratoga#legacyEquipments"},{"comment":"/**\n * 旧船のデータを取得する\n * Azur Lane's Ship related getter methods with legacy API\n * @type {SaratogaLegacyShips}\n */","meta":{"range":[3382,3484],"filename":"Saratoga.js","lineno":130,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000183","name":"Saratoga#legacyShips","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"旧船のデータを取得する\nAzur Lane's Ship related getter methods with legacy API
","type":{"names":["SaratogaLegacyShips"]},"name":"legacyShips","longname":"Saratoga#legacyShips","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#legacyShips","$kind":"property","$docmaLink":"?api#Saratoga#legacyShips"},{"comment":"/**\n * 状態\n * If Saratoga is ready to operate\n * @type {Boolean}\n */","meta":{"range":[2066,2153],"filename":"Saratoga.js","lineno":75,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000080","name":"Saratoga#ready","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"状態\nIf Saratoga is ready to operate
","type":{"names":["Boolean"]},"name":"ready","longname":"Saratoga#ready","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ready","$kind":"property","$docmaLink":"?api#Saratoga#ready"},{"comment":"/**\n * 船のデータを取得する\n * Azur Lane's Ship related getter methods\n * @type {SaratogaShips}\n */","meta":{"range":[2269,2359],"filename":"Saratoga.js","lineno":84,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000098","name":"Saratoga#ships","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"船のデータを取得する\nAzur Lane's Ship related getter methods
","type":{"names":["SaratogaShips"]},"name":"ships","longname":"Saratoga#ships","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#ships","$kind":"property","$docmaLink":"?api#Saratoga#ships"},{"comment":"/**\n * キャッシュデータの管理\n * Contains methods and props for managing cached data\n * @type {SaratogaStore}\n */","meta":{"range":[602,638],"filename":"Saratoga.js","lineno":21,"columnno":8,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000053","name":"this.store","type":"NewExpression","value":"","paramnames":[]}},"description":"キャッシュデータの管理\nContains methods and props for managing cached data
","type":{"names":["SaratogaStore"]},"name":"store","longname":"Saratoga#store","kind":"member","memberof":"Saratoga","scope":"instance","$longname":"Saratoga#store","$kind":"property","$docmaLink":"?api#Saratoga#store"},{"comment":"/**\n * アップデータ\n * Contains methods for updating Saratoga's local data & cache\n * @type {SaratogaUpdater}\n */","meta":{"range":[1916,1972],"filename":"Saratoga.js","lineno":66,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000070","name":"Saratoga#updater","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"アップデータ\nContains methods for updating Saratoga's local data & cache
","type":{"names":["SaratogaUpdater"]},"name":"updater","longname":"Saratoga#updater","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#updater","$kind":"property","$docmaLink":"?api#Saratoga#updater"},{"comment":"/**\n * ボイスラインのデータを取得する\n * Voiceline related getters for this store\n * @type {SaratogaVoicelines}\n */","meta":{"range":[2930,3030],"filename":"Saratoga.js","lineno":112,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000149","name":"Saratoga#voicelines","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"ボイスラインのデータを取得する\nVoiceline related getters for this store
","type":{"names":["SaratogaVoicelines"]},"name":"voicelines","longname":"Saratoga#voicelines","kind":"member","memberof":"Saratoga","scope":"instance","params":[],"$longname":"Saratoga#voicelines","$kind":"property","$docmaLink":"?api#Saratoga#voicelines"},{"comment":"/**\n * デバッグデータがあるときに発せられる\n * Emitted when there is a debug data\n * @event Saratoga#debug\n * @param {string} message Debug message 資料\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":25,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"デバッグデータがあるときに発せられる\nEmitted when there is a debug data
","kind":"event","name":"debug","params":[{"type":{"names":["string"]},"description":"Debug message 資料
","name":"message"}],"memberof":"Saratoga","longname":"Saratoga#event:debug","scope":"instance","$longname":"Saratoga#event:debug","$kind":"event","$docmaLink":"?api#Saratoga#event:debug"},{"comment":"/**\n * エラーが発生したときに発せられる\n * Emitted when there is a pesky error\n * @event Saratoga#error\n * @param {Error} error The error encountered.\n * @memberof Saratoga\n * @example\n * Saratoga.on('error', console.error);\n */","meta":{"filename":"Saratoga.js","lineno":32,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"エラーが発生したときに発せられる\nEmitted when there is a pesky error
","kind":"event","name":"error","params":[{"type":{"names":["Error"]},"description":"The error encountered.
","name":"error"}],"memberof":"Saratoga","examples":["Saratoga.on('error', console.error);"],"longname":"Saratoga#event:error","scope":"instance","$longname":"Saratoga#event:error","$kind":"event","$docmaLink":"?api#Saratoga#event:error"},{"comment":"/**\n * 準備ができたときに発せられる\n * Emitted when Saratoga is ready\n * @event Saratoga#ready\n * @memberof Saratoga\n */","meta":{"filename":"Saratoga.js","lineno":54,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"準備ができたときに発せられる\nEmitted when Saratoga is ready
","kind":"event","name":"ready","memberof":"Saratoga","longname":"Saratoga#event:ready","scope":"instance","$longname":"Saratoga#event:ready","$kind":"event","$docmaLink":"?api#Saratoga#event:ready"},{"comment":"/**\n * 更新があったときに発せられる\n * Emitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true\n * @event Saratoga#updateAvailable\n * @param {Object} data What data needs updating\n * @memberof Saratoga\n * @example\n * Saratoga.on('updateAvailable', (data) => {\n * if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n * // handle update\n * }\n * })\n */","meta":{"filename":"Saratoga.js","lineno":41,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{}},"description":"更新があったときに発せられる\nEmitted when there is an update available for local data. Only available when Saratoga is initialized with notifyForNewUpdates set to true
","kind":"event","name":"updateAvailable","params":[{"type":{"names":["Object"]},"description":"What data needs updating
","name":"data"}],"memberof":"Saratoga","examples":["Saratoga.on('updateAvailable', (data) => {\n if (data.shipUpdateAvailable || data.equipmentUpdateAvailable) {\n // handle update\n }\n})"],"longname":"Saratoga#event:updateAvailable","scope":"instance","$longname":"Saratoga#event:updateAvailable","$kind":"event","$docmaLink":"?api#Saratoga#event:updateAvailable"}],"$constructor":{"comment":"/**\n * @param {Object} options Object with a single parameter, which is notifyForNewUpdates, which is a boolean\n */","meta":{"range":[378,714],"filename":"Saratoga.js","lineno":14,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src","code":{"id":"astnode100000040","name":"Saratoga","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"params":[{"type":{"names":["Object"]},"description":"Object with a single parameter, which is notifyForNewUpdates, which is a boolean
","name":"options"}],"name":"Saratoga","longname":"Saratoga","kind":"class","scope":"global","$longname":"Saratoga","$kind":"constructor","$docmaLink":"?api#Saratoga"}},{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[132,240],"filename":"SaratogaBarrages.js","lineno":5,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000703","name":"SaratogaBarrages","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaBarrages","longname":"SaratogaBarrages","kind":"class","scope":"global","$longname":"SaratogaBarrages","$kind":"constructor","$docmaLink":"?api#SaratogaBarrages"},{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[140,248],"filename":"SaratogaChapters.js","lineno":6,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000972","name":"SaratogaChapters","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaChapters","longname":"SaratogaChapters","kind":"class","scope":"global","$longname":"SaratogaChapters","$kind":"constructor","$docmaLink":"?api#SaratogaChapters"},{"comment":"/**\n * Equipment related getters for Saratoga with LegacyAPI\n * @class SaratogaEquipments\n */","meta":{"filename":"LegacyEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga with LegacyAPI
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments","$members":[{"comment":"/**\n * Get an unfiltered equipment list\n */","meta":{"range":[2442,2526],"filename":"SaratogaEquipments.js","lineno":79,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001239","name":"SaratogaEquipments#all","type":"MethodDefinition","paramnames":[]},"vars":{"":null}},"description":"Get an unfiltered equipment list
","name":"all","longname":"SaratogaEquipments#all","kind":"function","memberof":"SaratogaEquipments","scope":"instance","params":[],"$longname":"SaratogaEquipments#all","$kind":"method","$docmaLink":"?api#SaratogaEquipments#all"},{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[751,885],"filename":"SaratogaEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001083","name":"SaratogaEquipments#category","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"category","longname":"SaratogaEquipments#category","kind":"function","scope":"instance","$longname":"SaratogaEquipments#category","$kind":"method","$docmaLink":"?api#SaratogaEquipments#category"},{"comment":"/**\n * Custom filter for equipment data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[2668,2780],"filename":"SaratogaEquipments.js","lineno":88,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001254","name":"SaratogaEquipments#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for equipment data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaEquipments#filter","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#filter","$kind":"method","$docmaLink":"?api#SaratogaEquipments#filter"},{"comment":"/**\n * Lists the equipments by category\n * @param {string} category name of the category you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[764,906],"filename":"LegacyEquipments.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000281","name":"LegacyEquipments#getAllByCategory","type":"MethodDefinition","paramnames":["category"]},"vars":{"":null}},"description":"Lists the equipments by category
","params":[{"type":{"names":["string"]},"description":"name of the category you want to search for
","name":"category"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyEquipments#getAllByCategory","longname":"SaratogaEquipments.LegacyEquipments#getAllByCategory","kind":"function","scope":"static","$longname":"SaratogaEquipments.LegacyEquipments#getAllByCategory","$kind":"method","$docmaLink":"?api#SaratogaEquipments.LegacyEquipments#getAllByCategory"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1143,1297],"filename":"LegacyEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000307","name":"LegacyEquipments#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyEquipments#getAllByNationality","longname":"SaratogaEquipments.LegacyEquipments#getAllByNationality","kind":"function","scope":"static","$longname":"SaratogaEquipments.LegacyEquipments#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments.LegacyEquipments#getAllByNationality"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1604,1848],"filename":"LegacyEquipments.js","lineno":52,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000333","name":"LegacyEquipments#searchByEquipmentName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"LegacyEquipments#searchByEquipmentName","longname":"SaratogaEquipments.LegacyEquipments#searchByEquipmentName","kind":"function","scope":"static","$longname":"SaratogaEquipments.LegacyEquipments#searchByEquipmentName","$kind":"method","$docmaLink":"?api#SaratogaEquipments.LegacyEquipments#searchByEquipmentName"},{"comment":"/**\n * Searches for a specific equipment. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the equipment you want to search for\n * @param {string} language optional language to search by\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaEquipments\n * @returns {Equipment | null}\n */","meta":{"range":[1638,2380],"filename":"SaratogaEquipments.js","lineno":53,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001135","name":"SaratogaEquipments#name","type":"MethodDefinition","paramnames":["name","language","limit"]},"vars":{"":null}},"description":"Searches for a specific equipment. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the equipment you want to search for
","name":"name"},{"type":{"names":["string"]},"description":"optional language to search by
","name":"language"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Equipment","null"]}}],"name":"name","longname":"SaratogaEquipments#name","kind":"function","scope":"instance","$longname":"SaratogaEquipments#name","$kind":"method","$docmaLink":"?api#SaratogaEquipments#name"},{"comment":"/**\n * Lists the equipments by nationality\n * @param {string} nationality naitionality name of the equipments you want to search for\n * @memberof SaratogaEquipments\n * @returns {Array | null}\n */","meta":{"range":[1122,1268],"filename":"SaratogaEquipments.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001109","name":"SaratogaEquipments#nationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists the equipments by nationality
","params":[{"type":{"names":["string"]},"description":"naitionality name of the equipments you want to search for
","name":"nationality"}],"memberof":"SaratogaEquipments","returns":[{"type":{"names":["Array.","null"]}}],"name":"nationality","longname":"SaratogaEquipments#nationality","kind":"function","scope":"instance","$longname":"SaratogaEquipments#nationality","$kind":"method","$docmaLink":"?api#SaratogaEquipments#nationality"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2896,3003],"filename":"SaratogaEquipments.js","lineno":96,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001274","name":"SaratogaEquipments#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaEquipments#search","kind":"function","memberof":"SaratogaEquipments","scope":"instance","$longname":"SaratogaEquipments#search","$kind":"method","$docmaLink":"?api#SaratogaEquipments#search"}],"$constructor":{"comment":"/**\n * @param {SaratogaStore} store The updater instance that generated this instance\n */","meta":{"range":[213,321],"filename":"SaratogaEquipments.js","lineno":9,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001030","name":"SaratogaEquipments","type":"MethodDefinition","paramnames":["store"]},"vars":{"":null}},"params":[{"type":{"names":["SaratogaStore"]},"description":"The updater instance that generated this instance
","name":"store"}],"name":"SaratogaEquipments","longname":"SaratogaEquipments","kind":"class","scope":"global","$longname":"SaratogaEquipments","$kind":"constructor","$docmaLink":"?api#SaratogaEquipments"}},{"comment":"/**\n * Equipment related getters for Saratoga\n * @class SaratogaEquipments\n */","meta":{"filename":"SaratogaEquipments.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Equipment related getters for Saratoga
","kind":"class","name":"SaratogaEquipments","longname":"SaratogaEquipments","scope":"global","$longname":"SaratogaEquipments","$kind":"class","$docmaLink":"?api#SaratogaEquipments"},{"comment":"/**\n * Ship related getters for Saratoga with LegacyAPI\n * @class SaratogaShips\n */","meta":{"filename":"LegacyShips.js","lineno":1,"columnno":0,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{}},"description":"Ship related getters for Saratoga with LegacyAPI
","kind":"class","name":"SaratogaShips","longname":"SaratogaShips","scope":"global","$longname":"SaratogaShips","$kind":"class","$docmaLink":"?api#SaratogaShips","$members":[{"comment":"/**\n * Custom filter for ship data\n * @param {requestCallback} callback the callback that handles the response\n */","meta":{"range":[2763,2875],"filename":"SaratogaShips.js","lineno":94,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001585","name":"SaratogaShips#filter","type":"MethodDefinition","paramnames":["callback"]},"vars":{"":null}},"description":"Custom filter for ship data
","params":[{"type":{"names":["requestCallback"]},"description":"the callback that handles the response
","name":"callback"}],"name":"filter","longname":"SaratogaShips#filter","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#filter","$kind":"method","$docmaLink":"?api#SaratogaShips#filter"},{"comment":"/**\n * Search from all ships\n * @param {number | string} id \n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[666,1089],"filename":"SaratogaShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001358","name":"SaratogaShips#get","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Search from all ships
","params":[{"type":{"names":["number","string"]},"name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"get","longname":"SaratogaShips#get","kind":"function","scope":"instance","$longname":"SaratogaShips#get","$kind":"method","$docmaLink":"?api#SaratogaShips#get"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[1273,1447],"filename":"SaratogaShips.js","lineno":50,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001431","name":"SaratogaShips#id","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"id","longname":"SaratogaShips#id","kind":"function","scope":"instance","$longname":"SaratogaShips#id","$kind":"method","$docmaLink":"?api#SaratogaShips#id"},{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[774,912],"filename":"LegacyShips.js","lineno":29,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000474","name":"LegacyShips#getAllByClass","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific shjp class
","params":[{"type":{"names":["string"]},"description":"class of the ship you want to search for (Case Sensitive)
","name":"shipClass"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByClass","longname":"SaratogaShips.LegacyShips#getAllByClass","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByClass","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByClass"},{"comment":"/**\n * Lists all the ships that matches a specific ship hull type\n * @param {string} hullType hullType of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1572,1714],"filename":"LegacyShips.js","lineno":51,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000526","name":"LegacyShips#getAllByHullType","type":"MethodDefinition","paramnames":["hullType"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship hull type
","params":[{"type":{"names":["string"]},"description":"hullType of the ship you want to search for (Case Sensitive)
","name":"hullType"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByHullType","longname":"SaratogaShips.LegacyShips#getAllByHullType","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByHullType","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByHullType"},{"comment":"/**\n * Lists all the ships that matches a specific ship nationality\n * @param {string} nationality nationality of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1169,1323],"filename":"LegacyShips.js","lineno":40,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000500","name":"LegacyShips#getAllByNationality","type":"MethodDefinition","paramnames":["nationality"]},"vars":{"":null}},"description":"Lists all the ships that matches a specific ship nationality
","params":[{"type":{"names":["string"]},"description":"nationality of the ship you want to search for (Case Sensitive)
","name":"nationality"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByNationality","longname":"SaratogaShips.LegacyShips#getAllByNationality","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByNationality","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByNationality"},{"comment":"/**\n * Lists all the ship that matches a specific rarity\n * @param {string} rarity rarity of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[1950,2084],"filename":"LegacyShips.js","lineno":62,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000552","name":"LegacyShips#getAllByRarity","type":"MethodDefinition","paramnames":["rarity"]},"vars":{"":null}},"description":"Lists all the ship that matches a specific rarity
","params":[{"type":{"names":["string"]},"description":"rarity of the ship you want to search for (Case Sensitive)
","name":"rarity"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Array.","null"]}}],"name":"LegacyShips#getAllByRarity","longname":"SaratogaShips.LegacyShips#getAllByRarity","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getAllByRarity","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getAllByRarity"},{"comment":"/**\n * Fetches a specific ship via its id\n * @param {number} id id of the ship you want to fetch\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2268,2447],"filename":"LegacyShips.js","lineno":73,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000578","name":"LegacyShips#getById","type":"MethodDefinition","paramnames":["id"]},"vars":{"":null}},"description":"Fetches a specific ship via its id
","params":[{"type":{"names":["number"]},"description":"id of the ship you want to fetch
","name":"id"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"LegacyShips#getById","longname":"SaratogaShips.LegacyShips#getById","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#getById","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#getById"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[2734,2959],"filename":"LegacyShips.js","lineno":87,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100000615","name":"LegacyShips#searchShipByName","type":"MethodDefinition","paramnames":["name","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"LegacyShips#searchShipByName","longname":"SaratogaShips.LegacyShips#searchShipByName","kind":"function","scope":"static","$longname":"SaratogaShips.LegacyShips#searchShipByName","$kind":"method","$docmaLink":"?api#SaratogaShips.LegacyShips#searchShipByName"},{"comment":"/**\n * Searches for a specific ship. (EN, CN, JP, KR names are supported)\n * @param {string} name name of the ship you want to search for\n * @param {string} language optional language to search by\n * @param {number} [limit=10] limit of the search results\n * @memberof SaratogaShips\n * @returns {Ship | null}\n */","meta":{"range":[1797,2627],"filename":"SaratogaShips.js","lineno":65,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001468","name":"SaratogaShips#name","type":"MethodDefinition","paramnames":["name","language","limit"]},"vars":{"":null}},"description":"Searches for a specific ship. (EN, CN, JP, KR names are supported)
","params":[{"type":{"names":["string"]},"description":"name of the ship you want to search for
","name":"name"},{"type":{"names":["string"]},"description":"optional language to search by
","name":"language"},{"type":{"names":["number"]},"optional":true,"defaultvalue":10,"description":"limit of the search results
","name":"limit"}],"memberof":"SaratogaShips","returns":[{"type":{"names":["Ship","null"]}}],"name":"name","longname":"SaratogaShips#name","kind":"function","scope":"instance","$longname":"SaratogaShips#name","$kind":"method","$docmaLink":"?api#SaratogaShips#name"},{"comment":"/**\n * Custom search for data in Fuse instance\n * @param {any} options Fuse search options\n */","meta":{"range":[2991,3098],"filename":"SaratogaShips.js","lineno":102,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001605","name":"SaratogaShips#search","type":"MethodDefinition","paramnames":["options"]},"vars":{"":null}},"description":"Custom search for data in Fuse instance
","params":[{"type":{"names":["any"]},"description":"Fuse search options
","name":"options"}],"name":"search","longname":"SaratogaShips#search","kind":"function","memberof":"SaratogaShips","scope":"instance","$longname":"SaratogaShips#search","$kind":"method","$docmaLink":"?api#SaratogaShips#search"},{"comment":"/**\n * Lists all the ships that matches a specific shjp class\n * @param {string} shipClass class of the ship you want to search for (Case Sensitive)\n * @memberof SaratogaShips\n * @returns {Array | null}\n */","meta":{"range":[4410,4540],"filename":"SaratogaShips.js","lineno":166,"columnno":4,"path":"/Users/yiyi/Desktop/Code/Saratoga/src/store","code":{"id":"astnode100001762","name":"ShipExtFilter#class","type":"MethodDefinition","paramnames":["shipClass"]},"vars":{"":null}},"description":"