udata 9.1.2.dev30454__py2.py3-none-any.whl → 9.1.2.dev30483__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of udata might be problematic. Click here for more details.

Files changed (27) hide show
  1. udata/api_fields.py +48 -7
  2. udata/core/reports/api.py +2 -2
  3. udata/core/reports/constants.py +5 -1
  4. udata/core/reports/models.py +26 -11
  5. udata/static/chunks/{11.e9b9ca1f3e03d4020377.js → 11.f6ed628667c44bbad757.js} +3 -3
  6. udata/static/chunks/{11.e9b9ca1f3e03d4020377.js.map → 11.f6ed628667c44bbad757.js.map} +1 -1
  7. udata/static/chunks/{13.038c0d9aa0dfa0181c4b.js → 13.a535d3f0dc1690137ebf.js} +2 -2
  8. udata/static/chunks/{13.038c0d9aa0dfa0181c4b.js.map → 13.a535d3f0dc1690137ebf.js.map} +1 -1
  9. udata/static/chunks/{16.0baa2b64a74a2dcde25c.js → 16.e499a69d451e8620b796.js} +2 -2
  10. udata/static/chunks/{16.0baa2b64a74a2dcde25c.js.map → 16.e499a69d451e8620b796.js.map} +1 -1
  11. udata/static/chunks/{19.350a9f150b074b4ecefa.js → 19.7d96d075450c6a7f843e.js} +3 -3
  12. udata/static/chunks/{19.350a9f150b074b4ecefa.js.map → 19.7d96d075450c6a7f843e.js.map} +1 -1
  13. udata/static/chunks/{5.6ebbce2b9b3e696d3da5.js → 5.a1a6164f9161d24acda1.js} +3 -3
  14. udata/static/chunks/{5.6ebbce2b9b3e696d3da5.js.map → 5.a1a6164f9161d24acda1.js.map} +1 -1
  15. udata/static/chunks/{6.d8a5f7b017bcbd083641.js → 6.7d18ddefd50912448615.js} +3 -3
  16. udata/static/chunks/{6.d8a5f7b017bcbd083641.js.map → 6.7d18ddefd50912448615.js.map} +1 -1
  17. udata/static/chunks/{9.ba6c5ed42a4b3d1de13a.js → 9.47a0060ef619922385ad.js} +2 -2
  18. udata/static/chunks/{9.ba6c5ed42a4b3d1de13a.js.map → 9.47a0060ef619922385ad.js.map} +1 -1
  19. udata/static/common.js +1 -1
  20. udata/static/common.js.map +1 -1
  21. udata/tests/api/test_reports_api.py +44 -20
  22. {udata-9.1.2.dev30454.dist-info → udata-9.1.2.dev30483.dist-info}/METADATA +3 -1
  23. {udata-9.1.2.dev30454.dist-info → udata-9.1.2.dev30483.dist-info}/RECORD +27 -27
  24. {udata-9.1.2.dev30454.dist-info → udata-9.1.2.dev30483.dist-info}/LICENSE +0 -0
  25. {udata-9.1.2.dev30454.dist-info → udata-9.1.2.dev30483.dist-info}/WHEEL +0 -0
  26. {udata-9.1.2.dev30454.dist-info → udata-9.1.2.dev30483.dist-info}/entry_points.txt +0 -0
  27. {udata-9.1.2.dev30454.dist-info → udata-9.1.2.dev30483.dist-info}/top_level.txt +0 -0
