@strapi/admin 4.2.3 → 4.3.0
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/app.js +7 -4
- package/admin/src/components/LeftMenu/index.js +12 -2
- package/admin/src/content-manager/components/EditViewDataManagerProvider/index.js +5 -4
- package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/cleanData.js +0 -8
- package/admin/src/content-manager/components/SelectMany/index.js +2 -4
- package/admin/src/content-manager/components/SelectWrapper/index.js +1 -13
- package/admin/src/content-manager/pages/EditSettingsView/components/ModalForm.js +2 -2
- package/admin/src/content-manager/pages/ListView/FieldPicker/index.js +9 -1
- package/admin/src/content-manager/utils/removeKeyInObject.js +0 -4
- package/admin/src/hooks/useFetchMarketplaceProviders/index.js +1 -1
- package/admin/src/index.js +1 -1
- package/admin/src/pages/Admin/index.js +21 -7
- package/admin/src/pages/App/constants.js +1 -0
- package/admin/src/pages/App/index.js +21 -3
- package/admin/src/pages/App/reducer.js +22 -0
- package/admin/src/pages/InstalledPluginsPage/Plugins.js +10 -2
- package/admin/src/pages/ProfilePage/index.js +19 -18
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromUrlForm.js +7 -3
- package/admin/src/pages/SettingsPage/pages/Users/EditPage/utils/layout.js +3 -1
- package/admin/src/pages/SettingsPage/pages/Users/ListPage/DynamicTable/TableRows/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/Users/ListPage/utils/tableHeaders.js +18 -4
- package/admin/src/pages/SettingsPage/pages/Users/components/SelectRoles/index.js +4 -1
- package/admin/src/reducers.js +4 -2
- package/admin/src/translations/en.json +37 -0
- package/admin/src/translations/zh-Hans.json +55 -8
- package/admin/src/tsconfig.json +10 -0
- package/build/1669.341e10d8.chunk.js +1 -0
- package/build/20.9e5a98b6.chunk.js +308 -0
- package/build/3332.1e443103.chunk.js +102 -0
- package/build/413.d5986568.chunk.js +284 -0
- package/build/{3180.ad280cb4.chunk.js → 5520.3c6bf86a.chunk.js} +34 -34
- package/build/{9166.5c585d7c.chunk.js → 8655.9073e17e.chunk.js} +59 -58
- package/build/8773.1b2ec266.chunk.js +327 -0
- package/build/9730.8fbe43ee.chunk.js +12 -0
- package/build/9799.ce46400f.chunk.js +760 -0
- package/build/Admin-authenticatedApp.ea608aff.chunk.js +80 -0
- package/build/{6102.1482bf98.chunk.js → Admin_InternalErrorPage.25c53284.chunk.js} +1 -1
- package/build/{Admin_homePage.4cc54224.chunk.js → Admin_homePage.118926e0.chunk.js} +1 -1
- package/build/{Admin_marketplace.91a1aacd.chunk.js → Admin_marketplace.8efd3fd0.chunk.js} +2 -2
- package/build/Admin_pluginsPage.0992c2b5.chunk.js +1 -0
- package/build/Admin_profilePage.35ce8e94.chunk.js +15 -0
- package/build/Admin_settingsPage.5fc517d7.chunk.js +178 -0
- package/build/admin-app.1bd5f67e.chunk.js +112 -0
- package/build/admin-edit-roles-page.358d98c1.chunk.js +1 -0
- package/build/admin-edit-users.714863af.chunk.js +10 -0
- package/build/admin-users.2bd6fb37.chunk.js +11 -0
- package/build/{api-tokens-edit-page.d41a0165.chunk.js → api-tokens-create-page.442e3be0.chunk.js} +1 -1
- package/build/api-tokens-edit-page.5f34eec7.chunk.js +1 -0
- package/build/{api-tokens-list-page.ec7c36f0.chunk.js → api-tokens-list-page.5ea3f6ce.chunk.js} +1 -1
- package/build/{codemirror-css.269ff90a.chunk.js → codemirror-css.4e2bbed3.chunk.js} +1 -1
- package/build/{codemirror-theme.bd70dd4c.chunk.js → codemirror-theme.a82cae4e.chunk.js} +1 -1
- package/build/content-manager.39bc9201.chunk.js +1176 -0
- package/build/content-type-builder-list-view.b12687b2.chunk.js +194 -0
- package/build/content-type-builder-translation-en-json.201bfb78.chunk.js +1 -0
- package/build/content-type-builder.ec6ccb59.chunk.js +142 -0
- package/build/{cropper-css.f4896679.chunk.js → cropper-css.12fe038c.chunk.js} +1 -1
- package/build/{email-settings-page.f12299bd.chunk.js → email-settings-page.818761d5.chunk.js} +2 -2
- package/build/email-translation-en-json.3d74ff95.chunk.js +1 -0
- package/build/email-translation-zh-Hans-json.8172da08.chunk.js +1 -0
- package/build/en-json.6d70e9ff.chunk.js +1 -0
- package/build/{fontawesome-css-all.4ecf62f5.chunk.js → fontawesome-css-all.15068c6e.chunk.js} +1 -1
- package/build/{fontawesome-css.18f0d57b.chunk.js → fontawesome-css.418f40da.chunk.js} +1 -1
- package/build/{highlight.js.22f875ca.chunk.js → highlight.js.af2de364.chunk.js} +1 -1
- package/build/i18n-settings-page.9d426e96.chunk.js +101 -0
- package/build/index.html +1 -1
- package/build/main.b19c2ee3.js +8675 -0
- package/build/runtime~main.426f9375.js +2 -0
- package/build/{sso-settings-page.2dbec3a3.chunk.js → sso-settings-page.445184e0.chunk.js} +1 -1
- package/build/{upload-settings.6c0eb939.chunk.js → upload-settings.4bad0bdd.chunk.js} +1 -1
- package/build/upload-translation-de-json.745613c0.chunk.js +1 -0
- package/build/upload-translation-dk-json.cb25dcf0.chunk.js +1 -0
- package/build/upload-translation-en-json.bc79c867.chunk.js +1 -0
- package/build/upload-translation-es-json.1f344b53.chunk.js +1 -0
- package/build/upload-translation-fr-json.e21c0c7a.chunk.js +1 -0
- package/build/upload-translation-he-json.4ce77b7b.chunk.js +1 -0
- package/build/upload-translation-it-json.5ce11e0b.chunk.js +1 -0
- package/build/upload-translation-ja-json.22afae44.chunk.js +1 -0
- package/build/upload-translation-ko-json.9a2c21cb.chunk.js +1 -0
- package/build/upload-translation-ms-json.0605d6da.chunk.js +1 -0
- package/build/upload-translation-pl-json.c1f86b50.chunk.js +1 -0
- package/build/upload-translation-pt-BR-json.95686cfb.chunk.js +1 -0
- package/build/upload-translation-ru-json.37bd1546.chunk.js +1 -0
- package/build/upload-translation-sk-json.b03d4904.chunk.js +1 -0
- package/build/upload-translation-th-json.64dd70ce.chunk.js +1 -0
- package/build/upload-translation-uk-json.1328cb3e.chunk.js +1 -0
- package/build/upload-translation-zh-Hans-json.37a2981e.chunk.js +1 -0
- package/build/upload-translation-zh-json.ee8fba96.chunk.js +1 -0
- package/build/upload.1346f4b1.chunk.js +7 -0
- package/build/{users-advanced-settings-page.06330ec9.chunk.js → users-advanced-settings-page.f38654fc.chunk.js} +1 -1
- package/build/users-email-settings-page.824a3cdb.chunk.js +101 -0
- package/build/{users-providers-settings-page.f011f210.chunk.js → users-providers-settings-page.a0b0fe39.chunk.js} +1 -1
- package/build/{users-roles-settings-page.d756dce9.chunk.js → users-roles-settings-page.3db986a4.chunk.js} +2 -2
- package/build/{webhook-edit-page.181ea60a.chunk.js → webhook-edit-page.3417d93c.chunk.js} +2 -2
- package/build/{webhook-list-page.b6000354.chunk.js → webhook-list-page.2ab4bbf0.chunk.js} +1 -1
- package/build/zh-Hans-json.eac1d90a.chunk.js +1 -0
- package/ee/admin/pages/SettingsPage/pages/Roles/CreatePage/index.js +3 -3
- package/index.js +47 -239
- package/package.json +14 -10
- package/scripts/build.js +19 -3
- package/server/controllers/admin.js +21 -0
- package/server/policies/index.js +1 -0
- package/server/policies/isTelemetryEnabled.js +16 -0
- package/server/routes/admin.js +8 -0
- package/server/routes/serve-admin-panel.js +1 -1
- package/utils/create-cache-dir.js +131 -0
- package/utils/get-custom-app-config-file.js +28 -0
- package/utils/get-custom-webpack-config.js +38 -0
- package/utils/get-plugins-path.js +26 -0
- package/utils/index.js +13 -0
- package/utils/should-build-admin.js +52 -0
- package/utils/watch-admin-files.js +59 -0
- package/webpack.alias.js +0 -1
- package/webpack.config.js +32 -10
- package/admin/src/content-manager/components/SelectWrapper/ClearIndicator.js +0 -18
- package/admin/src/content-manager/components/SelectWrapper/DropdownIndicator.js +0 -24
- package/admin/src/content-manager/components/SelectWrapper/IconBox.js +0 -20
- package/admin/src/content-manager/components/SelectWrapper/IndicatorSeparator.js +0 -3
- package/admin/src/content-manager/components/SelectWrapper/utils/getSelectStyles.js +0 -92
- package/build/2912.dd031292.chunk.js +0 -253
- package/build/3526.849d6a28.chunk.js +0 -162
- package/build/4094.ff4573b6.chunk.js +0 -194
- package/build/4982.c57c5675.chunk.js +0 -308
- package/build/6925.fb35248e.chunk.js +0 -761
- package/build/7810.c0d5e393.chunk.js +0 -113
- package/build/7841.9e9cf739.chunk.js +0 -253
- package/build/8681.334d9893.chunk.js +0 -163
- package/build/9298.fbe24a6e.chunk.js +0 -334
- package/build/948.d64fb515.chunk.js +0 -2
- package/build/Admin-authenticatedApp.a13de617.chunk.js +0 -80
- package/build/Admin_pluginsPage.b339b9c3.chunk.js +0 -1
- package/build/Admin_profilePage.369a0308.chunk.js +0 -15
- package/build/Admin_settingsPage.9bc7a0f0.chunk.js +0 -180
- package/build/admin-edit-roles-page.31acda7c.chunk.js +0 -1
- package/build/admin-edit-users.98a32ee5.chunk.js +0 -11
- package/build/admin-users.ab8ba52e.chunk.js +0 -12
- package/build/api-tokens-create-page.a3b9c8bd.chunk.js +0 -1
- package/build/content-manager.02509825.chunk.js +0 -1198
- package/build/content-type-builder-translation-en-json.ea3c66b3.chunk.js +0 -1
- package/build/content-type-builder.af41a338.chunk.js +0 -142
- package/build/email-translation-en-json.6da7e388.chunk.js +0 -1
- package/build/email-translation-zh-Hans-json.b463cb25.chunk.js +0 -1
- package/build/en-json.4f6bd46a.chunk.js +0 -1
- package/build/i18n-settings-page.c1ecebbc.chunk.js +0 -101
- package/build/main.48e0f6dc.js +0 -8434
- package/build/runtime~main.e9852fed.js +0 -2
- package/build/upload-translation-de-json.b642da08.chunk.js +0 -1
- package/build/upload-translation-dk-json.fc61df13.chunk.js +0 -1
- package/build/upload-translation-en-json.59269508.chunk.js +0 -1
- package/build/upload-translation-es-json.8ec935ef.chunk.js +0 -1
- package/build/upload-translation-fr-json.eb9b4f84.chunk.js +0 -1
- package/build/upload-translation-he-json.c226f2dc.chunk.js +0 -1
- package/build/upload-translation-it-json.8e58456e.chunk.js +0 -1
- package/build/upload-translation-ja-json.1378a2e7.chunk.js +0 -1
- package/build/upload-translation-ko-json.5e06e112.chunk.js +0 -1
- package/build/upload-translation-ms-json.dc3bf0d7.chunk.js +0 -1
- package/build/upload-translation-pl-json.bb2aa937.chunk.js +0 -1
- package/build/upload-translation-pt-BR-json.7e8d9550.chunk.js +0 -1
- package/build/upload-translation-ru-json.da2529f3.chunk.js +0 -1
- package/build/upload-translation-sk-json.bfdf4f09.chunk.js +0 -1
- package/build/upload-translation-th-json.6a48b826.chunk.js +0 -1
- package/build/upload-translation-uk-json.6fb09148.chunk.js +0 -1
- package/build/upload-translation-zh-Hans-json.c9622577.chunk.js +0 -1
- package/build/upload-translation-zh-json.711f804b.chunk.js +0 -1
- package/build/upload.92d5c845.chunk.js +0 -105
- package/build/users-email-settings-page.151b35a9.chunk.js +0 -1
- package/build/zh-Hans-json.cbc69f3d.chunk.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[2553],{35964:e=>{e.exports=JSON.parse('{"Analytics":"\u5206\u6790","Auth.components.Oops.text":"\u4F60\u7684\u5E10\u53F7\u5DF2\u7ECF\u88AB\u505C\u7528\u3002","Auth.components.Oops.text.admin":"\u5982\u679C\u8FD9\u662F\u4E2A\u9519\u8BEF\uFF0C\u8BF7\u8054\u7CFB\u4F60\u7684\u7BA1\u7406\u5458\u3002","Auth.components.Oops.title":"\u54CE\u5440...","Auth.form.active.label":"\u6FC0\u6D3B","Auth.form.button.forgot-password":"\u53D1\u9001\u7535\u5B50\u90AE\u4EF6","Auth.form.button.go-home":"\u56DE\u5230\u9996\u9875","Auth.form.button.login":"\u767B\u5F55","Auth.form.button.login.providers.error":"\u65E0\u6CD5\u901A\u8FC7\u9009\u5B9A\u7684\u9A8C\u8BC1\u65B9\u5F0F\u8FDE\u63A5\u4F60\u7684\u5E10\u53F7\u3002","Auth.form.button.login.strapi":"\u901A\u8FC7 Strapi \u767B\u5F55","Auth.form.button.password-recovery":"\u627E\u56DE\u5BC6\u7801","Auth.form.button.register":"\u51C6\u5907\u5F00\u59CB","Auth.form.confirmPassword.label":"\u786E\u8BA4\u5BC6\u7801","Auth.form.currentPassword.label":"\u5F53\u524D\u5BC6\u7801","Auth.form.email.label":"\u7535\u5B50\u90AE\u4EF6","Auth.form.email.placeholder":"\u4F8B\u5982 kai@doe.com","Auth.form.error.blocked":"\u4F60\u7684\u5E10\u53F7\u5DF2\u7ECF\u88AB\u7BA1\u7406\u5458\u7981\u7528\u3002","Auth.form.error.code.provide":"\u63D0\u4F9B\u7684\u4EE3\u7801\u4E0D\u6B63\u786E\u3002","Auth.form.error.confirmed":"\u60A8\u7684\u5E10\u53F7\u5173\u8054\u7684\u7535\u5B50\u90AE\u4EF6\u8FD8\u672A\u5F97\u5230\u786E\u8BA4\u3002","Auth.form.error.email.invalid":"\u7535\u5B50\u90AE\u4EF6\u683C\u5F0F\u4E0D\u6B63\u786E\u3002","Auth.form.error.email.provide":"\u8BF7\u63D0\u4F9B\u60A8\u7684\u7528\u6237\u540D\u6216\u7535\u5B50\u90AE\u4EF6\u3002","Auth.form.error.email.taken":"\u6B64\u7535\u5B50\u90AE\u4EF6\u5730\u5740\u5DF2\u88AB\u5360\u7528","Auth.form.error.invalid":"\u4F7F\u7528\u8005\u540D\u79F0\u6216\u5BC6\u7801\u65E0\u6548\u3002","Auth.form.error.params.provide":"\u5BC6\u7801\u4E0D\u6B63\u786E\u3002","Auth.form.error.password.format":"\u60A8\u7684\u5BC6\u7801\u4E0D\u80FD\u5305\u542B `$` \u7B26\u53F7\u8D85\u8FC7\u4E09\u6B21\u3002","Auth.form.error.password.local":"\u8FD9\u4E2A\u7528\u6237\u4ECE\u672A\u8BBE\u7F6E\u672C\u5730\u5BC6\u7801\uFF0C\u8BF7\u4F7F\u7528\u8D26\u6237\u521B\u5EFA\u65F6\u4F7F\u7528\u7684\u9A8C\u8BC1\u65B9\u5F0F\u767B\u5F55\u3002","Auth.form.error.password.matching":"\u5BC6\u7801\u4E0D\u5339\u914D\u3002","Auth.form.error.password.provide":"\u8BF7\u63D0\u4F9B\u60A8\u7684\u5BC6\u7801\u3002","Auth.form.error.ratelimit":"\u5C1D\u8BD5\u7684\u6B21\u6570\u8FC7\u591A\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002","Auth.form.error.user.not-exist":"\u8FD9\u4E2A\u7535\u5B50\u90AE\u4EF6\u5730\u5740\u4E0D\u5B58\u5728\u3002","Auth.form.error.username.taken":"\u7528\u6237\u540D\u5DF2\u88AB\u5360\u7528\u3002","Auth.form.firstname.label":"\u540D\u5B57","Auth.form.firstname.placeholder":"\u4F8B\u5982\uFF1A\u4E09","Auth.form.forgot-password.email.label":"\u8F93\u5165\u60A8\u7684\u7535\u5B50\u90AE\u4EF6\u5730\u5740","Auth.form.forgot-password.email.label.success":"\u90AE\u4EF6\u6210\u529F\u53D1\u9001","Auth.form.lastname.label":"\u59D3\u6C0F","Auth.form.lastname.placeholder":"\u4F8B\u5982\uFF1A\u5F20","Auth.form.password.hide-password":"\u9690\u85CF\u5BC6\u7801","Auth.form.password.hint":"\u5BC6\u7801\u5FC5\u987B\u5305\u542B\u81F3\u5C11 8 \u4E2A\u5B57\u7B26\uFF0C1 \u4E2A\u5927\u5199\u5B57\u6BCD\uFF0C1 \u4E2A\u5C0F\u5199\u5B57\u6BCD\uFF0C1 \u4E2A\u6570\u5B57","Auth.form.password.show-password":"\u663E\u793A\u5BC6\u7801","Auth.form.register.news.label":"\u8BA9\u6211\u4E86\u89E3\u65B0\u7684\u529F\u80FD\u548C\u5373\u5C06\u5230\u6765\u7684\u6539\u8FDB (\u6253\u52FE\u8868\u793A\u4F60\u63A5\u53D7 {terms} \u548C {policy}))\u3002","Auth.form.register.subtitle":"\u4F60\u7684\u51ED\u8BC1\u53EA\u7528\u4E8E\u7BA1\u7406\u540E\u53F0\u9A8C\u8BC1\u4F60\u7684\u8EAB\u4EFD\u3002\u6240\u6709\u4FDD\u5B58\u7684\u6570\u636E\u90FD\u5C06\u50A8\u5B58\u5728\u4F60\u81EA\u5DF1\u7684\u6570\u636E\u5E93\u4E2D\u3002","Auth.form.rememberMe.label":"\u8BB0\u4F4F\u6211","Auth.form.username.label":"\u7528\u6237\u540D","Auth.form.username.placeholder":"\u5F20\u4E09","Auth.form.welcome.subtitle":"\u767B\u5F55\u60A8\u7684Strapi\u8D26\u6237","Auth.form.welcome.title":"\u6B22\u8FCE\uFF01","Auth.link.forgot-password":"\u5FD8\u8BB0\u5BC6\u7801\uFF1F","Auth.link.ready":"\u51C6\u5907\u597D\u767B\u5F55\u4E86\u5417\uFF1F","Auth.link.signin":"\u767B\u5F55","Auth.link.signin.account":"\u5DF2\u7ECF\u6709\u4E86\u4E00\u4E2A\u8D26\u6237\uFF1F","Auth.login.sso.divider":"\u6216\u7528\u4EE5\u4E0B\u65B9\u5F0F\u767B\u5F55","Auth.login.sso.loading":"\u6B63\u5728\u52A0\u8F7DSSO\u670D\u52A1\u63D0\u4F9B\u5546...","Auth.login.sso.subtitle":"\u901A\u8FC7SSO\u767B\u5F55\u5230\u4F60\u7684\u8D26\u6237","Auth.privacy-policy-agreement.policy":"\u9690\u79C1\u653F\u7B56","Auth.privacy-policy-agreement.terms":"\u4F7F\u7528\u6761\u6B3E","Content Manager":"\u5185\u5BB9\u7BA1\u7406","Content Type Builder":"\u5185\u5BB9\u7C7B\u578B\u6784\u5EFA\u5668","Documentation":"\u6587\u6863","Email":"\u7535\u5B50\u90AE\u4EF6","Files Upload":"\u6587\u4EF6\u4E0A\u4F20","HomePage.helmet.title":"\u9996\u9875","HomePage.roadmap":"\u67E5\u770B\u6211\u4EEC\u7684\u8DEF\u7EBF\u56FE","HomePage.welcome.congrats":"\u606D\u559C\uFF01","HomePage.welcome.congrats.content":"\u4F60\u767B\u5F55\u6210\u4E3A\u7B2C\u4E00\u4E2A\u7BA1\u7406\u5458\uFF0C\u63A2\u7D22 Strapi \u7684\u5F37\u5927\u529F\u80FD\uFF0C","HomePage.welcome.congrats.content.bold":"\u6211\u4EEC\u5EFA\u8BAE\u4F60\u521B\u5EFA\u4F60\u7684\u7B2C\u4E00\u4E2A\u96C6\u5408\u7C7B\u578B\u3002","Media Library":"\u5A92\u4F53\u5E93","New entry":"\u65B0\u6761\u76EE","Password":"\u5BC6\u7801","Provider":"\u63D0\u4F9B\u5546","ResetPasswordToken":"\u91CD\u7F6E\u5BC6\u7801\u4EE4\u724C","Role":"\u89D2\u8272","Roles & Permissions":"\u89D2\u8272\u548C\u6743\u9650","Roles.ListPage.notification.delete-all-not-allowed":"\u4E00\u4E9B\u89D2\u8272\u4E0D\u80FD\u88AB\u5220\u9664\uFF0C\u56E0\u4E3A\u5B83\u4EEC\u4E0E\u7528\u6237\u76F8\u5173\u3002","Roles.ListPage.notification.delete-not-allowed":"\u5982\u679C\u4E00\u4E2A\u89D2\u8272\u4E0E\u7528\u6237\u76F8\u5173\u8054\uFF0C\u5219\u4E0D\u80FD\u88AB\u5220\u9664","Roles.RoleRow.select-all":"\u9009\u62E9 {name} \u8FDB\u884C\u6279\u91CF\u64CD\u4F5C","Roles.components.List.empty.withSearch":"\u627E\u4E0D\u5230\u4F60\u641C\u7D22\u7684\u89D2\u8272 ({search})...","Settings.PageTitle":"\u8BBE\u7F6E - {name}","Settings.apiTokens.addFirstToken":"\u6DFB\u52A0\u4F60\u7684\u7B2C\u4E00\u4E2A API \u4EE4\u724C\u3002","Settings.apiTokens.addNewToken":"\u6DFB\u52A0\u65B0\u7684 API \u4EE4\u724C","Settings.apiTokens.copy.editMessage":"\u51FA\u4E8E\u5B89\u5168\u539F\u56E0\uFF0C\u4F60\u53EA\u80FD\u770B\u5230\u4F60\u7684\u4EE4\u724C\u4E00\u6B21\u3002","Settings.apiTokens.copy.editTitle":"\u8FD9\u4E2A\u4EE4\u724C\u5DF2\u7ECF\u65E0\u6CD5\u4F7F\u7528\u4E86\u3002","Settings.apiTokens.copy.lastWarning":"\u8BF7\u786E\u4FDD\u590D\u5236\u8FD9\u4E2A\u4EE4\u724C\uFF0C\u4F60\u5C06\u65E0\u6CD5\u518D\u770B\u5230\u5B83\u4E86!","Settings.apiTokens.create":"\u521B\u5EFA","Settings.apiTokens.description":"\u5DF2\u6DFB\u52A0\u7684\u53EF\u4F7F\u7528 API \u7684\u4EE4\u724C\u5217\u8868","Settings.apiTokens.emptyStateLayout":"\u4F60\u8FD8\u6CA1\u6709\u4EFB\u4F55\u5185\u5BB9...","Settings.apiTokens.notification.copied":"\u4EE4\u724C\u5DF2\u88AB\u590D\u5236\u81F3\u526A\u8D34\u677F\u3002","Settings.apiTokens.title":"API \u4EE4\u724C","Settings.apiTokens.types.full-access":"\u5B8C\u5168\u8BBF\u95EE","Settings.apiTokens.types.read-only":"\u53EA\u8BFB","Settings.application.description":"\u67E5\u770B\u9879\u76EE\u7684\u8BE6\u7EC6\u4FE1\u606F","Settings.application.edition-title":"\u5F53\u524D\u65B9\u6848","Settings.application.get-help":"\u83B7\u53D6\u5E2E\u52A9","Settings.application.link-pricing":"\u67E5\u770B\u6240\u6709\u4EF7\u683C","Settings.application.link-upgrade":"\u5347\u7EA7\u4F60\u7684\u7BA1\u7406\u540E\u53F0","Settings.application.node-version":"node \u7248\u672C","Settings.application.strapi-version":"strapi \u7248\u672C","Settings.application.strapiVersion":"strapi \u7248\u672C","Settings.application.title":"\u5E94\u7528\u7A0B\u5E8F","Settings.error":"\u9519\u8BEF","Settings.global":"\u5168\u5C40\u8BBE\u7F6E","Settings.permissions":"\u7BA1\u7406\u5458\u6743\u9650","Settings.permissions.category":"{category} \u7684\u6743\u9650\u8BBE\u7F6E","Settings.permissions.category.plugins":"{category} \u63D2\u4EF6\u7684\u6743\u9650\u8BBE\u7F6E","Settings.permissions.conditions.anytime":"\u4EFB\u4F55\u65F6\u5019","Settings.permissions.conditions.apply":"\u542F\u7528","Settings.permissions.conditions.can":"\u53EF\u4EE5","Settings.permissions.conditions.define-conditions":"\u5B9A\u4E49\u6761\u4EF6","Settings.permissions.conditions.links":"\u94FE\u63A5","Settings.permissions.conditions.no-actions":"\u4F60\u9996\u5148\u9700\u8981\u9009\u62E9\u52A8\u4F5C\uFF08\u521B\u5EFA\u3001\u8BFB\u53D6\u3001\u66F4\u65B0......\uFF09\uFF0C\u7136\u540E\u518D\u5BF9\u5176\u5B9A\u4E49\u6761\u4EF6\u3002","Settings.permissions.conditions.none-selected":"\u4EFB\u4F55\u65F6\u5019","Settings.permissions.conditions.or":"\u6216","Settings.permissions.conditions.when":"\u5F53","Settings.permissions.select-all-by-permission":"\u9009\u62E9\u6240\u6709 {label} \u6743\u9650","Settings.permissions.select-by-permission":"\u9009\u62E9 {label} \u6743\u9650","Settings.permissions.users.create":"\u9080\u8BF7\u65B0\u7528\u6237","Settings.permissions.users.form.email":"\u7535\u5B50\u90AE\u4EF6","Settings.permissions.users.form.firstname":"\u540D\u5B57","Settings.permissions.users.form.lastname":"\u59D3\u6C0F","Settings.permissions.users.form.sso":"\u901A\u8FC7 SSO \u767B\u5F55","Settings.permissions.users.form.sso.description":"\u5F53\u542F\u7528\u8FD9\u4E2A\u9009\u9879\uFF08ON\uFF09\u65F6\uFF0C\u7528\u6237\u53EF\u4EE5\u901A\u8FC7SSO\u767B\u5F55","Settings.permissions.users.listview.header.subtitle":"\u6240\u6709\u80FD\u591F\u8BBF\u95EE Strapi \u7BA1\u7406\u540E\u53F0\u7684\u7528\u6237","Settings.permissions.users.tabs.label":"\u6807\u7B7E\u9875\u6743\u9650","Settings.profile.form.notify.data.loaded":"\u4F60\u7684\u4E2A\u4EBA\u6570\u636E\u5DF2\u7ECF\u52A0\u8F7D\u5B8C\u6210","Settings.profile.form.section.experience.clear.select":"\u6E05\u9664\u5DF2\u9009\u62E9\u7684\u754C\u9762\u8BED\u8A00","Settings.profile.form.section.experience.documentation":"\u6587\u6863","Settings.profile.form.section.experience.interfaceLanguage":"\u754C\u9762\u8BED\u8A00","Settings.profile.form.section.experience.interfaceLanguage.hint":"\u5C06\u4F1A\u7528\u6240\u9009\u62E9\u7684\u8BED\u8A00\u663E\u793A\u4F60\u7684\u754C\u9762","Settings.profile.form.section.experience.interfaceLanguageHelp":"\u5F53\u524D\u7684\u8BED\u8A00\u9009\u62E9\u53EA\u4F1A\u66F4\u6539\u4F60\u5F53\u524D\u5E10\u53F7\u754C\u9762\u8BED\u8A00\u3002 \u8BF7\u53C2\u8003\u6B64 {here} \u4E3A\u4F60\u7684\u56E2\u961F\u63D0\u4F9B\u5176\u4ED6\u8BED\u8A00\u3002","Settings.profile.form.section.experience.mode.label":"\u754C\u9762\u98CE\u683C","Settings.profile.form.section.experience.mode.hint":"\u5C06\u4F1A\u7528\u6240\u9009\u62E9\u7684\u98CE\u683C\u663E\u793A\u4F60\u7684\u754C\u9762","Settings.profile.form.section.experience.mode.option-label":"{name}\u754C\u9762","light":"\u6D45\u8272","dark":"\u6DF1\u8272","Settings.profile.form.section.experience.title":"\u4F53\u9A8C","Settings.profile.form.section.helmet.title":"\u7528\u6237\u4E2A\u4EBA\u4FE1\u606F","Settings.profile.form.section.profile.page.title":"\u4E2A\u4EBA\u4FE1\u606F\u9875\u9762","Settings.roles.create.description":"\u5B9A\u4E49\u8D4B\u4E88\u89D2\u8272\u7684\u6743\u9650","Settings.roles.create.title":"\u521B\u5EFA\u89D2\u8272","Settings.roles.created":"\u89D2\u8272\u5DF2\u521B\u5EFA","Settings.roles.edit.title":"\u7F16\u8F91\u89D2\u8272","Settings.roles.form.button.users-with-role":"{number, plural, =0 {# users} one {# user} other {# users}} \u662F\u8FD9\u4E2A\u89D2\u8272","Settings.roles.form.created":"\u5DF2\u521B\u5EFA","Settings.roles.form.description":"\u89D2\u8272\u7684\u540D\u79F0\u4E0E\u63CF\u8FF0","Settings.roles.form.permission.property-label":"{label} \u6743\u9650","Settings.roles.form.permissions.attributesPermissions":"\u5C5E\u6027\u6743\u9650","Settings.roles.form.permissions.create":"\u521B\u5EFA","Settings.roles.form.permissions.delete":"\u5220\u9664","Settings.roles.form.permissions.publish":"\u53D1\u5E03","Settings.roles.form.permissions.read":"\u8BFB\u53D6","Settings.roles.form.permissions.update":"\u66F4\u65B0","Settings.roles.list.button.add":"\u6DFB\u52A0\u89D2\u8272","Settings.roles.list.description":"\u89D2\u8272\u5217\u8868","Settings.roles.title.singular":"\u89D2\u8272","Settings.sso.description":"\u914D\u7F6E Single Sign-On \u5355\u70B9\u767B\u5F55 \u529F\u80FD\u7684\u8BBE\u7F6E\u3002","Settings.sso.form.defaultRole.description":"\u5B83\u5C06\u628A\u65B0\u7684\u8BA4\u8BC1\u7528\u6237\u9644\u52A0\u5230\u9009\u5B9A\u7684\u89D2\u8272\u4E0A\u3002","Settings.sso.form.defaultRole.description-not-allowed":"\u4F60\u9700\u8981\u6709\u8BFB\u53D6\u7BA1\u7406\u5458\u89D2\u8272\u7684\u6743\u9650","Settings.sso.form.defaultRole.label":"\u9ED8\u8BA4\u89D2\u8272","Settings.sso.form.registration.description":"\u5982\u679C\u6CA1\u6709\u8D26\u6237\u5B58\u5728\uFF0C\u5728SSO\u767B\u5F55\u65F6\u521B\u5EFA\u65B0\u7528\u6237\u3002","Settings.sso.form.registration.label":"\u81EA\u52A8\u6CE8\u518C","Settings.sso.title":"\u5355\u70B9\u767B\u5F55","Settings.webhooks.create":"\u521B\u5EFA Webhook","Settings.webhooks.create.header":"\u521B\u5EFA Header","Settings.webhooks.created":"Webhook \u5DF2\u521B\u5EFA","Settings.webhooks.event.publish-tooltip":"\u8FD9\u4E2A\u4E8B\u4EF6\u53EA\u9002\u7528\u4E8E\u542F\u7528\u4E86\u8349\u7A3F/\u53D1\u5E03\u7CFB\u7EDF\u7684\u5185\u5BB9","Settings.webhooks.events.create":"\u521B\u5EFA","Settings.webhooks.events.update":"\u66F4\u65B0","Settings.webhooks.form.events":"\u4E8B\u4EF6","Settings.webhooks.form.headers":"\u8BF7\u6C42\u5934","Settings.webhooks.form.url":"\u8BF7\u6C42\u5730\u5740","Settings.webhooks.headers.remove":"\u79FB\u9664\u7B2C {number} \u884C header","Settings.webhooks.key":"\u952E","Settings.webhooks.list.button.add":"\u6DFB\u52A0 Webhook","Settings.webhooks.list.description":"\u83B7\u5F97 POST \u8BF7\u6C42\u7684\u66F4\u65B0\u901A\u77E5","Settings.webhooks.list.empty.description":"\u6CA1\u6709\u627E\u5230 Webhooks","Settings.webhooks.list.empty.link":"\u67E5\u770B\u6211\u4EEC\u7684\u6587\u6863","Settings.webhooks.list.empty.title":"\u8FD8\u6CA1\u6709 Webhooks","Settings.webhooks.list.th.actions":"\u64CD\u4F5C","Settings.webhooks.list.th.status":"\u72B6\u6001","Settings.webhooks.singular":"webhook","Settings.webhooks.title":"Webhooks","Settings.webhooks.to.delete":"\u5DF2\u9009\u62E9{webhooksToDeleteLength, plural, one {# asset} other {# assets}}","Settings.webhooks.trigger":"\u89E6\u53D1","Settings.webhooks.trigger.cancel":"\u53D6\u6D88\u89E6\u53D1","Settings.webhooks.trigger.pending":"\u7B49\u5F85\u2026","Settings.webhooks.trigger.save":"\u8BF7\u4FDD\u5B58\u5230\u89E6\u53D1","Settings.webhooks.trigger.success":"\u6210\u529F\uFF01","Settings.webhooks.trigger.success.label":"\u89E6\u53D1\u6210\u529F","Settings.webhooks.trigger.test":"\u6D4B\u8BD5\u89E6\u53D1","Settings.webhooks.trigger.title":"\u89E6\u53D1\u524D\u5148\u4FDD\u5B58","Settings.webhooks.value":"\u503C","Username":"\u7528\u6237\u540D","Users":"\u7528\u6237","Users & Permissions":"\u7528\u6237\u548C\u6743\u9650","Users.components.List.empty":"\u8FD8\u6CA1\u6709\u7528\u6237...","Users.components.List.empty.withFilters":"\u6CA1\u6709\u7B26\u5408\u6761\u4EF6\u7684\u7528\u6237...","Users.components.List.empty.withSearch":"\u6CA1\u6709\u7B26\u5408\u641C\u7D22\u6761\u4EF6 ({search}) \u7684\u7528\u6237...","admin.pages.MarketPlacePage.helmet":"\u5E02\u573A - \u63D2\u4EF6","admin.pages.MarketPlacePage.submit.plugin.link":"\u63D0\u4EA4\u60A8\u7684\u63D2\u4EF6","admin.pages.MarketPlacePage.subtitle":"\u4ECEStrapi\u4E2D\u83B7\u5F97\u66F4\u591A","anErrorOccurred":"\u5509\u5440! \u51FA\u9519\u4E86\u3002\u8BF7\u518D\u8BD5\u4E00\u6B21\u3002","app.component.CopyToClipboard.label":"\u590D\u5236\u5230\u526A\u8D34\u677F","app.component.search.label":"\u641C\u7D22 {target}","app.component.table.duplicate":"\u521B\u5EFA {target} \u7684\u526F\u672C","app.component.table.edit":"\u7F16\u8F91 {target}","app.component.table.select.one-entry":"\u9009\u62E9 {target}","app.components.BlockLink.blog":"\u535A\u5BA2","app.components.BlockLink.blog.content":"\u9605\u8BFB\u6709\u5173Strapi\u548C\u751F\u6001\u7CFB\u7EDF\u7684\u6700\u65B0\u6D88\u606F\u3002","app.components.BlockLink.code":"\u4EE3\u7801\u793A\u4F8B","app.components.BlockLink.code.content":"\u901A\u8FC7\u8BD5\u7528\u793E\u533A\u5F00\u53D1\u7684\u771F\u5B9E\u9879\u76EE\u6765\u5B66\u4E60\u3002","app.components.BlockLink.documentation.content":"\u63A2\u7D22\u57FA\u672C\u6982\u5FF5\u3001\u6307\u5357\u548C\u8BF4\u660E\u3002","app.components.BlockLink.tutorial":"\u6559\u7A0B","app.components.BlockLink.tutorial.content":"\u6309\u7167\u624B\u628A\u624B\u6307\u5F15\u6765\u4F7F\u7528\u548C\u5B9A\u5236Strapi\u3002","app.components.Button.cancel":"\u53D6\u6D88","app.components.Button.confirm":"\u786E\u8BA4","app.components.Button.reset":"\u91CD\u7F6E","app.components.ComingSoonPage.comingSoon":"\u5373\u5C06\u63A8\u51FA","app.components.ConfirmDialog.title":"\u786E\u8BA4","app.components.DownloadInfo.download":"\u4E0B\u8F7D\u4E2D...","app.components.DownloadInfo.text":"\u8FD9\u53EF\u80FD\u9700\u8981\u51E0\u5206\u949F\u65F6\u95F4\u3002\u8C22\u8C22\u4F60\u7684\u8010\u5FC3\u3002","app.components.EmptyAttributes.title":"\u76EE\u524D\u8FD8\u6CA1\u6709\u4EFB\u4F55\u5B57\u6BB5","app.components.EmptyStateLayout.content-document":"\u76EE\u524D\u8FD8\u6CA1\u6709\u4EFB\u4F55\u5185\u5BB9\u3002","app.components.EmptyStateLayout.content-permissions":"\u4F60\u6CA1\u6709\u8BBF\u95EE\u8BE5\u5185\u5BB9\u7684\u6743\u9650","app.components.HomePage.button.blog":"\u5728\u535A\u5BA2\u4E0A\u5BDF\u770B\u66F4\u591A\u5185\u5BB9","app.components.HomePage.community":"\u52A0\u5165\u793E\u533A","app.components.HomePage.community.content":"\u5728\u4E0D\u540C\u7684\u9891\u9053\u4E2D\u4E0E\u56E2\u961F\u6210\u5458\u3001\u8D21\u732E\u8005\u548C\u5F00\u53D1\u8005\u8FDB\u884C\u8BA8\u8BBA\u3002","app.components.HomePage.create":"\u521B\u5EFA\u4F60\u7684\u7B2C\u4E00\u4E2A\u5185\u5BB9\u7C7B\u578B","app.components.HomePage.roadmap":"\u67E5\u770B\u6211\u4EEC\u7684\u8DEF\u7EBF\u56FE","app.components.HomePage.welcome":"\u6B22\u8FCE\u52A0\u5165 \u{1F44B}","app.components.HomePage.welcome.again":"\u6B22\u8FCE \u{1F44B}","app.components.HomePage.welcomeBlock.content":"\u606D\u559C! \u60A8\u5DF2\u767B\u5F55\u4E3A\u7B2C\u4E00\u4E2A\u7BA1\u7406\u5458\u3002\u4E3A\u4E86\u63A2\u7D22Strapi\u63D0\u4F9B\u7684\u5F3A\u5927\u529F\u80FD\uFF0C\u6211\u4EEC\u5EFA\u8BAE\u4F60\u521B\u5EFA\u4F60\u7684\u7B2C\u4E00\u4E2A\u5185\u5BB9\u7C7B\u578B","app.components.HomePage.welcomeBlock.content.again":"\u6211\u4EEC\u5E0C\u671B\u4F60\u5728\u4F60\u7684\u9879\u76EE\u4E0A\u6709\u6240\u8FDB\u5C55! \u8BF7\u968F\u65F6\u9605\u8BFB\u5173\u4E8EStrapi\u7684\u6700\u65B0\u6D88\u606F\u3002\u6211\u4EEC\u5C06\u6839\u636E\u60A8\u7684\u53CD\u9988\u610F\u89C1\uFF0C\u5C3D\u529B\u6539\u8FDB\u4EA7\u54C1\u3002","app.components.HomePage.welcomeBlock.content.issues":"\u95EE\u9898\u3002","app.components.HomePage.welcomeBlock.content.raise":"\u6216\u9F13\u52B1","app.components.ImgPreview.hint":"\u5C06\u4F60\u7684\u6587\u4EF6\u62D6\u653E\u5230\u8FD9\u4E2A\u533A\u57DF\uFF0C\u6216{browse}\u4E00\u4E2A\u8981\u4E0A\u4F20\u7684\u6587\u4EF6","app.components.ImgPreview.hint.browse":"\u6D4F\u89C8","app.components.InputFile.newFile":"\u6DFB\u52A0\u65B0\u6587\u4EF6","app.components.InputFileDetails.open":"\u5728\u65B0\u6807\u7B7E\u4E2D\u6253\u5F00","app.components.InputFileDetails.originalName":"\u539F\u6587\u4EF6\u540D\uFF1A","app.components.InputFileDetails.remove":"\u79FB\u9664\u6B64\u6587\u4EF6","app.components.InputFileDetails.size":"\u5927\u5C0F\uFF1A","app.components.InstallPluginPage.Download.description":"\u4E0B\u8F7D\u548C\u5B89\u88C5\u8BE5\u63D2\u4EF6\u53EF\u80FD\u9700\u8981\u51E0\u79D2\u949F\u3002","app.components.InstallPluginPage.Download.title":"\u4E0B\u8F7D\u4E2D...","app.components.InstallPluginPage.description":"\u8F7B\u677E\u5730\u6269\u5C55\u4F60\u7684\u5E94\u7528\u7A0B\u5E8F\u3002","app.components.LeftMenu.collapse":"\u6536\u8D77\u5BFC\u822A\u680F","app.components.LeftMenu.expand":"\u5C55\u5F00\u5BFC\u822A\u680F","app.components.LeftMenu.general":"\u901A\u7528","app.components.LeftMenu.logout":"\u9000\u51FA","app.components.LeftMenu.plugins":"\u63D2\u4EF6","app.components.LeftMenu.navbrand.title":"Strapi \u4EEA\u8868\u76D8","app.components.LeftMenu.navbrand.workplace":"\u5DE5\u4F5C\u7A7A\u95F4","app.components.LeftMenuFooter.help":"\u5E2E\u52A9","app.components.LeftMenuFooter.poweredBy":"\u7531\u4EE5\u4E0B\u673A\u6784\u63D0\u4F9B","app.components.LeftMenuLinkContainer.collectionTypes":"\u96C6\u5408\u7C7B\u578B","app.components.LeftMenuLinkContainer.configuration":"\u914D\u7F6E","app.components.LeftMenuLinkContainer.general":"\u901A\u7528","app.components.LeftMenuLinkContainer.noPluginsInstalled":"\u5C1A\u672A\u5B89\u88C5\u4EFB\u4F55\u63D2\u4EF6","app.components.LeftMenuLinkContainer.plugins":"\u63D2\u4EF6","app.components.LeftMenuLinkContainer.singleTypes":"\u5355\u4E00\u7C7B\u578B","app.components.ListPluginsPage.deletePlugin.description":"\u5378\u8F7D\u63D2\u4EF6\u53EF\u80FD\u9700\u8981\u51E0\u79D2\u949F\u3002","app.components.ListPluginsPage.deletePlugin.title":"\u5378\u8F7D\u4E2D","app.components.ListPluginsPage.description":"\u9879\u76EE\u4E2D\u5DF2\u5B89\u88C5\u7684\u63D2\u4EF6\u7684\u5217\u8868\u3002","app.components.ListPluginsPage.helmet.title":"\u63D2\u4EF6\u5217\u8868","app.components.Logout.logout":"\u9000\u51FA","app.components.Logout.profile":"\u4E2A\u4EBA\u8D44\u6599","app.components.MarketplaceBanner":"\u5728 Strapi Awesome \u4E0A\u53D1\u73B0\u7531\u793E\u533A\u5F00\u53D1\u7684\u63D2\u4EF6\uFF0C\u4EE5\u53CA\u66F4\u591A\u53EF\u4EE5\u542F\u52A8\u4F60\u7684\u9879\u76EE\u7684\u7CBE\u5F69\u5185\u5BB9\u3002","app.components.MarketplaceBanner.image.alt":"strapi \u706B\u7BAD\u6807\u5FD7","app.components.MarketplaceBanner.link":"\u7ACB\u5373\u67E5\u770B","app.components.NotFoundPage.back":"\u8FD4\u56DE\u9996\u9875","app.components.NotFoundPage.description":"\u627E\u4E0D\u5230\u6B64\u9875\u9762","app.components.Official":"\u5B98\u65B9","app.components.Onboarding.help.button":"\u5E2E\u52A9\u6309\u94AE","app.components.Onboarding.label.completed":"\u5B8C\u6210 %","app.components.Onboarding.title":"\u5165\u95E8\u5F71\u7247","app.components.PluginCard.Button.label.download":"\u4E0B\u8F7D","app.components.PluginCard.Button.label.install":"\u5DF2\u5B89\u88C5","app.components.PluginCard.PopUpWarning.install.impossible.autoReload.needed":"\u8981\u542F\u7528autoReload\u529F\u80FD\u3002\u8BF7\u7528`yarn develop`\u542F\u52A8\u4F60\u7684\u5E94\u7528\u7A0B\u5E8F\u3002","app.components.PluginCard.PopUpWarning.install.impossible.confirm":"\u6211\u4E86\u89E3\uFF01","app.components.PluginCard.PopUpWarning.install.impossible.environment":"\u51FA\u4E8E\u5B89\u5168\u539F\u56E0\uFF0C\u63D2\u4EF6\u53EA\u80FD\u5728\u5F00\u53D1\u73AF\u5883\u4E2D\u4E0B\u8F7D\u3002","app.components.PluginCard.PopUpWarning.install.impossible.title":"\u65E0\u6CD5\u4E0B\u8F7D","app.components.PluginCard.compatible":"\u4E0E\u4F60\u7684\u9879\u76EE\u517C\u5BB9","app.components.PluginCard.compatibleCommunity":"\u4E0E\u793E\u533A\u517C\u5BB9","app.components.PluginCard.more-details":"\u66F4\u591A\u8BE6\u60C5","app.components.ToggleCheckbox.off-label":"\u5173","app.components.ToggleCheckbox.on-label":"\u5F00","app.components.UpgradePlanModal.button":"\u4E86\u89D2\u66F4\u591A","app.components.UpgradePlanModal.limit-reached":"\u5DF2\u7ECF\u8FBE\u5230\u4E0A\u9650","app.components.UpgradePlanModal.text-ce":"\u793E\u533A\u7248","app.components.UpgradePlanModal.text-ee":"\u4F01\u4E1A\u7248","app.components.UpgradePlanModal.text-power":"\u901A\u8FC7\u5C06\u60A8\u7684\u65B9\u6848\u5347\u7EA7\u5230\u4F01\u4E1A\u7248\uFF0C\u5F00\u542F Strapi \u7684\u5168\u90E8\u529F\u80FD","app.components.UpgradePlanModal.text-strapi":"\u901A\u8FC7\u5C06\u4F60\u7684\u65B9\u6848\u5347\u7EA7\u5230 Strapi \u7684","app.components.Users.MagicLink.connect":"\u590D\u5236\u5E76\u5206\u4EAB\u6B64\u94FE\u63A5\u7ED9\u7528\u6237\u4EE5\u5F00\u901A\u8D26\u6237","app.components.Users.MagicLink.connect.sso":"\u5C06\u6B64\u94FE\u63A5\u53D1\u9001\u7ED9\u7528\u6237\uFF0C\u7B2C\u4E00\u6B21\u767B\u5F55\u53EF\u4EE5\u901A\u8FC7SSO\u4F9B\u5E94\u5546\u8FDB\u884C\u3002","app.components.Users.ModalCreateBody.block-title.details":"\u7528\u6237\u8BE6\u60C5","app.components.Users.ModalCreateBody.block-title.roles":"\u7528\u6237\u89D2\u8272","app.components.Users.ModalCreateBody.block-title.roles.description":"\u4E00\u4E2A\u7528\u6237\u53EF\u4EE5\u62E5\u6709\u4E00\u4E2A\u6216\u591A\u4E2A\u89D2\u8272","app.components.Users.SortPicker.button-label":"\u6392\u5E8F","app.components.Users.SortPicker.sortby.email_asc":"\u7535\u5B50\u90AE\u4EF6 (A to Z)","app.components.Users.SortPicker.sortby.email_desc":"\u7535\u5B50\u90AE\u4EF6 (Z to A)","app.components.Users.SortPicker.sortby.firstname_asc":"\u540D\u5B57 (A to Z)","app.components.Users.SortPicker.sortby.firstname_desc":"\u540D\u5B57 (Z to A)","app.components.Users.SortPicker.sortby.lastname_asc":"\u59D3\u6C0F (A to Z)","app.components.Users.SortPicker.sortby.lastname_desc":"\u59D3\u6C0F (Z to A)","app.components.Users.SortPicker.sortby.username_asc":"\u7528\u6237\u540D (A to Z)","app.components.Users.SortPicker.sortby.username_desc":"\u7528\u6237\u540D (Z to A)","app.components.listPlugins.button":"\u6DFB\u52A0\u63D2\u4EF6","app.components.listPlugins.title.none":"\u8FD8\u6CA1\u6709\u5B89\u88C5\u63D2\u4EF6","app.components.listPluginsPage.deletePlugin.error":"\u5378\u8F7D\u63D2\u4EF6\u65F6\u53D1\u751F\u9519\u8BEF","app.containers.App.notification.error.init":"\u8BF7\u6C42 API \u65F6\u53D1\u751F\u9519\u8BEF","app.containers.AuthPage.ForgotPasswordSuccess.text.contact-admin":"\u5982\u679C\u4F60\u6CA1\u6709\u6536\u5230\u8FD9\u4E2A\u94FE\u63A5\uFF0C\u8BF7\u8054\u7CFB\u4F60\u7684\u7BA1\u7406\u5458\u3002","app.containers.AuthPage.ForgotPasswordSuccess.text.email":"\u6536\u5230\u4F60\u7684\u5BC6\u7801\u6062\u590D\u94FE\u63A5\u53EF\u80FD\u9700\u8981\u51E0\u5206\u949F\u65F6\u95F4\u3002","app.containers.AuthPage.ForgotPasswordSuccess.title":"\u7535\u5B50\u90AE\u4EF6\u5DF2\u53D1\u9001","app.containers.Users.EditPage.form.active.label":"\u6709\u6548","app.containers.Users.EditPage.header.label":"\u7F16\u8F91 {name}","app.containers.Users.EditPage.header.label-loading":"\u7F16\u8F91\u7528\u6237","app.containers.Users.EditPage.roles-bloc-title":"\u5F52\u5C5E\u7684\u89D2\u8272","app.containers.Users.ModalForm.footer.button-success":"\u9080\u8BF7\u7528\u6237","app.links.configure-view":"\u914D\u7F6E\u89C6\u56FE","app.static.links.cheatsheet":"\u5FEB\u901F\u624B\u518C","app.utils.SelectOption.defaultMessage":" ","app.utils.add-filter":"\u6DFB\u52A0\u8FC7\u6EE4\u5668","app.utils.close-label":"\u5173\u95ED","app.utils.defaultMessage":" ","app.utils.duplicate":"\u521B\u5EFA\u526F\u672C","app.utils.edit":"\u7F16\u8F91","app.utils.errors.file-too-big.message":"\u6587\u4EF6\u592A\u5927\u4E86","app.utils.filter-value":"\u8FC7\u6EE4\u503C","app.utils.filters":"\u8FC7\u6EE4\u5668","app.utils.notify.data-loaded":"{target} \u5DF2\u52A0\u8F7D","app.utils.placeholder.defaultMessage":" ","app.utils.publish":"\u53D1\u5E03","app.utils.select-all":"\u5168\u9009","app.utils.select-field":"\u9009\u62E9\u5B57\u6BB5","app.utils.select-filter":"\u9009\u62E9\u8FC7\u6EE4\u5668","app.utils.unpublish":"\u53D6\u6D88\u53D1\u5E03","clearLabel":"\u6E05\u9664","coming.soon":"\u6B64\u5185\u5BB9\u76EE\u524D\u6B63\u5728\u5EFA\u8BBE\u4E2D\uFF0C\u5C06\u5728\u51E0\u5468\u540E\u6062\u590D!","component.Input.error.validation.integer":"\u8FD9\u4E2A\u503C\u5FC5\u987B\u662F\u4E00\u4E2A\u6574\u6570","components.AutoReloadBlocker.description":"\u7528\u4EE5\u4E0B\u547D\u4EE4\u4E4B\u4E00\u8FD0\u884CStrapi\uFF1A","components.AutoReloadBlocker.header":"\u8FD9\u4E2A\u63D2\u4EF6\u9700\u8981\u91CD\u65B0\u52A0\u8F7D\u540E\u624D\u80FD\u8F7D\u5165","components.ErrorBoundary.title":"\u51FA\u9519\u4E86...","components.FilterOptions.FILTER_TYPES.$contains":"\u5305\u542B (\u533A\u5206\u5927\u5C0F\u5199)","components.FilterOptions.FILTER_TYPES.$endsWith":"\u7ED3\u675F\u4E8E","components.FilterOptions.FILTER_TYPES.$eq":"\u7B49\u4E8E","components.FilterOptions.FILTER_TYPES.$gt":"\u5927\u4E8E","components.FilterOptions.FILTER_TYPES.$gte":"\u5927\u4E8E\u6216\u7B49\u4E8E","components.FilterOptions.FILTER_TYPES.$lt":"\u5C0F\u4E8E","components.FilterOptions.FILTER_TYPES.$lte":"\u5C0F\u4E8E\u6216\u7B49\u4E8E","components.FilterOptions.FILTER_TYPES.$ne":"\u4E0D\u7B49\u4E8E","components.FilterOptions.FILTER_TYPES.$neq":"\u4E0D\u7B49\u4E8E","components.FilterOptions.FILTER_TYPES.$notContains":"\u4E0D\u5305\u542B (\u533A\u5206\u5927\u5C0F\u5199)","components.FilterOptions.FILTER_TYPES.$notNull":"\u4E0D\u4E3A\u7A7A","components.FilterOptions.FILTER_TYPES.$null":"\u4E3A\u7A7A","components.FilterOptions.FILTER_TYPES.$startsWith":"\u5F00\u59CB\u4E8E","components.Input.error.attribute.key.taken":"\u503C\u5DF2\u88AB\u5360\u7528","components.Input.error.attribute.sameKeyAndName":"\u4E0D\u80FD\u76F8\u540C","components.Input.error.attribute.taken":"\u5B57\u6BB5\u540D\u5DF2\u88AB\u5360\u7528","components.Input.error.contain.lowercase":"\u5BC6\u7801\u81F3\u5C11\u5305\u542B\u4E00\u4E2A\u5C0F\u5199\u5B57\u6BCD","components.Input.error.contain.number":"\u5BC6\u7801\u81F3\u5C11\u5305\u542B\u4E00\u4E2A\u6570\u5B57","components.Input.error.contain.uppercase":"\u5BC6\u7801\u81F3\u5C11\u5305\u542B\u4E00\u4E2A\u5927\u5199\u5B57\u6BCD","components.Input.error.contentTypeName.taken":"\u540D\u79F0\u5DF2\u88AB\u5360\u7528","components.Input.error.custom-error":"{errorMessage} ","components.Input.error.password.noMatch":"\u5BC6\u7801\u4E0D\u5339\u914D","components.Input.error.validation.email":"\u90AE\u7BB1\u683C\u5F0F\u4E0D\u6B63\u786E","components.Input.error.validation.json":"JSON\u683C\u5F0F\u4E0D\u6B63\u786E","components.Input.error.validation.max":"\u5927\u4E8E\u6700\u5927\u503C","components.Input.error.validation.maxLength":"\u957F\u5EA6\u592A\u957F","components.Input.error.validation.min":"\u5C0F\u4E8E\u6700\u5C0F\u503C","components.Input.error.validation.minLength":"\u957F\u5EA6\u592A\u77ED","components.Input.error.validation.minSupMax":"\u6700\u5C0F\u503C\u4E0D\u80FD\u5927\u4E8E\u6700\u5927\u503C","components.Input.error.validation.regex":"\u6B63\u5219\u8868\u8FBE\u5F0F\u683C\u5F0F\u4E0D\u6B63\u786E\u3002","components.Input.error.validation.required":"\u5FC5\u586B\u9879","components.Input.error.validation.unique":"\u5DF2\u88AB\u5360\u7528","components.InputSelect.option.placeholder":"\u9009\u62E9","components.ListRow.empty":"\u6CA1\u6709\u6570\u636E\u53EF\u4EE5\u663E\u793A","components.NotAllowedInput.text":"\u6CA1\u6709\u6743\u9650\u663E\u793A\u6B64\u5B57\u6BB5","components.OverlayBlocker.description":"\u4F60\u6B63\u5728\u4F7F\u7528\u4E00\u4E2A\u9700\u8981\u670D\u52A1\u5668\u91CD\u65B0\u542F\u52A8\u7684\u529F\u80FD\u3002\u8BF7\u7B49\u5F85\uFF0C\u76F4\u5230\u670D\u52A1\u5668\u542F\u52A8\u3002","components.OverlayBlocker.description.serverError":"\u670D\u52A1\u5668\u5DF2\u7ECF\u91CD\u65B0\u542F\u52A8\uFF0C\u8BF7\u5728\u7EC8\u7AEF\u68C0\u67E5\u65E5\u5FD7\u3002","components.OverlayBlocker.title":"\u7B49\u5F85\u91CD\u65B0\u542F\u52A8...","components.OverlayBlocker.title.serverError":"\u91CD\u65B0\u542F\u52A8\u65F6\u95F4\u8D85\u8FC7\u9884\u671F","components.PageFooter.select":"\u6761\u6BCF\u9875","components.ProductionBlocker.description":"\u4E3A\u4E86\u5B89\u5168\u8D77\u89C1\uFF0C\u6211\u4EEC\u5FC5\u987B\u5728\u5176\u4ED6\u73AF\u5883\u4E0B\u7981\u7528\u8FD9\u4E2A\u63D2\u4EF6\u3002","components.ProductionBlocker.header":"\u8FD9\u4E2A\u63D2\u4EF6\u53EA\u5728\u5F00\u53D1\u73AF\u5883\u4E2D\u53EF\u7528\u3002","components.Search.placeholder":"\u641C\u7D22...","components.TableHeader.sort":"\u6309{label}\u6392\u5E8F","components.Wysiwyg.ToggleMode.markdown-mode":"Markdown \u6A21\u5F0F","components.Wysiwyg.ToggleMode.preview-mode":"\u9884\u89C8\u6A21\u5F0F","components.Wysiwyg.collapse":"\u6536\u8D77","components.Wysiwyg.selectOptions.H1":"\u6807\u98981","components.Wysiwyg.selectOptions.H2":"\u6807\u98982","components.Wysiwyg.selectOptions.H3":"\u6807\u98983","components.Wysiwyg.selectOptions.H4":"\u6807\u98984","components.Wysiwyg.selectOptions.H5":"\u6807\u98985","components.Wysiwyg.selectOptions.H6":"\u6807\u98986","components.Wysiwyg.selectOptions.title":"\u6DFB\u52A0\u6807\u9898","components.WysiwygBottomControls.charactersIndicators":"\u5B57\u7B26","components.WysiwygBottomControls.fullscreen":"\u5C55\u5F00","components.WysiwygBottomControls.uploadFiles":"\u62D6\u653E\u6587\u4EF6\uFF0C\u4ECE\u526A\u8D34\u677F\u7C98\u8D34\u6216 {browse}.","components.WysiwygBottomControls.uploadFiles.browse":"\u9009\u62E9\u6587\u4EF6","components.pagination.go-to":"\u5230 {page} \u9875","components.pagination.go-to-next":"\u4E0B\u4E00\u9875","components.pagination.go-to-previous":"\u4E0A\u4E00\u9875","components.pagination.remaining-links":"\u53CA {number} \u4E2A\u5176\u4ED6\u94FE\u63A5","components.popUpWarning.button.cancel":"\u4E0D, \u53D6\u6D88","components.popUpWarning.button.confirm":"\u662F, \u786E\u8BA4","components.popUpWarning.message":"\u4F60\u786E\u5B9A\u8981\u5220\u9664\u8FD9\u4E2A\u5417\uFF1F","components.popUpWarning.title":"\u8BF7\u786E\u8BA4","containers.SettingPage.add.relational-field":"\u63D2\u5165\u53E6\u4E00\u4E2A\u5173\u7CFB\u5B57\u6BB5","containers.SettingPage.editSettings.description":"\u62D6\u653E\u5B57\u6BB5\u6765\u6784\u5EFA\u5E03\u5C40","content-manager.App.schemas.data-loaded":"\u6A21\u5F0F\u5DF2\u7ECF\u6210\u529F\u52A0\u8F7D","content-manager.DynamicTable.relation-loaded":"\u5173\u8054\u5DF2\u7ECF\u6210\u529F\u52A0\u8F7D","content-manager.EditRelations.title":"\u5173\u8054\u6570\u636E","content-manager.HeaderLayout.button.label-add-entry":"\u6DFB\u52A0\u6761\u76EE","content-manager.api.id":"API ID","content-manager.components.AddFilterCTA.add":"\u8FC7\u6EE4\u5668","content-manager.components.AddFilterCTA.hide":"\u8FC7\u6EE4\u5668","content-manager.components.DragHandle-label":"\u62D6\u66F3","content-manager.components.DraggableAttr.edit":"\u70B9\u51FB\u4EE5\u7F16\u8F91","content-manager.components.DraggableCard.delete.field":"\u5220\u9664 {item}","content-manager.components.DraggableCard.edit.field":"\u7F16\u8F91 {item}","content-manager.components.DraggableCard.move.field":"\u79FB\u52A8 {item}","content-manager.components.DynamicTable.row-line":"\u7B2C {number} \u6761\u8BB0\u5F55","content-manager.components.DynamicZone.ComponentPicker-label":"\u9009\u62E9\u4E00\u4E2A\u7EC4\u4EF6","content-manager.components.DynamicZone.add-component":"\u6DFB\u52A0\u7EC4\u4EF6 {componentName}","content-manager.components.DynamicZone.delete-label":"\u5220\u9664 {name}","content-manager.components.DynamicZone.error-message":"\u8FD9\u4E2A\u7EC4\u4EF6\u6709\u9519\u8BEF","content-manager.components.DynamicZone.missing-components":"\u8FD9\u91CC {number, plural, =0 {\u6709 # \u9057\u5931\u7684\u7EC4\u4EF6} one {\u6709 # \u9057\u5931\u7684\u7EC4\u4EF6} other {\u6709 # \u9057\u5931\u7684\u7EC4\u4EF6}}","content-manager.components.DynamicZone.move-down-label":"\u5C06\u7EC4\u4EF6\u5411\u4E0B\u79FB\u52A8","content-manager.components.DynamicZone.move-up-label":"\u5C06\u7EC4\u4EF6\u5411\u4E0A\u79FB\u52A8","content-manager.components.DynamicZone.pick-compo":"\u9009\u62E9\u4E00\u4E2A\u7EC4\u4EF6","content-manager.components.DynamicZone.required":"\u5FC5\u987B\u6709\u4E00\u4E2A\u7EC4\u4EF6","content-manager.components.EmptyAttributesBlock.button":"\u524D\u5F80\u8BBE\u7F6E\u9875\u9762","content-manager.components.EmptyAttributesBlock.description":"\u4F60\u53EF\u4EE5\u66F4\u6539\u4F60\u7684\u8BBE\u7F6E","content-manager.components.FieldItem.linkToComponentLayout":"\u8BBE\u7F6E\u7EC4\u4EF6\u7684\u5E03\u5C40","content-manager.components.FieldSelect.label":"\u6DFB\u52A0\u4E00\u4E2A\u5B57\u6BB5","content-manager.components.FilterOptions.button.apply":"\u5E94\u7528","content-manager.components.FiltersPickWrapper.PluginHeader.actions.apply":"\u5E94\u7528","content-manager.components.FiltersPickWrapper.PluginHeader.actions.clearAll":"\u6E05\u9664\u6240\u6709","content-manager.components.FiltersPickWrapper.PluginHeader.description":"\u8BBE\u7F6E\u8FC7\u6EE4\u6761\u76EE\u7684\u6761\u4EF6","content-manager.components.FiltersPickWrapper.PluginHeader.title.filter":"\u8FC7\u6EE4\u5668","content-manager.components.FiltersPickWrapper.hide":"\u9690\u85CF","content-manager.components.LeftMenu.Search.label":"\u641C\u7D22\u5185\u5BB9\u7C7B\u578B","content-manager.components.LeftMenu.collection-types":"\u96C6\u5408\u7C7B\u578B","content-manager.components.LeftMenu.single-types":"\u5355\u4E00\u7C7B\u578B","content-manager.components.LimitSelect.itemsPerPage":"\u6BCF\u9875\u663E\u793A\u6761\u76EE\u6570","content-manager.components.NotAllowedInput.text":"\u6CA1\u6709\u6743\u9650\u663E\u793A\u6B64\u5B57\u6BB5","content-manager.components.RepeatableComponent.error-message":"\u8FD9\u4E2A\u7EC4\u4EF6\u5305\u542B\u9519\u8BEF","content-manager.components.Search.placeholder":"\u641C\u7D22...","content-manager.components.Select.draft-info-title":"\u72B6\u6001: \u8349\u7A3F","content-manager.components.Select.publish-info-title":"\u72B6\u6001: \u5DF2\u53D1\u5E03","content-manager.components.SettingsViewWrapper.pluginHeader.description.edit-settings":"\u81EA\u5B9A\u4E49\u7F16\u8F91\u89C6\u56FE\u7684\u5916\u89C2\u3002","content-manager.components.SettingsViewWrapper.pluginHeader.description.list-settings":"\u5B9A\u4E49\u5217\u8868\u89C6\u56FE\u7684\u8BBE\u7F6E\u3002","content-manager.components.SettingsViewWrapper.pluginHeader.title":"\u914D\u7F6E\u89C6\u56FE - {name}","content-manager.components.TableDelete.delete":"\u5220\u9664\u6240\u6709","content-manager.components.TableDelete.deleteSelected":"\u5220\u9664\u5DF2\u9009","content-manager.components.TableDelete.label":"\u5DF2\u9009\u62E9 {number, plural, one {# \u4E2A\u6761\u76EE} other {# \u4E2A\u6761\u76EE}}","content-manager.components.TableEmpty.withFilters":"\u6309\u8FC7\u6EE4\u6761\u4EF6\u627E\u4E0D\u5230 {contentType}...","content-manager.components.TableEmpty.withSearch":"\u6309\u641C\u7D22\u6761\u4EF6 ({search}) \u627E\u4E0D\u5230\u76F8\u5E94\u7684 {contentType}...","content-manager.components.TableEmpty.withoutFilter":"\u627E\u4E0D\u5230 {contentType}...","content-manager.components.empty-repeatable":"\u8FD8\u6CA1\u6709\u6761\u76EE\u3002\u70B9\u51FB\u4E0B\u9762\u7684\u6309\u94AE\u6DFB\u52A0\u4E00\u4E2A\u3002","content-manager.components.notification.info.maximum-requirement":"\u4F60\u5DF2\u7ECF\u8FBE\u5230\u4E86\u53EF\u5B9A\u4E49\u5B57\u6BB5\u6570\u7684\u6700\u5927\u6570\u91CF","content-manager.components.notification.info.minimum-requirement":"\u6DFB\u52A0\u4E00\u4E2A\u5B57\u6BB5\u4EE5\u7B26\u5408\u5B9A\u4E49\u5B57\u6BB5\u6570\u7684\u6700\u4F4E\u8981\u6C42","content-manager.components.repeatable.reorder.error":"\u5728\u91CD\u65B0\u6392\u5E8F\u60A8\u7684\u7EC4\u4EF6\u5B57\u6BB5\u65F6\u53D1\u751F\u9519\u8BEF\uFF0C\u8BF7\u91CD\u8BD5","content-manager.components.reset-entry":"\u91CD\u7F6E\u6761\u76EE","content-manager.components.uid.apply":"\u5E94\u7528","content-manager.components.uid.available":"\u53EF\u7528","content-manager.components.uid.regenerate":"\u91CD\u65B0\u751F\u6210","content-manager.components.uid.suggested":"\u63A8\u8350","content-manager.components.uid.unavailable":"\u4E0D\u53EF\u7528","content-manager.containers.Edit.Link.Layout":"\u914D\u7F6E\u5E03\u5C40","content-manager.containers.Edit.Link.Model":"\u7F16\u8F91\u96C6\u5408\u7C7B\u578B","content-manager.containers.Edit.addAnItem":"\u6DFB\u52A0\u5173\u8054...","content-manager.containers.Edit.clickToJump":"\u70B9\u51FB\u8DF3\u8F6C\u5230\u8BE5\u6761\u76EE","content-manager.containers.Edit.delete":"\u5220\u9664","content-manager.containers.Edit.delete-entry":"\u5220\u9664\u8BE5\u6761\u76EE","content-manager.containers.Edit.editing":"\u7F16\u8F91\u4E2D...","content-manager.containers.Edit.information":"\u4FE1\u606F","content-manager.containers.Edit.information.by":"\u64CD\u4F5C\u4EBA","content-manager.containers.Edit.information.created":"\u521B\u5EFA\u4E8E","content-manager.containers.Edit.information.draftVersion":"\u8349\u7A3F\u7248\u672C","content-manager.containers.Edit.information.editing":"\u7F16\u8F91\u4E2D","content-manager.containers.Edit.information.lastUpdate":"\u66F4\u65B0\u4E8E","content-manager.containers.Edit.information.publishedVersion":"\u5DF2\u53D1\u5E03\u7248\u672C","content-manager.containers.Edit.pluginHeader.title.new":"\u521B\u5EFA\u65B0\u6761\u76EE","content-manager.containers.Edit.reset":"\u91CD\u7F6E","content-manager.containers.Edit.returnList":"\u8FD4\u56DE\u5217\u8868","content-manager.containers.Edit.seeDetails":"\u8BE6\u60C5","content-manager.containers.Edit.submit":"\u4FDD\u5B58","content-manager.containers.EditSettingsView.modal-form.edit-field":"\u7F16\u8F91\u5B57\u6BB5","content-manager.containers.EditView.add.new-entry":"\u6DFB\u52A0\u65B0\u6761\u76EE","content-manager.containers.EditView.notification.errors":"\u8868\u5355\u4E2D\u5305\u542B\u4E00\u4E9B\u9519\u8BEF","content-manager.containers.Home.introduction":"\u8981\u7F16\u8F91\u4F60\u7684\u6761\u76EE\uFF0C\u8BF7\u5230\u5DE6\u8FB9\u83DC\u5355\u4E2D\u7684\u7279\u5B9A\u94FE\u63A5\u3002\u8FD9\u4E2A\u63D2\u4EF6\u5C1A\u5728\u79EF\u6781\u5F00\u53D1\u4E2D\uFF0C\u6CA1\u6709\u9002\u5F53\u7684\u65B9\u6CD5\u6765\u7F16\u8F91\u8BBE\u7F6E","content-manager.containers.Home.pluginHeaderDescription":"\u901A\u8FC7\u4E00\u4E2A\u5F3A\u5927\u800C\u6F02\u4EAE\u7684\u754C\u9762\u7BA1\u7406\u4F60\u7684\u6761\u76EE\u3002","content-manager.containers.Home.pluginHeaderTitle":"\u5185\u5BB9\u7BA1\u7406\u5668","content-manager.containers.List.draft":"\u8349\u7A3F","content-manager.containers.List.errorFetchRecords":"\u9519\u8BEF","content-manager.containers.List.published":"\u5DF2\u53D1\u5E03","content-manager.containers.ListPage.displayedFields":"\u663E\u793A\u5B57\u6BB5","content-manager.containers.ListPage.items":"{number, plural, =0 {\u9879} one {\u9879} other {\u9879}}","content-manager.containers.ListPage.table-headers.published_at":"\u72B6\u6001","content-manager.containers.ListSettingsView.modal-form.edit-label":"\u7F16\u8F91 {fieldName}","content-manager.containers.SettingPage.add.field":"\u6DFB\u52A0\u5B57\u6BB5","content-manager.containers.SettingPage.add.relational-field":"\u6DFB\u52A0\u5173\u8054\u5B57\u6BB5","content-manager.containers.SettingPage.attributes":"\u5C5E\u6027","content-manager.containers.SettingPage.attributes.description":"\u5B9A\u4E49\u5B57\u6BB5\u7684\u6392\u5E8F","content-manager.containers.SettingPage.editSettings.description":"\u62D6\u653E\u5B57\u6BB5\u4EE5\u5EFA\u7ACB\u5E03\u5C40","content-manager.containers.SettingPage.editSettings.entry.title":"\u6761\u76EE\u6807\u9898","content-manager.containers.SettingPage.editSettings.entry.title.description":"\u8BBE\u7F6E\u53EF\u663E\u793A\u7684\u5B57\u6BB5","content-manager.containers.SettingPage.editSettings.relation-field.description":"\u8BBE\u7F6E\u5728\u7F16\u8F91\u548C\u5217\u8868\u89C6\u56FE\u4E2D\u90FD\u53EF\u663E\u793A\u7684\u5B57\u6BB5","content-manager.containers.SettingPage.editSettings.title":"\u7F16\u8F91 (\u8BBE\u7F6E)","content-manager.containers.SettingPage.layout":"\u5E03\u5C40","content-manager.containers.SettingPage.listSettings.description":"\u914D\u7F6E\u96C6\u5408\u7C7B\u578B\u7684\u9009\u9879","content-manager.containers.SettingPage.listSettings.title":"\u5217\u8868\u89C6\u56FE (\u8BBE\u7F6E)","content-manager.containers.SettingPage.pluginHeaderDescription":"\u914D\u7F6E\u6307\u5B9A\u96C6\u5408\u7C7B\u578B\u7684\u8BBE\u7F6E","content-manager.containers.SettingPage.relations":"\u5173\u8054\u5B57\u6BB5","content-manager.containers.SettingPage.settings":"\u8BBE\u7F6E","content-manager.containers.SettingPage.view":"\u89C6\u56FE","content-manager.containers.SettingViewModel.pluginHeader.title":"\u5185\u5BB9\u7BA1\u7406\u5668 - {\u540D\u79F0}","content-manager.containers.SettingsPage.Block.contentType.description":"\u914D\u7F6E\u6307\u5B9A\u5185\u5BB9\u7C7B\u578B\u7684\u8BBE\u7F6E","content-manager.containers.SettingsPage.Block.contentType.title":"\u96C6\u5408\u7C7B\u578B","content-manager.containers.SettingsPage.Block.generalSettings.description":"\u4E3A\u4F60\u7684\u96C6\u5408\u7C7B\u578B\u914D\u7F6E\u9ED8\u8BA4\u9009\u9879","content-manager.containers.SettingsPage.Block.generalSettings.title":"\u901A\u7528","content-manager.containers.SettingsPage.pluginHeaderDescription":"\u4E3A\u4F60\u6240\u6709\u7684\u96C6\u5408\u7C7B\u578B\u548C\u7EC4\u914D\u7F6E\u8BBE\u7F6E","content-manager.containers.SettingsView.list.subtitle":"\u914D\u7F6E\u4F60\u7684\u96C6\u5408\u7C7B\u578B\u548C\u7EC4\u7684\u5E03\u5C40\u548C\u663E\u793A","content-manager.containers.SettingsView.list.title":"\u663E\u793A\u914D\u7F6E","content-manager.edit-settings-view.link-to-ctb.components":"\u7F16\u8F91\u7EC4\u4EF6","content-manager.edit-settings-view.link-to-ctb.content-types":"\u7F16\u8F91\u5185\u5BB9\u7C7B\u578B","content-manager.emptyAttributes.button":"\u524D\u5F80\u96C6\u5408\u7C7B\u578B\u6784\u5EFA\u5668","content-manager.emptyAttributes.description":"\u4E3A\u4F60\u7684\u96C6\u5408\u7C7B\u578B\u4E2D\u6DFB\u52A0\u4F60\u7684\u7B2C\u4E00\u4E2A\u5B57\u6BB5","content-manager.emptyAttributes.title":"\u76EE\u524D\u8FD8\u6CA1\u6709\u4EFB\u4F55\u5B57\u6BB5","content-manager.error.attribute.key.taken":"\u8BE5\u503C\u5DF2\u5B58\u5728","content-manager.error.attribute.sameKeyAndName":"\u4E0D\u80FD\u76F8\u540C","content-manager.error.attribute.taken":"\u8BE5\u5B57\u6BB5\u540D\u5DF2\u5B58\u5728","content-manager.error.contentTypeName.taken":"\u8BE5\u540D\u79F0\u5DF2\u5B58\u5728","content-manager.error.model.fetch":"\u5728\u83B7\u53D6\u6A21\u578B\u914D\u7F6E\u65F6\u53D1\u751F\u4E86\u4E00\u4E2A\u9519\u8BEF\u3002","content-manager.error.record.create":"\u5728\u521B\u5EFA\u8BB0\u5F55\u65F6\u53D1\u751F\u4E86\u4E00\u4E2A\u9519\u8BEF\u3002","content-manager.error.record.delete":"\u5728\u5220\u9664\u8BB0\u5F55\u65F6\u53D1\u751F\u4E86\u4E00\u4E2A\u9519\u8BEF\u3002","content-manager.error.record.fetch":"\u5728\u83B7\u53D6\u8BB0\u5F55\u65F6\u53D1\u751F\u4E86\u4E00\u4E2A\u9519\u8BEF\u3002","content-manager.error.record.update":"\u5728\u8BB0\u5F55\u66F4\u65B0\u65F6\u53D1\u751F\u4E86\u4E00\u4E2A\u9519\u8BEF\u3002","content-manager.error.records.count":"\u5728\u83B7\u53D6\u8BA1\u6570\u5668\u8BB0\u5F55\u65F6\u53D1\u751F\u4E86\u4E00\u4E2A\u9519\u8BEF\u3002","content-manager.error.records.fetch":"\u5728\u83B7\u53D6\u8BB0\u5F55\u65F6\u53D1\u751F\u4E86\u4E00\u4E2A\u9519\u8BEF\u3002","content-manager.error.schema.generation":"\u5728\u751F\u6210\u6A21\u5F0F\u65F6\u53D1\u751F\u4E86\u4E00\u4E2A\u9519\u8BEF\u3002","content-manager.error.validation.json":"\u65E0\u6548\u7684JSON\u683C\u5F0F","content-manager.error.validation.max":"\u6570\u503C\u592A\u5927","content-manager.error.validation.maxLength":"\u957F\u5EA6\u592A\u957F","content-manager.error.validation.min":"\u6570\u503C\u592A\u5C0F","content-manager.error.validation.minLength":"\u957F\u5EA6\u592A\u77ED","content-manager.error.validation.minSupMax":"\u6700\u5C0F\u503C\u4E0D\u80FD\u5927\u4E8E\u6700\u5927\u503C","content-manager.error.validation.regex":"\u6B63\u5219\u8868\u8FBE\u5F0F\u683C\u5F0F\u4E0D\u6B63\u786E","content-manager.error.validation.required":"\u5FC5\u586B\u9879","content-manager.form.Input.bulkActions":"\u5F00\u542F\u6279\u91CF\u64CD\u4F5C","content-manager.form.Input.defaultSort":"\u9ED8\u8BA4\u6392\u5E8F\u5B57\u6BB5","content-manager.form.Input.description":"\u63CF\u8FF0","content-manager.form.Input.description.placeholder":"\u8FD9\u4E2A\u5B57\u6BB5\u7684\u63CF\u8FF0","content-manager.form.Input.editable":"\u53EF\u7F16\u8F91\u5B57\u6BB5","content-manager.form.Input.filters":"\u5F00\u542F\u8FC7\u6EE4\u5668","content-manager.form.Input.label":"\u6807\u7B7E","content-manager.form.Input.label.inputDescription":"\u8BE5\u503C\u4F1A\u8986\u76D6\u663E\u793A\u5728\u8868\u5934\u7684\u6807\u7B7E","content-manager.form.Input.pageEntries":"\u6BCF\u9875\u6761\u76EE\u6570","content-manager.form.Input.pageEntries.inputDescription":"\u6CE8\u610F\uFF1A\u4F60\u53EF\u4EE5\u5728\u96C6\u5408\u7C7B\u578B\u8BBE\u7F6E\u9875\u9762\u4E2D\u8986\u76D6\u8BE5\u503C","content-manager.form.Input.placeholder":"\u63D0\u793A\u4FE1\u606F","content-manager.form.Input.placeholder.placeholder":"\u5728\u6587\u5B57\u8F93\u5165\u6846\u4E2D\u663E\u793A\u63D0\u793A\u4FE1\u606F","content-manager.form.Input.search":"\u5F00\u542F\u641C\u7D22","content-manager.form.Input.search.field":"\u5141\u8BB8\u8BE5\u5B57\u6BB5\u88AB\u641C\u7D22","content-manager.form.Input.sort.field":"\u5141\u8BB8\u6309\u8BE5\u5B57\u6BB5\u6392\u5E8F","content-manager.form.Input.sort.order":"\u9ED8\u8BA4\u6392\u5E8F\u987A\u5E8F","content-manager.form.Input.wysiwyg":"\u6240\u89C1\u5373\u6240\u5F97\u7F16\u8F91\u5668","content-manager.global.displayedFields":"\u5DF2\u663E\u793A\u5B57\u6BB5","content-manager.groups":"\u7FA4\u7EC4","content-manager.groups.numbered":"\u7FA4\u7EC4 ({number})","content-manager.header.name":"\u5185\u5BB9","content-manager.link-to-ctb":"\u7F16\u8F91\u6A21\u578B","content-manager.models":"\u96C6\u5408\u7C7B\u578B","content-manager.models.numbered":"\u96C6\u5408\u7C7B\u578B ({number})","content-manager.notification.error.displayedFields":"\u4F60\u81F3\u5C11\u9700\u8981\u663E\u793A\u4E00\u4E2A\u5B57\u6BB5","content-manager.notification.error.relationship.fetch":"\u5728\u83B7\u53D6\u5173\u7CFB\u65F6\u53D1\u751F\u4E86\u4E00\u4E2A\u9519\u8BEF","content-manager.notification.info.SettingPage.disableSort":"\u4F60\u81F3\u5C11\u9700\u8981\u4E00\u4E2A\u7528\u6765\u6392\u5E8F\u7684\u5B57\u6BB5","content-manager.notification.info.minimumFields":"\u4F60\u81F3\u5C11\u9700\u8981\u4E00\u4E2A\u7528\u6765\u663E\u793A\u7684\u5B57\u6BB5","content-manager.notification.upload.error":"\u5728\u4E0A\u4F20\u6587\u4EF6\u65F6\u53D1\u751F\u4E86\u4E00\u4E2A\u9519\u8BEF","content-manager.pageNotFound":"\u627E\u4E0D\u5230\u9875\u9762","content-manager.pages.ListView.header-subtitle":"\u627E\u5230 {number, plural, =0 {# \u6761\u76EE} one {# \u6761\u76EE} other {# \u6761\u76EE}}","content-manager.pages.NoContentType.button":"\u521B\u5EFA\u4F60\u7684\u7B2C\u4E00\u4E2A\u5185\u5BB9\u7C7B\u578B","content-manager.pages.NoContentType.text":"\u8FD8\u6CA1\u6709\u4EFB\u4F55\u5185\u5BB9\uFF0C\u6211\u4EEC\u5EFA\u8BAE\u60A8\u521B\u5EFA\u60A8\u7684\u7B2C\u4E00\u4E2A\u5185\u5BB9\u7C7B\u578B\u3002","content-manager.permissions.not-allowed.create":"\u4F60\u4E0D\u88AB\u5141\u8BB8\u521B\u5EFA\u6587\u6863","content-manager.permissions.not-allowed.update":"\u4F60\u4E0D\u88AB\u5141\u8BB8\u67E5\u770B\u6587\u4EF6","content-manager.plugin.description.long":"\u67E5\u770B\u3001\u7F16\u8F91\u548C\u5220\u9664\u6570\u636E\u5E93\u4E2D\u7684\u6570\u636E\u7684\u5FEB\u901F\u65B9\u6CD5\u3002","content-manager.plugin.description.short":"\u67E5\u770B\u3001\u7F16\u8F91\u548C\u5220\u9664\u6570\u636E\u5E93\u4E2D\u7684\u6570\u636E\u7684\u5FEB\u901F\u65B9\u6CD5\u3002","content-manager.popUpWarning.bodyMessage.contentType.delete":"\u4F60\u786E\u5B9A\u8981\u5220\u9664\u8FD9\u4E2A\u6761\u76EE\u5417\uFF1F","content-manager.popUpWarning.bodyMessage.contentType.delete.all":"\u4F60\u786E\u5B9A\u8981\u5220\u9664\u8FD9\u4E9B\u6761\u76EE\u5417\uFF1F","content-manager.popUpWarning.warning.cancelAllSettings":"\u4F60\u786E\u5B9A\u8981\u53D6\u6D88\u8FD9\u4E9B\u4FEE\u6539\u5417\uFF1F","content-manager.popUpWarning.warning.publish-question":"\u4F60\u8FD8\u60F3\u53D1\u5E03\u8FD9\u4E2A\u6761\u76EE\u5417\uFF1F","content-manager.popUpWarning.warning.unpublish":"\u53D6\u6D88\u53D1\u5E03\u8FD9\u4E2A\u5185\u5BB9<br></br>\u5C06\u81EA\u52A8\u53D8\u6210\u8349\u7A3F.","content-manager.popUpWarning.warning.unpublish-question":"\u4F60\u786E\u5B9A\u4F60\u8981\u53D6\u6D88\u53D1\u5E03\u5417\uFF1F","content-manager.popUpWarning.warning.updateAllSettings":"\u8FD9\u5C06\u4FEE\u6539\u4F60\u7684\u6240\u6709\u8BBE\u7F6E","content-manager.popUpwarning.warning.has-draft-relations.button-confirm":"\u662F, \u53D1\u5E03","content-manager.popUpwarning.warning.has-draft-relations.message":"<b>{count, plural, =0 { \u4E2A\u5173\u8054\u7684\u5185\u5BB9} one { \u4E2A\u5173\u8054\u7684\u5185\u5BB9} other { \u4E2A\u5173\u8054\u7684\u5185\u5BB9}}</b> \u5C1A\u672A\u53D1\u5E03\u3002<br></br>\u5B83\u53EF\u80FD\u4F1A\u5728\u4F60\u7684\u9879\u76EE\u4E0A\u4EA7\u751F\u5173\u8054\u5931\u6548\u548C\u9519\u8BEF\u3002","content-manager.popover.display-relations.label":"\u663E\u793A\u5173\u8054","content-manager.select.currently.selected":"\u5DF2\u9009\u4E2D {count} \u9879","content-manager.success.record.delete":"\u5DF2\u5220\u9664","content-manager.success.record.publish":"\u5DF2\u53D1\u5E03","content-manager.success.record.save":"\u5DF2\u4FDD\u5B58","content-manager.success.record.unpublish":"\u5DF2\u53D6\u6D88\u53D1\u5E03","content-manager.utils.data-loaded":"\u8FD9\u4E2A {number, plural, =1 {\u6761\u76EE} other {\u6761\u76EE}} \u5DF2\u6210\u529F\u52A0\u8F7D","content-type-builder.button.component.create":"\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u7EC4\u4EF6","content-type-builder.button.model.create":"\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u96C6\u5408\u7C7B\u578B","content-type-builder.button.single-types.create":"\u521B\u65B0\u4E00\u4E2A\u65B0\u7684\u5355\u4E00\u7C7B\u578B","content-type-builder.form.button.add.field.to.collectionType":"\u4E3A\u8FD9\u4E2A\u96C6\u5408\u7C7B\u578B\u6DFB\u52A0\u53E6\u4E00\u4E2A\u5B57\u6BB5","content-type-builder.form.button.add.field.to.singleType":"\u4E3A\u8FD9\u4E2A\u5355\u4E00\u7C7B\u578B\u6DFB\u52A0\u53E6\u4E00\u4E2A\u5B57\u6BB5","content-type-builder.listView.headerLayout.description":"\u5B9A\u4E49\u5185\u5BB9\u7684\u6570\u636E\u7ED3\u6784","content-type-builder.menu.section.components.name":"\u7EC4\u4EF6","content-type-builder.menu.section.models.name":"\u96C6\u5408\u7C7B\u578B","content-type-builder.menu.section.single-types.name":"\u5355\u4E00\u7C7B\u578B","content-type-builder.plugin.name":"\u6A21\u578B\u6784\u5EFA\u5668","form.button.done":"\u5B8C\u6210","global.search":"\u641C\u7D22","global.active":"\u5DF2\u6FC0\u6D3B","global.inactive":"\u672A\u6FC0\u6D3B","global.back":"\u8FD4\u56DE","global.cancel":"\u53D6\u6D88","global.change-password":"\u4FEE\u6539\u5BC6\u7801","global.content-manager":"\u5185\u5BB9\u7BA1\u7406","global.delete":"\u5220\u9664","global.delete-target":"\u5220\u9664 {target}","global.description":"\u63CF\u8FF0","global.details":"\u8BE6\u60C5","global.documentation":"\u6587\u6863","global.finish":"\u5B8C\u6210","global.marketplace":"\u5E02\u573A","global.name":"\u540D\u79F0","global.password":"\u5BC6\u7801","global.plugins":"\u63D2\u4EF6","global.plugins.content-manager":"\u5185\u5BB9\u7BA1\u7406","global.plugins.content-manager.description":"\u5728\u4F60\u7684\u6570\u636E\u5E93\u91CC\uFF0C\u5FEB\u901F\u7684\u67E5\u770B\u3001\u7F16\u8F91\u548C\u5220\u9664\u6570\u636E\u3002","global.plugins.content-type-builder":"\u6A21\u578B\u6784\u5EFA\u5668","global.plugins.content-type-builder.description":"\u5BF9\u4F60\u7684 API \u6570\u636E\u7ED3\u6784\u8FDB\u884C\u5EFA\u6A21\u3002\u5728\u77ED\u77ED\u7684\u4E00\u5206\u949F\u5185\u521B\u5EFA\u65B0\u7684\u5B57\u6BB5\u548C\u5173\u7CFB\u3002\u8FD9\u4E9B\u6587\u4EF6\u4F1A\u5728\u4F60\u7684\u9879\u76EE\u4E2D\u81EA\u52A8\u521B\u5EFA\u548C\u66F4\u65B0\u3002","global.plugins.email":"\u7535\u5B50\u90AE\u4EF6","global.plugins.email.description":"\u914D\u7F6E\u4F60\u7684\u5E94\u7528\u7A0B\u5E8F\u6765\u53D1\u9001\u7535\u5B50\u90AE\u4EF6\u3002","global.plugins.upload":"\u5A92\u4F53\u5E93","global.plugins.upload.description":"\u5A92\u4F53\u6587\u4EF6\u7BA1\u7406\u3002","global.plugins.graphql":"GraphQL","global.plugins.graphql.description":"\u6DFB\u52A0\u5177\u6709\u9ED8\u8BA4 API \u65B9\u6CD5\u7684 GraphQL \u7AEF\u70B9","global.plugins.documentation":"\u6587\u6863","global.plugins.documentation.description":"\u521B\u5EFA\u4E00\u4E2A OpenAPI \u6587\u6863\uFF0C\u7528 SWAGGER UI \u6765\u53EF\u89C6\u5316\u4F60\u7684 API\u3002","global.plugins.i18n":"\u56FD\u9645\u5316","global.plugins.i18n.description":"\u8FD9\u4E2A\u63D2\u4EF6\u53EF\u4EE5\u4ECE\u7BA1\u7406\u9762\u677F\u548C API \u4E2D\u521B\u5EFA\u3001\u9605\u8BFB\u548C\u66F4\u65B0\u4E0D\u540C\u8BED\u8A00\u7684\u5185\u5BB9\u3002","global.plugins.sentry":"Sentry","global.plugins.sentry.description":"\u5C06 Strapi \u9519\u8BEF\u4E8B\u4EF6\u53D1\u9001\u7ED9 Sentry\u3002","global.plugins.users-permissions":"\u89D2\u8272\u548C\u6743\u9650","global.plugins.users-permissions.description":"\u7528\u4E00\u4E2A\u57FA\u4E8E JWT \u7684\u5B8C\u6574\u8BA4\u8BC1\u8FC7\u7A0B\u6765\u4FDD\u62A4\u4F60\u7684 API\u3002\u8FD9\u4E2A\u63D2\u4EF6\u8FD8\u5E26\u6709\u4E00\u4E2A ACL \u7B56\u7565\uFF0C\u5141\u8BB8\u4F60\u7BA1\u7406\u7528\u6237\u7EC4\u4E4B\u95F4\u7684\u6743\u9650\u3002","global.profile":"\u4E2A\u4EBA\u8D44\u6599","global.prompt.unsaved":"\u60A8\u786E\u5B9A\u8981\u79BB\u5F00\u8FD9\u4E2A\u9875\u9762\u5417\uFF1F\u60A8\u6240\u6709\u7684\u672A\u4FDD\u5B58\u7684\u4FEE\u6539\u90FD\u5C06\u4E22\u5931","global.roles":"\u89D2\u8272\u5217\u8868","global.save":"\u4FDD\u5B58","global.settings":"\u8BBE\u7F6E","global.strapi-super-admin":"\u8D85\u7EA7\u7BA1\u7406\u5458","global.strapi-editor":"\u7F16\u8F91","global.strapi-author":"\u4F5C\u8005","global.table.header.email":"\u7535\u5B50\u90AE\u4EF6","global.table.header.firstname":"\u540D\u5B57","global.table.header.isActive":"\u662F\u5426\u6FC0\u6D3B","global.table.header.lastname":"\u59D3\u6C0F","global.table.header.roles":"\u7528\u6237\u89D2\u8272","global.table.header.username":"\u7528\u6237\u540D","global.users":"\u7528\u6237\u5217\u8868","global.type":"\u7C7B\u578B","notification.contentType.relations.conflict":"\u5185\u5BB9\u7C7B\u578B\u6709\u5173\u8054\u51B2\u7A81","notification.default.title":"\u901A\u77E5\uFF1A","notification.error":"\u53D1\u751F\u9519\u8BEF","notification.error.layout":"\u65E0\u6CD5\u83B7\u53D6\u5E03\u5C40","notification.form.error.fields":"\u8868\u5355\u5305\u542B\u4E00\u4E9B\u9519\u8BEF","notification.form.success.fields":"\u4FEE\u6539\u5DF2\u4FDD\u5B58","notification.link-copied":"\u94FE\u63A5\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F","notification.permission.not-allowed-read":"\u4F60\u4E0D\u88AB\u5141\u8BB8\u67E5\u770B\u6587\u4EF6","notification.success.delete":"\u6761\u76EE\u5DF2\u5220\u9664","notification.success.saved":"\u5DF2\u4FDD\u5B58","notification.success.title":"\u6210\u529F\uFF1A","notification.version.update.message":"\u6709\u65B0\u7248\u672C\u7684 Strapi \u53EF\u7528!","notification.warning.title":"\u8B66\u544A\uFF1A","or":"\u6216","request.error.model.unknown":"\u6A21\u578B\u4E0D\u5B58\u5728","skipToContent":"\u8DF3\u81F3\u5185\u5BB9","submit":"\u63D0\u4EA4"}')}}]);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useRef, useState } from 'react';
|
|
2
|
-
import
|
|
2
|
+
import { format } from 'date-fns';
|
|
3
3
|
import {
|
|
4
4
|
CheckPagePermissions,
|
|
5
5
|
Form,
|
|
@@ -40,7 +40,7 @@ const UsersRoleNumber = styled.div`
|
|
|
40
40
|
color: ${({ theme }) => theme.colors.primary600};
|
|
41
41
|
border-radius: ${({ theme }) => theme.borderRadius};
|
|
42
42
|
font-size: ${12 / 16}rem;
|
|
43
|
-
font-
|
|
43
|
+
font-weight: bold;
|
|
44
44
|
`;
|
|
45
45
|
|
|
46
46
|
const CreatePage = () => {
|
|
@@ -114,7 +114,7 @@ const CreatePage = () => {
|
|
|
114
114
|
const defaultDescription = `${formatMessage({
|
|
115
115
|
id: 'Settings.roles.form.created',
|
|
116
116
|
defaultMessage: 'Created',
|
|
117
|
-
})} ${
|
|
117
|
+
})} ${format(new Date(), 'PPP')}`;
|
|
118
118
|
|
|
119
119
|
return (
|
|
120
120
|
<Main>
|
package/index.js
CHANGED
|
@@ -1,66 +1,34 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
const path = require('path');
|
|
4
|
-
const _ = require('lodash');
|
|
5
4
|
const fs = require('fs-extra');
|
|
6
5
|
const webpack = require('webpack');
|
|
7
6
|
const WebpackDevServer = require('webpack-dev-server');
|
|
7
|
+
const { isUsingTypeScript } = require('@strapi/typescript-utils');
|
|
8
8
|
const chalk = require('chalk');
|
|
9
|
-
const chokidar = require('chokidar');
|
|
10
|
-
const getWebpackConfig = require('./webpack.config');
|
|
11
9
|
|
|
12
|
-
const
|
|
10
|
+
const {
|
|
11
|
+
createCacheDir,
|
|
12
|
+
getCustomWebpackConfig,
|
|
13
|
+
shouldBuildAdmin,
|
|
14
|
+
watchAdminFiles,
|
|
15
|
+
} = require('./utils');
|
|
13
16
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
'content-manager',
|
|
17
|
-
'upload',
|
|
18
|
-
'email',
|
|
19
|
-
'i18n',
|
|
20
|
-
'users-permissions',
|
|
21
|
-
];
|
|
17
|
+
async function build({ appDir, buildDestDir, env, forceBuild, optimize, options, plugins }) {
|
|
18
|
+
const buildAdmin = await shouldBuildAdmin({ appDir, plugins });
|
|
22
19
|
|
|
23
|
-
|
|
24
|
-
const adminConfigPath = path.join(dir, 'src', 'admin', 'webpack.config.js');
|
|
25
|
-
|
|
26
|
-
let webpackConfig = getWebpackConfig(config);
|
|
27
|
-
|
|
28
|
-
if (fs.existsSync(adminConfigPath)) {
|
|
29
|
-
const webpackAdminConfig = require(path.resolve(adminConfigPath));
|
|
30
|
-
|
|
31
|
-
if (_.isFunction(webpackAdminConfig)) {
|
|
32
|
-
// Expose the devServer configuration
|
|
33
|
-
if (config.devServer) {
|
|
34
|
-
webpackConfig.devServer = config.devServer;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
webpackConfig = webpackAdminConfig(webpackConfig, webpack);
|
|
38
|
-
|
|
39
|
-
if (!webpackConfig) {
|
|
40
|
-
console.error(
|
|
41
|
-
`${chalk.red('Error:')} Nothing was returned from your custom webpack configuration`
|
|
42
|
-
);
|
|
43
|
-
process.exit(1);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
return webpackConfig;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
async function build({ plugins, dir, env, options, optimize, forceBuild }) {
|
|
52
|
-
const buildAdmin = await shouldBuildAdmin({ dir, plugins });
|
|
20
|
+
const useTypeScript = await isUsingTypeScript(path.join(appDir, 'src', 'admin'), 'tsconfig.json');
|
|
53
21
|
|
|
54
22
|
if (!buildAdmin && !forceBuild) {
|
|
55
23
|
return;
|
|
56
24
|
}
|
|
57
25
|
|
|
58
26
|
// Create the cache dir containing the front-end files.
|
|
59
|
-
await createCacheDir({
|
|
27
|
+
await createCacheDir({ appDir, plugins });
|
|
60
28
|
|
|
61
|
-
const cacheDir = path.resolve(
|
|
29
|
+
const cacheDir = path.resolve(appDir, '.cache');
|
|
62
30
|
const entry = path.resolve(cacheDir, 'admin', 'src');
|
|
63
|
-
const dest = path.resolve(
|
|
31
|
+
const dest = path.resolve(buildDestDir, 'build');
|
|
64
32
|
|
|
65
33
|
// Roots for the @strapi/babel-plugin-switch-ee-ce
|
|
66
34
|
const roots = {
|
|
@@ -70,15 +38,23 @@ async function build({ plugins, dir, env, options, optimize, forceBuild }) {
|
|
|
70
38
|
|
|
71
39
|
const pluginsPath = Object.keys(plugins).map(pluginName => plugins[pluginName].pathToPlugin);
|
|
72
40
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
41
|
+
// Either use the tsconfig file from the generated app or the one inside the .cache folder
|
|
42
|
+
// so we can develop plugins in TS while being in a JS app
|
|
43
|
+
const tsConfigFilePath = useTypeScript
|
|
44
|
+
? path.join(appDir, 'src', 'admin', 'tsconfig.json')
|
|
45
|
+
: path.resolve(entry, 'tsconfig.json');
|
|
46
|
+
|
|
47
|
+
const config = getCustomWebpackConfig(appDir, {
|
|
48
|
+
appDir,
|
|
76
49
|
cacheDir,
|
|
77
50
|
dest,
|
|
51
|
+
entry,
|
|
78
52
|
env,
|
|
79
|
-
options,
|
|
80
53
|
optimize,
|
|
54
|
+
options,
|
|
55
|
+
pluginsPath,
|
|
81
56
|
roots,
|
|
57
|
+
tsConfigFilePath,
|
|
82
58
|
});
|
|
83
59
|
|
|
84
60
|
const compiler = webpack(config);
|
|
@@ -109,115 +85,24 @@ async function build({ plugins, dir, env, options, optimize, forceBuild }) {
|
|
|
109
85
|
});
|
|
110
86
|
}
|
|
111
87
|
|
|
112
|
-
async function
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
* path.join, on windows, it uses backslashes to resolve path.
|
|
118
|
-
* The problem is that Webpack does not windows paths
|
|
119
|
-
* With this tool, we need to rely on "/" and not "\".
|
|
120
|
-
* This is the reason why '..\\..\\..\\node_modules\\@strapi\\plugin-content-type-builder/strapi-admin.js' was not working.
|
|
121
|
-
* The regexp at line 105 aims to replace the windows backslashes by standard slash so that webpack can deal with them.
|
|
122
|
-
* Backslash looks to work only for absolute paths with webpack => https://webpack.js.org/concepts/module-resolution/#absolute-paths
|
|
123
|
-
*/
|
|
124
|
-
const realPath = path
|
|
125
|
-
.join(path.relative(path.resolve(dest, 'admin', 'src'), pathToPlugin), 'strapi-admin.js')
|
|
126
|
-
.replace(/\\/g, '/');
|
|
127
|
-
|
|
128
|
-
return {
|
|
129
|
-
name,
|
|
130
|
-
pathToPlugin: realPath,
|
|
131
|
-
shortName,
|
|
132
|
-
};
|
|
133
|
-
});
|
|
134
|
-
|
|
135
|
-
const content = `
|
|
136
|
-
${pluginsArray
|
|
137
|
-
.map(({ pathToPlugin, shortName }) => {
|
|
138
|
-
const req = `'${pathToPlugin}'`;
|
|
139
|
-
|
|
140
|
-
return `import ${shortName} from ${req};`;
|
|
141
|
-
})
|
|
142
|
-
.join('\n')}
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
const plugins = {
|
|
146
|
-
${[...pluginsArray]
|
|
147
|
-
.map(({ name, shortName }) => {
|
|
148
|
-
return ` '${name}': ${shortName},`;
|
|
149
|
-
})
|
|
150
|
-
.join('\n')}
|
|
151
|
-
};
|
|
152
|
-
|
|
153
|
-
export default plugins;
|
|
154
|
-
`;
|
|
155
|
-
|
|
156
|
-
return fs.writeFile(path.resolve(dest, 'admin', 'src', 'plugins.js'), content);
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
async function clean({ dir }) {
|
|
160
|
-
const buildDir = path.join(dir, 'build');
|
|
161
|
-
const cacheDir = path.join(dir, '.cache');
|
|
88
|
+
async function clean({ appDir, buildDestDir }) {
|
|
89
|
+
// FIXME rename admin build dir and path to build dir
|
|
90
|
+
const buildDir = path.join(buildDestDir, 'build');
|
|
91
|
+
// .cache dir is always located at the root of the app
|
|
92
|
+
const cacheDir = path.join(appDir, '.cache');
|
|
162
93
|
|
|
163
94
|
fs.removeSync(buildDir);
|
|
164
95
|
fs.removeSync(cacheDir);
|
|
165
96
|
}
|
|
166
97
|
|
|
167
|
-
async function
|
|
168
|
-
const
|
|
169
|
-
|
|
170
|
-
// TODO copy ee folders for plugins
|
|
171
|
-
await fs.copy(path.resolve(adminPath, 'ee', 'admin'), path.resolve(dest, 'ee', 'admin'));
|
|
172
|
-
|
|
173
|
-
await fs.ensureDir(path.resolve(dest, 'config'));
|
|
174
|
-
await fs.copy(path.resolve(adminPath, 'admin'), path.resolve(dest, 'admin'));
|
|
175
|
-
|
|
176
|
-
// Copy package.json
|
|
177
|
-
await fs.copy(path.resolve(adminPath, 'package.json'), path.resolve(dest, 'package.json'));
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
async function createCacheDir({ dir, plugins }) {
|
|
181
|
-
const cacheDir = path.resolve(dir, '.cache');
|
|
182
|
-
|
|
183
|
-
const pluginsWithFront = Object.keys(plugins)
|
|
184
|
-
.filter(pluginName => {
|
|
185
|
-
const pluginInfo = plugins[pluginName];
|
|
186
|
-
return fs.existsSync(path.resolve(pluginInfo.pathToPlugin, 'strapi-admin.js'));
|
|
187
|
-
})
|
|
188
|
-
.map(name => ({ name, ...plugins[name] }));
|
|
189
|
-
|
|
190
|
-
// create .cache dir
|
|
191
|
-
await fs.emptyDir(cacheDir);
|
|
192
|
-
|
|
193
|
-
// copy admin core code
|
|
194
|
-
await copyAdmin(cacheDir);
|
|
195
|
-
|
|
196
|
-
// Copy app.js
|
|
197
|
-
const customAdminConfigFilePath = path.join(dir, 'src', 'admin', 'app.js');
|
|
198
|
-
|
|
199
|
-
if (fs.existsSync(customAdminConfigFilePath)) {
|
|
200
|
-
await fs.copy(customAdminConfigFilePath, path.resolve(cacheDir, 'admin', 'src', 'app.js'));
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
// Copy admin extensions folder
|
|
204
|
-
const adminExtensionFolder = path.join(dir, 'src', 'admin', 'extensions');
|
|
205
|
-
|
|
206
|
-
if (fs.existsSync(adminExtensionFolder)) {
|
|
207
|
-
await fs.copy(adminExtensionFolder, path.resolve(cacheDir, 'admin', 'src', 'extensions'));
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
// create plugins.js with plugins requires
|
|
211
|
-
await createPluginsJs(pluginsWithFront, cacheDir);
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
async function watchAdmin({ plugins, dir, host, port, browser, options }) {
|
|
98
|
+
async function watchAdmin({ appDir, browser, buildDestDir, host, options, plugins, port }) {
|
|
99
|
+
const useTypeScript = await isUsingTypeScript(path.join(appDir, 'src', 'admin'), 'tsconfig.json');
|
|
215
100
|
// Create the cache dir containing the front-end files.
|
|
216
|
-
const cacheDir = path.join(
|
|
217
|
-
await createCacheDir({
|
|
101
|
+
const cacheDir = path.join(appDir, '.cache');
|
|
102
|
+
await createCacheDir({ appDir, plugins });
|
|
218
103
|
|
|
219
104
|
const entry = path.join(cacheDir, 'admin', 'src');
|
|
220
|
-
const dest = path.join(
|
|
105
|
+
const dest = path.join(buildDestDir, 'build');
|
|
221
106
|
const env = 'development';
|
|
222
107
|
|
|
223
108
|
// Roots for the @strapi/babel-plugin-switch-ee-ce
|
|
@@ -228,14 +113,20 @@ async function watchAdmin({ plugins, dir, host, port, browser, options }) {
|
|
|
228
113
|
|
|
229
114
|
const pluginsPath = Object.keys(plugins).map(pluginName => plugins[pluginName].pathToPlugin);
|
|
230
115
|
|
|
116
|
+
// Either use the tsconfig file from the generated app or the one inside the .cache folder
|
|
117
|
+
// so we can develop plugins in TS while being in a JS app
|
|
118
|
+
const tsConfigFilePath = useTypeScript
|
|
119
|
+
? path.join(appDir, 'src', 'admin', 'tsconfig.json')
|
|
120
|
+
: path.resolve(entry, 'tsconfig.json');
|
|
121
|
+
|
|
231
122
|
const args = {
|
|
232
|
-
|
|
123
|
+
appDir,
|
|
233
124
|
cacheDir,
|
|
234
|
-
pluginsPath,
|
|
235
125
|
dest,
|
|
126
|
+
entry,
|
|
236
127
|
env,
|
|
237
|
-
port,
|
|
238
128
|
options,
|
|
129
|
+
pluginsPath,
|
|
239
130
|
roots,
|
|
240
131
|
devServer: {
|
|
241
132
|
port,
|
|
@@ -246,7 +137,6 @@ async function watchAdmin({ plugins, dir, host, port, browser, options }) {
|
|
|
246
137
|
warnings: false,
|
|
247
138
|
},
|
|
248
139
|
},
|
|
249
|
-
|
|
250
140
|
open: browser === 'true' ? true : browser,
|
|
251
141
|
devMiddleware: {
|
|
252
142
|
publicPath: options.adminPath,
|
|
@@ -256,9 +146,10 @@ async function watchAdmin({ plugins, dir, host, port, browser, options }) {
|
|
|
256
146
|
disableDotRule: true,
|
|
257
147
|
},
|
|
258
148
|
},
|
|
149
|
+
tsConfigFilePath,
|
|
259
150
|
};
|
|
260
151
|
|
|
261
|
-
const webpackConfig = getCustomWebpackConfig(
|
|
152
|
+
const webpackConfig = getCustomWebpackConfig(appDir, args);
|
|
262
153
|
|
|
263
154
|
const compiler = webpack(webpackConfig);
|
|
264
155
|
|
|
@@ -279,90 +170,7 @@ async function watchAdmin({ plugins, dir, host, port, browser, options }) {
|
|
|
279
170
|
|
|
280
171
|
runServer();
|
|
281
172
|
|
|
282
|
-
|
|
283
|
-
}
|
|
284
|
-
|
|
285
|
-
/**
|
|
286
|
-
* Listen to files change and copy the changed files in the .cache/admin folder
|
|
287
|
-
* when using the dev mode
|
|
288
|
-
* @param {string} dir
|
|
289
|
-
*/
|
|
290
|
-
async function watchFiles(dir) {
|
|
291
|
-
const cacheDir = path.join(dir, '.cache');
|
|
292
|
-
const appExtensionFile = path.join(dir, 'src', 'admin', 'app.js');
|
|
293
|
-
const extensionsPath = path.join(dir, 'src', 'admin', 'extensions');
|
|
294
|
-
|
|
295
|
-
// Only watch the admin/app.js file and the files that are in the ./admin/extensions/folder
|
|
296
|
-
const filesToWatch = [appExtensionFile, extensionsPath];
|
|
297
|
-
|
|
298
|
-
const watcher = chokidar.watch(filesToWatch, {
|
|
299
|
-
ignoreInitial: true,
|
|
300
|
-
ignorePermissionErrors: true,
|
|
301
|
-
});
|
|
302
|
-
|
|
303
|
-
watcher.on('all', async (event, filePath) => {
|
|
304
|
-
const isAppFile = filePath.includes(appExtensionFile);
|
|
305
|
-
|
|
306
|
-
// The app.js file needs to be copied in the .cache/admin/src/app.js and the other ones needs to
|
|
307
|
-
// be copied in the .cache/admin/src/extensions folder
|
|
308
|
-
const targetPath = isAppFile
|
|
309
|
-
? path.join(path.normalize(filePath.split(appExtensionFile)[1]), 'app.js')
|
|
310
|
-
: path.join('extensions', path.normalize(filePath.split(extensionsPath)[1]));
|
|
311
|
-
|
|
312
|
-
const destFolder = path.join(cacheDir, 'admin', 'src');
|
|
313
|
-
|
|
314
|
-
if (event === 'unlink' || event === 'unlinkDir') {
|
|
315
|
-
// Remove the file or folder
|
|
316
|
-
// We need to copy the original files when deleting an override one
|
|
317
|
-
try {
|
|
318
|
-
fs.removeSync(path.join(destFolder, targetPath));
|
|
319
|
-
} catch (err) {
|
|
320
|
-
console.log('An error occured while deleting the file', err);
|
|
321
|
-
}
|
|
322
|
-
} else {
|
|
323
|
-
// In any other case just copy the file into the .cache/admin/src folder
|
|
324
|
-
try {
|
|
325
|
-
await fs.copy(filePath, path.join(destFolder, targetPath));
|
|
326
|
-
} catch (err) {
|
|
327
|
-
console.log(err);
|
|
328
|
-
}
|
|
329
|
-
}
|
|
330
|
-
});
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
const hasCustomAdminCode = async dir => {
|
|
334
|
-
const customAdminPath = path.join(dir, 'src', 'admin');
|
|
335
|
-
const customAdminConfigFile = path.join(customAdminPath, 'app.js');
|
|
336
|
-
const customAdminWebpackFile = path.join(customAdminPath, 'webpack.config.js');
|
|
337
|
-
|
|
338
|
-
const hasCustomConfigFile = await fs.pathExists(customAdminConfigFile);
|
|
339
|
-
const hasCustomWebpackFile = await fs.pathExists(customAdminWebpackFile);
|
|
340
|
-
|
|
341
|
-
return hasCustomConfigFile || hasCustomWebpackFile;
|
|
342
|
-
};
|
|
343
|
-
|
|
344
|
-
/**
|
|
345
|
-
* Checks if the project's installed plugins are not the same as a default one.
|
|
346
|
-
* @param {Object} plugins
|
|
347
|
-
* @returns {boolean}
|
|
348
|
-
*/
|
|
349
|
-
const hasNonDefaultPlugins = plugins => {
|
|
350
|
-
// List of plugins that are not the ones installed in a generated app
|
|
351
|
-
const installedPlugins = Object.keys(plugins).filter(x => !DEFAULT_PLUGINS.includes(x));
|
|
352
|
-
|
|
353
|
-
// List of default plugins uninstalled from a generated app
|
|
354
|
-
const missingPlugins = DEFAULT_PLUGINS.filter(x => !Object.keys(plugins).includes(x));
|
|
355
|
-
|
|
356
|
-
const diff = [...installedPlugins, ...missingPlugins];
|
|
357
|
-
|
|
358
|
-
return diff.length > 0;
|
|
359
|
-
};
|
|
360
|
-
|
|
361
|
-
async function shouldBuildAdmin({ dir, plugins }) {
|
|
362
|
-
const appHasCustomAdminCode = await hasCustomAdminCode(dir);
|
|
363
|
-
const appHasNonDefaultPlugins = hasNonDefaultPlugins(plugins);
|
|
364
|
-
|
|
365
|
-
return appHasCustomAdminCode || appHasNonDefaultPlugins;
|
|
173
|
+
watchAdminFiles(appDir, useTypeScript);
|
|
366
174
|
}
|
|
367
175
|
|
|
368
176
|
module.exports = {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@strapi/admin",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.3.0",
|
|
4
4
|
"description": "Strapi Admin",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
"develop:webpack": "cross-env NODE_ENV=development webpack serve --config webpack.config.dev.js --progress profile",
|
|
29
29
|
"prepublishOnly": "yarn build",
|
|
30
30
|
"build": "rimraf build && node ./scripts/build.js",
|
|
31
|
+
"build:mesure": "rimraf build && cross-env MESURE_BUILD_SPEED=true node ./scripts/build.js",
|
|
31
32
|
"test": "echo \"no tests yet\"",
|
|
32
33
|
"test:unit": "jest --verbose",
|
|
33
34
|
"test:front": "cross-env IS_EE=true jest --config ./jest.config.front.js",
|
|
@@ -50,11 +51,12 @@
|
|
|
50
51
|
"@fortawesome/free-solid-svg-icons": "^5.15.3",
|
|
51
52
|
"@fortawesome/react-fontawesome": "^0.2.0",
|
|
52
53
|
"@pmmmwh/react-refresh-webpack-plugin": "0.5.7",
|
|
53
|
-
"@strapi/babel-plugin-switch-ee-ce": "4.
|
|
54
|
+
"@strapi/babel-plugin-switch-ee-ce": "4.3.0",
|
|
54
55
|
"@strapi/design-system": "1.2.0",
|
|
55
|
-
"@strapi/helper-plugin": "4.
|
|
56
|
+
"@strapi/helper-plugin": "4.3.0",
|
|
56
57
|
"@strapi/icons": "1.2.0",
|
|
57
|
-
"@strapi/utils": "4.
|
|
58
|
+
"@strapi/typescript-utils": "4.3.0",
|
|
59
|
+
"@strapi/utils": "4.3.0",
|
|
58
60
|
"axios": "0.24.0",
|
|
59
61
|
"babel-loader": "8.2.5",
|
|
60
62
|
"babel-plugin-styled-components": "2.0.2",
|
|
@@ -70,19 +72,20 @@
|
|
|
70
72
|
"execa": "^1.0.0",
|
|
71
73
|
"fast-deep-equal": "3.1.3",
|
|
72
74
|
"font-awesome": "^4.7.0",
|
|
75
|
+
"fork-ts-checker-webpack-plugin": "7.2.1",
|
|
73
76
|
"formik": "^2.2.6",
|
|
74
77
|
"fs-extra": "10.0.0",
|
|
75
78
|
"highlight.js": "^10.4.1",
|
|
76
79
|
"history": "^4.9.0",
|
|
77
80
|
"hoist-non-react-statics": "^3.3.0",
|
|
78
|
-
"html-loader": "3.
|
|
81
|
+
"html-loader": "3.1.2",
|
|
79
82
|
"html-webpack-plugin": "5.5.0",
|
|
80
|
-
"immer": "9.0.
|
|
83
|
+
"immer": "9.0.15",
|
|
81
84
|
"invariant": "^2.2.4",
|
|
82
85
|
"js-cookie": "2.2.1",
|
|
83
86
|
"jsonwebtoken": "8.5.1",
|
|
84
87
|
"koa-compose": "4.1.0",
|
|
85
|
-
"koa-passport": "
|
|
88
|
+
"koa-passport": "5.0.0",
|
|
86
89
|
"koa-static": "5.0.0",
|
|
87
90
|
"lodash": "4.17.21",
|
|
88
91
|
"markdown-it": "^12.3.2",
|
|
@@ -97,7 +100,6 @@
|
|
|
97
100
|
"markdown-it-sup": "1.0.0",
|
|
98
101
|
"match-sorter": "^4.0.2",
|
|
99
102
|
"mini-css-extract-plugin": "2.4.4",
|
|
100
|
-
"moment": "^2.29.4",
|
|
101
103
|
"node-polyfill-webpack-plugin": "1.1.4",
|
|
102
104
|
"p-map": "4.0.0",
|
|
103
105
|
"passport-local": "1.0.0",
|
|
@@ -125,7 +127,7 @@
|
|
|
125
127
|
"rimraf": "3.0.2",
|
|
126
128
|
"sanitize-html": "2.7.0",
|
|
127
129
|
"semver": "7.3.7",
|
|
128
|
-
"sift": "13.5.
|
|
130
|
+
"sift": "13.5.4",
|
|
129
131
|
"style-loader": "3.3.1",
|
|
130
132
|
"styled-components": "5.3.3",
|
|
131
133
|
"webpack": "^5.73.0",
|
|
@@ -136,6 +138,8 @@
|
|
|
136
138
|
},
|
|
137
139
|
"devDependencies": {
|
|
138
140
|
"duplicate-dependencies-webpack-plugin": "^1.0.2",
|
|
141
|
+
"glob": "8.0.3",
|
|
142
|
+
"speed-measure-webpack-plugin": "1.5.0",
|
|
139
143
|
"webpack-bundle-analyzer": "^4.5.0"
|
|
140
144
|
},
|
|
141
145
|
"engines": {
|
|
@@ -151,5 +155,5 @@
|
|
|
151
155
|
}
|
|
152
156
|
}
|
|
153
157
|
},
|
|
154
|
-
"gitHead": "
|
|
158
|
+
"gitHead": "74a2b908df75bc8001d72f9dc8571c4b7a2da337"
|
|
155
159
|
}
|