udata 7.0.4.dev27593__py2.py3-none-any.whl → 7.0.4.dev27605__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 (31) hide show
  1. udata/core/discussions/models.py +23 -5
  2. udata/core/spam/api.py +1 -2
  3. udata/core/spam/fields.py +1 -2
  4. udata/core/spam/models.py +6 -17
  5. udata/core/spam/tests/__init__.py +0 -0
  6. udata/core/spam/tests/test_spam.py +26 -0
  7. udata/core/user/commands.py +12 -0
  8. udata/notifications/mattermost.py +2 -7
  9. udata/static/chunks/{11.c0ccea08914b6b41568e.js → 11.a23c110811a9ac943478.js} +3 -3
  10. udata/static/chunks/{11.c0ccea08914b6b41568e.js.map → 11.a23c110811a9ac943478.js.map} +1 -1
  11. udata/static/chunks/{13.526a25163ababaa44409.js → 13.0889e093f8664e38568c.js} +2 -2
  12. udata/static/chunks/{13.526a25163ababaa44409.js.map → 13.0889e093f8664e38568c.js.map} +1 -1
  13. udata/static/chunks/{16.7901839b4227881947f6.js → 16.f41599478d3e97ad9a30.js} +2 -2
  14. udata/static/chunks/{16.7901839b4227881947f6.js.map → 16.f41599478d3e97ad9a30.js.map} +1 -1
  15. udata/static/chunks/{19.471d5a2a08eef6e5338a.js → 19.2b534a26af8b17e9170b.js} +3 -3
  16. udata/static/chunks/{19.471d5a2a08eef6e5338a.js.map → 19.2b534a26af8b17e9170b.js.map} +1 -1
  17. udata/static/chunks/{5.98904a7a544eeb258e23.js → 5.bd822f0e9689f45bd582.js} +3 -3
  18. udata/static/chunks/{5.98904a7a544eeb258e23.js.map → 5.bd822f0e9689f45bd582.js.map} +1 -1
  19. udata/static/chunks/{6.e56975229e6065f68d2a.js → 6.16bb24fb8240f2746488.js} +3 -3
  20. udata/static/chunks/{6.e56975229e6065f68d2a.js.map → 6.16bb24fb8240f2746488.js.map} +1 -1
  21. udata/static/chunks/{9.534426728626f11f4571.js → 9.3e752966ff14e47e11f2.js} +2 -2
  22. udata/static/chunks/{9.534426728626f11f4571.js.map → 9.3e752966ff14e47e11f2.js.map} +1 -1
  23. udata/static/common.js +1 -1
  24. udata/static/common.js.map +1 -1
  25. udata/tests/test_discussions.py +4 -6
  26. {udata-7.0.4.dev27593.dist-info → udata-7.0.4.dev27605.dist-info}/METADATA +4 -1
  27. {udata-7.0.4.dev27593.dist-info → udata-7.0.4.dev27605.dist-info}/RECORD +31 -29
  28. {udata-7.0.4.dev27593.dist-info → udata-7.0.4.dev27605.dist-info}/LICENSE +0 -0
  29. {udata-7.0.4.dev27593.dist-info → udata-7.0.4.dev27605.dist-info}/WHEEL +0 -0
  30. {udata-7.0.4.dev27593.dist-info → udata-7.0.4.dev27605.dist-info}/entry_points.txt +0 -0
  31. {udata-7.0.4.dev27593.dist-info → udata-7.0.4.dev27605.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,_,n=0,d=[];n<r.length;n++)_=r[n],b[_]&&d.push.apply(d,b[_]),b[_]=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);d.length;)d.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:"2fae996429c2e33c28a2",1:"4a09db78b21075c05a30",2:"c9645255e10ac47e8230",3:"1ca609753b5a02de0ca3",4:"379d0586872a1bae2ebd",5:"98904a7a544eeb258e23",6:"e56975229e6065f68d2a",7:"2ebc6662cf10a678b2ac",8:"17d1afb591ad1495bd03",9:"534426728626f11f4571",10:"e97ea231893dc435d6b5",11:"c0ccea08914b6b41568e",12:"d39612a569bcc3a358a8",13:"526a25163ababaa44409",14:"c8be4abc4f62a8ff08ca",15:"92b2cef3032ea35da04a",16:"7901839b4227881947f6",17:"13db80c90b998be14e1b",18:"ad41fb75ac4226e1f3ce",19:"471d5a2a08eef6e5338a",20:"14a92e5c503f74ff40df",21:"ccbfce6680a2b11a5284",22:"bc79367e5f4c8ad00038",23:"58f008bb10313268bf7d",24:"554ea613112f1ba6c246",25:"bebb170f65c104b18777",26:"9a0fd93accfc31686ed0",27:"dbd31d749f51f362b968",28:"c9c89e04a005ae62b473",29:"a0f8fce10d9e93e23b12",30:"9dc7b1b44817569daec6",32:"9b68f125e2598d22d5b5",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 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,_,n=0,d=[];n<r.length;n++)_=r[n],b[_]&&d.push.apply(d,b[_]),b[_]=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);d.length;)d.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:"2fae996429c2e33c28a2",1:"4a09db78b21075c05a30",2:"c9645255e10ac47e8230",3:"1ca609753b5a02de0ca3",4:"379d0586872a1bae2ebd",5:"bd822f0e9689f45bd582",6:"16bb24fb8240f2746488",7:"2ebc6662cf10a678b2ac",8:"17d1afb591ad1495bd03",9:"3e752966ff14e47e11f2",10:"e97ea231893dc435d6b5",11:"a23c110811a9ac943478",12:"d39612a569bcc3a358a8",13:"0889e093f8664e38568c",14:"c8be4abc4f62a8ff08ca",15:"92b2cef3032ea35da04a",16:"f41599478d3e97ad9a30",17:"13db80c90b998be14e1b",18:"ad41fb75ac4226e1f3ce",19:"2b534a26af8b17e9170b",20:"14a92e5c503f74ff40df",21:"ccbfce6680a2b11a5284",22:"bc79367e5f4c8ad00038",23:"58f008bb10313268bf7d",24:"554ea613112f1ba6c246",25:"bebb170f65c104b18777",26:"9a0fd93accfc31686ed0",27:"dbd31d749f51f362b968",28:"c9c89e04a005ae62b473",29:"a0f8fce10d9e93e23b12",30:"9dc7b1b44817569daec6",32:"9b68f125e2598d22d5b5",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}([]));
