@strapi/plugin-documentation 4.15.2 → 4.15.3-alpha.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.
Files changed (117) hide show
  1. package/package.json +6 -6
  2. package/dist/_chunks/ar-3945178e.js +0 -24
  3. package/dist/_chunks/ar-3945178e.js.map +0 -1
  4. package/dist/_chunks/ar-a504b634.mjs +0 -24
  5. package/dist/_chunks/ar-a504b634.mjs.map +0 -1
  6. package/dist/_chunks/cs-053272e2.js +0 -25
  7. package/dist/_chunks/cs-053272e2.js.map +0 -1
  8. package/dist/_chunks/cs-feb7f04c.mjs +0 -25
  9. package/dist/_chunks/cs-feb7f04c.mjs.map +0 -1
  10. package/dist/_chunks/de-09853142.js +0 -30
  11. package/dist/_chunks/de-09853142.js.map +0 -1
  12. package/dist/_chunks/de-a33e1fea.mjs +0 -30
  13. package/dist/_chunks/de-a33e1fea.mjs.map +0 -1
  14. package/dist/_chunks/dk-05d66fde.js +0 -43
  15. package/dist/_chunks/dk-05d66fde.js.map +0 -1
  16. package/dist/_chunks/dk-ed9fcdcf.mjs +0 -43
  17. package/dist/_chunks/dk-ed9fcdcf.mjs.map +0 -1
  18. package/dist/_chunks/en-70db76ff.js +0 -43
  19. package/dist/_chunks/en-70db76ff.js.map +0 -1
  20. package/dist/_chunks/en-96395a32.mjs +0 -43
  21. package/dist/_chunks/en-96395a32.mjs.map +0 -1
  22. package/dist/_chunks/es-22de55e3.mjs +0 -43
  23. package/dist/_chunks/es-22de55e3.mjs.map +0 -1
  24. package/dist/_chunks/es-497d8815.js +0 -43
  25. package/dist/_chunks/es-497d8815.js.map +0 -1
  26. package/dist/_chunks/fr-24238f91.js +0 -30
  27. package/dist/_chunks/fr-24238f91.js.map +0 -1
  28. package/dist/_chunks/fr-70c3898d.mjs +0 -30
  29. package/dist/_chunks/fr-70c3898d.mjs.map +0 -1
  30. package/dist/_chunks/id-e9ab0af3.js +0 -28
  31. package/dist/_chunks/id-e9ab0af3.js.map +0 -1
  32. package/dist/_chunks/id-e9e00780.mjs +0 -28
  33. package/dist/_chunks/id-e9e00780.mjs.map +0 -1
  34. package/dist/_chunks/index-1a7e4b90.js +0 -194
  35. package/dist/_chunks/index-1a7e4b90.js.map +0 -1
  36. package/dist/_chunks/index-305e7973.js +0 -169
  37. package/dist/_chunks/index-305e7973.js.map +0 -1
  38. package/dist/_chunks/index-5d9aa19e.mjs +0 -167
  39. package/dist/_chunks/index-5d9aa19e.mjs.map +0 -1
  40. package/dist/_chunks/index-9bbaea3a.js +0 -202
  41. package/dist/_chunks/index-9bbaea3a.js.map +0 -1
  42. package/dist/_chunks/index-b730a8b9.mjs +0 -203
  43. package/dist/_chunks/index-b730a8b9.mjs.map +0 -1
  44. package/dist/_chunks/index-f1bf5533.mjs +0 -173
  45. package/dist/_chunks/index-f1bf5533.mjs.map +0 -1
  46. package/dist/_chunks/it-28ef2963.mjs +0 -30
  47. package/dist/_chunks/it-28ef2963.mjs.map +0 -1
  48. package/dist/_chunks/it-5255d492.js +0 -30
  49. package/dist/_chunks/it-5255d492.js.map +0 -1
  50. package/dist/_chunks/ko-34e7eb26.js +0 -43
  51. package/dist/_chunks/ko-34e7eb26.js.map +0 -1
  52. package/dist/_chunks/ko-a29301ee.mjs +0 -43
  53. package/dist/_chunks/ko-a29301ee.mjs.map +0 -1
  54. package/dist/_chunks/ms-63bb66e1.js +0 -27
  55. package/dist/_chunks/ms-63bb66e1.js.map +0 -1
  56. package/dist/_chunks/ms-87588bdb.mjs +0 -27
  57. package/dist/_chunks/ms-87588bdb.mjs.map +0 -1
  58. package/dist/_chunks/nl-0319020c.js +0 -25
  59. package/dist/_chunks/nl-0319020c.js.map +0 -1
  60. package/dist/_chunks/nl-91bcd809.mjs +0 -25
  61. package/dist/_chunks/nl-91bcd809.mjs.map +0 -1
  62. package/dist/_chunks/pl-2d57c604.js +0 -43
  63. package/dist/_chunks/pl-2d57c604.js.map +0 -1
  64. package/dist/_chunks/pl-7d7fe7b2.mjs +0 -43
  65. package/dist/_chunks/pl-7d7fe7b2.mjs.map +0 -1
  66. package/dist/_chunks/pt-9b66f3d5.mjs +0 -25
  67. package/dist/_chunks/pt-9b66f3d5.mjs.map +0 -1
  68. package/dist/_chunks/pt-BR-0024d4be.mjs +0 -25
  69. package/dist/_chunks/pt-BR-0024d4be.mjs.map +0 -1
  70. package/dist/_chunks/pt-BR-cf80ef96.js +0 -25
  71. package/dist/_chunks/pt-BR-cf80ef96.js.map +0 -1
  72. package/dist/_chunks/pt-b91837bc.js +0 -25
  73. package/dist/_chunks/pt-b91837bc.js.map +0 -1
  74. package/dist/_chunks/ru-468d9a30.mjs +0 -43
  75. package/dist/_chunks/ru-468d9a30.mjs.map +0 -1
  76. package/dist/_chunks/ru-91348271.js +0 -43
  77. package/dist/_chunks/ru-91348271.js.map +0 -1
  78. package/dist/_chunks/sk-01b7713b.mjs +0 -28
  79. package/dist/_chunks/sk-01b7713b.mjs.map +0 -1
  80. package/dist/_chunks/sk-10c03ab1.js +0 -28
  81. package/dist/_chunks/sk-10c03ab1.js.map +0 -1
  82. package/dist/_chunks/sv-7edbe28d.mjs +0 -43
  83. package/dist/_chunks/sv-7edbe28d.mjs.map +0 -1
  84. package/dist/_chunks/sv-e5237308.js +0 -43
  85. package/dist/_chunks/sv-e5237308.js.map +0 -1
  86. package/dist/_chunks/th-200a02f1.js +0 -28
  87. package/dist/_chunks/th-200a02f1.js.map +0 -1
  88. package/dist/_chunks/th-4fcead7f.mjs +0 -28
  89. package/dist/_chunks/th-4fcead7f.mjs.map +0 -1
  90. package/dist/_chunks/tr-8290d257.mjs +0 -43
  91. package/dist/_chunks/tr-8290d257.mjs.map +0 -1
  92. package/dist/_chunks/tr-fd36715f.js +0 -43
  93. package/dist/_chunks/tr-fd36715f.js.map +0 -1
  94. package/dist/_chunks/uk-bf914720.mjs +0 -27
  95. package/dist/_chunks/uk-bf914720.mjs.map +0 -1
  96. package/dist/_chunks/uk-cb462605.js +0 -27
  97. package/dist/_chunks/uk-cb462605.js.map +0 -1
  98. package/dist/_chunks/useDocumentation-f6d239a2.mjs +0 -66
  99. package/dist/_chunks/useDocumentation-f6d239a2.mjs.map +0 -1
  100. package/dist/_chunks/useDocumentation-f789dff3.js +0 -65
  101. package/dist/_chunks/useDocumentation-f789dff3.js.map +0 -1
  102. package/dist/_chunks/vi-d2e2e100.js +0 -28
  103. package/dist/_chunks/vi-d2e2e100.js.map +0 -1
  104. package/dist/_chunks/vi-ddc8357e.mjs +0 -28
  105. package/dist/_chunks/vi-ddc8357e.mjs.map +0 -1
  106. package/dist/_chunks/zh-7b489db7.mjs +0 -43
  107. package/dist/_chunks/zh-7b489db7.mjs.map +0 -1
  108. package/dist/_chunks/zh-8da2191f.js +0 -43
  109. package/dist/_chunks/zh-8da2191f.js.map +0 -1
  110. package/dist/_chunks/zh-Hans-6cefb513.mjs +0 -32
  111. package/dist/_chunks/zh-Hans-6cefb513.mjs.map +0 -1
  112. package/dist/_chunks/zh-Hans-c2e4b737.js +0 -32
  113. package/dist/_chunks/zh-Hans-c2e4b737.js.map +0 -1
  114. package/dist/admin/index.js +0 -6
  115. package/dist/admin/index.js.map +0 -1
  116. package/dist/admin/index.mjs +0 -7
  117. package/dist/admin/index.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-5d9aa19e.mjs","sources":["../../admin/src/pages/PluginPage/index.js"],"sourcesContent":["import React, { useState } from 'react';\n\nimport {\n Box,\n LinkButton,\n ContentLayout,\n Flex,\n HeaderLayout,\n IconButton,\n Layout,\n Main,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n} from '@strapi/design-system';\nimport {\n AnErrorOccurred,\n ConfirmDialog,\n EmptyStateLayout,\n LoadingIndicatorPage,\n useFocusWhenNavigate,\n useRBAC,\n} from '@strapi/helper-plugin';\nimport { Eye as Show, Refresh as Reload, Trash } from '@strapi/icons';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport styled from 'styled-components';\n\nimport { PERMISSIONS } from '../../constants';\nimport { useDocumentation } from '../../hooks/useDocumentation';\nimport { getTrad } from '../../utils';\n\nconst PluginPage = () => {\n useFocusWhenNavigate();\n const { formatMessage } = useIntl();\n const { data, isLoading, isError, remove, regenerate } = useDocumentation();\n const [showConfirmDelete, setShowConfirmDelete] = useState(false);\n const [isConfirmButtonLoading, setIsConfirmButtonLoading] = useState(false);\n const [versionToDelete, setVersionToDelete] = useState();\n const { allowedActions } = useRBAC(PERMISSIONS);\n\n const colCount = 4;\n const rowCount = (data?.docVersions?.length || 0) + 1;\n\n const handleRegenerateDoc = (version) => {\n regenerate.mutate({ version, prefix: data?.prefix });\n };\n\n const handleShowConfirmDelete = () => {\n setShowConfirmDelete(!showConfirmDelete);\n };\n\n const handleConfirmDelete = async () => {\n setIsConfirmButtonLoading(true);\n await remove.mutateAsync({ prefix: data?.prefix, version: versionToDelete });\n setShowConfirmDelete(!showConfirmDelete);\n setIsConfirmButtonLoading(false);\n };\n\n const handleClickDelete = (version) => {\n setVersionToDelete(version);\n setShowConfirmDelete(!showConfirmDelete);\n };\n\n const title = formatMessage({\n id: getTrad('plugin.name'),\n defaultMessage: 'Documentation',\n });\n\n if (isError) {\n return (\n <Layout>\n <ContentLayout>\n <Box paddingTop={8}>\n <AnErrorOccurred />\n </Box>\n </ContentLayout>\n </Layout>\n );\n }\n\n return (\n <Layout>\n <Helmet title={title} />\n <Main aria-busy={isLoading}>\n <HeaderLayout\n title={title}\n subtitle={formatMessage({\n id: getTrad('pages.PluginPage.header.description'),\n defaultMessage: 'Configure the documentation plugin',\n })}\n primaryAction={\n <OpenDocLink\n disabled={!allowedActions.canOpen || !data?.currentVersion || !data?.prefix}\n href={createDocumentationHref(`${data?.prefix}/v${data?.currentVersion}`)}\n startIcon={<Show />}\n >\n {formatMessage({\n id: getTrad('pages.PluginPage.Button.open'),\n defaultMessage: 'Open Documentation',\n })}\n </OpenDocLink>\n }\n />\n <ContentLayout>\n {isLoading && <LoadingIndicatorPage>Plugin is loading</LoadingIndicatorPage>}\n {data?.docVersions.length ? (\n <Table colCount={colCount} rowCount={rowCount}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('pages.PluginPage.table.version'),\n defaultMessage: 'Version',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: getTrad('pages.PluginPage.table.generated'),\n defaultMessage: 'Last Generated',\n })}\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {data.docVersions\n .sort((a, b) => (a.generatedDate < b.generatedDate ? 1 : -1))\n .map((doc) => (\n <Tr key={doc.version}>\n <Td width=\"50%\">\n <Typography>{doc.version}</Typography>\n </Td>\n <Td width=\"50%\">\n <Typography>{doc.generatedDate}</Typography>\n </Td>\n <Td>\n <Flex justifyContent=\"end\" onClick={(e) => e.stopPropagation()}>\n <IconButton\n forwardedAs=\"a\"\n disabled={!allowedActions.canOpen}\n href={createDocumentationHref(`${data.prefix}/v${doc.version}`)}\n noBorder\n icon={<Show />}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n label={formatMessage(\n {\n id: getTrad('pages.PluginPage.table.icon.show'),\n defaultMessage: 'Open {target}',\n },\n { target: `${doc.version}` }\n )}\n />\n {allowedActions.canRegenerate ? (\n <IconButton\n onClick={() => handleRegenerateDoc(doc.version)}\n noBorder\n icon={<Reload />}\n label={formatMessage(\n {\n id: getTrad('pages.PluginPage.table.icon.regenerate'),\n defaultMessage: 'Regenerate {target}',\n },\n { target: `${doc.version}` }\n )}\n />\n ) : null}\n {allowedActions.canUpdate && doc.version !== data.currentVersion ? (\n <IconButton\n onClick={() => handleClickDelete(doc.version)}\n noBorder\n icon={<Trash />}\n label={formatMessage(\n {\n id: 'global.delete-target',\n defaultMessage: 'Delete {target}',\n },\n { target: `${doc.version}` }\n )}\n />\n ) : null}\n </Flex>\n </Td>\n </Tr>\n ))}\n </Tbody>\n </Table>\n ) : (\n <EmptyStateLayout />\n )}\n </ContentLayout>\n <ConfirmDialog\n isConfirmButtonLoading={isConfirmButtonLoading}\n onConfirm={handleConfirmDelete}\n onToggleDialog={handleShowConfirmDelete}\n isOpen={showConfirmDelete}\n />\n </Main>\n </Layout>\n );\n};\n\n/**\n * TODO: should this be fixed in the DS?\n */\nconst OpenDocLink = styled(LinkButton)`\n text-decoration: none;\n`;\n\nconst createDocumentationHref = (path) => {\n if (path.startsWith('http')) {\n return path;\n }\n\n if (path.startsWith('/')) {\n return `${window.strapi.backendURL}${path}`;\n }\n\n return `${window.strapi.backendURL}/${path}`;\n};\n\nexport default PluginPage;\n"],"names":["Show","Reload"],"mappings":"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"}
@@ -1,202 +0,0 @@
1
- "use strict";
2
- const helperPlugin = require("@strapi/helper-plugin");
3
- const icons = require("@strapi/icons");
4
- const __variableDynamicImportRuntimeHelper = (glob, path) => {
5
- const v = glob[path];
6
- if (v) {
7
- return typeof v === "function" ? v() : Promise.resolve(v);
8
- }
9
- return new Promise((_, reject) => {
10
- (typeof queueMicrotask === "function" ? queueMicrotask : setTimeout)(reject.bind(null, new Error("Unknown variable dynamic import: " + path)));
11
- });
12
- };
13
- const name$1 = "@strapi/plugin-documentation";
14
- const version = "4.15.2";
15
- const description = "Create an OpenAPI Document and visualize your API with SWAGGER UI.";
16
- const repository = {
17
- type: "git",
18
- url: "https://github.com/strapi/strapi.git",
19
- directory: "packages/plugins/documentation"
20
- };
21
- const license = "SEE LICENSE IN LICENSE";
22
- const author = {
23
- name: "Strapi Solutions SAS",
24
- email: "hi@strapi.io",
25
- url: "https://strapi.io"
26
- };
27
- const maintainers = [
28
- {
29
- name: "Strapi Solutions SAS",
30
- email: "hi@strapi.io",
31
- url: "https://strapi.io"
32
- }
33
- ];
34
- const exports$1 = {
35
- "./strapi-admin": {
36
- source: "./admin/src/index.js",
37
- "import": "./dist/admin/index.mjs",
38
- require: "./dist/admin/index.js",
39
- "default": "./dist/admin/index.js"
40
- },
41
- "./strapi-server": {
42
- source: "./strapi-server.js",
43
- require: "./strapi-server.js",
44
- "default": "./strapi-server.js"
45
- },
46
- "./package.json": "./package.json"
47
- };
48
- const scripts = {
49
- build: "pack-up build",
50
- clean: "run -T rimraf dist",
51
- lint: "run -T eslint .",
52
- "test:front": "run -T cross-env IS_EE=true jest --config ./jest.config.front.js",
53
- "test:front:watch": "run -T cross-env IS_EE=true jest --config ./jest.config.front.js --watchAll",
54
- "test:unit": "jest --verbose",
55
- "test:unit:watch": "run -T jest --watch",
56
- prepublishOnly: "yarn clean && yarn build",
57
- watch: "pack-up watch"
58
- };
59
- const dependencies = {
60
- "@strapi/design-system": "1.13.0",
61
- "@strapi/helper-plugin": "4.15.2",
62
- "@strapi/icons": "1.13.0",
63
- "@strapi/utils": "4.15.2",
64
- bcryptjs: "2.4.3",
65
- cheerio: "^1.0.0-rc.12",
66
- formik: "2.4.0",
67
- "fs-extra": "10.0.0",
68
- immer: "9.0.19",
69
- "koa-static": "^5.0.0",
70
- lodash: "4.17.21",
71
- "path-to-regexp": "6.2.1",
72
- "react-helmet": "^6.1.0",
73
- "react-intl": "6.4.1",
74
- "react-query": "3.39.3",
75
- "swagger-ui-dist": "4.19.0",
76
- yaml: "1.10.2",
77
- yup: "0.32.9"
78
- };
79
- const devDependencies = {
80
- "@apidevtools/swagger-parser": "^10.1.0",
81
- "@strapi/pack-up": "4.15.2",
82
- "@strapi/strapi": "4.15.2",
83
- "@testing-library/react": "14.0.0",
84
- "@testing-library/user-event": "14.4.3",
85
- msw: "1.3.0",
86
- react: "^18.2.0",
87
- "react-dom": "^18.2.0",
88
- "react-router-dom": "5.3.4",
89
- "styled-components": "5.3.3"
90
- };
91
- const peerDependencies = {
92
- "@strapi/strapi": "^4.0.0",
93
- react: "^17.0.0 || ^18.0.0",
94
- "react-dom": "^17.0.0 || ^18.0.0",
95
- "react-router-dom": "^5.2.0",
96
- "styled-components": "^5.2.1"
97
- };
98
- const engines = {
99
- node: ">=18.0.0 <=20.x.x",
100
- npm: ">=6.0.0"
101
- };
102
- const strapi = {
103
- displayName: "Documentation",
104
- name: "documentation",
105
- description: "Create an OpenAPI Document and visualize your API with SWAGGER UI.",
106
- kind: "plugin"
107
- };
108
- const gitHead = "bb510893332674e2607f7d335b34dc78c599319a";
109
- const pluginPkg = {
110
- name: name$1,
111
- version,
112
- description,
113
- repository,
114
- license,
115
- author,
116
- maintainers,
117
- exports: exports$1,
118
- scripts,
119
- dependencies,
120
- devDependencies,
121
- peerDependencies,
122
- engines,
123
- strapi,
124
- gitHead
125
- };
126
- const PERMISSIONS = {
127
- // This permission regards the main component (App) and is used to tell
128
- // If the plugin link should be displayed in the menu
129
- // And also if the plugin is accessible. This use case is found when a user types the url of the
130
- // plugin directly in the browser
131
- main: [
132
- { action: "plugin::documentation.read", subject: null },
133
- { action: "plugin::documentation.settings.regenerate", subject: null },
134
- { action: "plugin::documentation.settings.update", subject: null }
135
- ],
136
- open: [
137
- { action: "plugin::documentation.read", subject: null },
138
- { action: "plugin::documentation.settings.regenerate", subject: null }
139
- ],
140
- regenerate: [{ action: "plugin::documentation.settings.regenerate", subject: null }],
141
- update: [{ action: "plugin::documentation.settings.update", subject: null }]
142
- };
143
- const pluginId = pluginPkg.name.replace(/^@strapi\/plugin-/i, "");
144
- const name = pluginPkg.strapi.name;
145
- const index = {
146
- register(app) {
147
- app.addMenuLink({
148
- to: `/plugins/${pluginId}`,
149
- icon: icons.Information,
150
- intlLabel: {
151
- id: `${pluginId}.plugin.name`,
152
- defaultMessage: "Documentation"
153
- },
154
- permissions: PERMISSIONS.main,
155
- async Component() {
156
- const component = await Promise.resolve().then(() => require("./index-305e7973.js"));
157
- return component;
158
- }
159
- });
160
- app.registerPlugin({
161
- id: pluginId,
162
- name
163
- });
164
- },
165
- bootstrap(app) {
166
- app.addSettingsLink("global", {
167
- intlLabel: {
168
- id: `${pluginId}.plugin.name`,
169
- defaultMessage: "Documentation"
170
- },
171
- id: "documentation",
172
- to: `/settings/${pluginId}`,
173
- async Component() {
174
- const component = await Promise.resolve().then(() => require("./index-1a7e4b90.js"));
175
- return component;
176
- },
177
- permissions: PERMISSIONS.main
178
- });
179
- },
180
- async registerTrads({ locales }) {
181
- const importedTrads = await Promise.all(
182
- locales.map((locale) => {
183
- return __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./translations/ar.json": () => Promise.resolve().then(() => require("./ar-3945178e.js")), "./translations/cs.json": () => Promise.resolve().then(() => require("./cs-053272e2.js")), "./translations/de.json": () => Promise.resolve().then(() => require("./de-09853142.js")), "./translations/dk.json": () => Promise.resolve().then(() => require("./dk-05d66fde.js")), "./translations/en.json": () => Promise.resolve().then(() => require("./en-70db76ff.js")), "./translations/es.json": () => Promise.resolve().then(() => require("./es-497d8815.js")), "./translations/fr.json": () => Promise.resolve().then(() => require("./fr-24238f91.js")), "./translations/id.json": () => Promise.resolve().then(() => require("./id-e9ab0af3.js")), "./translations/it.json": () => Promise.resolve().then(() => require("./it-5255d492.js")), "./translations/ko.json": () => Promise.resolve().then(() => require("./ko-34e7eb26.js")), "./translations/ms.json": () => Promise.resolve().then(() => require("./ms-63bb66e1.js")), "./translations/nl.json": () => Promise.resolve().then(() => require("./nl-0319020c.js")), "./translations/pl.json": () => Promise.resolve().then(() => require("./pl-2d57c604.js")), "./translations/pt-BR.json": () => Promise.resolve().then(() => require("./pt-BR-cf80ef96.js")), "./translations/pt.json": () => Promise.resolve().then(() => require("./pt-b91837bc.js")), "./translations/ru.json": () => Promise.resolve().then(() => require("./ru-91348271.js")), "./translations/sk.json": () => Promise.resolve().then(() => require("./sk-10c03ab1.js")), "./translations/sv.json": () => Promise.resolve().then(() => require("./sv-e5237308.js")), "./translations/th.json": () => Promise.resolve().then(() => require("./th-200a02f1.js")), "./translations/tr.json": () => Promise.resolve().then(() => require("./tr-fd36715f.js")), "./translations/uk.json": () => Promise.resolve().then(() => require("./uk-cb462605.js")), "./translations/vi.json": () => Promise.resolve().then(() => require("./vi-d2e2e100.js")), "./translations/zh-Hans.json": () => Promise.resolve().then(() => require("./zh-Hans-c2e4b737.js")), "./translations/zh.json": () => Promise.resolve().then(() => require("./zh-8da2191f.js")) }), `./translations/${locale}.json`).then(({ default: data }) => {
184
- return {
185
- data: helperPlugin.prefixPluginTranslations(data, pluginId),
186
- locale
187
- };
188
- }).catch(() => {
189
- return {
190
- data: {},
191
- locale
192
- };
193
- });
194
- })
195
- );
196
- return Promise.resolve(importedTrads);
197
- }
198
- };
199
- exports.PERMISSIONS = PERMISSIONS;
200
- exports.index = index;
201
- exports.pluginId = pluginId;
202
- //# sourceMappingURL=index-9bbaea3a.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-9bbaea3a.js","sources":["../../admin/src/constants.js","../../admin/src/pluginId.js","../../admin/src/index.js"],"sourcesContent":["export const PERMISSIONS = {\n // This permission regards the main component (App) and is used to tell\n // If the plugin link should be displayed in the menu\n // And also if the plugin is accessible. This use case is found when a user types the url of the\n // plugin directly in the browser\n main: [\n { action: 'plugin::documentation.read', subject: null },\n { action: 'plugin::documentation.settings.regenerate', subject: null },\n { action: 'plugin::documentation.settings.update', subject: null },\n ],\n open: [\n { action: 'plugin::documentation.read', subject: null },\n { action: 'plugin::documentation.settings.regenerate', subject: null },\n ],\n regenerate: [{ action: 'plugin::documentation.settings.regenerate', subject: null }],\n update: [{ action: 'plugin::documentation.settings.update', subject: null }],\n};\n","import pluginPkg from '../../package.json';\n\nconst pluginId = pluginPkg.name.replace(/^@strapi\\/plugin-/i, '');\n\nexport default pluginId;\n","// NOTE TO PLUGINS DEVELOPERS:\n// If you modify this file by adding new options to the plugin entry point\n// Here's the file: strapi/docs/3.0.0-beta.x/plugin-development/frontend-field-api.md\n// Here's the file: strapi/docs/3.0.0-beta.x/guides/registering-a-field-in-admin.md\n// Also the strapi-generate-plugins/files/admin/src/index.js needs to be updated\n// IF THE DOC IS NOT UPDATED THE PULL REQUEST WILL NOT BE MERGED\nimport { prefixPluginTranslations } from '@strapi/helper-plugin';\nimport { Information } from '@strapi/icons';\n\nimport pluginPkg from '../../package.json';\n\nimport { PERMISSIONS } from './constants';\nimport pluginId from './pluginId';\n\nconst name = pluginPkg.strapi.name;\n\nexport default {\n register(app) {\n app.addMenuLink({\n to: `/plugins/${pluginId}`,\n icon: Information,\n intlLabel: {\n id: `${pluginId}.plugin.name`,\n defaultMessage: 'Documentation',\n },\n permissions: PERMISSIONS.main,\n async Component() {\n const component = await import('./pages/PluginPage');\n\n return component;\n },\n });\n\n app.registerPlugin({\n id: pluginId,\n name,\n });\n },\n bootstrap(app) {\n app.addSettingsLink('global', {\n intlLabel: {\n id: `${pluginId}.plugin.name`,\n defaultMessage: 'Documentation',\n },\n id: 'documentation',\n to: `/settings/${pluginId}`,\n async Component() {\n const component = await import('./pages/SettingsPage');\n\n return component;\n },\n permissions: PERMISSIONS.main,\n });\n },\n async registerTrads({ locales }) {\n const importedTrads = await Promise.all(\n locales.map((locale) => {\n return import(`./translations/${locale}.json`)\n .then(({ default: data }) => {\n return {\n data: prefixPluginTranslations(data, pluginId),\n locale,\n };\n })\n .catch(() => {\n return {\n data: {},\n locale,\n };\n });\n })\n );\n\n return Promise.resolve(importedTrads);\n },\n};\n"],"names":["Information","prefixPluginTranslations"],"mappings":"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"}
@@ -1,203 +0,0 @@
1
- import { prefixPluginTranslations } from "@strapi/helper-plugin";
2
- import { Information } from "@strapi/icons";
3
- const __variableDynamicImportRuntimeHelper = (glob, path) => {
4
- const v = glob[path];
5
- if (v) {
6
- return typeof v === "function" ? v() : Promise.resolve(v);
7
- }
8
- return new Promise((_, reject) => {
9
- (typeof queueMicrotask === "function" ? queueMicrotask : setTimeout)(reject.bind(null, new Error("Unknown variable dynamic import: " + path)));
10
- });
11
- };
12
- const name$1 = "@strapi/plugin-documentation";
13
- const version = "4.15.2";
14
- const description = "Create an OpenAPI Document and visualize your API with SWAGGER UI.";
15
- const repository = {
16
- type: "git",
17
- url: "https://github.com/strapi/strapi.git",
18
- directory: "packages/plugins/documentation"
19
- };
20
- const license = "SEE LICENSE IN LICENSE";
21
- const author = {
22
- name: "Strapi Solutions SAS",
23
- email: "hi@strapi.io",
24
- url: "https://strapi.io"
25
- };
26
- const maintainers = [
27
- {
28
- name: "Strapi Solutions SAS",
29
- email: "hi@strapi.io",
30
- url: "https://strapi.io"
31
- }
32
- ];
33
- const exports = {
34
- "./strapi-admin": {
35
- source: "./admin/src/index.js",
36
- "import": "./dist/admin/index.mjs",
37
- require: "./dist/admin/index.js",
38
- "default": "./dist/admin/index.js"
39
- },
40
- "./strapi-server": {
41
- source: "./strapi-server.js",
42
- require: "./strapi-server.js",
43
- "default": "./strapi-server.js"
44
- },
45
- "./package.json": "./package.json"
46
- };
47
- const scripts = {
48
- build: "pack-up build",
49
- clean: "run -T rimraf dist",
50
- lint: "run -T eslint .",
51
- "test:front": "run -T cross-env IS_EE=true jest --config ./jest.config.front.js",
52
- "test:front:watch": "run -T cross-env IS_EE=true jest --config ./jest.config.front.js --watchAll",
53
- "test:unit": "jest --verbose",
54
- "test:unit:watch": "run -T jest --watch",
55
- prepublishOnly: "yarn clean && yarn build",
56
- watch: "pack-up watch"
57
- };
58
- const dependencies = {
59
- "@strapi/design-system": "1.13.0",
60
- "@strapi/helper-plugin": "4.15.2",
61
- "@strapi/icons": "1.13.0",
62
- "@strapi/utils": "4.15.2",
63
- bcryptjs: "2.4.3",
64
- cheerio: "^1.0.0-rc.12",
65
- formik: "2.4.0",
66
- "fs-extra": "10.0.0",
67
- immer: "9.0.19",
68
- "koa-static": "^5.0.0",
69
- lodash: "4.17.21",
70
- "path-to-regexp": "6.2.1",
71
- "react-helmet": "^6.1.0",
72
- "react-intl": "6.4.1",
73
- "react-query": "3.39.3",
74
- "swagger-ui-dist": "4.19.0",
75
- yaml: "1.10.2",
76
- yup: "0.32.9"
77
- };
78
- const devDependencies = {
79
- "@apidevtools/swagger-parser": "^10.1.0",
80
- "@strapi/pack-up": "4.15.2",
81
- "@strapi/strapi": "4.15.2",
82
- "@testing-library/react": "14.0.0",
83
- "@testing-library/user-event": "14.4.3",
84
- msw: "1.3.0",
85
- react: "^18.2.0",
86
- "react-dom": "^18.2.0",
87
- "react-router-dom": "5.3.4",
88
- "styled-components": "5.3.3"
89
- };
90
- const peerDependencies = {
91
- "@strapi/strapi": "^4.0.0",
92
- react: "^17.0.0 || ^18.0.0",
93
- "react-dom": "^17.0.0 || ^18.0.0",
94
- "react-router-dom": "^5.2.0",
95
- "styled-components": "^5.2.1"
96
- };
97
- const engines = {
98
- node: ">=18.0.0 <=20.x.x",
99
- npm: ">=6.0.0"
100
- };
101
- const strapi = {
102
- displayName: "Documentation",
103
- name: "documentation",
104
- description: "Create an OpenAPI Document and visualize your API with SWAGGER UI.",
105
- kind: "plugin"
106
- };
107
- const gitHead = "bb510893332674e2607f7d335b34dc78c599319a";
108
- const pluginPkg = {
109
- name: name$1,
110
- version,
111
- description,
112
- repository,
113
- license,
114
- author,
115
- maintainers,
116
- exports,
117
- scripts,
118
- dependencies,
119
- devDependencies,
120
- peerDependencies,
121
- engines,
122
- strapi,
123
- gitHead
124
- };
125
- const PERMISSIONS = {
126
- // This permission regards the main component (App) and is used to tell
127
- // If the plugin link should be displayed in the menu
128
- // And also if the plugin is accessible. This use case is found when a user types the url of the
129
- // plugin directly in the browser
130
- main: [
131
- { action: "plugin::documentation.read", subject: null },
132
- { action: "plugin::documentation.settings.regenerate", subject: null },
133
- { action: "plugin::documentation.settings.update", subject: null }
134
- ],
135
- open: [
136
- { action: "plugin::documentation.read", subject: null },
137
- { action: "plugin::documentation.settings.regenerate", subject: null }
138
- ],
139
- regenerate: [{ action: "plugin::documentation.settings.regenerate", subject: null }],
140
- update: [{ action: "plugin::documentation.settings.update", subject: null }]
141
- };
142
- const pluginId = pluginPkg.name.replace(/^@strapi\/plugin-/i, "");
143
- const name = pluginPkg.strapi.name;
144
- const index = {
145
- register(app) {
146
- app.addMenuLink({
147
- to: `/plugins/${pluginId}`,
148
- icon: Information,
149
- intlLabel: {
150
- id: `${pluginId}.plugin.name`,
151
- defaultMessage: "Documentation"
152
- },
153
- permissions: PERMISSIONS.main,
154
- async Component() {
155
- const component = await import("./index-5d9aa19e.mjs");
156
- return component;
157
- }
158
- });
159
- app.registerPlugin({
160
- id: pluginId,
161
- name
162
- });
163
- },
164
- bootstrap(app) {
165
- app.addSettingsLink("global", {
166
- intlLabel: {
167
- id: `${pluginId}.plugin.name`,
168
- defaultMessage: "Documentation"
169
- },
170
- id: "documentation",
171
- to: `/settings/${pluginId}`,
172
- async Component() {
173
- const component = await import("./index-f1bf5533.mjs");
174
- return component;
175
- },
176
- permissions: PERMISSIONS.main
177
- });
178
- },
179
- async registerTrads({ locales }) {
180
- const importedTrads = await Promise.all(
181
- locales.map((locale) => {
182
- return __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./translations/ar.json": () => import("./ar-a504b634.mjs"), "./translations/cs.json": () => import("./cs-feb7f04c.mjs"), "./translations/de.json": () => import("./de-a33e1fea.mjs"), "./translations/dk.json": () => import("./dk-ed9fcdcf.mjs"), "./translations/en.json": () => import("./en-96395a32.mjs"), "./translations/es.json": () => import("./es-22de55e3.mjs"), "./translations/fr.json": () => import("./fr-70c3898d.mjs"), "./translations/id.json": () => import("./id-e9e00780.mjs"), "./translations/it.json": () => import("./it-28ef2963.mjs"), "./translations/ko.json": () => import("./ko-a29301ee.mjs"), "./translations/ms.json": () => import("./ms-87588bdb.mjs"), "./translations/nl.json": () => import("./nl-91bcd809.mjs"), "./translations/pl.json": () => import("./pl-7d7fe7b2.mjs"), "./translations/pt-BR.json": () => import("./pt-BR-0024d4be.mjs"), "./translations/pt.json": () => import("./pt-9b66f3d5.mjs"), "./translations/ru.json": () => import("./ru-468d9a30.mjs"), "./translations/sk.json": () => import("./sk-01b7713b.mjs"), "./translations/sv.json": () => import("./sv-7edbe28d.mjs"), "./translations/th.json": () => import("./th-4fcead7f.mjs"), "./translations/tr.json": () => import("./tr-8290d257.mjs"), "./translations/uk.json": () => import("./uk-bf914720.mjs"), "./translations/vi.json": () => import("./vi-ddc8357e.mjs"), "./translations/zh-Hans.json": () => import("./zh-Hans-6cefb513.mjs"), "./translations/zh.json": () => import("./zh-7b489db7.mjs") }), `./translations/${locale}.json`).then(({ default: data }) => {
183
- return {
184
- data: prefixPluginTranslations(data, pluginId),
185
- locale
186
- };
187
- }).catch(() => {
188
- return {
189
- data: {},
190
- locale
191
- };
192
- });
193
- })
194
- );
195
- return Promise.resolve(importedTrads);
196
- }
197
- };
198
- export {
199
- PERMISSIONS as P,
200
- index as i,
201
- pluginId as p
202
- };
203
- //# sourceMappingURL=index-b730a8b9.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-b730a8b9.mjs","sources":["../../admin/src/constants.js","../../admin/src/pluginId.js","../../admin/src/index.js"],"sourcesContent":["export const PERMISSIONS = {\n // This permission regards the main component (App) and is used to tell\n // If the plugin link should be displayed in the menu\n // And also if the plugin is accessible. This use case is found when a user types the url of the\n // plugin directly in the browser\n main: [\n { action: 'plugin::documentation.read', subject: null },\n { action: 'plugin::documentation.settings.regenerate', subject: null },\n { action: 'plugin::documentation.settings.update', subject: null },\n ],\n open: [\n { action: 'plugin::documentation.read', subject: null },\n { action: 'plugin::documentation.settings.regenerate', subject: null },\n ],\n regenerate: [{ action: 'plugin::documentation.settings.regenerate', subject: null }],\n update: [{ action: 'plugin::documentation.settings.update', subject: null }],\n};\n","import pluginPkg from '../../package.json';\n\nconst pluginId = pluginPkg.name.replace(/^@strapi\\/plugin-/i, '');\n\nexport default pluginId;\n","// NOTE TO PLUGINS DEVELOPERS:\n// If you modify this file by adding new options to the plugin entry point\n// Here's the file: strapi/docs/3.0.0-beta.x/plugin-development/frontend-field-api.md\n// Here's the file: strapi/docs/3.0.0-beta.x/guides/registering-a-field-in-admin.md\n// Also the strapi-generate-plugins/files/admin/src/index.js needs to be updated\n// IF THE DOC IS NOT UPDATED THE PULL REQUEST WILL NOT BE MERGED\nimport { prefixPluginTranslations } from '@strapi/helper-plugin';\nimport { Information } from '@strapi/icons';\n\nimport pluginPkg from '../../package.json';\n\nimport { PERMISSIONS } from './constants';\nimport pluginId from './pluginId';\n\nconst name = pluginPkg.strapi.name;\n\nexport default {\n register(app) {\n app.addMenuLink({\n to: `/plugins/${pluginId}`,\n icon: Information,\n intlLabel: {\n id: `${pluginId}.plugin.name`,\n defaultMessage: 'Documentation',\n },\n permissions: PERMISSIONS.main,\n async Component() {\n const component = await import('./pages/PluginPage');\n\n return component;\n },\n });\n\n app.registerPlugin({\n id: pluginId,\n name,\n });\n },\n bootstrap(app) {\n app.addSettingsLink('global', {\n intlLabel: {\n id: `${pluginId}.plugin.name`,\n defaultMessage: 'Documentation',\n },\n id: 'documentation',\n to: `/settings/${pluginId}`,\n async Component() {\n const component = await import('./pages/SettingsPage');\n\n return component;\n },\n permissions: PERMISSIONS.main,\n });\n },\n async registerTrads({ locales }) {\n const importedTrads = await Promise.all(\n locales.map((locale) => {\n return import(`./translations/${locale}.json`)\n .then(({ default: data }) => {\n return {\n data: prefixPluginTranslations(data, pluginId),\n locale,\n };\n })\n .catch(() => {\n return {\n data: {},\n locale,\n };\n });\n })\n );\n\n return Promise.resolve(importedTrads);\n },\n};\n"],"names":[],"mappings":"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"}
@@ -1,173 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { useState } from "react";
3
- import { Main, HeaderLayout, Button, ContentLayout, Box, Flex, Typography, Grid, GridItem, ToggleInput, TextInput, FieldAction } from "@strapi/design-system";
4
- import { translatedErrors, useFocusWhenNavigate, useRBAC, LoadingIndicatorPage, Form } from "@strapi/helper-plugin";
5
- import { Check, Eye, EyeStriked } from "@strapi/icons";
6
- import { Formik } from "formik";
7
- import { useIntl } from "react-intl";
8
- import styled from "styled-components";
9
- import * as yup from "yup";
10
- import { P as PERMISSIONS } from "./index-b730a8b9.mjs";
11
- import { u as useDocumentation, g as getTrad } from "./useDocumentation-f6d239a2.mjs";
12
- import "react-query";
13
- const schema = yup.object().shape({
14
- restrictedAccess: yup.boolean(),
15
- password: yup.string().when("restrictedAccess", (value, initSchema) => {
16
- return value ? initSchema.required(translatedErrors.required) : initSchema;
17
- })
18
- });
19
- const SettingsPage = () => {
20
- useFocusWhenNavigate();
21
- const { formatMessage } = useIntl();
22
- const { submit, data, isLoading } = useDocumentation();
23
- const [passwordShown, setPasswordShown] = useState(false);
24
- const { allowedActions } = useRBAC(PERMISSIONS);
25
- const handleUpdateSettingsSubmit = (body) => {
26
- submit.mutate({
27
- prefix: data?.prefix,
28
- body
29
- });
30
- };
31
- return /* @__PURE__ */ jsx(Main, { children: isLoading ? /* @__PURE__ */ jsx(LoadingIndicatorPage, { children: "Plugin settings are loading" }) : /* @__PURE__ */ jsx(
32
- Formik,
33
- {
34
- initialValues: {
35
- restrictedAccess: data?.documentationAccess.restrictedAccess || false,
36
- password: ""
37
- },
38
- onSubmit: handleUpdateSettingsSubmit,
39
- validationSchema: schema,
40
- children: ({
41
- handleSubmit,
42
- values,
43
- handleChange,
44
- errors,
45
- setFieldTouched,
46
- setFieldValue,
47
- dirty
48
- }) => {
49
- return /* @__PURE__ */ jsxs(Form, { noValidate: true, onSubmit: handleSubmit, children: [
50
- /* @__PURE__ */ jsx(
51
- HeaderLayout,
52
- {
53
- title: formatMessage({
54
- id: getTrad("plugin.name"),
55
- defaultMessage: "Documentation"
56
- }),
57
- subtitle: formatMessage({
58
- id: getTrad("pages.SettingsPage.header.description"),
59
- defaultMessage: "Configure the documentation plugin"
60
- }),
61
- primaryAction: /* @__PURE__ */ jsx(
62
- Button,
63
- {
64
- type: "submit",
65
- startIcon: /* @__PURE__ */ jsx(Check, {}),
66
- disabled: !dirty && allowedActions.canUpdate,
67
- children: formatMessage({
68
- id: getTrad("pages.SettingsPage.Button.save"),
69
- defaultMessage: "Save"
70
- })
71
- }
72
- )
73
- }
74
- ),
75
- /* @__PURE__ */ jsx(ContentLayout, { children: /* @__PURE__ */ jsx(
76
- Box,
77
- {
78
- background: "neutral0",
79
- hasRadius: true,
80
- shadow: "filterShadow",
81
- paddingTop: 6,
82
- paddingBottom: 6,
83
- paddingLeft: 7,
84
- paddingRight: 7,
85
- children: /* @__PURE__ */ jsxs(Flex, { direction: "column", alignItems: "stretch", gap: 4, children: [
86
- /* @__PURE__ */ jsx(Typography, { variant: "delta", as: "h2", children: formatMessage({
87
- id: "global.settings",
88
- defaultMessage: "Settings"
89
- }) }),
90
- /* @__PURE__ */ jsxs(Grid, { gap: 4, children: [
91
- /* @__PURE__ */ jsx(GridItem, { col: 6, s: 12, children: /* @__PURE__ */ jsx(
92
- ToggleInput,
93
- {
94
- name: "restrictedAccess",
95
- label: formatMessage({
96
- id: getTrad("pages.SettingsPage.toggle.label"),
97
- defaultMessage: "Restricted Access"
98
- }),
99
- hint: formatMessage({
100
- id: getTrad("pages.SettingsPage.toggle.hint"),
101
- defaultMessage: "Make the documentation endpoint private"
102
- }),
103
- checked: values.restrictedAccess,
104
- onChange: () => {
105
- if (values.restrictedAccess === true) {
106
- setFieldValue("password", "", false);
107
- setFieldTouched("password", false, false);
108
- }
109
- setFieldValue("restrictedAccess", !values.restrictedAccess, false);
110
- },
111
- onLabel: "On",
112
- offLabel: "Off"
113
- }
114
- ) }),
115
- values.restrictedAccess && /* @__PURE__ */ jsx(GridItem, { col: 6, s: 12, children: /* @__PURE__ */ jsx(
116
- TextInput,
117
- {
118
- label: formatMessage({
119
- id: "global.password",
120
- defaultMessage: "Password"
121
- }),
122
- name: "password",
123
- placeholder: "**********",
124
- type: passwordShown ? "text" : "password",
125
- value: values.password,
126
- onChange: handleChange,
127
- error: errors.password ? formatMessage({
128
- id: errors.password,
129
- defaultMessage: "Invalid value"
130
- }) : null,
131
- endAction: /* @__PURE__ */ jsx(
132
- FieldActionWrapper,
133
- {
134
- onClick: (e) => {
135
- e.stopPropagation();
136
- setPasswordShown((prev) => !prev);
137
- },
138
- label: formatMessage(
139
- passwordShown ? {
140
- id: "Auth.form.password.show-password",
141
- defaultMessage: "Show password"
142
- } : {
143
- id: "Auth.form.password.hide-password",
144
- defaultMessage: "Hide password"
145
- }
146
- ),
147
- children: passwordShown ? /* @__PURE__ */ jsx(Eye, {}) : /* @__PURE__ */ jsx(EyeStriked, {})
148
- }
149
- )
150
- }
151
- ) })
152
- ] })
153
- ] })
154
- }
155
- ) })
156
- ] });
157
- }
158
- }
159
- ) });
160
- };
161
- const FieldActionWrapper = styled(FieldAction)`
162
- svg {
163
- height: 1rem;
164
- width: 1rem;
165
- path {
166
- fill: ${({ theme }) => theme.colors.neutral600};
167
- }
168
- }
169
- `;
170
- export {
171
- SettingsPage as default
172
- };
173
- //# sourceMappingURL=index-f1bf5533.mjs.map