summaryrefslogtreecommitdiff
path: root/node_modules/lowdb/lib/_index.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/lowdb/lib/_index.js')
-rw-r--r--node_modules/lowdb/lib/_index.js100
1 files changed, 0 insertions, 100 deletions
diff --git a/node_modules/lowdb/lib/_index.js b/node_modules/lowdb/lib/_index.js
deleted file mode 100644
index c4c475b..0000000
--- a/node_modules/lowdb/lib/_index.js
+++ /dev/null
@@ -1,100 +0,0 @@
-'use strict';
-
-var isPromise = require('is-promise');
-
-module.exports = function (source) {
- var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
- _ref$format = _ref.format,
- format = _ref$format === undefined ? null : _ref$format,
- _ref$storage = _ref.storage,
- storage = _ref$storage === undefined ? null : _ref$storage,
- _ref$writeOnChange = _ref.writeOnChange,
- writeOnChange = _ref$writeOnChange === undefined ? true : _ref$writeOnChange;
-
- var lodash = arguments[2];
-
- // Create a fresh copy of lodash
- var _ = lodash.runInContext();
-
- var db = _.chain({});
-
- if (source) {
- if (format) {
- if (format.serialize) {
- db.serialize = format.serialize;
- }
- if (format.deserialize) {
- db.deserialize = format.deserialize;
- }
- }
-
- if (storage) {
- if (storage.read) {
- db.read = function () {
- var s = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : source;
-
- var res = storage.read(s, db.deserialize);
- var init = function init(obj) {
- db.__wrapped__ = obj;
- db._checksum = JSON.stringify(db.__wrapped__);
- };
-
- if (isPromise(res)) {
- return res.then(function (obj) {
- init(obj);
- return db;
- });
- }
-
- init(res);
- return db;
- };
- }
-
- if (storage.write) {
- db.write = function () {
- var dest = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : source;
- return storage.write(dest, db.__wrapped__, db.serialize);
- };
- }
- }
- }
-
- // Persist database state
- function persist() {
- if (db.source && db.write && writeOnChange) {
- var str = JSON.stringify(db.__wrapped__);
-
- if (str !== db._checksum) {
- db._checksum = str;
- db.write(db.source);
- }
- }
- }
-
- // Modify value function to call save before returning result
- _.prototype.value = _.wrap(_.prototype.value, function (value) {
- var v = value.apply(this);
- persist();
- return v;
- });
-
- // Get or set database state
- db.getState = function () {
- return db.__wrapped__;
- };
- db.setState = function (state) {
- db.__wrapped__ = state;
- persist();
- };
-
- db._ = _;
- db.source = source;
-
- // Read
- if (db.read) {
- return db.read();
- } else {
- return db;
- }
-}; \ No newline at end of file