2
2
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///common.js","webpack:///webpack/bootstrap 490edd99af08aecace68"],"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\":\"2fae996429c2e33c28a2\",\"1\":\"4a09db78b21075c05a30\",\"2\":\"c9645255e10ac47e8230\",\"3\":\"1ca609753b5a02de0ca3\",\"4\":\"379d0586872a1bae2ebd\",\"5\":\"98904a7a544eeb258e23\",\"6\":\"e56975229e6065f68d2a\",\"7\":\"2ebc6662cf10a678b2ac\",\"8\":\"17d1afb591ad1495bd03\",\"9\":\"534426728626f11f4571\",\"10\":\"e97ea231893dc435d6b5\",\"11\":\"c0ccea08914b6b41568e\",\"12\":\"d39612a569bcc3a358a8\",\"13\":\"526a25163ababaa44409\",\"14\":\"c8be4abc4f62a8ff08ca\",\"15\":\"92b2cef3032ea35da04a\",\"16\":\"7901839b4227881947f6\",\"17\":\"13db80c90b998be14e1b\",\"18\":\"ad41fb75ac4226e1f3ce\",\"19\":\"471d5a2a08eef6e5338a\",\"20\":\"14a92e5c503f74ff40df\",\"21\":\"ccbfce6680a2b11a5284\",\"22\":\"bc79367e5f4c8ad00038\",\"23\":\"58f008bb10313268bf7d\",\"24\":\"554ea613112f1ba6c246\",\"25\":\"bebb170f65c104b18777\",\"26\":\"9a0fd93accfc31686ed0\",\"27\":\"dbd31d749f51f362b968\",\"28\":\"c9c89e04a005ae62b473\",\"29\":\"a0f8fce10d9e93e23b12\",\"30\":\"9dc7b1b44817569daec6\",\"32\":\"9b68f125e2598d22d5b5\",\"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\":\"2fae996429c2e33c28a2\",\"1\":\"4a09db78b21075c05a30\",\"2\":\"c9645255e10ac47e8230\",\"3\":\"1ca609753b5a02de0ca3\",\"4\":\"379d0586872a1bae2ebd\",\"5\":\"98904a7a544eeb258e23\",\"6\":\"e56975229e6065f68d2a\",\"7\":\"2ebc6662cf10a678b2ac\",\"8\":\"17d1afb591ad1495bd03\",\"9\":\"534426728626f11f4571\",\"10\":\"e97ea231893dc435d6b5\",\"11\":\"c0ccea08914b6b41568e\",\"12\":\"d39612a569bcc3a358a8\",\"13\":\"526a25163ababaa44409\",\"14\":\"c8be4abc4f62a8ff08ca\",\"15\":\"92b2cef3032ea35da04a\",\"16\":\"7901839b4227881947f6\",\"17\":\"13db80c90b998be14e1b\",\"18\":\"ad41fb75ac4226e1f3ce\",\"19\":\"471d5a2a08eef6e5338a\",\"20\":\"14a92e5c503f74ff40df\",\"21\":\"ccbfce6680a2b11a5284\",\"22\":\"bc79367e5f4c8ad00038\",\"23\":\"58f008bb10313268bf7d\",\"24\":\"554ea613112f1ba6c246\",\"25\":\"bebb170f65c104b18777\",\"26\":\"9a0fd93accfc31686ed0\",\"27\":\"dbd31d749f51f362b968\",\"28\":\"c9c89e04a005ae62b473\",\"29\":\"a0f8fce10d9e93e23b12\",\"30\":\"9dc7b1b44817569daec6\",\"32\":\"9b68f125e2598d22d5b5\",\"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 490edd99af08aecace68\n **/"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///common.js","webpack:///webpack/bootstrap 1e284a546e9b1bb806e0"],"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\":\"2fae996429c2e33c28a2\",\"1\":\"4a09db78b21075c05a30\",\"2\":\"c9645255e10ac47e8230\",\"3\":\"1ca609753b5a02de0ca3\",\"4\":\"379d0586872a1bae2ebd\",\"5\":\"bd822f0e9689f45bd582\",\"6\":\"16bb24fb8240f2746488\",\"7\":\"2ebc6662cf10a678b2ac\",\"8\":\"17d1afb591ad1495bd03\",\"9\":\"3e752966ff14e47e11f2\",\"10\":\"e97ea231893dc435d6b5\",\"11\":\"a23c110811a9ac943478\",\"12\":\"d39612a569bcc3a358a8\",\"13\":\"0889e093f8664e38568c\",\"14\":\"c8be4abc4f62a8ff08ca\",\"15\":\"92b2cef3032ea35da04a\",\"16\":\"f41599478d3e97ad9a30\",\"17\":\"13db80c90b998be14e1b\",\"18\":\"ad41fb75ac4226e1f3ce\",\"19\":\"2b534a26af8b17e9170b\",\"20\":\"14a92e5c503f74ff40df\",\"21\":\"ccbfce6680a2b11a5284\",\"22\":\"bc79367e5f4c8ad00038\",\"23\":\"58f008bb10313268bf7d\",\"24\":\"554ea613112f1ba6c246\",\"25\":\"bebb170f65c104b18777\",\"26\":\"9a0fd93accfc31686ed0\",\"27\":\"dbd31d749f51f362b968\",\"28\":\"c9c89e04a005ae62b473\",\"29\":\"a0f8fce10d9e93e23b12\",\"30\":\"9dc7b1b44817569daec6\",\"32\":\"9b68f125e2598d22d5b5\",\"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\":\"2fae996429c2e33c28a2\",\"1\":\"4a09db78b21075c05a30\",\"2\":\"c9645255e10ac47e8230\",\"3\":\"1ca609753b5a02de0ca3\",\"4\":\"379d0586872a1bae2ebd\",\"5\":\"bd822f0e9689f45bd582\",\"6\":\"16bb24fb8240f2746488\",\"7\":\"2ebc6662cf10a678b2ac\",\"8\":\"17d1afb591ad1495bd03\",\"9\":\"3e752966ff14e47e11f2\",\"10\":\"e97ea231893dc435d6b5\",\"11\":\"a23c110811a9ac943478\",\"12\":\"d39612a569bcc3a358a8\",\"13\":\"0889e093f8664e38568c\",\"14\":\"c8be4abc4f62a8ff08ca\",\"15\":\"92b2cef3032ea35da04a\",\"16\":\"f41599478d3e97ad9a30\",\"17\":\"13db80c90b998be14e1b\",\"18\":\"ad41fb75ac4226e1f3ce\",\"19\":\"2b534a26af8b17e9170b\",\"20\":\"14a92e5c503f74ff40df\",\"21\":\"ccbfce6680a2b11a5284\",\"22\":\"bc79367e5f4c8ad00038\",\"23\":\"58f008bb10313268bf7d\",\"24\":\"554ea613112f1ba6c246\",\"25\":\"bebb170f65c104b18777\",\"26\":\"9a0fd93accfc31686ed0\",\"27\":\"dbd31d749f51f362b968\",\"28\":\"c9c89e04a005ae62b473\",\"29\":\"a0f8fce10d9e93e23b12\",\"30\":\"9dc7b1b44817569daec6\",\"32\":\"9b68f125e2598d22d5b5\",\"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 1e284a546e9b1bb806e0\n **/"],"sourceRoot":""}
@@ -76,7 +76,7 @@ class DiscussionsTest(APITestCase):
76
76
  discussion_id = None