udata/static/common.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(e){function __webpack_require__(a){if(c[a])return c[a].exports;var b=c[a]={exports:{},id:a,loaded:!1};return e[a].call(b.exports,b,b.exports,__webpack_require__),b.loaded=!0,b.exports}var a=window.webpackJsonp;window.webpackJsonp=function(r,f){for(var t,d,_=0,n=[];_<r.length;_++)d=r[_],b[d]&&n.push.apply(n,b[d]),b[d]=0;for(t in f){var i=f[t];switch(typeof i){case"object":e[t]=function(a){var c=a.slice(1),b=a[0];return function(a,r,f){e[b].apply(this,[a,r,f].concat(c))}}(i);break;case"function":e[t]=i;break;default:e[t]=e[i]}}for(a&&a(r,f);n.length;)n.shift().call(null,__webpack_require__);if(f[0])return c[0]=0,__webpack_require__(0)};var c={},b={31:0};__webpack_require__.e=function(e,a){if(0===b[e])return a.call(null,__webpack_require__);if(void 0!==b[e])b[e].push(a);else{b[e]=[a];var c=document.getElementsByTagName("head")[0],r=document.createElement("script");r.type="text/javascript",r.charset="utf-8",r.async=!0,r.src=__webpack_require__.p+"chunks/"+e+"."+{0:"37b83c6dc990e52cc593",1:"1985566f8b821be031da",2:"614b3e73b072982fd9b1",3:"1ca609753b5a02de0ca3",4:"9e1761727aa5471aa19e",5:"6ebbce2b9b3e696d3da5",6:"d8a5f7b017bcbd083641",7:"45d819f8edd0af6f7408",8:"37e24cb993927c0739bc",9:"ba6c5ed42a4b3d1de13a",10:"8cd46b46c57b89afe199",11:"e9b9ca1f3e03d4020377",12:"f063483ea9d39dab31f3",13:"038c0d9aa0dfa0181c4b",14:"37d4cd9fe625f51e895e",15:"6f5ceeacd2b7b74d680b",16:"0baa2b64a74a2dcde25c",17:"831791e0bcaf9c8ad4ba",18:"48c373a95548582ecb20",19:"350a9f150b074b4ecefa",20:"371472cff605ff23e70c",21:"37da7c1b1910dd87ce69",22:"be7e14bf9623297b79d9",23:"5486b3fc83b194d55191",24:"e905e3f6ba089a34b07c",25:"e20b4daac9fb2bdceee6",26:"c8f33e73b9117b70aef8",27:"6779f92692327013b446",28:"280c392f19bc9e908abf",29:"daadfa33135efe4e5534",30:"bff1b2677139686b0e0c",32:"1c37209e865102e209b4",33:"70f8e7b1964892a24e67"}[e]+".js",c.appendChild(r)}},__webpack_require__.m=e,__webpack_require__.c=c,__webpack_require__.p="/static/"}(function(e){for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a))switch(typeof e[a]){case"function":break;case"object":e[a]=function(a){var c=a.slice(1),b=e[a[0]];return function(e,a,r){b.apply(this,[e,a,r].concat(c))}}(e[a]);break;default:e[a]=e[e[a]]}return e}([]));
1
+ !function(e){function __webpack_require__(a){if(c[a])return c[a].exports;var r=c[a]={exports:{},id:a,loaded:!1};return e[a].call(r.exports,r,r.exports,__webpack_require__),r.loaded=!0,r.exports}var a=window.webpackJsonp;window.webpackJsonp=function(f,b){for(var t,d,_=0,n=[];_<f.length;_++)d=f[_],r[d]&&n.push.apply(n,r[d]),r[d]=0;for(t in b){var i=b[t];switch(typeof i){case"object":e[t]=function(a){var c=a.slice(1),r=a[0];return function(a,f,b){e[r].apply(this,[a,f,b].concat(c))}}(i);break;case"function":e[t]=i;break;default:e[t]=e[i]}}for(a&&a(f,b);n.length;)n.shift().call(null,__webpack_require__);if(b[0])return c[0]=0,__webpack_require__(0)};var c={},r={31:0};__webpack_require__.e=function(e,a){if(0===r[e])return a.call(null,__webpack_require__);if(void 0!==r[e])r[e].push(a);else{r[e]=[a];var c=document.getElementsByTagName("head")[0],f=document.createElement("script");f.type="text/javascript",f.charset="utf-8",f.async=!0,f.src=__webpack_require__.p+"chunks/"+e+"."+{0:"37b83c6dc990e52cc593",1:"1985566f8b821be031da",2:"614b3e73b072982fd9b1",3:"1ca609753b5a02de0ca3",4:"9e1761727aa5471aa19e",5:"a1a6164f9161d24acda1",6:"7d18ddefd50912448615",7:"45d819f8edd0af6f7408",8:"37e24cb993927c0739bc",9:"47a0060ef619922385ad",10:"8cd46b46c57b89afe199",11:"f6ed628667c44bbad757",12:"f063483ea9d39dab31f3",13:"a535d3f0dc1690137ebf",14:"37d4cd9fe625f51e895e",15:"6f5ceeacd2b7b74d680b",16:"e499a69d451e8620b796",17:"831791e0bcaf9c8ad4ba",18:"48c373a95548582ecb20",19:"7d96d075450c6a7f843e",20:"371472cff605ff23e70c",21:"37da7c1b1910dd87ce69",22:"be7e14bf9623297b79d9",23:"5486b3fc83b194d55191",24:"e905e3f6ba089a34b07c",25:"e20b4daac9fb2bdceee6",26:"c8f33e73b9117b70aef8",27:"6779f92692327013b446",28:"280c392f19bc9e908abf",29:"daadfa33135efe4e5534",30:"bff1b2677139686b0e0c",32:"1c37209e865102e209b4",33:"70f8e7b1964892a24e67"}[e]+".js",c.appendChild(f)}},__webpack_require__.m=e,__webpack_require__.c=c,__webpack_require__.p="/static/"}(function(e){for(var a in e)if(Object.prototype.hasOwnProperty.call(e,a))switch(typeof e[a]){case"function":break;case"object":e[a]=function(a){var c=a.slice(1),r=e[a[0]];return function(e,a,f){r.apply(this,[e,a,f].concat(c))}}(e[a]);break;default:e[a]=e[e[a]]}return e}([]));
2
2
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///common.js","webpack:///webpack/bootstrap f13ba019fd6d8f4227cb"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","parentJsonpFunction","window","chunkIds","moreModules","chunkId","i","callbacks","length","installedChunks","push","apply","_m","args","slice","templateId","a","b","c","this","concat","shift","31","e","callback","undefined","head","document","getElementsByTagName","script","createElement","type","charset","async","src","p","0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","32","33","appendChild","m","Object","prototype","hasOwnProperty","fn"],"mappings":"CAAS,SAAUA,GCwDnB,QAAAC,qBAAAC,GAGA,GAAAC,EAAAD,GACA,MAAAC,GAAAD,GAAAE,OAGA,IAAAC,GAAAF,EAAAD,IACAE,WACAE,GAAAJ,EACAK,QAAA,EAUA,OANAP,GAAAE,GAAAM,KAAAH,EAAAD,QAAAC,IAAAD,QAAAH,qBAGAI,EAAAE,QAAA,EAGAF,EAAAD,QA3EA,GAAAK,GAAAC,OAAA,YACAA,QAAA,sBAAAC,EAAAC,GAIA,IADA,GAAAV,GAAAW,EAAAC,EAAA,EAAAC,KACQD,EAAAH,EAAAK,OAAoBF,IAC5BD,EAAAF,EAAAG,GACAG,EAAAJ,IACAE,EAAAG,KAAAC,MAAAJ,EAAAE,EAAAJ,IACAI,EAAAJ,GAAA,CAEA,KAAAX,IAAAU,GAAA,CACA,GAAAQ,GAAAR,EAAAV,EAGA,cAAAkB,IACA,aAEApB,EAAAE,GAAA,SAAAkB,GACA,GAAAC,GAAAD,EAAAE,MAAA,GAAAC,EAAAH,EAAA,EACA,iBAAAI,EAAAC,EAAAC,GACA1B,EAAAuB,GAAAJ,MAAAQ,MAAAH,EAAAC,EAAAC,GAAAE,OAAAP,MAEMD,EACN,MACA,gBAEApB,EAAAE,GAAAkB,CACA,MACA,SAEApB,EAAAE,GAAAF,EAAAoB,IAKA,IADAX,KAAAE,EAAAC,GACAG,EAAAC,QACAD,EAAAc,QAAArB,KAAA,KAAAP,oBACA,IAAAW,EAAA,GAEA,MADAT,GAAA,KACAF,oBAAA,GAKA,IAAAE,MAKAc,GACAa,GAAA,EA6BA7B,qBAAA8B,EAAA,SAAAlB,EAAAmB,GAEA,OAAAf,EAAAJ,GACA,MAAAmB,GAAAxB,KAAA,KAAAP,oBAGA,IAAAgC,SAAAhB,EAAAJ,GACAI,EAAAJ,GAAAK,KAAAc,OACI,CAEJf,EAAAJ,IAAAmB,EACA,IAAAE,GAAAC,SAAAC,qBAAA,WACAC,EAAAF,SAAAG,cAAA,SACAD,GAAAE,KAAA,kBACAF,EAAAG,QAAA,QACAH,EAAAI,OAAA,EAEAJ,EAAAK,IAAAzC,oBAAA0C,EAAA,UAAA9B,EAAA,KAAsE+B,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,wBAAk5B/D,GAAA,MACx9BqB,EAAA2C,YAAAxC,KAKApC,oBAAA6E,EAAA9E,EAGAC,oBAAAyB,EAAAvB,EAGAF,oBAAA0C,EAAA,YDIW,SAAS3C,GAEnB,IAAI,GAAIc,KAAKd,GACZ,GAAG+E,OAAOC,UAAUC,eAAezE,KAAKR,EAASc,GAChD,aAAcd,GAAQc,IACtB,IAAK,WAAY,KACjB,KAAK,SAEJd,EAAQc,GAAM,SAASM,GACtB,GAAIC,GAAOD,EAAGE,MAAM,GAAI4D,EAAKlF,EAAQoB,EAAG,GACxC,OAAO,UAAUI,EAAEC,EAAEC,GACpBwD,EAAG/D,MAAMQ,MAAOH,EAAEC,EAAEC,GAAGE,OAAOP,MAE9BrB,EAAQc,GACV,MACD,SAECd,EAAQc,GAAKd,EAAQA,EAAQc,IAKhC,MAAOd","file":"common.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// install a JSONP callback for chunk loading\n/******/ \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n/******/ \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules) {\n/******/ \t\t// add \"moreModules\" to the modules object,\n/******/ \t\t// then flag all \"chunkIds\" as loaded and fire callback\n/******/ \t\tvar moduleId, chunkId, i = 0, callbacks = [];\n/******/ \t\tfor(;i < chunkIds.length; i++) {\n/******/ \t\t\tchunkId = chunkIds[i];\n/******/ \t\t\tif(installedChunks[chunkId])\n/******/ \t\t\t\tcallbacks.push.apply(callbacks, installedChunks[chunkId]);\n/******/ \t\t\tinstalledChunks[chunkId] = 0;\n/******/ \t\t}\n/******/ \t\tfor(moduleId in moreModules) {\n/******/ \t\t\tvar _m = moreModules[moduleId];\n/******/\n/******/ \t\t\t// Check if module is deduplicated\n/******/ \t\t\tswitch(typeof _m) {\n/******/ \t\t\tcase \"object\":\n/******/ \t\t\t\t// Module can be created from a template\n/******/ \t\t\t\tmodules[moduleId] = (function(_m) {\n/******/ \t\t\t\t\tvar args = _m.slice(1), templateId = _m[0];\n/******/ \t\t\t\t\treturn function (a,b,c) {\n/******/ \t\t\t\t\t\tmodules[templateId].apply(this, [a,b,c].concat(args));\n/******/ \t\t\t\t\t};\n/******/ \t\t\t\t}(_m));\n/******/ \t\t\t\tbreak;\n/******/ \t\t\tcase \"function\":\n/******/ \t\t\t\t// Normal module\n/******/ \t\t\t\tmodules[moduleId] = _m;\n/******/ \t\t\t\tbreak;\n/******/ \t\t\tdefault:\n/******/ \t\t\t\t// Module is a copy of another module\n/******/ \t\t\t\tmodules[moduleId] = modules[_m];\n/******/ \t\t\t\tbreak;\n/******/ \t\t\t}\n/******/ \t\t}\n/******/ \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules);\n/******/ \t\twhile(callbacks.length)\n/******/ \t\t\tcallbacks.shift().call(null, __webpack_require__);\n/******/ \t\tif(moreModules[0]) {\n/******/ \t\t\tinstalledModules[0] = 0;\n/******/ \t\t\treturn __webpack_require__(0);\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// object to store loaded and loading chunks\n/******/ \t// \"0\" means \"already loaded\"\n/******/ \t// Array means \"loading\", array contains callbacks\n/******/ \tvar installedChunks = {\n/******/ \t\t31:0\n/******/ \t};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/ \t// This file contains only the entry chunk.\n/******/ \t// The chunk loading function for additional chunks\n/******/ \t__webpack_require__.e = function requireEnsure(chunkId, callback) {\n/******/ \t\t// \"0\" is the signal for \"already loaded\"\n/******/ \t\tif(installedChunks[chunkId] === 0)\n/******/ \t\t\treturn callback.call(null, __webpack_require__);\n/******/\n/******/ \t\t// an array means \"currently loading\".\n/******/ \t\tif(installedChunks[chunkId] !== undefined) {\n/******/ \t\t\tinstalledChunks[chunkId].push(callback);\n/******/ \t\t} else {\n/******/ \t\t\t// start chunk loading\n/******/ \t\t\tinstalledChunks[chunkId] = [callback];\n/******/ \t\t\tvar head = document.getElementsByTagName('head')[0];\n/******/ \t\t\tvar script = document.createElement('script');\n/******/ \t\t\tscript.type = 'text/javascript';\n/******/ \t\t\tscript.charset = 'utf-8';\n/******/ \t\t\tscript.async = true;\n/******/\n/******/ \t\t\tscript.src = __webpack_require__.p + \"chunks/\" + chunkId + \".\" + {\"0\":\"37b83c6dc990e52cc593\",\"1\":\"1985566f8b821be031da\",\"2\":\"614b3e73b072982fd9b1\",\"3\":\"1ca609753b5a02de0ca3\",\"4\":\"9e1761727aa5471aa19e\",\"5\":\"6ebbce2b9b3e696d3da5\",\"6\":\"d8a5f7b017bcbd083641\",\"7\":\"45d819f8edd0af6f7408\",\"8\":\"37e24cb993927c0739bc\",\"9\":\"ba6c5ed42a4b3d1de13a\",\"10\":\"8cd46b46c57b89afe199\",\"11\":\"e9b9ca1f3e03d4020377\",\"12\":\"f063483ea9d39dab31f3\",\"13\":\"038c0d9aa0dfa0181c4b\",\"14\":\"37d4cd9fe625f51e895e\",\"15\":\"6f5ceeacd2b7b74d680b\",\"16\":\"0baa2b64a74a2dcde25c\",\"17\":\"831791e0bcaf9c8ad4ba\",\"18\":\"48c373a95548582ecb20\",\"19\":\"350a9f150b074b4ecefa\",\"20\":\"371472cff605ff23e70c\",\"21\":\"37da7c1b1910dd87ce69\",\"22\":\"be7e14bf9623297b79d9\",\"23\":\"5486b3fc83b194d55191\",\"24\":\"e905e3f6ba089a34b07c\",\"25\":\"e20b4daac9fb2bdceee6\",\"26\":\"c8f33e73b9117b70aef8\",\"27\":\"6779f92692327013b446\",\"28\":\"280c392f19bc9e908abf\",\"29\":\"daadfa33135efe4e5534\",\"30\":\"bff1b2677139686b0e0c\",\"32\":\"1c37209e865102e209b4\",\"33\":\"70f8e7b1964892a24e67\"}[chunkId] + \".js\";\n/******/ \t\t\thead.appendChild(script);\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"/static/\";\n/******/ })\n/************************************************************************/\n/******/ ((function(modules) {\n\t// Check all modules for deduplicated modules\n\tfor(var i in modules) {\n\t\tif(Object.prototype.hasOwnProperty.call(modules, i)) {\n\t\t\tswitch(typeof modules[i]) {\n\t\t\tcase \"function\": break;\n\t\t\tcase \"object\":\n\t\t\t\t// Module can be created from a template\n\t\t\t\tmodules[i] = (function(_m) {\n\t\t\t\t\tvar args = _m.slice(1), fn = modules[_m[0]];\n\t\t\t\t\treturn function (a,b,c) {\n\t\t\t\t\t\tfn.apply(this, [a,b,c].concat(args));\n\t\t\t\t\t};\n\t\t\t\t}(modules[i]));\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\t// Module is a copy of another module\n\t\t\t\tmodules[i] = modules[modules[i]];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\treturn modules;\n}([])));\n\n\n/** WEBPACK FOOTER **\n ** common.js\n **/"," \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, callbacks = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId])\n \t\t\t\tcallbacks.push.apply(callbacks, installedChunks[chunkId]);\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tvar _m = moreModules[moduleId];\n\n \t\t\t// Check if module is deduplicated\n \t\t\tswitch(typeof _m) {\n \t\t\tcase \"object\":\n \t\t\t\t// Module can be created from a template\n \t\t\t\tmodules[moduleId] = (function(_m) {\n \t\t\t\t\tvar args = _m.slice(1), templateId = _m[0];\n \t\t\t\t\treturn function (a,b,c) {\n \t\t\t\t\t\tmodules[templateId].apply(this, [a,b,c].concat(args));\n \t\t\t\t\t};\n \t\t\t\t}(_m));\n \t\t\t\tbreak;\n \t\t\tcase \"function\":\n \t\t\t\t// Normal module\n \t\t\t\tmodules[moduleId] = _m;\n \t\t\t\tbreak;\n \t\t\tdefault:\n \t\t\t\t// Module is a copy of another module\n \t\t\t\tmodules[moduleId] = modules[_m];\n \t\t\t\tbreak;\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules);\n \t\twhile(callbacks.length)\n \t\t\tcallbacks.shift().call(null, __webpack_require__);\n \t\tif(moreModules[0]) {\n \t\t\tinstalledModules[0] = 0;\n \t\t\treturn __webpack_require__(0);\n \t\t}\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// \"0\" means \"already loaded\"\n \t// Array means \"loading\", array contains callbacks\n \tvar installedChunks = {\n \t\t31:0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId, callback) {\n \t\t// \"0\" is the signal for \"already loaded\"\n \t\tif(installedChunks[chunkId] === 0)\n \t\t\treturn callback.call(null, __webpack_require__);\n\n \t\t// an array means \"currently loading\".\n \t\tif(installedChunks[chunkId] !== undefined) {\n \t\t\tinstalledChunks[chunkId].push(callback);\n \t\t} else {\n \t\t\t// start chunk loading\n \t\t\tinstalledChunks[chunkId] = [callback];\n \t\t\tvar head = document.getElementsByTagName('head')[0];\n \t\t\tvar script = document.createElement('script');\n \t\t\tscript.type = 'text/javascript';\n \t\t\tscript.charset = 'utf-8';\n \t\t\tscript.async = true;\n\n \t\t\tscript.src = __webpack_require__.p + \"chunks/\" + chunkId + \".\" + {\"0\":\"37b83c6dc990e52cc593\",\"1\":\"1985566f8b821be031da\",\"2\":\"614b3e73b072982fd9b1\",\"3\":\"1ca609753b5a02de0ca3\",\"4\":\"9e1761727aa5471aa19e\",\"5\":\"6ebbce2b9b3e696d3da5\",\"6\":\"d8a5f7b017bcbd083641\",\"7\":\"45d819f8edd0af6f7408\",\"8\":\"37e24cb993927c0739bc\",\"9\":\"ba6c5ed42a4b3d1de13a\",\"10\":\"8cd46b46c57b89afe199\",\"11\":\"e9b9ca1f3e03d4020377\",\"12\":\"f063483ea9d39dab31f3\",\"13\":\"038c0d9aa0dfa0181c4b\",\"14\":\"37d4cd9fe625f51e895e\",\"15\":\"6f5ceeacd2b7b74d680b\",\"16\":\"0baa2b64a74a2dcde25c\",\"17\":\"831791e0bcaf9c8ad4ba\",\"18\":\"48c373a95548582ecb20\",\"19\":\"350a9f150b074b4ecefa\",\"20\":\"371472cff605ff23e70c\",\"21\":\"37da7c1b1910dd87ce69\",\"22\":\"be7e14bf9623297b79d9\",\"23\":\"5486b3fc83b194d55191\",\"24\":\"e905e3f6ba089a34b07c\",\"25\":\"e20b4daac9fb2bdceee6\",\"26\":\"c8f33e73b9117b70aef8\",\"27\":\"6779f92692327013b446\",\"28\":\"280c392f19bc9e908abf\",\"29\":\"daadfa33135efe4e5534\",\"30\":\"bff1b2677139686b0e0c\",\"32\":\"1c37209e865102e209b4\",\"33\":\"70f8e7b1964892a24e67\"}[chunkId] + \".js\";\n \t\t\thead.appendChild(script);\n \t\t}\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/static/\";\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap f13ba019fd6d8f4227cb\n **/"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///common.js","webpack:///webpack/bootstrap c90f990bf8f56ea6b172"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","parentJsonpFunction","window","chunkIds","moreModules","chunkId","i","callbacks","length","installedChunks","push","apply","_m","args","slice","templateId","a","b","c","this","concat","shift","31","e","callback","undefined","head","document","getElementsByTagName","script","createElement","type","charset","async","src","p","0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","32","33","appendChild","m","Object","prototype","hasOwnProperty","fn"],"mappings":"CAAS,SAAUA,GCwDnB,QAAAC,qBAAAC,GAGA,GAAAC,EAAAD,GACA,MAAAC,GAAAD,GAAAE,OAGA,IAAAC,GAAAF,EAAAD,IACAE,WACAE,GAAAJ,EACAK,QAAA,EAUA,OANAP,GAAAE,GAAAM,KAAAH,EAAAD,QAAAC,IAAAD,QAAAH,qBAGAI,EAAAE,QAAA,EAGAF,EAAAD,QA3EA,GAAAK,GAAAC,OAAA,YACAA,QAAA,sBAAAC,EAAAC,GAIA,IADA,GAAAV,GAAAW,EAAAC,EAAA,EAAAC,KACQD,EAAAH,EAAAK,OAAoBF,IAC5BD,EAAAF,EAAAG,GACAG,EAAAJ,IACAE,EAAAG,KAAAC,MAAAJ,EAAAE,EAAAJ,IACAI,EAAAJ,GAAA,CAEA,KAAAX,IAAAU,GAAA,CACA,GAAAQ,GAAAR,EAAAV,EAGA,cAAAkB,IACA,aAEApB,EAAAE,GAAA,SAAAkB,GACA,GAAAC,GAAAD,EAAAE,MAAA,GAAAC,EAAAH,EAAA,EACA,iBAAAI,EAAAC,EAAAC,GACA1B,EAAAuB,GAAAJ,MAAAQ,MAAAH,EAAAC,EAAAC,GAAAE,OAAAP,MAEMD,EACN,MACA,gBAEApB,EAAAE,GAAAkB,CACA,MACA,SAEApB,EAAAE,GAAAF,EAAAoB,IAKA,IADAX,KAAAE,EAAAC,GACAG,EAAAC,QACAD,EAAAc,QAAArB,KAAA,KAAAP,oBACA,IAAAW,EAAA,GAEA,MADAT,GAAA,KACAF,oBAAA,GAKA,IAAAE,MAKAc,GACAa,GAAA,EA6BA7B,qBAAA8B,EAAA,SAAAlB,EAAAmB,GAEA,OAAAf,EAAAJ,GACA,MAAAmB,GAAAxB,KAAA,KAAAP,oBAGA,IAAAgC,SAAAhB,EAAAJ,GACAI,EAAAJ,GAAAK,KAAAc,OACI,CAEJf,EAAAJ,IAAAmB,EACA,IAAAE,GAAAC,SAAAC,qBAAA,WACAC,EAAAF,SAAAG,cAAA,SACAD,GAAAE,KAAA,kBACAF,EAAAG,QAAA,QACAH,EAAAI,OAAA,EAEAJ,EAAAK,IAAAzC,oBAAA0C,EAAA,UAAA9B,EAAA,KAAsE+B,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,EAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,uBAAAC,GAAA,wBAAk5B/D,GAAA,MACx9BqB,EAAA2C,YAAAxC,KAKApC,oBAAA6E,EAAA9E,EAGAC,oBAAAyB,EAAAvB,EAGAF,oBAAA0C,EAAA,YDIW,SAAS3C,GAEnB,IAAI,GAAIc,KAAKd,GACZ,GAAG+E,OAAOC,UAAUC,eAAezE,KAAKR,EAASc,GAChD,aAAcd,GAAQc,IACtB,IAAK,WAAY,KACjB,KAAK,SAEJd,EAAQc,GAAM,SAASM,GACtB,GAAIC,GAAOD,EAAGE,MAAM,GAAI4D,EAAKlF,EAAQoB,EAAG,GACxC,OAAO,UAAUI,EAAEC,EAAEC,GACpBwD,EAAG/D,MAAMQ,MAAOH,EAAEC,EAAEC,GAAGE,OAAOP,MAE9BrB,EAAQc,GACV,MACD,SAECd,EAAQc,GAAKd,EAAQA,EAAQc,IAKhC,MAAOd","file":"common.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// install a JSONP callback for chunk loading\n/******/ \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n/******/ \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules) {\n/******/ \t\t// add \"moreModules\" to the modules object,\n/******/ \t\t// then flag all \"chunkIds\" as loaded and fire callback\n/******/ \t\tvar moduleId, chunkId, i = 0, callbacks = [];\n/******/ \t\tfor(;i < chunkIds.length; i++) {\n/******/ \t\t\tchunkId = chunkIds[i];\n/******/ \t\t\tif(installedChunks[chunkId])\n/******/ \t\t\t\tcallbacks.push.apply(callbacks, installedChunks[chunkId]);\n/******/ \t\t\tinstalledChunks[chunkId] = 0;\n/******/ \t\t}\n/******/ \t\tfor(moduleId in moreModules) {\n/******/ \t\t\tvar _m = moreModules[moduleId];\n/******/\n/******/ \t\t\t// Check if module is deduplicated\n/******/ \t\t\tswitch(typeof _m) {\n/******/ \t\t\tcase \"object\":\n/******/ \t\t\t\t// Module can be created from a template\n/******/ \t\t\t\tmodules[moduleId] = (function(_m) {\n/******/ \t\t\t\t\tvar args = _m.slice(1), templateId = _m[0];\n/******/ \t\t\t\t\treturn function (a,b,c) {\n/******/ \t\t\t\t\t\tmodules[templateId].apply(this, [a,b,c].concat(args));\n/******/ \t\t\t\t\t};\n/******/ \t\t\t\t}(_m));\n/******/ \t\t\t\tbreak;\n/******/ \t\t\tcase \"function\":\n/******/ \t\t\t\t// Normal module\n/******/ \t\t\t\tmodules[moduleId] = _m;\n/******/ \t\t\t\tbreak;\n/******/ \t\t\tdefault:\n/******/ \t\t\t\t// Module is a copy of another module\n/******/ \t\t\t\tmodules[moduleId] = modules[_m];\n/******/ \t\t\t\tbreak;\n/******/ \t\t\t}\n/******/ \t\t}\n/******/ \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules);\n/******/ \t\twhile(callbacks.length)\n/******/ \t\t\tcallbacks.shift().call(null, __webpack_require__);\n/******/ \t\tif(moreModules[0]) {\n/******/ \t\t\tinstalledModules[0] = 0;\n/******/ \t\t\treturn __webpack_require__(0);\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// object to store loaded and loading chunks\n/******/ \t// \"0\" means \"already loaded\"\n/******/ \t// Array means \"loading\", array contains callbacks\n/******/ \tvar installedChunks = {\n/******/ \t\t31:0\n/******/ \t};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/ \t// This file contains only the entry chunk.\n/******/ \t// The chunk loading function for additional chunks\n/******/ \t__webpack_require__.e = function requireEnsure(chunkId, callback) {\n/******/ \t\t// \"0\" is the signal for \"already loaded\"\n/******/ \t\tif(installedChunks[chunkId] === 0)\n/******/ \t\t\treturn callback.call(null, __webpack_require__);\n/******/\n/******/ \t\t// an array means \"currently loading\".\n/******/ \t\tif(installedChunks[chunkId] !== undefined) {\n/******/ \t\t\tinstalledChunks[chunkId].push(callback);\n/******/ \t\t} else {\n/******/ \t\t\t// start chunk loading\n/******/ \t\t\tinstalledChunks[chunkId] = [callback];\n/******/ \t\t\tvar head = document.getElementsByTagName('head')[0];\n/******/ \t\t\tvar script = document.createElement('script');\n/******/ \t\t\tscript.type = 'text/javascript';\n/******/ \t\t\tscript.charset = 'utf-8';\n/******/ \t\t\tscript.async = true;\n/******/\n/******/ \t\t\tscript.src = __webpack_require__.p + \"chunks/\" + chunkId + \".\" + {\"0\":\"37b83c6dc990e52cc593\",\"1\":\"1985566f8b821be031da\",\"2\":\"614b3e73b072982fd9b1\",\"3\":\"1ca609753b5a02de0ca3\",\"4\":\"9e1761727aa5471aa19e\",\"5\":\"a1a6164f9161d24acda1\",\"6\":\"7d18ddefd50912448615\",\"7\":\"45d819f8edd0af6f7408\",\"8\":\"37e24cb993927c0739bc\",\"9\":\"47a0060ef619922385ad\",\"10\":\"8cd46b46c57b89afe199\",\"11\":\"f6ed628667c44bbad757\",\"12\":\"f063483ea9d39dab31f3\",\"13\":\"a535d3f0dc1690137ebf\",\"14\":\"37d4cd9fe625f51e895e\",\"15\":\"6f5ceeacd2b7b74d680b\",\"16\":\"e499a69d451e8620b796\",\"17\":\"831791e0bcaf9c8ad4ba\",\"18\":\"48c373a95548582ecb20\",\"19\":\"7d96d075450c6a7f843e\",\"20\":\"371472cff605ff23e70c\",\"21\":\"37da7c1b1910dd87ce69\",\"22\":\"be7e14bf9623297b79d9\",\"23\":\"5486b3fc83b194d55191\",\"24\":\"e905e3f6ba089a34b07c\",\"25\":\"e20b4daac9fb2bdceee6\",\"26\":\"c8f33e73b9117b70aef8\",\"27\":\"6779f92692327013b446\",\"28\":\"280c392f19bc9e908abf\",\"29\":\"daadfa33135efe4e5534\",\"30\":\"bff1b2677139686b0e0c\",\"32\":\"1c37209e865102e209b4\",\"33\":\"70f8e7b1964892a24e67\"}[chunkId] + \".js\";\n/******/ \t\t\thead.appendChild(script);\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"/static/\";\n/******/ })\n/************************************************************************/\n/******/ ((function(modules) {\n\t// Check all modules for deduplicated modules\n\tfor(var i in modules) {\n\t\tif(Object.prototype.hasOwnProperty.call(modules, i)) {\n\t\t\tswitch(typeof modules[i]) {\n\t\t\tcase \"function\": break;\n\t\t\tcase \"object\":\n\t\t\t\t// Module can be created from a template\n\t\t\t\tmodules[i] = (function(_m) {\n\t\t\t\t\tvar args = _m.slice(1), fn = modules[_m[0]];\n\t\t\t\t\treturn function (a,b,c) {\n\t\t\t\t\t\tfn.apply(this, [a,b,c].concat(args));\n\t\t\t\t\t};\n\t\t\t\t}(modules[i]));\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\t// Module is a copy of another module\n\t\t\t\tmodules[i] = modules[modules[i]];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\treturn modules;\n}([])));\n\n\n/** WEBPACK FOOTER **\n ** common.js\n **/"," \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, callbacks = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId])\n \t\t\t\tcallbacks.push.apply(callbacks, installedChunks[chunkId]);\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tvar _m = moreModules[moduleId];\n\n \t\t\t// Check if module is deduplicated\n \t\t\tswitch(typeof _m) {\n \t\t\tcase \"object\":\n \t\t\t\t// Module can be created from a template\n \t\t\t\tmodules[moduleId] = (function(_m) {\n \t\t\t\t\tvar args = _m.slice(1), templateId = _m[0];\n \t\t\t\t\treturn function (a,b,c) {\n \t\t\t\t\t\tmodules[templateId].apply(this, [a,b,c].concat(args));\n \t\t\t\t\t};\n \t\t\t\t}(_m));\n \t\t\t\tbreak;\n \t\t\tcase \"function\":\n \t\t\t\t// Normal module\n \t\t\t\tmodules[moduleId] = _m;\n \t\t\t\tbreak;\n \t\t\tdefault:\n \t\t\t\t// Module is a copy of another module\n \t\t\t\tmodules[moduleId] = modules[_m];\n \t\t\t\tbreak;\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules);\n \t\twhile(callbacks.length)\n \t\t\tcallbacks.shift().call(null, __webpack_require__);\n \t\tif(moreModules[0]) {\n \t\t\tinstalledModules[0] = 0;\n \t\t\treturn __webpack_require__(0);\n \t\t}\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// \"0\" means \"already loaded\"\n \t// Array means \"loading\", array contains callbacks\n \tvar installedChunks = {\n \t\t31:0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId, callback) {\n \t\t// \"0\" is the signal for \"already loaded\"\n \t\tif(installedChunks[chunkId] === 0)\n \t\t\treturn callback.call(null, __webpack_require__);\n\n \t\t// an array means \"currently loading\".\n \t\tif(installedChunks[chunkId] !== undefined) {\n \t\t\tinstalledChunks[chunkId].push(callback);\n \t\t} else {\n \t\t\t// start chunk loading\n \t\t\tinstalledChunks[chunkId] = [callback];\n \t\t\tvar head = document.getElementsByTagName('head')[0];\n \t\t\tvar script = document.createElement('script');\n \t\t\tscript.type = 'text/javascript';\n \t\t\tscript.charset = 'utf-8';\n \t\t\tscript.async = true;\n\n \t\t\tscript.src = __webpack_require__.p + \"chunks/\" + chunkId + \".\" + {\"0\":\"37b83c6dc990e52cc593\",\"1\":\"1985566f8b821be031da\",\"2\":\"614b3e73b072982fd9b1\",\"3\":\"1ca609753b5a02de0ca3\",\"4\":\"9e1761727aa5471aa19e\",\"5\":\"a1a6164f9161d24acda1\",\"6\":\"7d18ddefd50912448615\",\"7\":\"45d819f8edd0af6f7408\",\"8\":\"37e24cb993927c0739bc\",\"9\":\"47a0060ef619922385ad\",\"10\":\"8cd46b46c57b89afe199\",\"11\":\"f6ed628667c44bbad757\",\"12\":\"f063483ea9d39dab31f3\",\"13\":\"a535d3f0dc1690137ebf\",\"14\":\"37d4cd9fe625f51e895e\",\"15\":\"6f5ceeacd2b7b74d680b\",\"16\":\"e499a69d451e8620b796\",\"17\":\"831791e0bcaf9c8ad4ba\",\"18\":\"48c373a95548582ecb20\",\"19\":\"7d96d075450c6a7f843e\",\"20\":\"371472cff605ff23e70c\",\"21\":\"37da7c1b1910dd87ce69\",\"22\":\"be7e14bf9623297b79d9\",\"23\":\"5486b3fc83b194d55191\",\"24\":\"e905e3f6ba089a34b07c\",\"25\":\"e20b4daac9fb2bdceee6\",\"26\":\"c8f33e73b9117b70aef8\",\"27\":\"6779f92692327013b446\",\"28\":\"280c392f19bc9e908abf\",\"29\":\"daadfa33135efe4e5534\",\"30\":\"bff1b2677139686b0e0c\",\"32\":\"1c37209e865102e209b4\",\"33\":\"70f8e7b1964892a24e67\"}[chunkId] + \".js\";\n \t\t\thead.appendChild(script);\n \t\t}\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/static/\";\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap c90f990bf8f56ea6b172\n **/"],"sourceRoot":""}
@@ -1,4 +1,5 @@
1
1
  from flask import url_for
