@strapi/admin 4.2.0-alpha.7 → 4.2.0-alpha.8
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.
- package/admin/src/assets/images/icon_made-by-strapi.svg +5 -0
- package/admin/src/components/PrivateRoute/index.js +23 -17
- package/admin/src/hooks/index.js +0 -1
- package/admin/src/hooks/useFetchInstalledPlugins/index.js +23 -0
- package/admin/src/{pages/InstalledPluginsPage → hooks/useFetchInstalledPlugins}/utils/api.js +2 -4
- package/admin/src/hooks/useFetchMarketplacePlugins/index.js +23 -0
- package/admin/src/hooks/useFetchMarketplacePlugins/utils/api.js +17 -0
- package/admin/src/pages/AuthPage/index.js +22 -5
- package/admin/src/pages/InstalledPluginsPage/Plugins.js +6 -15
- package/admin/src/pages/MarketplacePage/components/EmptyPluginSearch/EmptyPluginGrid.js +27 -0
- package/admin/src/pages/MarketplacePage/components/EmptyPluginSearch/index.js +30 -0
- package/admin/src/pages/MarketplacePage/components/PluginCard/index.js +186 -0
- package/admin/src/pages/MarketplacePage/index.js +199 -107
- package/admin/src/pages/MarketplacePage/utils/api.js +9 -0
- package/admin/src/translations/en.json +16 -13
- package/build/4362.91a4253f.chunk.js +1 -0
- package/build/90f49a385afb000fb1d4.svg +5 -0
- package/build/{Admin-authenticatedApp.0b6b5c7e.chunk.js → Admin-authenticatedApp.187bd266.chunk.js} +1 -1
- package/build/Admin_marketplace.89a0a014.chunk.js +1 -0
- package/build/Admin_pluginsPage.97a514db.chunk.js +1 -0
- package/build/admin-users.2740c223.chunk.js +1 -0
- package/build/en-json.73a610d6.chunk.js +1 -0
- package/build/index.html +1 -1
- package/build/{main.1f025df1.js → main.c12537d5.js} +2 -2
- package/build/{main.1f025df1.js.LICENSE.txt → main.c12537d5.js.LICENSE.txt} +0 -0
- package/build/{runtime~main.53294538.js → runtime~main.e5240b25.js} +1 -1
- package/package.json +5 -5
- package/server/controllers/admin.js +12 -1
- package/.env +0 -0
- package/admin/src/hooks/useFetchPluginsFromMarketPlace/index.js +0 -49
- package/admin/src/pages/MarketplacePage/MarketplaceBanner/Wrapper.js +0 -28
- package/admin/src/pages/MarketplacePage/MarketplaceBanner/index.js +0 -37
- package/admin/src/pages/MarketplacePage/PluginCard/Wrapper.js +0 -148
- package/admin/src/pages/MarketplacePage/PluginCard/index.js +0 -185
- package/admin/src/pages/MarketplacePage/Wrapper.js +0 -5
- package/admin/src/pages/MarketplacePage/assets/marketplace-coming-soon.png +0 -0
- package/build/01a600d9e6e0dea21e33.png +0 -0
- package/build/4362.ce36d91a.chunk.js +0 -1
- package/build/Admin_marketplace.419010d8.chunk.js +0 -1
- package/build/Admin_pluginsPage.7d1bd7ce.chunk.js +0 -1
- package/build/admin-users.1fda1f27.chunk.js +0 -1
- package/build/en-json.98c7c4be.chunk.js +0 -1
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";var n={},e={};function s(a){var t=e[a];if(void 0!==t)return t.exports;var o=e[a]={id:a,loaded:!1,exports:{}};return n[a].call(o.exports,o,o.exports,s),o.loaded=!0,o.exports}s.m=n,(()=>{var n=[];s.O=(e,a,t,o)=>{if(!a){var r=1/0;for(c=0;c<n.length;c++){for(var[a,t,o]=n[c],i=!0,l=0;l<a.length;l++)(!1&o||r>=o)&&Object.keys(s.O).every((n=>s.O[n](a[l])))?a.splice(l--,1):(i=!1,o<r&&(r=o));if(i){n.splice(c--,1);var d=t();void 0!==d&&(e=d)}}return e}o=o||0;for(var c=n.length;c>0&&n[c-1][2]>o;c--)n[c]=n[c-1];n[c]=[a,t,o]}})(),s.n=n=>{var e=n&&n.__esModule?()=>n.default:()=>n;return s.d(e,{a:e}),e},(()=>{var n,e=Object.getPrototypeOf?n=>Object.getPrototypeOf(n):n=>n.__proto__;s.t=function(a,t){if(1&t&&(a=this(a)),8&t)return a;if("object"===typeof a&&a){if(4&t&&a.__esModule)return a;if(16&t&&"function"===typeof a.then)return a}var o=Object.create(null);s.r(o);var r={};n=n||[null,e({}),e([]),e(e)];for(var i=2&t&&a;"object"==typeof i&&!~n.indexOf(i);i=e(i))Object.getOwnPropertyNames(i).forEach((n=>r[n]=()=>a[n]));return r.default=()=>a,s.d(o,r),o}})(),s.d=(n,e)=>{for(var a in e)s.o(e,a)&&!s.o(n,a)&&Object.defineProperty(n,a,{enumerable:!0,get:e[a]})},s.f={},s.e=n=>Promise.all(Object.keys(s.f).reduce(((e,a)=>(s.f[a](n,e),e)),[])),s.u=n=>(({46:"content-type-builder-translation-zh-Hans-json",90:"i18n-translation-de-json",92:"api-tokens-edit-page",96:"email-translation-de-json",123:"ru-json",129:"i18n-translation-es-json",302:"sso-settings-page",320:"en-json",395:"tr-json",435:"email-translation-it-json",562:"no-json",606:"sk-json",615:"upload-translation-uk-json",695:"upload-settings",742:"content-type-builder-translation-th-json",744:"email-translation-cs-json",749:"th-json",801:"Admin-authenticatedApp",830:"he-json",931:"content-type-builder-translation-en-json",953:"codemirror-addon-lint-js",994:"content-manager",1001:"content-type-builder-translation-nl-json",1009:"upload-translation-ms-json",1011:"zh-json",1018:"email-translation-ko-json",1023:"content-type-builder-translation-it-json",1157:"email-translation-pt-BR-json",1167:"users-permissions-translation-ko-json",1312:"ja-json",1331:"upload-translation-es-json",1375:"upload-translation-pt-BR-json",1377:"ko-json",1442:"users-permissions-translation-cs-json",1495:"email-settings-page",1674:"users-permissions-translation-ru-json",1930:"users-permissions-translation-pt-json",2137:"i18n-translation-fr-json",2151:"content-type-builder-translation-id-json",2218:"codemirror-theme",2246:"content-type-builder-translation-dk-json",2282:"users-providers-settings-page",2380:"users-permissions-translation-tr-json",2411:"email-translation-tr-json",2464:"users-permissions-translation-de-json",2489:"upload-translation-ko-json",2544:"admin-edit-roles-page",2553:"zh-Hans-json",2567:"content-type-builder-translation-ko-json",2603:"email-translation-en-json",2648:"email-translation-ar-json",2657:"content-type-builder-translation-cs-json",2671:"nl-json",2742:"users-permissions-translation-zh-Hans-json",2781:"codemirror-addon-lint",3025:"ms-json",3038:"upload-translation-sk-json",3043:"email-translation-zh-Hans-json",3095:"users-permissions-translation-sk-json",3098:"users-permissions-translation-fr-json",3166:"email-translation-pt-json",3206:"email-translation-nl-json",3278:"vi-json",3304:"content-type-builder-translation-tr-json",3340:"pt-json",3530:"users-permissions-translation-vi-json",3552:"i18n-settings-page",3650:"upload",3677:"Admin_pluginsPage",3702:"users-permissions-translation-pl-json",3825:"email-translation-dk-json",3860:"codemirror-javacript",3948:"content-type-builder-translation-pl-json",3964:"content-type-builder-translation-ms-json",3973:"codemirror-css",3981:"Admin_homePage",4021:"upload-translation-de-json",4121:"webhook-list-page",4179:"users-permissions-translation-id-json",4263:"admin-edit-users",4299:"api-tokens-create-page",4302:"content-type-builder-translation-zh-json",4587:"email-translation-th-json",4693:"email-translation-fr-json",4804:"upload-translation-ru-json",4987:"upload-translation-pl-json",5053:"upload-translation-zh-json",5162:"webhook-edit-page",5178:"codemirror-addon-closebrackets",5199:"admin-users",5222:"upload-translation-it-json",5296:"i18n-translation-dk-json",5388:"email-translation-ru-json",5396:"users-permissions-translation-zh-json",5509:"codemirror-addon-mark-selection",5516:"Admin_marketplace",5751:"email-translation-es-json",5880:"upload-translation-ja-json",5894:"hu-json",5895:"Admin_settingsPage",5906:"content-type-builder-translation-pt-BR-json",6232:"upload-translation-th-json",6280:"i18n-translation-ko-json",6377:"users-permissions-translation-dk-json",6434:"upload-translation-en-json",6460:"users-permissions-translation-en-json",6745:"email-translation-uk-json",6784:"email-translation-ms-json",6817:"it-json",6831:"upload-translation-zh-Hans-json",6836:"users-permissions-translation-uk-json",6848:"email-translation-zh-json",6901:"de-json",7048:"users-permissions-translation-nl-json",7094:"users-permissions-translation-ar-json",7155:"content-type-builder-translation-de-json",7186:"content-type-builder-translation-ru-json",7327:"email-translation-vi-json",7347:"highlight.js",7403:"uk-json",7465:"upload-translation-dk-json",7519:"cs-json",7566:"fontawesome-css-all",7663:"email-translation-id-json",7723:"fontawesome-css",7784:"cropper-css",7817:"users-permissions-translation-es-json",7828:"users-permissions-translation-th-json",7833:"upload-translation-fr-json",7846:"pl-json",7898:"dk-json",7934:"content-type-builder-translation-pt-json",7958:"ar-json",7997:"content-type-builder-translation-sk-json",8e3:"fontawesome-js",8006:"fr-json",8056:"api-tokens-list-page",8175:"i18n-translation-en-json",8178:"email-translation-ja-json",8342:"content-type-builder-translation-es-json",8367:"es-json",8418:"users-email-settings-page",8467:"users-permissions-translation-sv-json",8481:"email-translation-pl-json",8573:"content-type-builder-translation-uk-json",8736:"users-permissions-translation-pt-BR-json",8853:"users-roles-settings-page",8880:"content-type-builder",8897:"id-json",8907:"content-type-builder-translation-ja-json",8965:"content-type-builder-translation-fr-json",9220:"users-permissions-translation-ms-json",9303:"sv-json",9412:"email-translation-sk-json",9460:"users-advanced-settings-page",9497:"Admin_profilePage",9502:"users-permissions-translation-ja-json",9511:"content-type-builder-translation-ar-json",9647:"pt-BR-json",9762:"i18n-translation-zh-Hans-json",9797:"upload-translation-he-json",9905:"users-permissions-translation-it-json"}[n]||n)+"."+{46:"283c640e",90:"c5c9054f",92:"c7299a77",96:"559a7d5f",123:"78c56e1c",129:"7049afa2",302:"121dd0a6",320:"98c7c4be",395:"0add11cd",435:"3de61cb6",497:"3fcf6196",562:"9af40e9d",606:"c0bf144c",615:"a6c38449",695:"4401f36d",742:"5f690524",744:"dfd1f3f2",749:"e2b4a0fb",801:"0b6b5c7e",830:"1742494e",849:"17f011e8",931:"8034dab6",953:"a6eeef9c",994:"f1c46a88",1001:"8d59e86b",1009:"081effd5",1011:"c3c2b225",1018:"52bbd7b4",1023:"a1afd7a9",1094:"e1db3a1a",1157:"6c04b3ef",1167:"f1ca6cc4",1312:"e13f04e8",1331:"81b13eac",1375:"65936d7b",1377:"2200c9c9",1442:"7881d3ff",1454:"f065d92a",1495:"40ee2bda",1674:"5709c5a0",1856:"a30bd09b",1930:"3322464f",2137:"c6367bc9",2151:"2fbf4f8c",2218:"b5559efc",2246:"235ff56e",2282:"368893ed",2380:"30f3ca90",2411:"ae04a9f2",2464:"8d53c619",2481:"4eae9408",2489:"d7345fe1",2544:"49b6f01d",2553:"55f6475b",2567:"d2080111",2603:"fa0dc92b",2648:"95d90eb4",2657:"89f7272e",2671:"30ce02cb",2742:"85480dab",2781:"91580cda",2912:"c5f76e65",3025:"3a062984",3038:"f15c7fd6",3043:"0df4ca59",3095:"fe7cc044",3098:"a2172545",3166:"0239be04",3206:"12d28adb",3278:"55a11ac0",3304:"696283a5",3340:"3aaf9e05",3530:"605d88bc",3552:"c4018651",3650:"5a2dded7",3677:"7d1bd7ce",3702:"107638b5",3825:"f8a595bf",3860:"8c7c015d",3948:"01dc068c",3964:"048122eb",3973:"48b438c9",3981:"fd1fc572",4021:"1308dce5",4121:"c21b5a9a",4179:"8f17982a",4263:"381e4a0d",4299:"db17bb39",4302:"77aa2275",4362:"ce36d91a",4587:"25ad73e7",4693:"49c3c888",4715:"8a2db02a",4800:"f4a1384a",4804:"2d3b6f69",4982:"601f6196",4987:"2dfe78bb",5053:"06052336",5162:"d170eda1",5178:"0cfe64d0",5199:"1fda1f27",5222:"7d4bdc5a",5296:"ecf02d28",5388:"f3b4fecc",5396:"99932731",5509:"4dca121f",5516:"419010d8",5751:"eb303dea",5880:"97fcacd8",5894:"e667d285",5895:"a8c7ded5",5906:"d311d056",6232:"6d3c2370",6280:"aecb7e01",6377:"89d41c4b",6404:"3c2d0a81",6434:"c3373c8d",6460:"21b0fd2f",6745:"03b27b08",6784:"e39256df",6817:"a2880b81",6831:"f6b26c45",6836:"634f2569",6848:"82978eb0",6901:"6e14f607",6925:"bd694b04",7048:"4e1231dd",7094:"bdddd0d7",7155:"0205697c",7186:"1285874d",7327:"3e1dd5b3",7347:"6321cb45",7403:"eb78e77e",7465:"0d4e855f",7519:"8df09876",7566:"3b89f909",7663:"e3c2101d",7723:"36cff9ae",7784:"ace19575",7817:"a4f81eaa",7828:"bb544ee3",7833:"1bec79ec",7841:"490dbbf1",7846:"fd373053",7898:"be388470",7934:"4893266f",7958:"6a2565af",7997:"0064156b",8e3:"2639263c",8006:"a9ce0700",8042:"1d66811a",8056:"26a05a21",8175:"4d823f62",8178:"66337e44",8342:"13b2e2aa",8367:"61553168",8418:"5abb9575",8467:"e7e1684b",8469:"8d819a3c",8481:"9585a84e",8573:"87496bf9",8736:"8dafc053",8853:"a2f6277a",8880:"cda4ba3c",8897:"d87ebb20",8907:"1459fb88",8965:"bee621f7",9220:"2268324c",9235:"ced8aebf",9260:"d9bb874f",9303:"aad187b9",9412:"76dbaaa6",9460:"8905d8d8",9497:"d7192d06",9502:"5915d9ef",9511:"f1fedc12",9647:"30e2d716",9762:"258b2e1a",9797:"1d28982f",9853:"6ff595fa",9905:"87952a24",9988:"fe838ba6"}[n]+".chunk.js"),s.miniCssF=n=>{},s.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(n){if("object"===typeof window)return window}}(),s.o=(n,e)=>Object.prototype.hasOwnProperty.call(n,e),(()=>{var n={},e="@strapi/admin:";s.l=(a,t,o,r)=>{if(n[a])n[a].push(t);else{var i,l;if(void 0!==o)for(var d=document.getElementsByTagName("script"),c=0;c<d.length;c++){var b=d[c];if(b.getAttribute("src")==a||b.getAttribute("data-webpack")==e+o){i=b;break}}i||(l=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,s.nc&&i.setAttribute("nonce",s.nc),i.setAttribute("data-webpack",e+o),i.src=a),n[a]=[t];var p=(e,s)=>{i.onerror=i.onload=null,clearTimeout(u);var t=n[a];if(delete n[a],i.parentNode&&i.parentNode.removeChild(i),t&&t.forEach((n=>n(s))),e)return e(s)},u=setTimeout(p.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=p.bind(null,i.onerror),i.onload=p.bind(null,i.onload),l&&document.head.appendChild(i)}}})(),s.r=n=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},s.nmd=n=>(n.paths=[],n.children||(n.children=[]),n),s.p="/admin/",(()=>{s.b=document.baseURI||self.location.href;var n={1303:0};s.f.j=(e,a)=>{var t=s.o(n,e)?n[e]:void 0;if(0!==t)if(t)a.push(t[2]);else if(1303!=e){var o=new Promise(((s,a)=>t=n[e]=[s,a]));a.push(t[2]=o);var r=s.p+s.u(e),i=new Error;s.l(r,(a=>{if(s.o(n,e)&&(0!==(t=n[e])&&(n[e]=void 0),t)){var o=a&&("load"===a.type?"missing":a.type),r=a&&a.target&&a.target.src;i.message="Loading chunk "+e+" failed.\n("+o+": "+r+")",i.name="ChunkLoadError",i.type=o,i.request=r,t[1](i)}}),"chunk-"+e,e)}else n[e]=0},s.O.j=e=>0===n[e];var e=(e,a)=>{var t,o,[r,i,l]=a,d=0;if(r.some((e=>0!==n[e]))){for(t in i)s.o(i,t)&&(s.m[t]=i[t]);if(l)var c=l(s)}for(e&&e(a);d<r.length;d++)o=r[d],s.o(n,o)&&n[o]&&n[o][0](),n[r[d]]=0;return s.O(c)},a=self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[];a.forEach(e.bind(null,0)),a.push=e.bind(null,a.push.bind(a))})()})();
|
|
1
|
+
(()=>{"use strict";var n={},e={};function s(a){var t=e[a];if(void 0!==t)return t.exports;var o=e[a]={id:a,loaded:!1,exports:{}};return n[a].call(o.exports,o,o.exports,s),o.loaded=!0,o.exports}s.m=n,(()=>{var n=[];s.O=(e,a,t,o)=>{if(!a){var r=1/0;for(c=0;c<n.length;c++){for(var[a,t,o]=n[c],i=!0,l=0;l<a.length;l++)(!1&o||r>=o)&&Object.keys(s.O).every((n=>s.O[n](a[l])))?a.splice(l--,1):(i=!1,o<r&&(r=o));if(i){n.splice(c--,1);var d=t();void 0!==d&&(e=d)}}return e}o=o||0;for(var c=n.length;c>0&&n[c-1][2]>o;c--)n[c]=n[c-1];n[c]=[a,t,o]}})(),s.n=n=>{var e=n&&n.__esModule?()=>n.default:()=>n;return s.d(e,{a:e}),e},(()=>{var n,e=Object.getPrototypeOf?n=>Object.getPrototypeOf(n):n=>n.__proto__;s.t=function(a,t){if(1&t&&(a=this(a)),8&t)return a;if("object"===typeof a&&a){if(4&t&&a.__esModule)return a;if(16&t&&"function"===typeof a.then)return a}var o=Object.create(null);s.r(o);var r={};n=n||[null,e({}),e([]),e(e)];for(var i=2&t&&a;"object"==typeof i&&!~n.indexOf(i);i=e(i))Object.getOwnPropertyNames(i).forEach((n=>r[n]=()=>a[n]));return r.default=()=>a,s.d(o,r),o}})(),s.d=(n,e)=>{for(var a in e)s.o(e,a)&&!s.o(n,a)&&Object.defineProperty(n,a,{enumerable:!0,get:e[a]})},s.f={},s.e=n=>Promise.all(Object.keys(s.f).reduce(((e,a)=>(s.f[a](n,e),e)),[])),s.u=n=>(({46:"content-type-builder-translation-zh-Hans-json",90:"i18n-translation-de-json",92:"api-tokens-edit-page",96:"email-translation-de-json",123:"ru-json",129:"i18n-translation-es-json",302:"sso-settings-page",320:"en-json",395:"tr-json",435:"email-translation-it-json",562:"no-json",606:"sk-json",615:"upload-translation-uk-json",695:"upload-settings",742:"content-type-builder-translation-th-json",744:"email-translation-cs-json",749:"th-json",801:"Admin-authenticatedApp",830:"he-json",931:"content-type-builder-translation-en-json",953:"codemirror-addon-lint-js",994:"content-manager",1001:"content-type-builder-translation-nl-json",1009:"upload-translation-ms-json",1011:"zh-json",1018:"email-translation-ko-json",1023:"content-type-builder-translation-it-json",1157:"email-translation-pt-BR-json",1167:"users-permissions-translation-ko-json",1312:"ja-json",1331:"upload-translation-es-json",1375:"upload-translation-pt-BR-json",1377:"ko-json",1442:"users-permissions-translation-cs-json",1495:"email-settings-page",1674:"users-permissions-translation-ru-json",1930:"users-permissions-translation-pt-json",2137:"i18n-translation-fr-json",2151:"content-type-builder-translation-id-json",2218:"codemirror-theme",2246:"content-type-builder-translation-dk-json",2282:"users-providers-settings-page",2380:"users-permissions-translation-tr-json",2411:"email-translation-tr-json",2464:"users-permissions-translation-de-json",2489:"upload-translation-ko-json",2544:"admin-edit-roles-page",2553:"zh-Hans-json",2567:"content-type-builder-translation-ko-json",2603:"email-translation-en-json",2648:"email-translation-ar-json",2657:"content-type-builder-translation-cs-json",2671:"nl-json",2742:"users-permissions-translation-zh-Hans-json",2781:"codemirror-addon-lint",3025:"ms-json",3038:"upload-translation-sk-json",3043:"email-translation-zh-Hans-json",3095:"users-permissions-translation-sk-json",3098:"users-permissions-translation-fr-json",3166:"email-translation-pt-json",3206:"email-translation-nl-json",3278:"vi-json",3304:"content-type-builder-translation-tr-json",3340:"pt-json",3530:"users-permissions-translation-vi-json",3552:"i18n-settings-page",3650:"upload",3677:"Admin_pluginsPage",3702:"users-permissions-translation-pl-json",3825:"email-translation-dk-json",3860:"codemirror-javacript",3948:"content-type-builder-translation-pl-json",3964:"content-type-builder-translation-ms-json",3973:"codemirror-css",3981:"Admin_homePage",4021:"upload-translation-de-json",4121:"webhook-list-page",4179:"users-permissions-translation-id-json",4263:"admin-edit-users",4299:"api-tokens-create-page",4302:"content-type-builder-translation-zh-json",4587:"email-translation-th-json",4693:"email-translation-fr-json",4804:"upload-translation-ru-json",4987:"upload-translation-pl-json",5053:"upload-translation-zh-json",5162:"webhook-edit-page",5178:"codemirror-addon-closebrackets",5199:"admin-users",5222:"upload-translation-it-json",5296:"i18n-translation-dk-json",5388:"email-translation-ru-json",5396:"users-permissions-translation-zh-json",5509:"codemirror-addon-mark-selection",5516:"Admin_marketplace",5751:"email-translation-es-json",5880:"upload-translation-ja-json",5894:"hu-json",5895:"Admin_settingsPage",5906:"content-type-builder-translation-pt-BR-json",6232:"upload-translation-th-json",6280:"i18n-translation-ko-json",6377:"users-permissions-translation-dk-json",6434:"upload-translation-en-json",6460:"users-permissions-translation-en-json",6745:"email-translation-uk-json",6784:"email-translation-ms-json",6817:"it-json",6831:"upload-translation-zh-Hans-json",6836:"users-permissions-translation-uk-json",6848:"email-translation-zh-json",6901:"de-json",7048:"users-permissions-translation-nl-json",7094:"users-permissions-translation-ar-json",7155:"content-type-builder-translation-de-json",7186:"content-type-builder-translation-ru-json",7327:"email-translation-vi-json",7347:"highlight.js",7403:"uk-json",7465:"upload-translation-dk-json",7519:"cs-json",7566:"fontawesome-css-all",7663:"email-translation-id-json",7723:"fontawesome-css",7784:"cropper-css",7817:"users-permissions-translation-es-json",7828:"users-permissions-translation-th-json",7833:"upload-translation-fr-json",7846:"pl-json",7898:"dk-json",7934:"content-type-builder-translation-pt-json",7958:"ar-json",7997:"content-type-builder-translation-sk-json",8e3:"fontawesome-js",8006:"fr-json",8056:"api-tokens-list-page",8175:"i18n-translation-en-json",8178:"email-translation-ja-json",8342:"content-type-builder-translation-es-json",8367:"es-json",8418:"users-email-settings-page",8467:"users-permissions-translation-sv-json",8481:"email-translation-pl-json",8573:"content-type-builder-translation-uk-json",8736:"users-permissions-translation-pt-BR-json",8853:"users-roles-settings-page",8880:"content-type-builder",8897:"id-json",8907:"content-type-builder-translation-ja-json",8965:"content-type-builder-translation-fr-json",9220:"users-permissions-translation-ms-json",9303:"sv-json",9412:"email-translation-sk-json",9460:"users-advanced-settings-page",9497:"Admin_profilePage",9502:"users-permissions-translation-ja-json",9511:"content-type-builder-translation-ar-json",9647:"pt-BR-json",9762:"i18n-translation-zh-Hans-json",9797:"upload-translation-he-json",9905:"users-permissions-translation-it-json"}[n]||n)+"."+{46:"283c640e",90:"c5c9054f",92:"c7299a77",96:"559a7d5f",123:"78c56e1c",129:"7049afa2",302:"121dd0a6",320:"73a610d6",395:"0add11cd",435:"3de61cb6",497:"3fcf6196",562:"9af40e9d",606:"c0bf144c",615:"a6c38449",695:"4401f36d",742:"5f690524",744:"dfd1f3f2",749:"e2b4a0fb",801:"187bd266",830:"1742494e",849:"17f011e8",931:"8034dab6",953:"a6eeef9c",994:"f1c46a88",1001:"8d59e86b",1009:"081effd5",1011:"c3c2b225",1018:"52bbd7b4",1023:"a1afd7a9",1094:"e1db3a1a",1157:"6c04b3ef",1167:"f1ca6cc4",1312:"e13f04e8",1331:"81b13eac",1375:"65936d7b",1377:"2200c9c9",1442:"7881d3ff",1454:"f065d92a",1495:"40ee2bda",1674:"5709c5a0",1856:"a30bd09b",1930:"3322464f",2137:"c6367bc9",2151:"2fbf4f8c",2218:"b5559efc",2246:"235ff56e",2282:"368893ed",2380:"30f3ca90",2411:"ae04a9f2",2464:"8d53c619",2481:"4eae9408",2489:"d7345fe1",2544:"49b6f01d",2553:"55f6475b",2567:"d2080111",2603:"fa0dc92b",2648:"95d90eb4",2657:"89f7272e",2671:"30ce02cb",2742:"85480dab",2781:"91580cda",2912:"c5f76e65",3025:"3a062984",3038:"f15c7fd6",3043:"0df4ca59",3095:"fe7cc044",3098:"a2172545",3166:"0239be04",3206:"12d28adb",3278:"55a11ac0",3304:"696283a5",3340:"3aaf9e05",3530:"605d88bc",3552:"c4018651",3650:"5a2dded7",3677:"97a514db",3702:"107638b5",3825:"f8a595bf",3860:"8c7c015d",3948:"01dc068c",3964:"048122eb",3973:"48b438c9",3981:"fd1fc572",4021:"1308dce5",4121:"c21b5a9a",4179:"8f17982a",4263:"381e4a0d",4299:"db17bb39",4302:"77aa2275",4362:"91a4253f",4587:"25ad73e7",4693:"49c3c888",4715:"8a2db02a",4800:"f4a1384a",4804:"2d3b6f69",4982:"601f6196",4987:"2dfe78bb",5053:"06052336",5162:"d170eda1",5178:"0cfe64d0",5199:"2740c223",5222:"7d4bdc5a",5296:"ecf02d28",5388:"f3b4fecc",5396:"99932731",5509:"4dca121f",5516:"89a0a014",5751:"eb303dea",5880:"97fcacd8",5894:"e667d285",5895:"a8c7ded5",5906:"d311d056",6232:"6d3c2370",6280:"aecb7e01",6377:"89d41c4b",6404:"3c2d0a81",6434:"c3373c8d",6460:"21b0fd2f",6745:"03b27b08",6784:"e39256df",6817:"a2880b81",6831:"f6b26c45",6836:"634f2569",6848:"82978eb0",6901:"6e14f607",6925:"bd694b04",7048:"4e1231dd",7094:"bdddd0d7",7155:"0205697c",7186:"1285874d",7327:"3e1dd5b3",7347:"6321cb45",7403:"eb78e77e",7465:"0d4e855f",7519:"8df09876",7566:"3b89f909",7663:"e3c2101d",7723:"36cff9ae",7784:"ace19575",7817:"a4f81eaa",7828:"bb544ee3",7833:"1bec79ec",7841:"490dbbf1",7846:"fd373053",7898:"be388470",7934:"4893266f",7958:"6a2565af",7997:"0064156b",8e3:"2639263c",8006:"a9ce0700",8042:"1d66811a",8056:"26a05a21",8175:"4d823f62",8178:"66337e44",8342:"13b2e2aa",8367:"61553168",8418:"5abb9575",8467:"e7e1684b",8469:"8d819a3c",8481:"9585a84e",8573:"87496bf9",8736:"8dafc053",8853:"a2f6277a",8880:"cda4ba3c",8897:"d87ebb20",8907:"1459fb88",8965:"bee621f7",9220:"2268324c",9235:"ced8aebf",9260:"d9bb874f",9303:"aad187b9",9412:"76dbaaa6",9460:"8905d8d8",9497:"d7192d06",9502:"5915d9ef",9511:"f1fedc12",9647:"30e2d716",9762:"258b2e1a",9797:"1d28982f",9853:"6ff595fa",9905:"87952a24",9988:"fe838ba6"}[n]+".chunk.js"),s.miniCssF=n=>{},s.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(n){if("object"===typeof window)return window}}(),s.o=(n,e)=>Object.prototype.hasOwnProperty.call(n,e),(()=>{var n={},e="@strapi/admin:";s.l=(a,t,o,r)=>{if(n[a])n[a].push(t);else{var i,l;if(void 0!==o)for(var d=document.getElementsByTagName("script"),c=0;c<d.length;c++){var f=d[c];if(f.getAttribute("src")==a||f.getAttribute("data-webpack")==e+o){i=f;break}}i||(l=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,s.nc&&i.setAttribute("nonce",s.nc),i.setAttribute("data-webpack",e+o),i.src=a),n[a]=[t];var p=(e,s)=>{i.onerror=i.onload=null,clearTimeout(u);var t=n[a];if(delete n[a],i.parentNode&&i.parentNode.removeChild(i),t&&t.forEach((n=>n(s))),e)return e(s)},u=setTimeout(p.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=p.bind(null,i.onerror),i.onload=p.bind(null,i.onload),l&&document.head.appendChild(i)}}})(),s.r=n=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},s.nmd=n=>(n.paths=[],n.children||(n.children=[]),n),s.p="/admin/",(()=>{s.b=document.baseURI||self.location.href;var n={1303:0};s.f.j=(e,a)=>{var t=s.o(n,e)?n[e]:void 0;if(0!==t)if(t)a.push(t[2]);else if(1303!=e){var o=new Promise(((s,a)=>t=n[e]=[s,a]));a.push(t[2]=o);var r=s.p+s.u(e),i=new Error;s.l(r,(a=>{if(s.o(n,e)&&(0!==(t=n[e])&&(n[e]=void 0),t)){var o=a&&("load"===a.type?"missing":a.type),r=a&&a.target&&a.target.src;i.message="Loading chunk "+e+" failed.\n("+o+": "+r+")",i.name="ChunkLoadError",i.type=o,i.request=r,t[1](i)}}),"chunk-"+e,e)}else n[e]=0},s.O.j=e=>0===n[e];var e=(e,a)=>{var t,o,[r,i,l]=a,d=0;if(r.some((e=>0!==n[e]))){for(t in i)s.o(i,t)&&(s.m[t]=i[t]);if(l)var c=l(s)}for(e&&e(a);d<r.length;d++)o=r[d],s.o(n,o)&&n[o]&&n[o][0](),n[r[d]]=0;return s.O(c)},a=self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[];a.forEach(e.bind(null,0)),a.push=e.bind(null,a.push.bind(a))})()})();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@strapi/admin",
|
|
3
|
-
"version": "4.2.0-alpha.
|
|
3
|
+
"version": "4.2.0-alpha.8",
|
|
4
4
|
"description": "Strapi Admin",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -52,11 +52,11 @@
|
|
|
52
52
|
"@fortawesome/free-brands-svg-icons": "^5.15.3",
|
|
53
53
|
"@fortawesome/free-solid-svg-icons": "^5.15.3",
|
|
54
54
|
"@fortawesome/react-fontawesome": "^0.1.14",
|
|
55
|
-
"@strapi/babel-plugin-switch-ee-ce": "4.2.0-alpha.
|
|
55
|
+
"@strapi/babel-plugin-switch-ee-ce": "4.2.0-alpha.8",
|
|
56
56
|
"@strapi/design-system": "0.0.1-alpha.79",
|
|
57
|
-
"@strapi/helper-plugin": "4.2.0-alpha.
|
|
57
|
+
"@strapi/helper-plugin": "4.2.0-alpha.8",
|
|
58
58
|
"@strapi/icons": "0.0.1-alpha.79",
|
|
59
|
-
"@strapi/utils": "4.2.0-alpha.
|
|
59
|
+
"@strapi/utils": "4.2.0-alpha.8",
|
|
60
60
|
"axios": "0.24.0",
|
|
61
61
|
"babel-loader": "8.2.3",
|
|
62
62
|
"babel-plugin-styled-components": "2.0.2",
|
|
@@ -146,5 +146,5 @@
|
|
|
146
146
|
"node": ">=12.22.0 <=16.x.x",
|
|
147
147
|
"npm": ">=6.0.0"
|
|
148
148
|
},
|
|
149
|
-
"gitHead": "
|
|
149
|
+
"gitHead": "723b6014058169acd8146cffa364f8ea665df636"
|
|
150
150
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
const path = require('path');
|
|
3
4
|
const execa = require('execa');
|
|
4
5
|
const _ = require('lodash');
|
|
6
|
+
const { exists } = require('fs-extra');
|
|
5
7
|
const { ValidationError } = require('@strapi/utils').errors;
|
|
6
8
|
// eslint-disable-next-line node/no-extraneous-require
|
|
7
9
|
const ee = require('@strapi/strapi/lib/utils/ee');
|
|
@@ -47,9 +49,17 @@ module.exports = {
|
|
|
47
49
|
const strapiVersion = strapi.config.get('info.strapi', null);
|
|
48
50
|
const nodeVersion = process.version;
|
|
49
51
|
const communityEdition = !strapi.EE;
|
|
52
|
+
const useYarn = await exists(path.join(process.cwd(), 'yarn.lock'));
|
|
50
53
|
|
|
51
54
|
return {
|
|
52
|
-
data: {
|
|
55
|
+
data: {
|
|
56
|
+
currentEnvironment,
|
|
57
|
+
autoReload,
|
|
58
|
+
strapiVersion,
|
|
59
|
+
nodeVersion,
|
|
60
|
+
communityEdition,
|
|
61
|
+
useYarn,
|
|
62
|
+
},
|
|
53
63
|
};
|
|
54
64
|
},
|
|
55
65
|
|
|
@@ -82,6 +92,7 @@ module.exports = {
|
|
|
82
92
|
name: plugin.info.name || key,
|
|
83
93
|
displayName: plugin.info.displayName || plugin.info.name || key,
|
|
84
94
|
description: plugin.info.description || '',
|
|
95
|
+
packageName: plugin.info.packageName,
|
|
85
96
|
}));
|
|
86
97
|
|
|
87
98
|
ctx.send({ plugins });
|
package/.env
DELETED
|
File without changes
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { useEffect, useState } from 'react';
|
|
2
|
-
import axios from 'axios';
|
|
3
|
-
import { useIntl } from 'react-intl';
|
|
4
|
-
|
|
5
|
-
const useFetchPluginsFromMarketPlace = () => {
|
|
6
|
-
const { locale: currentLocale } = useIntl();
|
|
7
|
-
const [state, setState] = useState({
|
|
8
|
-
error: false,
|
|
9
|
-
isLoading: true,
|
|
10
|
-
data: null,
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
useEffect(() => {
|
|
14
|
-
const CancelToken = axios.CancelToken;
|
|
15
|
-
const source = CancelToken.source();
|
|
16
|
-
|
|
17
|
-
const getData = async () => {
|
|
18
|
-
try {
|
|
19
|
-
const { data } = await axios.get('https://marketplace.strapi.io/plugins', {
|
|
20
|
-
cancelToken: source.token,
|
|
21
|
-
params: { lang: currentLocale },
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
setState({
|
|
25
|
-
isLoading: false,
|
|
26
|
-
data,
|
|
27
|
-
error: false,
|
|
28
|
-
});
|
|
29
|
-
} catch (err) {
|
|
30
|
-
if (axios.isCancel(err)) {
|
|
31
|
-
// Silent
|
|
32
|
-
} else {
|
|
33
|
-
// handle error
|
|
34
|
-
setState(prev => ({ ...prev, isLoading: false, error: true }));
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
getData();
|
|
40
|
-
|
|
41
|
-
return () => {
|
|
42
|
-
source.cancel();
|
|
43
|
-
};
|
|
44
|
-
}, [currentLocale]);
|
|
45
|
-
|
|
46
|
-
return state;
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
export default useFetchPluginsFromMarketPlace;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import styled from 'styled-components';
|
|
2
|
-
|
|
3
|
-
// TODO : To migrate with @strapi/design-system
|
|
4
|
-
const Wrapper = styled.div`
|
|
5
|
-
display: flex;
|
|
6
|
-
align-items: center;
|
|
7
|
-
margin-top: 2rem;
|
|
8
|
-
border-radius: 4px;
|
|
9
|
-
border-left: 4px solid ${({ theme }) => theme.main.colors.mediumBlue};
|
|
10
|
-
box-shadow: 0 2px 4px ${({ theme }) => theme.main.colors.darkGrey};
|
|
11
|
-
padding: 8px 16px;
|
|
12
|
-
|
|
13
|
-
.bannerImage {
|
|
14
|
-
width: 48px;
|
|
15
|
-
height: 48px;
|
|
16
|
-
margin-right: 16px;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
.bannerLink {
|
|
20
|
-
color: ${({ theme }) => theme.main.colors.mediumBlue};
|
|
21
|
-
font-weight: ${({ theme }) => theme.main.fontWeights.bold};
|
|
22
|
-
svg {
|
|
23
|
-
margin-left: 4px;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
`;
|
|
27
|
-
|
|
28
|
-
export default Wrapper;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { FormattedMessage, useIntl } from 'react-intl';
|
|
3
|
-
import { useTracking } from '@strapi/helper-plugin';
|
|
4
|
-
import Wrapper from './Wrapper';
|
|
5
|
-
import LogoStrapi from '../../../assets/images/banner_strapi-rocket.png';
|
|
6
|
-
|
|
7
|
-
const MarketplaceBanner = () => {
|
|
8
|
-
const { formatMessage } = useIntl();
|
|
9
|
-
const { trackUsage } = useTracking();
|
|
10
|
-
|
|
11
|
-
return (
|
|
12
|
-
<Wrapper>
|
|
13
|
-
<img
|
|
14
|
-
className="bannerImage"
|
|
15
|
-
src={LogoStrapi}
|
|
16
|
-
alt={formatMessage({ id: 'app.components.MarketplaceBanner.image.alt' })}
|
|
17
|
-
/>
|
|
18
|
-
<div>
|
|
19
|
-
<div>
|
|
20
|
-
<FormattedMessage id="app.components.MarketplaceBanner" />
|
|
21
|
-
</div>
|
|
22
|
-
<a
|
|
23
|
-
href="https://github.com/strapi/awesome-strapi"
|
|
24
|
-
target="_blank"
|
|
25
|
-
rel="noopener noreferrer"
|
|
26
|
-
className="bannerLink"
|
|
27
|
-
onClick={() => trackUsage('didGoToStrapiAwesome')}
|
|
28
|
-
>
|
|
29
|
-
<FormattedMessage id="app.components.MarketplaceBanner.link" />
|
|
30
|
-
<i className="fa fa-external-link-alt" />
|
|
31
|
-
</a>
|
|
32
|
-
</div>
|
|
33
|
-
</Wrapper>
|
|
34
|
-
);
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
export default MarketplaceBanner;
|
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
import styled from 'styled-components';
|
|
2
|
-
|
|
3
|
-
const Wrapper = styled.div`
|
|
4
|
-
.wrapper {
|
|
5
|
-
position: relative;
|
|
6
|
-
min-height: 216px;
|
|
7
|
-
margin-bottom: 3.6rem;
|
|
8
|
-
padding: 1.2rem 1.5rem;
|
|
9
|
-
padding-bottom: 0;
|
|
10
|
-
background-color: #fff;
|
|
11
|
-
box-shadow: 0 2px 4px #e3e9f3;
|
|
12
|
-
-webkit-font-smoothing: antialiased;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
.cardTitle {
|
|
16
|
-
display: flex;
|
|
17
|
-
font-size: 13px;
|
|
18
|
-
font-weight: 600;
|
|
19
|
-
text-transform: uppercase;
|
|
20
|
-
letter-spacing: 0.5px;
|
|
21
|
-
|
|
22
|
-
> div:first-child {
|
|
23
|
-
margin-right: 14px;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
> div:last-child {
|
|
27
|
-
height: 36px;
|
|
28
|
-
line-height: 36px;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
i,
|
|
32
|
-
svg {
|
|
33
|
-
margin-left: 7px;
|
|
34
|
-
color: #b3b5b9;
|
|
35
|
-
font-size: 1rem;
|
|
36
|
-
vertical-align: baseline;
|
|
37
|
-
cursor: pointer;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
.cardDescription {
|
|
42
|
-
height: 54px;
|
|
43
|
-
margin-top: 27px;
|
|
44
|
-
margin-bottom: 9px;
|
|
45
|
-
font-size: 13px;
|
|
46
|
-
font-weight: 400;
|
|
47
|
-
|
|
48
|
-
> span:last-child {
|
|
49
|
-
color: #1c5de7;
|
|
50
|
-
}
|
|
51
|
-
-webkit-font-smoothing: antialiased;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
.cardFooter {
|
|
55
|
-
position: absolute;
|
|
56
|
-
bottom: 0;
|
|
57
|
-
left: 0;
|
|
58
|
-
display: flex;
|
|
59
|
-
width: 100%;
|
|
60
|
-
height: 45px;
|
|
61
|
-
padding: 0.9rem 1.5rem 1rem;
|
|
62
|
-
background-color: #fafafb;
|
|
63
|
-
justify-content: space-between;
|
|
64
|
-
flex-direction: row-reverse;
|
|
65
|
-
cursor: initial;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
.compatible {
|
|
69
|
-
margin-top: 3px;
|
|
70
|
-
color: #5a9e06;
|
|
71
|
-
font-size: 1.3rem;
|
|
72
|
-
font-style: italic;
|
|
73
|
-
|
|
74
|
-
> i,
|
|
75
|
-
> svg {
|
|
76
|
-
margin-right: 7px;
|
|
77
|
-
font-size: 12px;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
.settings {
|
|
82
|
-
margin-top: 3px;
|
|
83
|
-
color: #323740;
|
|
84
|
-
font-size: 1.3rem;
|
|
85
|
-
font-weight: 500;
|
|
86
|
-
cursor: pointer;
|
|
87
|
-
|
|
88
|
-
> i,
|
|
89
|
-
> svg {
|
|
90
|
-
margin-right: 7px;
|
|
91
|
-
font-size: 11px;
|
|
92
|
-
vertical-align: inherit;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
.button {
|
|
97
|
-
height: 26px;
|
|
98
|
-
min-width: 89px !important;
|
|
99
|
-
padding: 0 15px;
|
|
100
|
-
margin: 0;
|
|
101
|
-
border-radius: 2px !important;
|
|
102
|
-
line-height: 23px;
|
|
103
|
-
font-size: 13px;
|
|
104
|
-
cursor: pointer;
|
|
105
|
-
span {
|
|
106
|
-
display: inline-block;
|
|
107
|
-
width: 100%;
|
|
108
|
-
height: 100%;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
.frame {
|
|
113
|
-
width: 70px;
|
|
114
|
-
height: 36px;
|
|
115
|
-
margin: auto 0;
|
|
116
|
-
text-align: center;
|
|
117
|
-
border: 1px solid #f3f3f7;
|
|
118
|
-
border-radius: 3px;
|
|
119
|
-
white-space: nowrap;
|
|
120
|
-
> img {
|
|
121
|
-
max-height: 36px;
|
|
122
|
-
vertical-align: middle;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
.helper {
|
|
127
|
-
display: inline-block;
|
|
128
|
-
height: 100%;
|
|
129
|
-
vertical-align: middle;
|
|
130
|
-
}
|
|
131
|
-
.primary {
|
|
132
|
-
background: linear-gradient(315deg, #0097f6 0%, #005eea 100%);
|
|
133
|
-
color: white;
|
|
134
|
-
font-weight: 500;
|
|
135
|
-
-webkit-font-smoothing: antialiased;
|
|
136
|
-
|
|
137
|
-
&:active {
|
|
138
|
-
box-shadow: inset 1px 1px 3px rgba(0, 0, 0, 0.15);
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
.secondary {
|
|
143
|
-
border: 1px solid #dfe0e1;
|
|
144
|
-
font-weight: 600;
|
|
145
|
-
}
|
|
146
|
-
`;
|
|
147
|
-
|
|
148
|
-
export default Wrapper;
|
|
@@ -1,185 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
*
|
|
3
|
-
* PluginCard
|
|
4
|
-
*
|
|
5
|
-
*/
|
|
6
|
-
/* eslint-disable */
|
|
7
|
-
import React from 'react';
|
|
8
|
-
import PropTypes from 'prop-types';
|
|
9
|
-
import { FormattedMessage } from 'react-intl';
|
|
10
|
-
import { Button, PopUpWarning, CheckPermissions } from '@strapi/helper-plugin';
|
|
11
|
-
import adminPermissions from '../../../permissions';
|
|
12
|
-
import Wrapper from './Wrapper';
|
|
13
|
-
|
|
14
|
-
/* eslint-disable react/no-unused-state */
|
|
15
|
-
class PluginCard extends React.Component {
|
|
16
|
-
state = {
|
|
17
|
-
boostrapCol: 'col-lg-4',
|
|
18
|
-
showModalAutoReload: false,
|
|
19
|
-
showModalEnv: false,
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
componentDidMount() {
|
|
23
|
-
// Listen window resize.
|
|
24
|
-
window.addEventListener('resize', this.setBoostrapCol);
|
|
25
|
-
this.setBoostrapCol();
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
componentWillUnmount() {
|
|
29
|
-
window.removeEventListener('resize', this.setBoostrapCol);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
setBoostrapCol = () => {
|
|
33
|
-
let boostrapCol = 'col-lg-4';
|
|
34
|
-
|
|
35
|
-
if (window.innerWidth > 1680) {
|
|
36
|
-
boostrapCol = 'col-lg-3';
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
if (window.innerWidth > 2300) {
|
|
40
|
-
boostrapCol = 'col-lg-2';
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
this.setState({ boostrapCol });
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
handleDownloadPlugin = e => {
|
|
47
|
-
const {
|
|
48
|
-
autoReload,
|
|
49
|
-
currentEnvironment,
|
|
50
|
-
downloadPlugin,
|
|
51
|
-
history: { push },
|
|
52
|
-
isAlreadyInstalled,
|
|
53
|
-
plugin: { id },
|
|
54
|
-
} = this.props;
|
|
55
|
-
|
|
56
|
-
if (!autoReload) {
|
|
57
|
-
this.setState({ showModalAutoReload: true });
|
|
58
|
-
} else if (currentEnvironment !== 'development') {
|
|
59
|
-
this.setState({ showModalEnv: true });
|
|
60
|
-
} else if (!isAlreadyInstalled) {
|
|
61
|
-
downloadPlugin(id);
|
|
62
|
-
} else {
|
|
63
|
-
push('/list-plugins');
|
|
64
|
-
}
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
render() {
|
|
68
|
-
const buttonClass = !this.props.isAlreadyInstalled ? 'primary' : 'secondary';
|
|
69
|
-
const buttonLabel = this.props.isAlreadyInstalled
|
|
70
|
-
? 'app.components.PluginCard.Button.label.install'
|
|
71
|
-
: 'app.components.PluginCard.Button.label.download';
|
|
72
|
-
|
|
73
|
-
const settingsComponent = null;
|
|
74
|
-
|
|
75
|
-
const descriptions = {
|
|
76
|
-
short:
|
|
77
|
-
this.props.plugin.id === 'support-us' ? (
|
|
78
|
-
<FormattedMessage id={this.props.plugin.description.short} />
|
|
79
|
-
) : (
|
|
80
|
-
this.props.plugin.description.short
|
|
81
|
-
),
|
|
82
|
-
long:
|
|
83
|
-
this.props.plugin.id === 'support-us' ? (
|
|
84
|
-
<FormattedMessage
|
|
85
|
-
id={this.props.plugin.description.long || this.props.plugin.description.short}
|
|
86
|
-
/>
|
|
87
|
-
) : (
|
|
88
|
-
this.props.plugin.description.long || this.props.plugin.description.short
|
|
89
|
-
),
|
|
90
|
-
};
|
|
91
|
-
|
|
92
|
-
return (
|
|
93
|
-
<Wrapper className={this.state.boostrapCol}>
|
|
94
|
-
<div className="wrapper">
|
|
95
|
-
<div className="cardTitle">
|
|
96
|
-
<div className="frame">
|
|
97
|
-
<span className="helper" />
|
|
98
|
-
<img src={this.props.plugin.logo} alt="icon" />
|
|
99
|
-
</div>
|
|
100
|
-
<div
|
|
101
|
-
onClick={e => {
|
|
102
|
-
// FIXME: dead link as we are changing the naming. Would be better to use a url comming from the api call directly
|
|
103
|
-
window.open(
|
|
104
|
-
`https://github.com/strapi/strapi/tree/master/packages/strapi-plugin-${this.props.plugin.id}`,
|
|
105
|
-
'_blank'
|
|
106
|
-
);
|
|
107
|
-
}}
|
|
108
|
-
>
|
|
109
|
-
{this.props.plugin.name} <i className="fa fa-external-link-alt" />
|
|
110
|
-
</div>
|
|
111
|
-
</div>
|
|
112
|
-
<div className="cardDescription">{descriptions.long}</div>
|
|
113
|
-
<div className="cardFooter" onClick={e => e.stopPropagation()}>
|
|
114
|
-
<div className="cardFooterButton">
|
|
115
|
-
<CheckPermissions permissions={adminPermissions.marketplace.install}>
|
|
116
|
-
<Button
|
|
117
|
-
className={`${buttonClass} button`}
|
|
118
|
-
label={buttonLabel}
|
|
119
|
-
type="button"
|
|
120
|
-
onClick={this.handleDownloadPlugin}
|
|
121
|
-
/>
|
|
122
|
-
</CheckPermissions>
|
|
123
|
-
</div>
|
|
124
|
-
{this.props.isAlreadyInstalled ? (
|
|
125
|
-
settingsComponent
|
|
126
|
-
) : (
|
|
127
|
-
<div className="compatible">
|
|
128
|
-
<i className={`fa fa-${this.props.plugin.isCompatible ? 'check' : 'times'}`} />
|
|
129
|
-
<FormattedMessage
|
|
130
|
-
id={`app.components.PluginCard.compatible${
|
|
131
|
-
this.props.plugin.id === 'support-us' ? 'Community' : ''
|
|
132
|
-
}`}
|
|
133
|
-
/>
|
|
134
|
-
</div>
|
|
135
|
-
)}
|
|
136
|
-
</div>
|
|
137
|
-
</div>
|
|
138
|
-
|
|
139
|
-
<PopUpWarning
|
|
140
|
-
content={{
|
|
141
|
-
message: 'app.components.PluginCard.PopUpWarning.install.impossible.autoReload.needed',
|
|
142
|
-
title: 'app.components.PluginCard.PopUpWarning.install.impossible.title',
|
|
143
|
-
confirm: 'app.components.PluginCard.PopUpWarning.install.impossible.confirm',
|
|
144
|
-
}}
|
|
145
|
-
isOpen={this.state.showModalAutoReload}
|
|
146
|
-
onlyConfirmButton
|
|
147
|
-
onConfirm={() => this.setState({ showModalAutoReload: false })}
|
|
148
|
-
popUpWarningType="warning"
|
|
149
|
-
/>
|
|
150
|
-
<PopUpWarning
|
|
151
|
-
content={{
|
|
152
|
-
message: 'app.components.PluginCard.PopUpWarning.install.impossible.environment',
|
|
153
|
-
title: 'app.components.PluginCard.PopUpWarning.install.impossible.title',
|
|
154
|
-
confirm: 'app.components.PluginCard.PopUpWarning.install.impossible.confirm',
|
|
155
|
-
}}
|
|
156
|
-
isOpen={this.state.showModalEnv}
|
|
157
|
-
onlyConfirmButton
|
|
158
|
-
onConfirm={() => this.setState({ showModalEnv: false })}
|
|
159
|
-
popUpWarningType="warning"
|
|
160
|
-
/>
|
|
161
|
-
</Wrapper>
|
|
162
|
-
);
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
PluginCard.defaultProps = {
|
|
167
|
-
isAlreadyInstalled: false,
|
|
168
|
-
plugin: {
|
|
169
|
-
description: '',
|
|
170
|
-
id: '',
|
|
171
|
-
name: '',
|
|
172
|
-
price: 0,
|
|
173
|
-
ratings: 5,
|
|
174
|
-
},
|
|
175
|
-
};
|
|
176
|
-
|
|
177
|
-
PluginCard.propTypes = {
|
|
178
|
-
currentEnvironment: PropTypes.string.isRequired,
|
|
179
|
-
downloadPlugin: PropTypes.func.isRequired,
|
|
180
|
-
history: PropTypes.object.isRequired,
|
|
181
|
-
isAlreadyInstalled: PropTypes.bool,
|
|
182
|
-
plugin: PropTypes.object,
|
|
183
|
-
};
|
|
184
|
-
|
|
185
|
-
export default PluginCard;
|
|
Binary file
|
|
Binary file
|