77
77
  def check_signal(args):
78
78
  self.assertIsNotNone(discussion_id)
79
- self.assertEqual(args[1]['link'], f'http://local.test/api/1/datasets/{dataset.id}/#discussion-{discussion_id}')
79
+ self.assertIn(f'http://local.test/api/1/datasets/{dataset.id}/#discussion-{discussion_id}', args[1]['message'])
80
80
 
81
81
  with assert_emit(on_new_potential_spam, assertions_callback=check_signal):
82
82
  response = self.post(url_for('api.discussions'), {
@@ -107,8 +107,7 @@ class DiscussionsTest(APITestCase):
107
107
  response = self.get(url_for('api.spam'))
108
108
  self.assertStatus(response, 200)
109
109
  self.assertEqual(response.json, [{
110
- 'title': discussion.spam_report_title(),
111
- 'link': discussion.spam_report_link(),
110
+ 'message': discussion.spam_report_message([discussion]),
112
111
  }])
113
112
 
114
113
  with assert_emit(on_new_discussion):
@@ -419,7 +418,7 @@ class DiscussionsTest(APITestCase):
419
418
  self.login()
420
419
  with assert_not_emit(on_new_discussion_comment):
421
420
  def check_signal(args):
422
- self.assertEqual(args[1]['link'], discussion.external_url)
421
+ self.assertIn(discussion.external_url, args[1]['message'])
423
422
 
424
423
  with assert_emit(on_new_potential_spam, assertions_callback=check_signal):
425
424
  response = self.post(url_for('api.discussion', id=discussion.id), {
@@ -436,8 +435,7 @@ class DiscussionsTest(APITestCase):
436
435
  response = self.get(url_for('api.spam'))
437
436
  self.assertStatus(response, 200)
438
437
  self.assertEqual(response.json, [{
439
- 'title': discussion.spam_report_title(),
440
- 'link': discussion.spam_report_link(),
438
+ 'message': discussion.spam_report_message([discussion]),
441
439
  }])
442
440
 
443
441
  with assert_emit(on_new_discussion_comment):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: udata
3
- Version: 7.0.4.dev27593
3
+ Version: 7.0.4.dev27605
4
4
  Summary: Open data portal
5
5
  Home-page: https://github.com/opendatateam/udata
6
6
  Author: Opendata Team
@@ -136,10 +136,13 @@ It is collectively taken care of by members of the
136
136
 
137
137
  ## Current (in progress)
138
138
 
139
+ - Add rotate password command [#2966](https://github.com/opendatateam/udata/pull/2966)
139
140
  - Custom extras metadata [#2921](https://github.com/opendatateam/udata/pull/2921):
140
141
  - Organization can nom define a custom metadata of a choosen type
141
142
  - Dataset belonging to the organization can assign a value to the defined metadata
142
143
  - Metadata value must match the choosen type by the organization
144
+ - Better reporting in spam detection (show the writer of the discussion/message) [#2965](https://github.com/opendatateam/udata/pull/2965)
145
+ - Fix: spam lang detection not lowering input resulting in false positives [#2965](https://github.com/opendatateam/udata/pull/2965)
143
146
  - Fix: do not send mail about discussions when there is no owner / no organisation members [#2962](https://github.com/opendatateam/udata/pull/2962)
144
147
  - Fix: 'backend' is now required in `HarvestSource` [#2962](https://github.com/opendatateam/udata/pull/2962)
145
148
  - Fix: URL to organizations in mails are now independent from `udata-front` (show the URL of the API if no `udata-front`) [#2962](https://github.com/opendatateam/udata/pull/2962)
@@ -100,7 +100,7 @@ udata/core/discussions/api.py,sha256=YlLxVA3GFcek8Q9Qb-R8KbNza2Ia3a9zNTU9PGewims
100
100
  udata/core/discussions/factories.py,sha256=NQd_tD0Izrm67uO5HuuClmluteACrRd9PHrb2IkQ0P0,350
101
101
  udata/core/discussions/forms.py,sha256=PJ1z_q2erqG3aoRrbITKeUeuHcUO-iiL1pp7WU2lnb8,806
102
102
  udata/core/discussions/metrics.py,sha256=qtgyDhM1aPgh8bGU-h-962EKR3J44imC155JVi6jvJI,362
103
- udata/core/discussions/models.py,sha256=McFQrZw3-IlHE_rBlAf1OMOpnT_PHbm4yLPsSvsRGF0,2411
103
+ udata/core/discussions/models.py,sha256=MTnUgcQgcX1K7GscYMvWdiS7EcTUbFljxM0QGoPNfUE,3391
104
104
  udata/core/discussions/notifications.py,sha256=1lsu8WyyOL4bdt0lx6IW5wTxmQ5gS_7FoncN53g3ToQ,927
105
105
  udata/core/discussions/permissions.py,sha256=q3tXNuNmuXCvZhKyudROcwXF53l-IeDR3pfKSh_hIL0,636
106
106
  udata/core/discussions/signals.py,sha256=zjuF-TiFwu9U_RcgZtHB2Z3W4oBx5hVZy6CCAl5Ekug,543
@@ -169,10 +169,12 @@ udata/core/site/forms.py,sha256=lPnxm0MDhK7_ORzPgJLcCAPMj59hDrJ80gwRSW-jtIo,469
169
169
  udata/core/site/models.py,sha256=96IZHtPaMio7VMNCdP1Km_SL1GlMErwBuDqgUXfzKVY,5981
170
170
  udata/core/site/rdf.py,sha256=ONKksnuZTFH9Hdd6BE42a1769zJynna68rG-M30PAZQ,1858
171
171
  udata/core/spam/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
172
- udata/core/spam/api.py,sha256=Gl2nDlyOt1IjgZ3Wkwhd0CfIRrL-9MXlP_7Wph7Zqio,1706
173
- udata/core/spam/fields.py,sha256=eS0NadU6pTMZKuDs5b0wA3eELurFVt_ZbEN7Ml5HGco,347
174
- udata/core/spam/models.py,sha256=Qe2LrZBmQcNON_WxnERxaoVqb2AMn4VtEQB19lHCbCE,8499
172
+ udata/core/spam/api.py,sha256=ehYtb6Dei1eZYcGbWhpSUDphZ7TMRZDjl4Zv-snZ5cA,1671
173
+ udata/core/spam/fields.py,sha256=tzS2PSJrV0ebmp3X2Y0GUwUL8EVd0NtuUTTWq3Af-sM,307
174
+ udata/core/spam/models.py,sha256=FQ7W36yJhQZa-uOxggJj8HtNuNxM4uW_8M1xW_u6uTQ,8032
175
175
  udata/core/spam/signals.py,sha256=4VVLyC2I39LFAot4P56nHzY0xumjMBDz_N0Ff_kgBd0,159
176
+ udata/core/spam/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
177
+ udata/core/spam/tests/test_spam.py,sha256=IuSRVoVCLBjJuoCXnPZx8XjtRyt5q2LrSBtIp8Hovg4,702
176
178
  udata/core/spatial/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
177
179
  udata/core/spatial/api.py,sha256=tlApg3JpqbO6CwEwp1LzZ1hyPQreVEgF3H5yrcAPE74,5848
178
180
  udata/core/spatial/api_fields.py,sha256=ymGK3FyE2KNlASOU5GiPgZGeBjjOqnOyCOcRCbuw3D8,2629
@@ -210,7 +212,7 @@ udata/core/user/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
210
212
  udata/core/user/activities.py,sha256=AMRbYgum8uJXAS3L-ddQN-xKtKRvsmesDZ0ItBY_jS0,2799
211
213
  udata/core/user/api.py,sha256=QQmTsUfm_RB698xkRPSSZduGPtvMM1WKGzupdUICFw4,12738
212
214
  udata/core/user/api_fields.py,sha256=1wIRNnux_MsaJnIAAJW79fIhoOZLc2YDRqfd_SDB-Ls,5081
213
- udata/core/user/commands.py,sha256=0adNRKU_Gz2328eCZtqYCP4pzPqPTUit8rM8B-DEZOU,2798
215
+ udata/core/user/commands.py,sha256=DlNBFaojhhPHH4kZazp0NMwYWnzPZXBba_vqH-cfR1U,3156
214
216
  udata/core/user/factories.py,sha256=JiY-AghapelwhAVAExiUEHS1odyIu4PppWuhtZnkjBY,790
215
217
  udata/core/user/forms.py,sha256=3VmR3GE9gJQltMTWErh5YfAdw1NmEtSBnnR1oLi0K1Q,989
216
218
  udata/core/user/metrics.py,sha256=sHw76gkprLp0oKWJf1uQqShBbgC43lZm7A5OSCuueAw,895
@@ -325,7 +327,7 @@ udata/models/taglist_field.py,sha256=R7C2wpRdeDP_gyYs5r5JjTz7tNm4jrrT9h6dv_pdcfw
325
327
  udata/models/url_field.py,sha256=a7FEaDpZKbox8OVfLl4dYno1DFmvxUvHmhzUK2ekSfM,1361
326
328
  udata/models/uuid_fields.py,sha256=6OUr6yFtoFK5lUZPTjQPF5qSsiP7D79z3DNOffGPCo4,481
327
329
  udata/notifications/__init__.py,sha256=cM-wpmzBESXhdac_SNjRIHcexJK8eknmB4MR8L7K3v0,51
328
- udata/notifications/mattermost.py,sha256=-l1jJsuSmQUNVXrejehqMexrdUIXmotQJyr9Tm8Fa48,917
330
+ udata/notifications/mattermost.py,sha256=WAmhG86u2ppQyQ8LPGpWyjPmnhrIrJm-kf_bD-8IjwM,782
329
331
  udata/search/__init__.py,sha256=lAvKjArQiS0rt7MBhgnFN7XuPxk_tuPbQwZIf_ai5Bk,3977
330
332
  udata/search/adapter.py,sha256=ggtr-_BaO1M40CGKnkAgy2XFNPX57ONusoC4UqJa8bE,2264
331
333
  udata/search/commands.py,sha256=UvxfSTmWj1Je72dE25TpmBhn6KPpDm-PlQlsfi0cc10,5577
@@ -386,8 +388,8 @@ udata/static/admin.css,sha256=6NjjkctQrJv9lMEiD2WZczfdUwkzZES6tNe-hf-9ws4,185239
386
388
  udata/static/admin.css.map,sha256=ugpn6Zy36BWHvHSkOhwa-GNuXNv_bFPL9ukKVcbHgfU,626560
387
389
  udata/static/admin.js,sha256=YFW_i7A235bcwVaHDFAdG9AdZPHBCr2NQp6Vc19Lr0k,1323502
388
390
  udata/static/admin.js.map,sha256=_pUGBFHIx5nfBoI4EoKxP_UotoRcKiCWFpIvmPWnvP4,8501665
389
- udata/static/common.js,sha256=USRfBZRvz-NDAWRJHDqcz5NhNAiyYachOAELZMffgzQ,2252
390
- udata/static/common.js.map,sha256=AcZvd_8rJtKqB6_3dpLXuOkxq5MTq9Jfu6sP0O7PMco,14137
391
+ udata/static/common.js,sha256=QA9Ti37k6WEiiJdmFSZu84_rT4YHEFzb9TCWB8VNHHc,2252
392
+ udata/static/common.js.map,sha256=e73c63IwT0i2A0-3E7g_Ctigbr0X-nBOaolTo4o_HLo,14137
391
393
  udata/static/fontawesome-webfont.eot,sha256=e_yrbbmdXPvxcFygU23ceFhUMsxfpBu9etDwCQM7KXk,165742
392
394
  udata/static/fontawesome-webfont.svg,sha256=rWFXkmwWIrpOHQPUePFUE2hSS_xG9R5C_g2UX37zI-Q,444379
393
395
  udata/static/fontawesome-webfont.ttf,sha256=qljzPyOaD7AvXHpsRcBD16msmgkzNYBmlOzW1O3A1qg,165548
@@ -406,24 +408,24 @@ udata/static/chunks/1.4a09db78b21075c05a30.js,sha256=_WHHvnU26waP7v_KMAPeIyFkQRt
406
408
  udata/static/chunks/1.4a09db78b21075c05a30.js.map,sha256=08ytLHgbBGusFp2SpNDz_0yBJb7FwAVJc19vPpYl-j8,1740061
407
409
  udata/static/chunks/10.e97ea231893dc435d6b5.js,sha256=APxVLHqIJpn5y4rgAcYe-kj2m1_YVKRcHQKYyoOhvDo,416268
408
410
  udata/static/chunks/10.e97ea231893dc435d6b5.js.map,sha256=ImT6Ak-obTIr1giuRa_B0GqYLxVK-k8VqdUInvIOo48,2742986
409
- udata/static/chunks/11.c0ccea08914b6b41568e.js,sha256=FqKfuut8xPs-Xsf51V6RRlOoSwkTByabltJmf-mFefA,395558
410
- udata/static/chunks/11.c0ccea08914b6b41568e.js.map,sha256=gW4mizTtcjkPiaAy_Zj5lBjMSmzPQMpSNAWf86AEEkI,2269221
411
+ udata/static/chunks/11.a23c110811a9ac943478.js,sha256=hVbIoCA-wfa726K4Ho6lTcGvi40UUc5U_WJMLhbpf28,395558
412
+ udata/static/chunks/11.a23c110811a9ac943478.js.map,sha256=GDZwCUrKLMYSAuMvp9LldqJSSxqjphP54a0-PAV3Qjg,2269221
411
413
  udata/static/chunks/12.d39612a569bcc3a358a8.js,sha256=A2OAl43KOkGI1TEbUjrgwwHkKS3U5_TbpEbiGHKMNVg,420842
412
414
  udata/static/chunks/12.d39612a569bcc3a358a8.js.map,sha256=EJRe_9zhGGdC8keK7JYHpsihN8XLSCXR5cOYXay5UBo,2440993
413
- udata/static/chunks/13.526a25163ababaa44409.js,sha256=_kPU9cjQhD8Or6QfO6ccBmH4QodGIK11c6x--NGkpNs,420311
414
- udata/static/chunks/13.526a25163ababaa44409.js.map,sha256=SvtNxics34SdgTmjy4yXes7pUV9IuGhyKoQVFsblYxM,2429455
415
+ udata/static/chunks/13.0889e093f8664e38568c.js,sha256=uGUe_hFJMNCMoSc1_oQfVpAZgbSVrNrbZAhvDvaZf2Y,420311
416
+ udata/static/chunks/13.0889e093f8664e38568c.js.map,sha256=e-rbuTPK3T0yPMy2mOVSgxqH7gkMm_e-tkyOgzGSasg,2429455
415
417
  udata/static/chunks/14.c8be4abc4f62a8ff08ca.js,sha256=4R_697lLoo2iRShe6NjXrO_Aapwt5yE4_s1yRXVaoW8,289955
416
418
  udata/static/chunks/14.c8be4abc4f62a8ff08ca.js.map,sha256=bbMsTkYQhsn6afI7m0DvGzN7uGa8hH46aBI6hJLfwZc,1634611
417
419
  udata/static/chunks/15.92b2cef3032ea35da04a.js,sha256=mjInN76Vh4ZdaAeLt9cdDC_KzosZ09oXORoQnIDCDZQ,228520
418
420
  udata/static/chunks/15.92b2cef3032ea35da04a.js.map,sha256=r8-Tpyg4JArOxM9tesc6kfmo9K4dMA4gKeHuJnAjQlc,1574560
419
- udata/static/chunks/16.7901839b4227881947f6.js,sha256=fZp4GZ6Riq96k4amm_Vizkfq2meQTvhVgZ5wsmPl_Cc,236384
420
- udata/static/chunks/16.7901839b4227881947f6.js.map,sha256=Es-hkxMbhXSTQB23h6lSgPSoVOGObSl0OtwfrFVrBao,1288499
421
+ udata/static/chunks/16.f41599478d3e97ad9a30.js,sha256=5-s1z-EXzJ_jdEl5FzFa6_usXKCpKgvjoHfMjaWZ4v0,236384
422
+ udata/static/chunks/16.f41599478d3e97ad9a30.js.map,sha256=3fYy6W_01w5vv3iNnlbEo9CGOfEFxSutY2ze8G2Uchc,1288499
421
423
  udata/static/chunks/17.13db80c90b998be14e1b.js,sha256=IJ5NUeyrB8bAL2imJKwW3_vUYa19twDYa3YDmhgtv74,134473
422
424
  udata/static/chunks/17.13db80c90b998be14e1b.js.map,sha256=fTZ_nGxHRKfIXZnJu2IfJUvpiP8_1JhwBPpc1lp2UMw,680576
423
425
  udata/static/chunks/18.ad41fb75ac4226e1f3ce.js,sha256=4KlM45mqvarK9EoOHtBSMxCrYfCXhbN0gkubnQw_If0,49284
424
426
  udata/static/chunks/18.ad41fb75ac4226e1f3ce.js.map,sha256=gY6K7PmVSGRKhJdspBZcvf50HD6sVue6zIhIE0BcTAw,273610
425
- udata/static/chunks/19.471d5a2a08eef6e5338a.js,sha256=UzFlqksv6JHlL8iKBvo6o8F_t4jjJdd5pT30CYKl6jA,203455
426
- udata/static/chunks/19.471d5a2a08eef6e5338a.js.map,sha256=l_7l3-WK5ZWydeRJbF1kaHVfS3lDyynVsssCRXVWlNk,1080413
427
+ udata/static/chunks/19.2b534a26af8b17e9170b.js,sha256=s6oORjlVIuQNts20aToQ07gpgCUu0ZOeiCKok0_b788,203455
428
+ udata/static/chunks/19.2b534a26af8b17e9170b.js.map,sha256=7N1NBKOPj8sfalJ8gzlnhveXZxF-OU2YCOlryNIadDY,1080413
427
429
  udata/static/chunks/2.c9645255e10ac47e8230.js,sha256=Gx_Ev8Dl8Dc8jikP2puhUuwOkDs_OFzci4ZAp78RKcw,276302
428
430
  udata/static/chunks/2.c9645255e10ac47e8230.js.map,sha256=ujbN5Roj7gl3jQ1CUdlol9L5rPdAP276agpoo1aENbU,1554040
429
431
  udata/static/chunks/20.14a92e5c503f74ff40df.js,sha256=5KSbcgzviAJ3tpRfRLPy6JC3zqE50dLijdLjaf9F59s,36688
@@ -454,16 +456,16 @@ udata/static/chunks/33.70f8e7b1964892a24e67.js,sha256=CP8Hb0M4O6jXd5s8_TI1BhyKB4
454
456
  udata/static/chunks/33.70f8e7b1964892a24e67.js.map,sha256=0ejAXya7tMgkLGrybenkpOBCp5PpkIOy_WexGpcFu5k,709305
455
457
  udata/static/chunks/4.379d0586872a1bae2ebd.js,sha256=cA8PXdZ_A1rOm5BhCmvDG2RbQN913_34ndHrBJq12IM,608366
456
458
  udata/static/chunks/4.379d0586872a1bae2ebd.js.map,sha256=ADwLs7I3hJD9Ts4FdonvNcQQd9aKDtzBUP_wdOUlKFc,3720304
457
- udata/static/chunks/5.98904a7a544eeb258e23.js,sha256=SjI_E9WaCQMjEM8Auh3Xi6_zu76Foub8eRxu8JCWSfY,578611
458
- udata/static/chunks/5.98904a7a544eeb258e23.js.map,sha256=kpOdy1ABkjz2C2lAOtJGjrBLNv7jLkoW0ftB6MxY1wU,3583062
459
- udata/static/chunks/6.e56975229e6065f68d2a.js,sha256=wxBOu-mL8g_PlRNLiqivWokUenvlot8RehPMF-nt5Z8,609082
460
- udata/static/chunks/6.e56975229e6065f68d2a.js.map,sha256=frdGNxy4YC6s3z-akqRuLFqOkfesmdDZ3EHRamIu0Gg,3779918
459
+ udata/static/chunks/5.bd822f0e9689f45bd582.js,sha256=qtQfPqD5AYCTde9G5Nv2EZ1sRLxRF0BrqbPUKeDHlpk,578611
460
+ udata/static/chunks/5.bd822f0e9689f45bd582.js.map,sha256=oddsFD4fNgRsloAa36b_cU22N6C4gwmxi3OGOeD-8OE,3583062
461
+ udata/static/chunks/6.16bb24fb8240f2746488.js,sha256=_kKceR0T9LW0XCMExebUcvMr3YcPNVzw2BV-oeJCc3E,609082
462
+ udata/static/chunks/6.16bb24fb8240f2746488.js.map,sha256=HqS6OY1bizP0_HB3ootwLtTAQMcYe3XuBSKJBBF0_Qw,3779918
461
463
  udata/static/chunks/7.2ebc6662cf10a678b2ac.js,sha256=qw3qAICT_rY0nHjnnLghsipoyLVqKlg_HHFkS1kNOkg,152347
462
464
  udata/static/chunks/7.2ebc6662cf10a678b2ac.js.map,sha256=6xw_JVkn8A2alNROlKXSziIfFWvLjfyKlvJ3VE7xZkE,789499
463
465
  udata/static/chunks/8.17d1afb591ad1495bd03.js,sha256=ITR8W0odBF4Qc_sYSFSwDn_ROI0SheErQOFCSKxUlig,418247
464
466
  udata/static/chunks/8.17d1afb591ad1495bd03.js.map,sha256=oW0NCN77hHRjGt7zPbIGVG1KXZ9_IZxt-dK_jGlp6ek,2753135
465
- udata/static/chunks/9.534426728626f11f4571.js,sha256=S-S4vZ-u-cLOT99mrp3Dw-oE1I0hkXF2soYBPdkKkd4,222820
466
- udata/static/chunks/9.534426728626f11f4571.js.map,sha256=dHhJ357j7tIf92BAOdtCCfixRnqGcZL8-2HM0RV_v9w,1205261
467
+ udata/static/chunks/9.3e752966ff14e47e11f2.js,sha256=7Q9UtmRepJfc8nfIRNBkZOLm8Bj2Gq1eWYtGMxm2AZQ,222820
468
+ udata/static/chunks/9.3e752966ff14e47e11f2.js.map,sha256=gPiGVH9Q8YMHMjSoMrtKuJy7VHstMnYe_lvGJhuf9nA,1205261
467
469
  udata/templates/admin.html,sha256=RfX03rUOW7NIlgMYNhFfx0pL-p2j8BtAKvEFUadaIIs,787
468
470
  udata/templates/base.html,sha256=koUdFLRXLhjBZEfjkotrgmoz_L5tJm1KXBwPPaYlmMs,570
469
471
  udata/templates/raw.html,sha256=DJZUq9CP_8ky20fialo5w_-zjfEwczLbkcrfQdlqb9E,560
@@ -534,7 +536,7 @@ udata/tests/helpers.py,sha256=aaifyevJ1Z8CZ8htRrl8OCG5hGcaHfj0lL8iMEKds9w,6022
534
536
  udata/tests/models.py,sha256=_V0smMb1Z6p3aZv6PorzNN-HiNt_B46Ox1fqXrTJEqk,238
535
537
  udata/tests/plugin.py,sha256=hI9Z5SIxUT8UhqZMLcNPzBqdM8-nUgtCW6Pbw2bnNsQ,11045
536
538
  udata/tests/test_activity.py,sha256=4ZHRG9GYv5I2gtMYQAnhgONP9YBqwMdKKq9T2vua6-I,2674
537
- udata/tests/test_discussions.py,sha256=gkzMeUpcW-PR2nPpnGRXfw0-6D4qt-yWsub-slROT-o,31106
539
+ udata/tests/test_discussions.py,sha256=zPvKOdcTNGXrvHFp9zqjhKE2fqgUkhb_1F98egXYCL0,31036
538
540
  udata/tests/test_i18n.py,sha256=BU9E7OoIkJw5tv5JYGLjDGBDsti2HuQ_3OWDKnBxnaM,3191
539
541
  udata/tests/test_linkchecker.py,sha256=KxV1-PuuuqogkHf3jP6JhRsc2QG2dFmFB-vSHOiHkuU,10374
540
542
  udata/tests/test_mail.py,sha256=LK_fOBbFoqbwdaIEXO9XyGPzxY9nrT9FjyD_dlglUdQ,1643
@@ -646,9 +648,9 @@ udata/translations/pt/LC_MESSAGES/udata.mo,sha256=sbRJJcf9afMBJx3L8qGez5XoILhNMI
646
648
  udata/translations/pt/LC_MESSAGES/udata.po,sha256=sv-oskJPJ6SStK6TWA-Wa28ssmrJweWLw4M__Sln-_Q,41902
647
649
  udata/translations/sr/LC_MESSAGES/udata.mo,sha256=YsXkmamsMG_H0I4tfmP_9JfXxyplpJHxFwIZr6jW9eU,29088
648
650
  udata/translations/sr/LC_MESSAGES/udata.po,sha256=QsVYsk6FRVtKmfxKv427qPmYcw2mx_wuE79aaWNeaYA,48743
649
- udata-7.0.4.dev27593.dist-info/LICENSE,sha256=V8j_M8nAz8PvAOZQocyRDX7keai8UJ9skgmnwqETmdY,34520
650
- udata-7.0.4.dev27593.dist-info/METADATA,sha256=B0hcXJ4uuYvD7uKqX4yzgsfx7So0PPJjoKjlhMflUIw,116671
651
- udata-7.0.4.dev27593.dist-info/WHEEL,sha256=-G_t0oGuE7UD0DrSpVZnq1hHMBV9DD2XkS5v7XpmTnk,110
652
- udata-7.0.4.dev27593.dist-info/entry_points.txt,sha256=ZqIUHhOth0MMQvMIeuhODbUCDwjR-Hvo7PaKrMwTKuQ,384
653
- udata-7.0.4.dev27593.dist-info/top_level.txt,sha256=39OCg-VWFWOq4gCKnjKNu-s3OwFlZIu_dVH8Gl6ndHw,12
654
- udata-7.0.4.dev27593.dist-info/RECORD,,
651
+ udata-7.0.4.dev27605.dist-info/LICENSE,sha256=V8j_M8nAz8PvAOZQocyRDX7keai8UJ9skgmnwqETmdY,34520
652
+ udata-7.0.4.dev27605.dist-info/METADATA,sha256=F1ik4wuZgTonD72X3IgJsae6TQ8Hlu2GclIqeoRe54U,117028
653
+ udata-7.0.4.dev27605.dist-info/WHEEL,sha256=-G_t0oGuE7UD0DrSpVZnq1hHMBV9DD2XkS5v7XpmTnk,110
654
+ udata-7.0.4.dev27605.dist-info/entry_points.txt,sha256=ZqIUHhOth0MMQvMIeuhODbUCDwjR-Hvo7PaKrMwTKuQ,384
655
+ udata-7.0.4.dev27605.dist-info/top_level.txt,sha256=39OCg-VWFWOq4gCKnjKNu-s3OwFlZIu_dVH8Gl6ndHw,12
656
+ udata-7.0.4.dev27605.dist-info/RECORD,,