2
+ from mongoengine.base.datastructures import LazyReference
2
3
 
3
4
  from udata.core.dataset.factories import DatasetFactory
4
5
  from udata.core.dataset.models import Dataset
@@ -8,6 +9,7 @@ from udata.core.reports.constants import (
8
9
  reports_reasons_translations,
9
10
  )
10
11
  from udata.core.reports.models import Report
12
+ from udata.core.user.factories import UserFactory
11
13
  from udata.i18n import gettext as _
12
14
 
13
15
  from . import APITestCase
@@ -26,15 +28,18 @@ class ReportsAPITest(APITestCase):
26
28
  modules = []
27
29
 
28
30
  def test_reports_api_create(self):
29
- user = self.login()
31
+ user = UserFactory()
32
+
30
33
  illegal_dataset = DatasetFactory.create(owner=user)
31
34
  spam_dataset = DatasetFactory.create(owner=user)
32
35
 
33
36
  response = self.post(
34
37
  url_for("api.reports"),
35
38
  {
36
- "object_type": "Dataset",
37
- "object_id": illegal_dataset.id,
39
+ "subject": {
40
+ "class": "Dataset",
41
+ "id": illegal_dataset.id,
42
+ },
38
43
  "message": "This is not appropriate",
39
44
  "reason": REASON_ILLEGAL_CONTENT,
40
45
  },
@@ -42,11 +47,15 @@ class ReportsAPITest(APITestCase):
42
47
  self.assert201(response)
43
48
  self.assertEqual(Report.objects.count(), 1)
44
49
 
50
+ self.login(user)
51
+
45
52
  response = self.post(
46
53
  url_for("api.reports"),
47
54
  {
48
- "object_type": "Dataset",
49
- "object_id": spam_dataset.id,
55
+ "subject": {
56
+ "class": "Dataset",
57
+ "id": spam_dataset.id,
58
+ },
50
59
  "message": "This is spammy",
51
60
  "reason": REASON_SPAM,
52
61
  },
@@ -55,14 +64,14 @@ class ReportsAPITest(APITestCase):
55
64
  self.assertEqual(Report.objects.count(), 2)
56
65
 
57
66
  reports: list[Report] = list(Report.objects())
58
- self.assertEqual(Dataset.__name__, reports[0].object_type)
59
- self.assertEqual(illegal_dataset.id, reports[0].object_id)
67
+ self.assertEqual(Dataset, reports[0].subject.document_type)
68
+ self.assertEqual(illegal_dataset.id, reports[0].subject.pk)
60
69
  self.assertEqual("This is not appropriate", reports[0].message)
61
70
  self.assertEqual(REASON_ILLEGAL_CONTENT, reports[0].reason)
62
- self.assertEqual(user.id, reports[0].by.id)
71
+ self.assertIsNone(reports[0].by)
63
72
 
64
- self.assertEqual(Dataset.__name__, reports[1].object_type)
65
- self.assertEqual(spam_dataset.id, reports[1].object_id)
73
+ self.assertEqual(Dataset, reports[1].subject.document_type)
74
+ self.assertEqual(spam_dataset.id, reports[1].subject.pk)
66
75
  self.assertEqual("This is spammy", reports[1].message)
67
76
  self.assertEqual(REASON_SPAM, reports[1].reason)
68
77
  self.assertEqual(user.id, reports[1].by.id)
@@ -71,27 +80,42 @@ class ReportsAPITest(APITestCase):
71
80
  self.assert204(response)
72
81
 
73
82
  reports[0].reload()
74
- self.assertEqual(Dataset.__name__, reports[0].object_type)
75
- self.assertEqual(illegal_dataset.id, reports[0].object_id)
83
+ self.assertEqual(Dataset, reports[0].subject.document_type)
84
+ self.assertEqual(illegal_dataset.id, reports[0].subject.pk)
76
85
  self.assertEqual("This is not appropriate", reports[0].message)
77
86
  self.assertEqual(REASON_ILLEGAL_CONTENT, reports[0].reason)
78
- self.assertEqual(user.id, reports[0].by.id)
79
- self.assertIsNotNone(reports[0].object_deleted_at)
87
+ self.assertIsNone(reports[0].by)
88
+ self.assertIsNotNone(reports[0].subject_deleted_at)
80
89
 
81
90
  reports[1].reload()
82
- self.assertEqual(Dataset.__name__, reports[1].object_type)
83
- self.assertEqual(spam_dataset.id, reports[1].object_id)
91
+ self.assertEqual(Dataset, reports[1].subject.document_type)
92
+ self.assertEqual(spam_dataset.id, reports[1].subject.pk)
84
93
  self.assertEqual("This is spammy", reports[1].message)
85
94
  self.assertEqual(REASON_SPAM, reports[1].reason)
86
95
  self.assertEqual(user.id, reports[1].by.id)
87
- self.assertIsNone(reports[1].object_deleted_at)
96
+ self.assertIsNone(reports[1].subject_deleted_at)
88
97
 
89
- # We should take action on manual delete in the database too
90
98
  spam_dataset.delete()
91
99
 
92
100
  reports[1].reload()
93
- self.assertIsNotNone(reports[1].object_deleted_at)
101
+ self.assertIsNotNone(reports[1].subject_deleted_at)
94
102
 
95
103
  response = self.get(url_for("api.reports"))
96
104
  self.assert200(response)
97
- self.assertEqual(len(response.json["data"]), 2)
105
+
106
+ reports = response.json["data"]
107
+ self.assertEqual(len(reports), 2)
108
+
109
+ self.assertEqual("Dataset", reports[0]["subject"]["class"])
110
+ self.assertEqual(str(illegal_dataset.id), reports[0]["subject"]["id"])
111
+ self.assertEqual("This is not appropriate", reports[0]["message"])
112
+ self.assertEqual(REASON_ILLEGAL_CONTENT, reports[0]["reason"])
113
+ self.assertIsNone(reports[0]["by"])
114
+ self.assertIsNotNone(reports[0]["subject_deleted_at"])
115
+
116
+ self.assertEqual("Dataset", reports[1]["subject"]["class"])
117
+ self.assertEqual(str(spam_dataset.id), reports[1]["subject"]["id"])
118
+ self.assertEqual("This is spammy", reports[1]["message"])
119
+ self.assertEqual(REASON_SPAM, reports[1]["reason"])
120
+ self.assertEqual(str(user.id), reports[1]["by"]["id"])
121
+ self.assertIsNotNone(reports[1]["subject_deleted_at"])
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: udata
3
- Version: 9.1.2.dev30454
3
+ Version: 9.1.2.dev30483
4
4
  Summary: Open data portal
5
5
  Home-page: https://github.com/opendatateam/udata
6
6
  Author: Opendata Team
@@ -143,6 +143,8 @@ It is collectively taken care of by members of the
143
143
  - Revamp CORS: remove flask-cors to always returns 204 on OPTIONS request [#3074](https://github.com/opendatateam/udata/pull/3074)
144
144
  - Update pinned dependencies according to project dependencies, without updating any project dependencies [#3089](https://github.com/opendatateam/udata/pull/3089)
145
145
  - Add "run" button to harvesters (configurable with `HARVEST_ENABLE_MANUAL_RUN`) [#3092](https://github.com/opendatateam/udata/pull/3092)
146
+ - Move from `object_type` / `object_id` to `subject_type` / `subject_id` in reports API [#3094](https://github.com/opendatateam/udata/pull/3094)
147
+ - Allow to report without being authenticated [#3096](https://github.com/opendatateam/udata/pull/3096)
146
148
 
147
149
  ## 9.1.1 (2024-07-16)
148
150
 
@@ -1,7 +1,7 @@
1
1
  tasks/__init__.py,sha256=oZ9yTY3eyOXRbN18_83l1b4BpqjIBVqw-FqD1LFWGxo,8122
2
2
  tasks/helpers.py,sha256=0a9iXzVe2GC2f6ouFoXDfMGN2s1eu4urTUuM9CCTZP8,994
3
3
  udata/__init__.py,sha256=y6WWIlMmNt4ADXtwHIWm-Dzb-txi6Y8hxw0fqe5TJwU,101
4
- udata/api_fields.py,sha256=YRLHniJYoRRI6cNJNgB-0U9A049_g1yV-Tp5u8VcLQs,14148
4
+ udata/api_fields.py,sha256=y9ZWNbIbG4HYIsfSypzE_QNGiHuTgnIBzONR5N45tm4,15437
5
5
  udata/app.py,sha256=lMxCLveZyMmaimkryDjD-VpHBC5OMEgd95VszM84y-8,7284
6
6
  udata/assets.py,sha256=jGxFWVu6JvDLK1SXBZC-rY-DGkGxguF3LFikOklyzdE,645
7
7
  udata/cors.py,sha256=QyhlcnkLo9SmJhgK3FRjLcD5YC-03bU514UVMAHfbSc,2995
@@ -163,9 +163,9 @@ udata/core/post/permissions.py,sha256=uofU0TehhOGYyUoRXf3wuy816_D3xwMmaJbDvV336s
163
163
  udata/core/post/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
164
164
  udata/core/post/tests/test_api.py,sha256=y4fXgjC0y9tqR4iOWHin9rADSPdo1BJjXJGilnqL23c,3946
165
165
  udata/core/reports/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
166
- udata/core/reports/api.py,sha256=dvUQhGk76y5XBp-KD0qtf5VvAnNtCS7IvwUAQTqfJ0o,1346
167
- udata/core/reports/constants.py,sha256=g0c_Uj0qEQknj20mz_PrCp0EIu3a6dX5hHvg4YoqLwU,983
168
- udata/core/reports/models.py,sha256=a0Xfwt3T7lsTnGGRIv_PQmDcAZzYZx11MRVXYLra8Ys,1858
166
+ udata/core/reports/api.py,sha256=wrHJempfYupq0etLWM-RPq6-f3LqXWw3hulnoPHb5v4,1376
167
+ udata/core/reports/constants.py,sha256=LRZSX3unyqZeB4yQjK3ws_hGbJcXYk4bu1Rhnhi5DEs,1235
168
+ udata/core/reports/models.py,sha256=qgWXjiwMJ5w5uDdjM9K-f-h4mb-dJ8Che83MmIJ7pNg,2474
169
169
  udata/core/reuse/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
170
170
  udata/core/reuse/activities.py,sha256=mAdHhqqpUF5zSh4e5AEo0J7alc3RflTbudDaKOzyTQw,1406
171
171
  udata/core/reuse/api.py,sha256=zVck4XV6jm0A2tkL1bHQuW7fKkVE0LI_szsnmqnAPxY,10195
@@ -423,8 +423,8 @@ udata/static/admin.css,sha256=RC7GvbVK8c5wDuELPeVdQpy3ab7HbHl1T4hUo5n-NVk,185167
423
423
  udata/static/admin.css.map,sha256=tUhFfsJUK3RrWCih9gUkf-Ywccuztxf4tqvXcN6zP3Y,626542
424
424
  udata/static/admin.js,sha256=MqXQC-dxgrAEuESQGbLSMKyPiOs2x9KCSeXKF9OCr0k,1323952
425
425
  udata/static/admin.js.map,sha256=ovzXwNsaL4L_LrPD1AKfJfBUf1ur9Huc3tDmIRbI77Q,8503099
426
- udata/static/common.js,sha256=cjjeotIBwTkbUucmeYZAqgYRxPe69YmWOwhyRnW3rH4,2252
427
- udata/static/common.js.map,sha256=YIiAOLn-STf41isqO4rslVokyWFPd7tmDrAb7kOj2Fk,14137
426
+ udata/static/common.js,sha256=QmmhX7btiP_xFg8QJrtSu2wpOdUmUF-7JsDTjELzHX4,2252
427
+ udata/static/common.js.map,sha256=GMiIDzsPiZdpSl7esMN50xSXghxj3TARewTRtGULGb4,14137
428
428
  udata/static/fontawesome-webfont.eot,sha256=e_yrbbmdXPvxcFygU23ceFhUMsxfpBu9etDwCQM7KXk,165742
429
429
  udata/static/fontawesome-webfont.svg,sha256=rWFXkmwWIrpOHQPUePFUE2hSS_xG9R5C_g2UX37zI-Q,444379
430
430
  udata/static/fontawesome-webfont.ttf,sha256=qljzPyOaD7AvXHpsRcBD16msmgkzNYBmlOzW1O3A1qg,165548
@@ -443,24 +443,24 @@ udata/static/chunks/1.1985566f8b821be031da.js,sha256=gwb3bofNWHNNK9aiZaZS_OGdBdc
443
443
  udata/static/chunks/1.1985566f8b821be031da.js.map,sha256=zVhRk_bX1kDqAFfB11a4ABoG9Zw19IjsT-6KfAAnmGs,1740689
444
444
  udata/static/chunks/10.8cd46b46c57b89afe199.js,sha256=a3UJM8LaPT1RI-ntRWk0BLTkVBxke7iWRP0eldf5u7E,416588
445
445
  udata/static/chunks/10.8cd46b46c57b89afe199.js.map,sha256=LzA-kgSDzI4qNdHRpIvVNQCBKz3lhd_RjvKhU14g6ug,2744182
446
- udata/static/chunks/11.e9b9ca1f3e03d4020377.js,sha256=SqnjDLqVyGmfIO8gOMhkFIaYi-IB8Hhgceot86U6rOg,395755
447
- udata/static/chunks/11.e9b9ca1f3e03d4020377.js.map,sha256=-rOjsp8fIeR7Nau5jR89mjkIDZrTA6ExGxjTptmZ_8g,2269851
446
+ udata/static/chunks/11.f6ed628667c44bbad757.js,sha256=u4QIKNJ8xSWM3BtjqBP_ct2GLKR4q-6BQid4QdT-kn8,395755
447
+ udata/static/chunks/11.f6ed628667c44bbad757.js.map,sha256=wU5iugFlk7d4mhAthA-ajCOtN9vJ3RRwJhYFcAY3fxI,2269851
448
448
  udata/static/chunks/12.f063483ea9d39dab31f3.js,sha256=waHKl9k496O6kDPgi86WKUES0z61Y9jdUcujCM5rSaY,421036
449
449
  udata/static/chunks/12.f063483ea9d39dab31f3.js.map,sha256=v5UP6rJJijvDZ5mMViya886UrW0SWx27FgE8Y_HV2IQ,2441628
450
- udata/static/chunks/13.038c0d9aa0dfa0181c4b.js,sha256=eQzhTtj-ZhM0TnSTo25bVcD7dPDqS1lGy78D98YrQbw,420505
451
- udata/static/chunks/13.038c0d9aa0dfa0181c4b.js.map,sha256=O7vDHmXlPAcIyS3TivF97iHfry3tK23rY3Bey26bu3M,2430090
450
+ udata/static/chunks/13.a535d3f0dc1690137ebf.js,sha256=3tLlVOkevG9_38PuFGb85DpnI556uzy6ItRW3arMWGo,420505
451
+ udata/static/chunks/13.a535d3f0dc1690137ebf.js.map,sha256=ulnyLyByJRi2I_mUoLsYRuZDigdZepiFOWtP1HwH7aE,2430090
452
452
  udata/static/chunks/14.37d4cd9fe625f51e895e.js,sha256=paYctpJTzLyAhZ7T5kiRBucMwoHeCfxFcdZk90K8c2I,290172
453
453
  udata/static/chunks/14.37d4cd9fe625f51e895e.js.map,sha256=Une_RoV9Su6JAwdR9Z3x49nlbk2mv4OBoZaZ6fRiiUI,1635848
454
454
  udata/static/chunks/15.6f5ceeacd2b7b74d680b.js,sha256=VC7zxY5un7Yjs-ppcvrXtY80puCw27sDpe30-O-D4W0,228681
455
455
  udata/static/chunks/15.6f5ceeacd2b7b74d680b.js.map,sha256=xrBP1BUG06mOd8uVZJ_-r8vHMOdgXmSYT_Uc6nCWwYo,1575013
456
- udata/static/chunks/16.0baa2b64a74a2dcde25c.js,sha256=XypoAhL49h5lSHY_PJrtzUn85sjp3MR_J4DSHSepyLo,236580
457
- udata/static/chunks/16.0baa2b64a74a2dcde25c.js.map,sha256=Gn3Og6I4CMNS6nZkNqTCTClRrsRjSr5svb6mgRrzcDk,1289130
456
+ udata/static/chunks/16.e499a69d451e8620b796.js,sha256=-r8KmWsG4rg-pwumzIcAqRUDXL-t5XH4QjcihBxTpc4,236580
457
+ udata/static/chunks/16.e499a69d451e8620b796.js.map,sha256=x4S8qpMQJN43ZyRp6TyZJXK2DaI0AyGcDHSHtrJ0zK8,1289130
458
458
  udata/static/chunks/17.831791e0bcaf9c8ad4ba.js,sha256=zCC5VzpGALI1wYDyCYgs0NS1-mtDkd_TVF5X02C6Ggo,134827
459
459
  udata/static/chunks/17.831791e0bcaf9c8ad4ba.js.map,sha256=VNvL-1xybyb_C0ug1XWeC-9IpqyRI-3jExzWBSG3LAU,681951
460
460
  udata/static/chunks/18.48c373a95548582ecb20.js,sha256=9FVbZk_OCct6XaUZa39_ynsHp3JyoJFX7EgsWCsf8mc,50722
461
461
  udata/static/chunks/18.48c373a95548582ecb20.js.map,sha256=WhUhEa3JFaFLXUH3qwKii_ZdHCDtKlOiV44KtdbXbX0,279426
462
- udata/static/chunks/19.350a9f150b074b4ecefa.js,sha256=ZoXQdEqeRewa7KkMSswGxg9If4HEqzBXq6Vv5ybimVo,203649
463
- udata/static/chunks/19.350a9f150b074b4ecefa.js.map,sha256=1_TYk7HU84RtdRxYoRjoTa8Asa9gvjm6ahshZQRioA4,1081064
462
+ udata/static/chunks/19.7d96d075450c6a7f843e.js,sha256=yS3dIU-CDE111C5_Dhhhkwf4wjeeQtqlCoygBT2dXJo,203649
463
+ udata/static/chunks/19.7d96d075450c6a7f843e.js.map,sha256=qaJST--AjwTwsex_A5BpnuKR3aJmEZ2GYrwhEDpK7Ew,1081064
464
464
  udata/static/chunks/2.614b3e73b072982fd9b1.js,sha256=2AjukB7x12ryFJdyKVLLyF71S3RZfQAZPhNyDQK6AD8,276355
465
465
  udata/static/chunks/2.614b3e73b072982fd9b1.js.map,sha256=z4W49Eal5baYh5brXpzITxRK6c1dl-3GmovsB95Vk2c,1554832
466
466
  udata/static/chunks/20.371472cff605ff23e70c.js,sha256=Ih7DddNITjYmPuMS1q8wUySSWEoI8nILyrUNBCCSnp8,36850
@@ -491,16 +491,16 @@ udata/static/chunks/33.70f8e7b1964892a24e67.js,sha256=CP8Hb0M4O6jXd5s8_TI1BhyKB4
491
491
  udata/static/chunks/33.70f8e7b1964892a24e67.js.map,sha256=0ejAXya7tMgkLGrybenkpOBCp5PpkIOy_WexGpcFu5k,709305
492
492
  udata/static/chunks/4.9e1761727aa5471aa19e.js,sha256=h0X95e9cNjjAfQm0wuedOScvndhlYRdfRfwzK0fezOo,608722
493
493
  udata/static/chunks/4.9e1761727aa5471aa19e.js.map,sha256=tqsP_ZQA--TRstvuqWHJsfEnnRPJ5S8CaXrvm83XbUc,3721678
494
- udata/static/chunks/5.6ebbce2b9b3e696d3da5.js,sha256=7W46xMkw_PYM0H6sSEfdfyAFsJK4WWZzc4L_F3lDaDo,578827
495
- udata/static/chunks/5.6ebbce2b9b3e696d3da5.js.map,sha256=BsRHcV7LkCQkV7GNeDtcdswB52Vjq160mssq38OKgNg,3584289
496
- udata/static/chunks/6.d8a5f7b017bcbd083641.js,sha256=3XvitY4mDXPc90IFwvqlKNg6vv7xRUXmUwsO2n3Tg18,609276
497
- udata/static/chunks/6.d8a5f7b017bcbd083641.js.map,sha256=gnNCvbAp2VNtzzXmbyTDrVRViMK74s1sx3OvHRKpmQU,3780547
494
+ udata/static/chunks/5.a1a6164f9161d24acda1.js,sha256=ya_hn7_WjN-2UDcHzO272AHlqUBD2sv60mydRXv6048,578827
495
+ udata/static/chunks/5.a1a6164f9161d24acda1.js.map,sha256=mxRegGzm8qe7skpR2Q32sAeQYjJ3snX9PK50Z5DT9eY,3584289
496
+ udata/static/chunks/6.7d18ddefd50912448615.js,sha256=uzc2ttYXyQ8gYA2fqSyQdx5dnQ5DCnW29o37r3TnPxo,609276
497
+ udata/static/chunks/6.7d18ddefd50912448615.js.map,sha256=D9Kplv7OPSsTjrjLX0otoq5Y3B7DKI2-GEBEo8VVYok,3780547
498
498
  udata/static/chunks/7.45d819f8edd0af6f7408.js,sha256=uZ0ZLAW4dzvCMRAUvb1HD_hpGIgYSzaGczpTSbDzr8E,153160
499
499
  udata/static/chunks/7.45d819f8edd0af6f7408.js.map,sha256=aCaXMaA-yktTDgvbWXacxBC9_e22BD0Nk3-BkyQw090,793001
500
500
  udata/static/chunks/8.37e24cb993927c0739bc.js,sha256=NvCoq6YRVx_YHGJlveqYO3mN6K8evrcX5B8lWNIA1Ok,418567
501
501
  udata/static/chunks/8.37e24cb993927c0739bc.js.map,sha256=cGpmMBnu0I61gI-e1xDbcXZnXnNJoXeNWsF_gXmu_os,2754331
502
- udata/static/chunks/9.ba6c5ed42a4b3d1de13a.js,sha256=C7fdzp55HVSlmSfNqkyAOAc6nMD-ysiK42P031B4Wxo,223015
503
- udata/static/chunks/9.ba6c5ed42a4b3d1de13a.js.map,sha256=yOgFsKop8vHYkeZd9KtR1jGWIvLSlv8frYcU2eAmlUI,1205888
502
+ udata/static/chunks/9.47a0060ef619922385ad.js,sha256=-7QYdB0K8JRjCuoLqzS_09NbYCcgl1tHgH0rtDIZ5Gw,223015
503
+ udata/static/chunks/9.47a0060ef619922385ad.js.map,sha256=0mhrcYrZpiOLniXgvQjadmnSrTg2EQ3mLpG5AgkIyoQ,1205888
504
504
  udata/storage/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
505
505
  udata/storage/s3.py,sha256=enxbTm1IZksiKLkbafASrO2bqO44OTCn4F7_FeMjhgg,1557
506
506
  udata/templates/admin.html,sha256=RfX03rUOW7NIlgMYNhFfx0pL-p2j8BtAKvEFUadaIIs,787
@@ -607,7 +607,7 @@ udata/tests/api/test_fields.py,sha256=OW85Z5MES5HeWOpapeem8OvR1cIcrqW-xMWpdZO4LZ
607
607
  udata/tests/api/test_follow_api.py,sha256=fccgVNfcqET221PPS3p7qzb9hpvbBBUGhV-l4UeOpyk,3352
608
608
  udata/tests/api/test_me_api.py,sha256=ZJKGH9fFv-4cSGcYAGd6IJA_PwPjVGIqWNy_DhFA8ms,13827
609
609
  udata/tests/api/test_organizations_api.py,sha256=5hBs7-gsMfy4IFsrLYyUMGyxhtCs71K4QvPFAXyDsz4,35049
610
- udata/tests/api/test_reports_api.py,sha256=g9VFlAk1CKi2iBWU2UZciM4yASy46fzetR5lbglB2GM,3548
610
+ udata/tests/api/test_reports_api.py,sha256=4BHpCxDOkmbxe2xd2qCd0xXUjdAqgom7PP9117V8Bds,4515
611
611
  udata/tests/api/test_reuses_api.py,sha256=v9RJcJ_fdR8dgnq6H7j58_7n83BhoFJJ9YOd7CJwsyw,16769
612
612
  udata/tests/api/test_swagger.py,sha256=eE6La9qdTYTIUFevRVPJgtj17Jq_8uOlsDwzCNR0LL8,760
613
613
  udata/tests/api/test_tags_api.py,sha256=MgSmKZeQ8L-fO-LwOGlDm_YN7lmEyvTpkDgaPiENHw8,2429
@@ -698,9 +698,9 @@ udata/translations/pt/LC_MESSAGES/udata.mo,sha256=yfwqLHV-_mGNaDklP7T0pQP4i1y__s
698
698
  udata/translations/pt/LC_MESSAGES/udata.po,sha256=E45ZRCW2bpedoWOztkgJ9gwBlg2L1pTcHmCXgqSdhT0,44979
699
699
  udata/translations/sr/LC_MESSAGES/udata.mo,sha256=w_x0mh_WagUuQ5QFweqHg5-HtDrsoyL66HVmUxrdR0U,28500
700
700
  udata/translations/sr/LC_MESSAGES/udata.po,sha256=LfaUQzhrfDClLdBo_U2erasp2XR1z1_V132cewvZ9C8,51548
701
- udata-9.1.2.dev30454.dist-info/LICENSE,sha256=V8j_M8nAz8PvAOZQocyRDX7keai8UJ9skgmnwqETmdY,34520
702
- udata-9.1.2.dev30454.dist-info/METADATA,sha256=QuFdpPccOwz_a_joED7f7E5p-fat-TmuHm68TWlX47w,126601
703
- udata-9.1.2.dev30454.dist-info/WHEEL,sha256=DZajD4pwLWue70CAfc7YaxT1wLUciNBvN_TTcvXpltE,110
704
- udata-9.1.2.dev30454.dist-info/entry_points.txt,sha256=3SKiqVy4HUqxf6iWspgMqH8d88Htk6KoLbG1BU-UddQ,451
705
- udata-9.1.2.dev30454.dist-info/top_level.txt,sha256=39OCg-VWFWOq4gCKnjKNu-s3OwFlZIu_dVH8Gl6ndHw,12
706
- udata-9.1.2.dev30454.dist-info/RECORD,,
701
+ udata-9.1.2.dev30483.dist-info/LICENSE,sha256=V8j_M8nAz8PvAOZQocyRDX7keai8UJ9skgmnwqETmdY,34520
702
+ udata-9.1.2.dev30483.dist-info/METADATA,sha256=opfzZHL_6Xo7XmPscPW7Qwr1tmJsrz1yiJZf--Wwy7Y,126849
703
+ udata-9.1.2.dev30483.dist-info/WHEEL,sha256=DZajD4pwLWue70CAfc7YaxT1wLUciNBvN_TTcvXpltE,110
704
+ udata-9.1.2.dev30483.dist-info/entry_points.txt,sha256=3SKiqVy4HUqxf6iWspgMqH8d88Htk6KoLbG1BU-UddQ,451
705
+ udata-9.1.2.dev30483.dist-info/top_level.txt,sha256=39OCg-VWFWOq4gCKnjKNu-s3OwFlZIu_dVH8Gl6ndHw,12
706
+ udata-9.1.2.dev30483.dist-info/RECORD,,