{"version":3,"file":"js-data-localforage.min.js","sources":["js-data-localforage.js"],"names":["root","factory","exports","module","require","define","amd","this","__WEBPACK_EXTERNAL_MODULE_1__","__WEBPACK_EXTERNAL_MODULE_2__","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","_defineProperty","obj","key","value","Object","defineProperty","enumerable","configurable","writable","_classCallCheck","instance","Constructor","TypeError","enqueue","task","queue","push","dequeue","length","taskInProcess","queueTask","createTask","fn","DSUtils","Promise","then","result","shift","setTimeout","err","reject","_createClass","defineProperties","target","props","i","descriptor","protoProps","staticProps","prototype","JSData","localforage","guid","unique","map","emptyStore","DS","filter","defaults","defaultFilter","Defaults","basePath","DSLocalForageAdapter","options","deepMixIn","resourceConfig","makePath","name","endpoint","idsPath","getPath","resolve","getItem","ids","setItem","v","keysPath","_this","getIds","saveKeys","_this2","removeCircular","GET","item","removeItem","_this3","undefined","getIdPath","Error","_instance","tasks","forEach","relationList","def","relationName","relation","relationDef","getResource","containedName","contains","localField","__options","orig","_","remove","indexOf","substr","type","foreignKey","localKeys","itemKeys","Array","isArray","keys","concat","findAll","where","idAttribute","in","x","relatedItems","set","localKey","find","get","relatedItem","==","all","params","_this4","items","idsArray","allowSimpleWhere","_items","attached","attrs","_this5","PUT","omit","relationFields","ensureId","_this6","_this7","update","_this8","DEL","removeId","_this9","destroy","randHex","choice","arr","compare","isEqual","n","a","b","callback","thisObj","makeIterator","results","len","size","str","_chars","split","arguments","randInt","src","identity","val","deepMatches","prop","min","max","MIN_INT","MAX_INT","Math","round","rand","isKind","containsMatch","array","pattern","matchArray","patternLength","matchObject","forOwn","random","kind","kindOf","forIn","hasOwn","UNDEF","_rKind","exec","_toString","toString","hasOwnProperty","checkDontEnum","_dontEnums","_hasDontEnumBug","ctor","constructor","isProto"],"mappings":"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"}