@verdaccio/ui-components 5.0.0-next-9.25 → 5.0.0-next-9.26

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 (113) hide show
  1. package/build/components/Help/Help.js +103 -66
  2. package/build/components/Help/Help.js.map +1 -1
  3. package/build/components/Help/Help.mjs +103 -66
  4. package/build/components/Help/Help.mjs.map +1 -1
  5. package/build/i18n/crowdin/ui.js +3 -1
  6. package/build/i18n/crowdin/ui.js.map +1 -1
  7. package/build/i18n/crowdin/ui.json +3 -1
  8. package/build/i18n/crowdin/ui.mjs +3 -1
  9. package/build/i18n/crowdin/ui.mjs.map +1 -1
  10. package/build/i18n/download_translations/cs-CZ/ui.js +3 -1
  11. package/build/i18n/download_translations/cs-CZ/ui.js.map +1 -1
  12. package/build/i18n/download_translations/cs-CZ/ui.json +3 -1
  13. package/build/i18n/download_translations/cs-CZ/ui.mjs +3 -1
  14. package/build/i18n/download_translations/cs-CZ/ui.mjs.map +1 -1
  15. package/build/i18n/download_translations/de-DE/ui.js +3 -1
  16. package/build/i18n/download_translations/de-DE/ui.js.map +1 -1
  17. package/build/i18n/download_translations/de-DE/ui.json +3 -1
  18. package/build/i18n/download_translations/de-DE/ui.mjs +3 -1
  19. package/build/i18n/download_translations/de-DE/ui.mjs.map +1 -1
  20. package/build/i18n/download_translations/es-ES/ui.js +3 -1
  21. package/build/i18n/download_translations/es-ES/ui.js.map +1 -1
  22. package/build/i18n/download_translations/es-ES/ui.json +3 -1
  23. package/build/i18n/download_translations/es-ES/ui.mjs +3 -1
  24. package/build/i18n/download_translations/es-ES/ui.mjs.map +1 -1
  25. package/build/i18n/download_translations/fr-FR/ui.js +3 -1
  26. package/build/i18n/download_translations/fr-FR/ui.js.map +1 -1
  27. package/build/i18n/download_translations/fr-FR/ui.json +3 -1
  28. package/build/i18n/download_translations/fr-FR/ui.mjs +3 -1
  29. package/build/i18n/download_translations/fr-FR/ui.mjs.map +1 -1
  30. package/build/i18n/download_translations/ga-IE/ui.js +3 -1
  31. package/build/i18n/download_translations/ga-IE/ui.js.map +1 -1
  32. package/build/i18n/download_translations/ga-IE/ui.json +3 -1
  33. package/build/i18n/download_translations/ga-IE/ui.mjs +3 -1
  34. package/build/i18n/download_translations/ga-IE/ui.mjs.map +1 -1
  35. package/build/i18n/download_translations/gl-ES/ui.js +3 -1
  36. package/build/i18n/download_translations/gl-ES/ui.js.map +1 -1
  37. package/build/i18n/download_translations/gl-ES/ui.json +3 -1
  38. package/build/i18n/download_translations/gl-ES/ui.mjs +3 -1
  39. package/build/i18n/download_translations/gl-ES/ui.mjs.map +1 -1
  40. package/build/i18n/download_translations/it-IT/ui.js +3 -1
  41. package/build/i18n/download_translations/it-IT/ui.js.map +1 -1
  42. package/build/i18n/download_translations/it-IT/ui.json +3 -1
  43. package/build/i18n/download_translations/it-IT/ui.mjs +3 -1
  44. package/build/i18n/download_translations/it-IT/ui.mjs.map +1 -1
  45. package/build/i18n/download_translations/ko-KR/ui.js +3 -1
  46. package/build/i18n/download_translations/ko-KR/ui.js.map +1 -1
  47. package/build/i18n/download_translations/ko-KR/ui.json +3 -1
  48. package/build/i18n/download_translations/ko-KR/ui.mjs +3 -1
  49. package/build/i18n/download_translations/ko-KR/ui.mjs.map +1 -1
  50. package/build/i18n/download_translations/pl-PL/ui.js +3 -1
  51. package/build/i18n/download_translations/pl-PL/ui.js.map +1 -1
  52. package/build/i18n/download_translations/pl-PL/ui.json +3 -1
  53. package/build/i18n/download_translations/pl-PL/ui.mjs +3 -1
  54. package/build/i18n/download_translations/pl-PL/ui.mjs.map +1 -1
  55. package/build/i18n/download_translations/pt-BR/ui.js +3 -1
  56. package/build/i18n/download_translations/pt-BR/ui.js.map +1 -1
  57. package/build/i18n/download_translations/pt-BR/ui.json +3 -1
  58. package/build/i18n/download_translations/pt-BR/ui.mjs +3 -1
  59. package/build/i18n/download_translations/pt-BR/ui.mjs.map +1 -1
  60. package/build/i18n/download_translations/ru-RU/ui.js +3 -1
  61. package/build/i18n/download_translations/ru-RU/ui.js.map +1 -1
  62. package/build/i18n/download_translations/ru-RU/ui.json +3 -1
  63. package/build/i18n/download_translations/ru-RU/ui.mjs +3 -1
  64. package/build/i18n/download_translations/ru-RU/ui.mjs.map +1 -1
  65. package/build/i18n/download_translations/sr-CS/ui.js +3 -1
  66. package/build/i18n/download_translations/sr-CS/ui.js.map +1 -1
  67. package/build/i18n/download_translations/sr-CS/ui.json +3 -1
  68. package/build/i18n/download_translations/sr-CS/ui.mjs +3 -1
  69. package/build/i18n/download_translations/sr-CS/ui.mjs.map +1 -1
  70. package/build/i18n/download_translations/tr-TR/ui.js +3 -1
  71. package/build/i18n/download_translations/tr-TR/ui.js.map +1 -1
  72. package/build/i18n/download_translations/tr-TR/ui.json +3 -1
  73. package/build/i18n/download_translations/tr-TR/ui.mjs +3 -1
  74. package/build/i18n/download_translations/tr-TR/ui.mjs.map +1 -1
  75. package/build/i18n/download_translations/vi-VN/ui.js +3 -1
  76. package/build/i18n/download_translations/vi-VN/ui.js.map +1 -1
  77. package/build/i18n/download_translations/vi-VN/ui.json +3 -1
  78. package/build/i18n/download_translations/vi-VN/ui.mjs +3 -1
  79. package/build/i18n/download_translations/vi-VN/ui.mjs.map +1 -1
  80. package/build/i18n/download_translations/yo-NG/ui.js +3 -1
  81. package/build/i18n/download_translations/yo-NG/ui.js.map +1 -1
  82. package/build/i18n/download_translations/yo-NG/ui.json +3 -1
  83. package/build/i18n/download_translations/yo-NG/ui.mjs +3 -1
  84. package/build/i18n/download_translations/yo-NG/ui.mjs.map +1 -1
  85. package/build/i18n/download_translations/zh-CN/ui.js +3 -1
  86. package/build/i18n/download_translations/zh-CN/ui.js.map +1 -1
  87. package/build/i18n/download_translations/zh-CN/ui.json +3 -1
  88. package/build/i18n/download_translations/zh-CN/ui.mjs +3 -1
  89. package/build/i18n/download_translations/zh-CN/ui.mjs.map +1 -1
  90. package/build/i18n/download_translations/zh-TW/ui.js +3 -1
  91. package/build/i18n/download_translations/zh-TW/ui.js.map +1 -1
  92. package/build/i18n/download_translations/zh-TW/ui.json +3 -1
  93. package/build/i18n/download_translations/zh-TW/ui.mjs +3 -1
  94. package/build/i18n/download_translations/zh-TW/ui.mjs.map +1 -1
  95. package/build/i18n/loadTranslationFile.d.ts +2 -2
  96. package/build/i18n/loadTranslationFile.js +2 -2
  97. package/build/i18n/loadTranslationFile.js.map +1 -1
  98. package/build/i18n/loadTranslationFile.mjs +2 -2
  99. package/build/i18n/loadTranslationFile.mjs.map +1 -1
  100. package/build/sections/Header/HeaderSettingsDialog.js +9 -2
  101. package/build/sections/Header/HeaderSettingsDialog.js.map +1 -1
  102. package/build/sections/Header/HeaderSettingsDialog.mjs +9 -2
  103. package/build/sections/Header/HeaderSettingsDialog.mjs.map +1 -1
  104. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.js +17 -4
  105. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.js.map +1 -1
  106. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.mjs +17 -4
  107. package/build/sections/Header/RegistryInfoContent/RegistryInfoContent.mjs.map +1 -1
  108. package/build/utils/markdown.d.ts +1 -1
  109. package/build/utils/markdown.js +3 -1
  110. package/build/utils/markdown.js.map +1 -1
  111. package/build/utils/markdown.mjs +2 -1
  112. package/build/utils/markdown.mjs.map +1 -1
  113. package/package.json +1 -1
@@ -5,6 +5,7 @@ import { VERDACCIO_DOCS_URL } from "../../components/DocsLink/DocsLink.mjs";
5
5
  import "../../components/DocsLink/index.mjs";
6
6
  import RegistryInfoDialog from "../../components/RegistryInfoDialog/RegistryInfoDialog.mjs";
7
7
  import "../../components/RegistryInfoDialog/index.mjs";
8
+ import { externalLinkComponents } from "../../utils/markdown.mjs";
8
9
  import { CustomHelp, HelpGuide } from "../../components/Help/Help.mjs";
9
10
  import LanguageSwitch from "./LanguageSwitch.mjs";
10
11
  import RegistryInfoContent from "./RegistryInfoContent/RegistryInfoContent.mjs";
@@ -33,7 +34,10 @@ function TabPanel(props) {
33
34
  role: "tabpanel",
34
35
  ...other,
35
36
  children: value === index && /* @__PURE__ */ jsx(Box, {
36
- sx: { paddingTop: 3 },
37
+ sx: {
38
+ paddingTop: 3,
39
+ paddingBottom: 3
40
+ },
37
41
  children
38
42
  })
39
43
  });
@@ -105,7 +109,10 @@ var HeaderSettingsDialog = ({ onCloseDialog, isOpen }) => {
105
109
  children: [
106
110
  /* @__PURE__ */ jsx(TextContent, { children: t("language.description") }),
107
111
  /* @__PURE__ */ jsx(LanguageSwitch, {}),
108
- /* @__PURE__ */ jsx(ReactMarkdown, { children: t("language.contribute") })
112
+ /* @__PURE__ */ jsx(ReactMarkdown, {
113
+ components: externalLinkComponents,
114
+ children: t("language.contribute")
115
+ })
109
116
  ]
110
117
  })
111
118
  ]
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderSettingsDialog.mjs","names":[],"sources":["../../../src/sections/Header/HeaderSettingsDialog.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport Box from '@mui/material/Box';\nimport Tab from '@mui/material/Tab';\nimport Tabs from '@mui/material/Tabs';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport ReactMarkdown from 'react-markdown';\n\nimport type { Theme } from '../../';\nimport { VERDACCIO_DOCS_URL } from '../../components/DocsLink';\nimport { CustomHelp, HelpGuide } from '../../components/Help/Help';\nimport RegistryInfoDialog from '../../components/RegistryInfoDialog';\nimport { getConfiguration } from '../../configuration';\nimport { useConfig } from '../../providers';\nimport LanguageSwitch from './LanguageSwitch';\nimport RegistryInfoContent from './RegistryInfoContent';\n\ninterface Props {\n isOpen: boolean;\n onCloseDialog: () => void;\n}\n\nfunction a11yProps(index) {\n return {\n id: `simple-tab-${index}`,\n 'aria-controls': `simple-tabpanel-${index}`,\n };\n}\n\nfunction TabPanel(props) {\n const { children, value, index, ...other } = props;\n\n return (\n <div\n aria-labelledby={`simple-tab-${index}`}\n hidden={value !== index}\n id={`simple-tabpanel-${index}`}\n role=\"tabpanel\"\n {...other}\n >\n {value === index && <Box sx={{ paddingTop: 3 }}>{children}</Box>}\n </div>\n );\n}\n\nconst TextContent = styled('div')<{ theme?: Theme }>(({ theme }) => ({\n padding: '10px 0',\n backgroundColor: theme.palette.background.default,\n}));\n\nconst HeaderSettingsDialog: React.FC<Props> = ({ onCloseDialog, isOpen }) => {\n const [value, setValue] = React.useState(0);\n\n const handleChange = (_event, newValue) => {\n setValue(newValue);\n };\n const configStore = getConfiguration();\n const { scope, base } = configStore;\n const { t } = useTranslation();\n const { configOptions } = useConfig();\n const customHelp = configOptions.help?.trim();\n return (\n <RegistryInfoDialog\n docsUrl={VERDACCIO_DOCS_URL}\n onClose={onCloseDialog}\n open={isOpen}\n title={t('dialog.settings.title')}\n >\n <Box sx={{ width: '100%' }}>\n <Box sx={{ borderBottom: 1, borderColor: 'divider' }}>\n <Tabs aria-label=\"basic tabs example\" onChange={handleChange} value={value}>\n <Tab label={t('packageManagers.title')} {...a11yProps(0)} />\n <Tab\n data-testid=\"settings-publish-tab\"\n label={t('help.settings-tab')}\n {...a11yProps(1)}\n />\n <Tab label={t('language.title')} {...a11yProps(2)} />\n </Tabs>\n </Box>\n <TabPanel index={0} value={value}>\n <RegistryInfoContent registryUrl={base} scope={scope} />\n </TabPanel>\n {/* the welcome guide stays reachable once the registry has packages */}\n <TabPanel data-testid=\"settings-publish\" index={1} value={value}>\n {customHelp ? <CustomHelp markdown={customHelp} /> : <HelpGuide />}\n </TabPanel>\n <TabPanel index={2} value={value}>\n <TextContent>{t('language.description')}</TextContent>\n <LanguageSwitch />\n <ReactMarkdown>{t('language.contribute')}</ReactMarkdown>\n </TabPanel>\n </Box>\n </RegistryInfoDialog>\n );\n};\n\nexport default HeaderSettingsDialog;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAsBA,SAAS,UAAU,OAAO;CACxB,OAAO;EACL,IAAI,cAAc;EAClB,iBAAiB,mBAAmB;CACtC;AACF;AAEA,SAAS,SAAS,OAAO;CACvB,MAAM,EAAE,UAAU,OAAO,OAAO,GAAG,UAAU;CAE7C,OACE,oBAAC,OAAD;EACE,mBAAiB,cAAc;EAC/B,QAAQ,UAAU;EAClB,IAAI,mBAAmB;EACvB,MAAK;EACL,GAAI;EAEH,UAAA,UAAU,SAAS,oBAAC,KAAD;GAAK,IAAI,EAAE,YAAY,EAAE;GAAI;EAAc,CAAA;CAC5D,CAAA;AAET;AAEA,IAAM,cAAc,OAAO,KAAK,CAAC,EAAqB,EAAE,aAAa;CACnE,SAAS;CACT,iBAAiB,MAAM,QAAQ,WAAW;AAC5C,EAAE;AAEF,IAAM,wBAAyC,EAAE,eAAe,aAAa;CAC3E,MAAM,CAAC,OAAO,YAAY,MAAM,SAAS,CAAC;CAE1C,MAAM,gBAAgB,QAAQ,aAAa;EACzC,SAAS,QAAQ;CACnB;CAEA,MAAM,EAAE,OAAO,SADK,iBACI;CACxB,MAAM,EAAE,MAAM,eAAe;CAC7B,MAAM,EAAE,kBAAkB,UAAU;CACpC,MAAM,aAAa,cAAc,MAAM,KAAK;CAC5C,OACE,oBAAC,oBAAD;EACE,SAAS;EACT,SAAS;EACT,MAAM;EACN,OAAO,EAAE,uBAAuB;EAEhC,UAAA,qBAAC,KAAD;GAAK,IAAI,EAAE,OAAO,OAAO;GAAzB,UAAA;IACE,oBAAC,KAAD;KAAK,IAAI;MAAE,cAAc;MAAG,aAAa;KAAU;KACjD,UAAA,qBAAC,MAAD;MAAM,cAAW;MAAqB,UAAU;MAAqB;MAArE,UAAA;OACE,oBAAC,KAAD;QAAK,OAAO,EAAE,uBAAuB;QAAG,GAAI,UAAU,CAAC;OAAI,CAAA;OAC3D,oBAAC,KAAD;QACE,eAAY;QACZ,OAAO,EAAE,mBAAmB;QAC5B,GAAI,UAAU,CAAC;OAChB,CAAA;OACD,oBAAC,KAAD;QAAK,OAAO,EAAE,gBAAgB;QAAG,GAAI,UAAU,CAAC;OAAI,CAAA;MAChD;;IACH,CAAA;IACL,oBAAC,UAAD;KAAU,OAAO;KAAU;KACzB,UAAA,oBAAC,qBAAD;MAAqB,aAAa;MAAa;KAAQ,CAAA;IAC/C,CAAA;IAEV,oBAAC,UAAD;KAAU,eAAY;KAAmB,OAAO;KAAU;KACvD,UAAA,aAAa,oBAAC,YAAD,EAAY,UAAU,WAAa,CAAA,IAAI,oBAAC,WAAD,CAAY,CAAA;IACzD,CAAA;IACV,qBAAC,UAAD;KAAU,OAAO;KAAU;KAA3B,UAAA;MACE,oBAAC,aAAD,EAAA,UAAc,EAAE,sBAAsB,EAAe,CAAA;MACrD,oBAAC,gBAAD,CAAiB,CAAA;MACjB,oBAAC,eAAD,EAAA,UAAgB,EAAE,qBAAqB,EAAiB,CAAA;KAChD;;GACP;;CACa,CAAA;AAExB"}
1
+ {"version":3,"file":"HeaderSettingsDialog.mjs","names":[],"sources":["../../../src/sections/Header/HeaderSettingsDialog.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport Box from '@mui/material/Box';\nimport Tab from '@mui/material/Tab';\nimport Tabs from '@mui/material/Tabs';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport ReactMarkdown from 'react-markdown';\n\nimport type { Theme } from '../../';\nimport { VERDACCIO_DOCS_URL } from '../../components/DocsLink';\nimport { CustomHelp, HelpGuide } from '../../components/Help/Help';\nimport RegistryInfoDialog from '../../components/RegistryInfoDialog';\nimport { getConfiguration } from '../../configuration';\nimport { useConfig } from '../../providers';\nimport { externalLinkComponents } from '../../utils/markdown';\nimport LanguageSwitch from './LanguageSwitch';\nimport RegistryInfoContent from './RegistryInfoContent';\n\ninterface Props {\n isOpen: boolean;\n onCloseDialog: () => void;\n}\n\nfunction a11yProps(index) {\n return {\n id: `simple-tab-${index}`,\n 'aria-controls': `simple-tabpanel-${index}`,\n };\n}\n\nfunction TabPanel(props) {\n const { children, value, index, ...other } = props;\n\n return (\n <div\n aria-labelledby={`simple-tab-${index}`}\n hidden={value !== index}\n id={`simple-tabpanel-${index}`}\n role=\"tabpanel\"\n {...other}\n >\n {value === index && <Box sx={{ paddingTop: 3, paddingBottom: 3 }}>{children}</Box>}\n </div>\n );\n}\n\nconst TextContent = styled('div')<{ theme?: Theme }>(({ theme }) => ({\n padding: '10px 0',\n backgroundColor: theme.palette.background.default,\n}));\n\nconst HeaderSettingsDialog: React.FC<Props> = ({ onCloseDialog, isOpen }) => {\n const [value, setValue] = React.useState(0);\n\n const handleChange = (_event, newValue) => {\n setValue(newValue);\n };\n const configStore = getConfiguration();\n const { scope, base } = configStore;\n const { t } = useTranslation();\n const { configOptions } = useConfig();\n const customHelp = configOptions.help?.trim();\n return (\n <RegistryInfoDialog\n docsUrl={VERDACCIO_DOCS_URL}\n onClose={onCloseDialog}\n open={isOpen}\n title={t('dialog.settings.title')}\n >\n <Box sx={{ width: '100%' }}>\n <Box sx={{ borderBottom: 1, borderColor: 'divider' }}>\n <Tabs aria-label=\"basic tabs example\" onChange={handleChange} value={value}>\n <Tab label={t('packageManagers.title')} {...a11yProps(0)} />\n <Tab\n data-testid=\"settings-publish-tab\"\n label={t('help.settings-tab')}\n {...a11yProps(1)}\n />\n <Tab label={t('language.title')} {...a11yProps(2)} />\n </Tabs>\n </Box>\n <TabPanel index={0} value={value}>\n <RegistryInfoContent registryUrl={base} scope={scope} />\n </TabPanel>\n {/* the welcome guide stays reachable once the registry has packages */}\n <TabPanel data-testid=\"settings-publish\" index={1} value={value}>\n {customHelp ? <CustomHelp markdown={customHelp} /> : <HelpGuide />}\n </TabPanel>\n <TabPanel index={2} value={value}>\n <TextContent>{t('language.description')}</TextContent>\n <LanguageSwitch />\n <ReactMarkdown components={externalLinkComponents}>\n {t('language.contribute')}\n </ReactMarkdown>\n </TabPanel>\n </Box>\n </RegistryInfoDialog>\n );\n};\n\nexport default HeaderSettingsDialog;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAuBA,SAAS,UAAU,OAAO;CACxB,OAAO;EACL,IAAI,cAAc;EAClB,iBAAiB,mBAAmB;CACtC;AACF;AAEA,SAAS,SAAS,OAAO;CACvB,MAAM,EAAE,UAAU,OAAO,OAAO,GAAG,UAAU;CAE7C,OACE,oBAAC,OAAD;EACE,mBAAiB,cAAc;EAC/B,QAAQ,UAAU;EAClB,IAAI,mBAAmB;EACvB,MAAK;EACL,GAAI;EAEH,UAAA,UAAU,SAAS,oBAAC,KAAD;GAAK,IAAI;IAAE,YAAY;IAAG,eAAe;GAAE;GAAI;EAAc,CAAA;CAC9E,CAAA;AAET;AAEA,IAAM,cAAc,OAAO,KAAK,CAAC,EAAqB,EAAE,aAAa;CACnE,SAAS;CACT,iBAAiB,MAAM,QAAQ,WAAW;AAC5C,EAAE;AAEF,IAAM,wBAAyC,EAAE,eAAe,aAAa;CAC3E,MAAM,CAAC,OAAO,YAAY,MAAM,SAAS,CAAC;CAE1C,MAAM,gBAAgB,QAAQ,aAAa;EACzC,SAAS,QAAQ;CACnB;CAEA,MAAM,EAAE,OAAO,SADK,iBACI;CACxB,MAAM,EAAE,MAAM,eAAe;CAC7B,MAAM,EAAE,kBAAkB,UAAU;CACpC,MAAM,aAAa,cAAc,MAAM,KAAK;CAC5C,OACE,oBAAC,oBAAD;EACE,SAAS;EACT,SAAS;EACT,MAAM;EACN,OAAO,EAAE,uBAAuB;EAEhC,UAAA,qBAAC,KAAD;GAAK,IAAI,EAAE,OAAO,OAAO;GAAzB,UAAA;IACE,oBAAC,KAAD;KAAK,IAAI;MAAE,cAAc;MAAG,aAAa;KAAU;KACjD,UAAA,qBAAC,MAAD;MAAM,cAAW;MAAqB,UAAU;MAAqB;MAArE,UAAA;OACE,oBAAC,KAAD;QAAK,OAAO,EAAE,uBAAuB;QAAG,GAAI,UAAU,CAAC;OAAI,CAAA;OAC3D,oBAAC,KAAD;QACE,eAAY;QACZ,OAAO,EAAE,mBAAmB;QAC5B,GAAI,UAAU,CAAC;OAChB,CAAA;OACD,oBAAC,KAAD;QAAK,OAAO,EAAE,gBAAgB;QAAG,GAAI,UAAU,CAAC;OAAI,CAAA;MAChD;;IACH,CAAA;IACL,oBAAC,UAAD;KAAU,OAAO;KAAU;KACzB,UAAA,oBAAC,qBAAD;MAAqB,aAAa;MAAa;KAAQ,CAAA;IAC/C,CAAA;IAEV,oBAAC,UAAD;KAAU,eAAY;KAAmB,OAAO;KAAU;KACvD,UAAA,aAAa,oBAAC,YAAD,EAAY,UAAU,WAAa,CAAA,IAAI,oBAAC,WAAD,CAAY,CAAA;IACzD,CAAA;IACV,qBAAC,UAAD;KAAU,OAAO;KAAU;KAA3B,UAAA;MACE,oBAAC,aAAD,EAAA,UAAc,EAAE,sBAAsB,EAAe,CAAA;MACrD,oBAAC,gBAAD,CAAiB,CAAA;MACjB,oBAAC,eAAD;OAAe,YAAY;OACxB,UAAA,EAAE,qBAAqB;MACX,CAAA;KACP;;GACP;;CACa,CAAA;AAExB"}
@@ -2,6 +2,7 @@ const require_runtime = require("../../../_virtual/_rolldown/runtime.js");
2
2
  const require_CopyToClipBoard = require("../../../components/CopyClipboard/CopyToClipBoard.js");
3
3
  const require_cli_utils = require("../../../utils/cli-utils.js");
4
4
  const require_AppConfigurationProvider = require("../../../providers/AppConfigurationProvider/AppConfigurationProvider.js");
5
+ const require_markdown = require("../../../utils/markdown.js");
5
6
  const require_styles = require("./styles.js");
6
7
  require("../../../index.js");
7
8
  let _emotion_styled = require("@emotion/styled");
@@ -177,12 +178,18 @@ var RegistryInfoContent = ({ scope, registryUrl }) => {
177
178
  children: "yarn"
178
179
  })
179
180
  }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_mui_material_AccordionDetails.default, { children: [
180
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.Description, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_markdown.default, { children: t("packageManagers.yarnclassicDetails") }) }),
181
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.Description, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_markdown.default, {
182
+ components: require_markdown.externalLinkComponents,
183
+ children: t("packageManagers.yarnclassicDetails")
184
+ }) }),
181
185
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)(CommandContainer, {
182
186
  "data-testid": "tab-content",
183
187
  children: renderYarnTab(scope, registryUrl)
184
188
  }),
185
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.Description, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_markdown.default, { children: t("packageManagers.yarnBerryDetails") }) }),
189
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.Description, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_markdown.default, {
190
+ components: require_markdown.externalLinkComponents,
191
+ children: t("packageManagers.yarnBerryDetails")
192
+ }) }),
186
193
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)(CommandContainer, {
187
194
  "data-testid": "tab-content",
188
195
  children: renderYarnBerryTab(scope, registryUrl)
@@ -218,7 +225,10 @@ var RegistryInfoContent = ({ scope, registryUrl }) => {
218
225
  },
219
226
  children: "bun"
220
227
  })
221
- }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_mui_material_AccordionDetails.default, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.Description, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_markdown.default, { children: t("packageManagers.bunDetails") }) }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(CommandContainer, {
228
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_mui_material_AccordionDetails.default, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.Description, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_markdown.default, {
229
+ components: require_markdown.externalLinkComponents,
230
+ children: t("packageManagers.bunDetails")
231
+ }) }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(CommandContainer, {
222
232
  "data-testid": "tab-content",
223
233
  children: renderBunTab(scope, registryUrl)
224
234
  })] })] }),
@@ -244,7 +254,10 @@ var RegistryInfoContent = ({ scope, registryUrl }) => {
244
254
  "data-testid": "tab-content",
245
255
  children: renderMinReleaseAgeTab(minAgeManagers, exampleScope, t)
246
256
  }),
247
- /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.Description, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_markdown.default, { children: t("packageManagers.minReleaseAge.registry") }) })
257
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_styles.Description, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_markdown.default, {
258
+ components: require_markdown.externalLinkComponents,
259
+ children: t("packageManagers.minReleaseAge.registry")
260
+ }) })
248
261
  ] })]
249
262
  })
250
263
  ] })] });
@@ -1 +1 @@
1
- {"version":3,"file":"RegistryInfoContent.js","names":["Box","CopyClipboard","getCLISetConfigRegistry","getCLISetRegistry","getCLIChangePassword","getCLISBerryYamlRegistry","getBunfigRegistry","Typography","Description","getMinReleaseAgeConfig","styled","useTranslation","useConfig","_Fragment","TextContent","Accordion","AccordionSummary","ExpandMoreIcon","AccordionDetails","ReactMarkdown"],"sources":["../../../../src/sections/Header/RegistryInfoContent/RegistryInfoContent.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport Accordion from '@mui/material/Accordion';\nimport AccordionDetails from '@mui/material/AccordionDetails';\nimport AccordionSummary from '@mui/material/AccordionSummary';\nimport Box from '@mui/material/Box';\nimport Typography from '@mui/material/Typography';\nimport type { FC } from 'react';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport ReactMarkdown from 'react-markdown';\n\nimport {\n CopyClipboard,\n MIN_RELEASE_AGE_DAYS,\n getBunfigRegistry,\n getCLIChangePassword,\n getCLISBerryYamlRegistry,\n getCLISetConfigRegistry,\n getCLISetRegistry,\n getMinReleaseAgeConfig,\n useConfig,\n} from '../../../';\nimport { Description, TextContent } from './styles';\n\nexport const NODE_MANAGER = {\n npm: 'npm',\n yarn: 'yarn',\n pnpm: 'pnpm',\n bun: 'bun',\n};\n\nconst renderNpmTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.npm} set`, scope, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.npm} adduser`, registryUrl)}\n />\n <CopyClipboard dataTestId=\"copy\" text={getCLIChangePassword(NODE_MANAGER.npm, registryUrl)} />\n </Box>\n );\n};\n\nconst renderPnpmTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.pnpm} set`, scope, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.pnpm} adduser`, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLIChangePassword(NODE_MANAGER.pnpm, registryUrl)}\n />\n </Box>\n );\n};\n\nconst renderYarnTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.yarn} config set`, scope, registryUrl)}\n />\n </Box>\n );\n};\n\nconst renderYarnBerryTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard dataTestId=\"copy\" text={getCLISBerryYamlRegistry(scope, registryUrl)} />\n </Box>\n );\n};\n\nconst renderBunTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard dataTestId=\"copy\" text={getBunfigRegistry(scope, registryUrl)} />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.bun} publish`, registryUrl)}\n />\n </Box>\n );\n};\n\n// shown when the registry sets no web.scope\nconst PLACEHOLDER_SCOPE = '@your-scope';\n\nconst renderMinReleaseAgeTab = (\n managers: string[],\n scope: string,\n t: (key: string) => string\n): React.JSX.Element => (\n <Box display=\"flex\" flexDirection=\"column\">\n {managers.map((manager) => (\n <Box data-testid={`min-release-age-${manager}`} key={manager} sx={{ mb: 2 }}>\n <Typography sx={{ fontWeight: 'bold' }}>{manager}</Typography>\n <Description>{t(`packageManagers.minReleaseAge.${manager}`)}</Description>\n <CopyClipboard dataTestId=\"copy\" text={getMinReleaseAgeConfig(manager, scope)} />\n </Box>\n ))}\n </Box>\n);\n\nexport const AccordionContainer = styled('div')({\n padding: 0,\n paddingLeft: 0,\n paddingRight: 0,\n});\n\nexport const CommandContainer = styled('div')({\n padding: 5,\n});\n\nexport type Props = {\n registryUrl: string;\n scope: string | undefined;\n};\n\nconst RegistryInfoContent: FC<Props> = ({ scope, registryUrl }) => {\n const { t } = useTranslation();\n const { configOptions } = useConfig();\n\n const hasNpm = configOptions?.pkgManagers?.includes('npm');\n const hasYarn = configOptions?.pkgManagers?.includes('yarn');\n const hasPnpm = configOptions?.pkgManagers?.includes('pnpm');\n const hasBun = configOptions?.pkgManagers?.includes('bun');\n const minAgeManagers = ['npm', 'pnpm', 'yarn', 'bun'].filter((manager) =>\n configOptions?.pkgManagers?.includes(manager)\n );\n const exampleScope = scope || PLACEHOLDER_SCOPE;\n // TODO: we can improve this logic, expanding only one accordion based on which package manager is enabled\n // feel free to contribute here\n return (\n <>\n <TextContent>{t('packageManagers.description')}</TextContent>\n <AccordionContainer>\n <Accordion disabled={!hasNpm}>\n <AccordionSummary\n aria-controls=\"panel1a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel1a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'npm'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <CommandContainer data-testid={'tab-content'}>\n {renderNpmTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n <Accordion disabled={!hasYarn}>\n <AccordionSummary\n aria-controls=\"panel2a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel2a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'yarn'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n <ReactMarkdown>{t('packageManagers.yarnclassicDetails')}</ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderYarnTab(scope, registryUrl)}\n </CommandContainer>\n <Description>\n <ReactMarkdown>{t('packageManagers.yarnBerryDetails')}</ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderYarnBerryTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n\n <Accordion disabled={!hasPnpm}>\n <AccordionSummary\n aria-controls=\"panel3a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel3a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'pnpm'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <CommandContainer data-testid={'tab-content'}>\n {renderPnpmTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n\n {hasBun && (\n <Accordion>\n <AccordionSummary\n aria-controls=\"panel4a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel4a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'bun'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n <ReactMarkdown>{t('packageManagers.bunDetails')}</ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderBunTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n )}\n\n {minAgeManagers.length > 0 && (\n <Accordion data-testid=\"min-release-age\">\n <AccordionSummary\n aria-controls=\"panel5a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel5a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>\n {t('packageManagers.minReleaseAge.title')}\n </Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n {t('packageManagers.minReleaseAge.description', {\n days: MIN_RELEASE_AGE_DAYS,\n scope: exampleScope,\n })}\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderMinReleaseAgeTab(minAgeManagers, exampleScope, t)}\n </CommandContainer>\n <Description>\n <ReactMarkdown>{t('packageManagers.minReleaseAge.registry')}</ReactMarkdown>\n </Description>\n </AccordionDetails>\n </Accordion>\n )}\n </AccordionContainer>\n </>\n );\n};\n\nexport default RegistryInfoContent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"RegistryInfoContent.js","names":["Box","CopyClipboard","getCLISetConfigRegistry","getCLISetRegistry","getCLIChangePassword","getCLISBerryYamlRegistry","getBunfigRegistry","Typography","Description","getMinReleaseAgeConfig","styled","useTranslation","useConfig","_Fragment","TextContent","Accordion","AccordionSummary","ExpandMoreIcon","AccordionDetails","ReactMarkdown","externalLinkComponents"],"sources":["../../../../src/sections/Header/RegistryInfoContent/RegistryInfoContent.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport Accordion from '@mui/material/Accordion';\nimport AccordionDetails from '@mui/material/AccordionDetails';\nimport AccordionSummary from '@mui/material/AccordionSummary';\nimport Box from '@mui/material/Box';\nimport Typography from '@mui/material/Typography';\nimport type { FC } from 'react';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport ReactMarkdown from 'react-markdown';\n\nimport {\n CopyClipboard,\n MIN_RELEASE_AGE_DAYS,\n getBunfigRegistry,\n getCLIChangePassword,\n getCLISBerryYamlRegistry,\n getCLISetConfigRegistry,\n getCLISetRegistry,\n getMinReleaseAgeConfig,\n useConfig,\n} from '../../../';\nimport { externalLinkComponents } from '../../../utils/markdown';\nimport { Description, TextContent } from './styles';\n\nexport const NODE_MANAGER = {\n npm: 'npm',\n yarn: 'yarn',\n pnpm: 'pnpm',\n bun: 'bun',\n};\n\nconst renderNpmTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.npm} set`, scope, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.npm} adduser`, registryUrl)}\n />\n <CopyClipboard dataTestId=\"copy\" text={getCLIChangePassword(NODE_MANAGER.npm, registryUrl)} />\n </Box>\n );\n};\n\nconst renderPnpmTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.pnpm} set`, scope, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.pnpm} adduser`, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLIChangePassword(NODE_MANAGER.pnpm, registryUrl)}\n />\n </Box>\n );\n};\n\nconst renderYarnTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.yarn} config set`, scope, registryUrl)}\n />\n </Box>\n );\n};\n\nconst renderYarnBerryTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard dataTestId=\"copy\" text={getCLISBerryYamlRegistry(scope, registryUrl)} />\n </Box>\n );\n};\n\nconst renderBunTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard dataTestId=\"copy\" text={getBunfigRegistry(scope, registryUrl)} />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.bun} publish`, registryUrl)}\n />\n </Box>\n );\n};\n\n// shown when the registry sets no web.scope\nconst PLACEHOLDER_SCOPE = '@your-scope';\n\nconst renderMinReleaseAgeTab = (\n managers: string[],\n scope: string,\n t: (key: string) => string\n): React.JSX.Element => (\n <Box display=\"flex\" flexDirection=\"column\">\n {managers.map((manager) => (\n <Box data-testid={`min-release-age-${manager}`} key={manager} sx={{ mb: 2 }}>\n <Typography sx={{ fontWeight: 'bold' }}>{manager}</Typography>\n <Description>{t(`packageManagers.minReleaseAge.${manager}`)}</Description>\n <CopyClipboard dataTestId=\"copy\" text={getMinReleaseAgeConfig(manager, scope)} />\n </Box>\n ))}\n </Box>\n);\n\nexport const AccordionContainer = styled('div')({\n padding: 0,\n paddingLeft: 0,\n paddingRight: 0,\n});\n\nexport const CommandContainer = styled('div')({\n padding: 5,\n});\n\nexport type Props = {\n registryUrl: string;\n scope: string | undefined;\n};\n\nconst RegistryInfoContent: FC<Props> = ({ scope, registryUrl }) => {\n const { t } = useTranslation();\n const { configOptions } = useConfig();\n\n const hasNpm = configOptions?.pkgManagers?.includes('npm');\n const hasYarn = configOptions?.pkgManagers?.includes('yarn');\n const hasPnpm = configOptions?.pkgManagers?.includes('pnpm');\n const hasBun = configOptions?.pkgManagers?.includes('bun');\n const minAgeManagers = ['npm', 'pnpm', 'yarn', 'bun'].filter((manager) =>\n configOptions?.pkgManagers?.includes(manager)\n );\n const exampleScope = scope || PLACEHOLDER_SCOPE;\n // TODO: we can improve this logic, expanding only one accordion based on which package manager is enabled\n // feel free to contribute here\n return (\n <>\n <TextContent>{t('packageManagers.description')}</TextContent>\n <AccordionContainer>\n <Accordion disabled={!hasNpm}>\n <AccordionSummary\n aria-controls=\"panel1a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel1a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'npm'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <CommandContainer data-testid={'tab-content'}>\n {renderNpmTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n <Accordion disabled={!hasYarn}>\n <AccordionSummary\n aria-controls=\"panel2a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel2a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'yarn'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n <ReactMarkdown components={externalLinkComponents}>\n {t('packageManagers.yarnclassicDetails')}\n </ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderYarnTab(scope, registryUrl)}\n </CommandContainer>\n <Description>\n <ReactMarkdown components={externalLinkComponents}>\n {t('packageManagers.yarnBerryDetails')}\n </ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderYarnBerryTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n\n <Accordion disabled={!hasPnpm}>\n <AccordionSummary\n aria-controls=\"panel3a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel3a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'pnpm'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <CommandContainer data-testid={'tab-content'}>\n {renderPnpmTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n\n {hasBun && (\n <Accordion>\n <AccordionSummary\n aria-controls=\"panel4a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel4a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'bun'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n <ReactMarkdown components={externalLinkComponents}>\n {t('packageManagers.bunDetails')}\n </ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderBunTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n )}\n\n {minAgeManagers.length > 0 && (\n <Accordion data-testid=\"min-release-age\">\n <AccordionSummary\n aria-controls=\"panel5a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel5a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>\n {t('packageManagers.minReleaseAge.title')}\n </Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n {t('packageManagers.minReleaseAge.description', {\n days: MIN_RELEASE_AGE_DAYS,\n scope: exampleScope,\n })}\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderMinReleaseAgeTab(minAgeManagers, exampleScope, t)}\n </CommandContainer>\n <Description>\n <ReactMarkdown components={externalLinkComponents}>\n {t('packageManagers.minReleaseAge.registry')}\n </ReactMarkdown>\n </Description>\n </AccordionDetails>\n </Accordion>\n )}\n </AccordionContainer>\n </>\n );\n};\n\nexport default RegistryInfoContent;\n"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import CopyToClipBoard from "../../../components/CopyClipboard/CopyToClipBoard.mjs";
2
2
  import { getBunfigRegistry, getCLIChangePassword, getCLISBerryYamlRegistry, getCLISetConfigRegistry, getCLISetRegistry, getMinReleaseAgeConfig } from "../../../utils/cli-utils.mjs";
3
3
  import { useConfig } from "../../../providers/AppConfigurationProvider/AppConfigurationProvider.mjs";
4
+ import { externalLinkComponents } from "../../../utils/markdown.mjs";
4
5
  import { Description, TextContent } from "./styles.mjs";
5
6
  import "../../../index.mjs";
6
7
  import styled from "@emotion/styled";
@@ -167,12 +168,18 @@ var RegistryInfoContent = ({ scope, registryUrl }) => {
167
168
  children: "yarn"
168
169
  })
169
170
  }), /* @__PURE__ */ jsxs(AccordionDetails, { children: [
170
- /* @__PURE__ */ jsx(Description, { children: /* @__PURE__ */ jsx(ReactMarkdown, { children: t("packageManagers.yarnclassicDetails") }) }),
171
+ /* @__PURE__ */ jsx(Description, { children: /* @__PURE__ */ jsx(ReactMarkdown, {
172
+ components: externalLinkComponents,
173
+ children: t("packageManagers.yarnclassicDetails")
174
+ }) }),
171
175
  /* @__PURE__ */ jsx(CommandContainer, {
172
176
  "data-testid": "tab-content",
173
177
  children: renderYarnTab(scope, registryUrl)
174
178
  }),
175
- /* @__PURE__ */ jsx(Description, { children: /* @__PURE__ */ jsx(ReactMarkdown, { children: t("packageManagers.yarnBerryDetails") }) }),
179
+ /* @__PURE__ */ jsx(Description, { children: /* @__PURE__ */ jsx(ReactMarkdown, {
180
+ components: externalLinkComponents,
181
+ children: t("packageManagers.yarnBerryDetails")
182
+ }) }),
176
183
  /* @__PURE__ */ jsx(CommandContainer, {
177
184
  "data-testid": "tab-content",
178
185
  children: renderYarnBerryTab(scope, registryUrl)
@@ -208,7 +215,10 @@ var RegistryInfoContent = ({ scope, registryUrl }) => {
208
215
  },
209
216
  children: "bun"
210
217
  })
211
- }), /* @__PURE__ */ jsxs(AccordionDetails, { children: [/* @__PURE__ */ jsx(Description, { children: /* @__PURE__ */ jsx(ReactMarkdown, { children: t("packageManagers.bunDetails") }) }), /* @__PURE__ */ jsx(CommandContainer, {
218
+ }), /* @__PURE__ */ jsxs(AccordionDetails, { children: [/* @__PURE__ */ jsx(Description, { children: /* @__PURE__ */ jsx(ReactMarkdown, {
219
+ components: externalLinkComponents,
220
+ children: t("packageManagers.bunDetails")
221
+ }) }), /* @__PURE__ */ jsx(CommandContainer, {
212
222
  "data-testid": "tab-content",
213
223
  children: renderBunTab(scope, registryUrl)
214
224
  })] })] }),
@@ -234,7 +244,10 @@ var RegistryInfoContent = ({ scope, registryUrl }) => {
234
244
  "data-testid": "tab-content",
235
245
  children: renderMinReleaseAgeTab(minAgeManagers, exampleScope, t)
236
246
  }),
237
- /* @__PURE__ */ jsx(Description, { children: /* @__PURE__ */ jsx(ReactMarkdown, { children: t("packageManagers.minReleaseAge.registry") }) })
247
+ /* @__PURE__ */ jsx(Description, { children: /* @__PURE__ */ jsx(ReactMarkdown, {
248
+ components: externalLinkComponents,
249
+ children: t("packageManagers.minReleaseAge.registry")
250
+ }) })
238
251
  ] })]
239
252
  })
240
253
  ] })] });
@@ -1 +1 @@
1
- {"version":3,"file":"RegistryInfoContent.mjs","names":["CopyClipboard","_Fragment"],"sources":["../../../../src/sections/Header/RegistryInfoContent/RegistryInfoContent.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport Accordion from '@mui/material/Accordion';\nimport AccordionDetails from '@mui/material/AccordionDetails';\nimport AccordionSummary from '@mui/material/AccordionSummary';\nimport Box from '@mui/material/Box';\nimport Typography from '@mui/material/Typography';\nimport type { FC } from 'react';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport ReactMarkdown from 'react-markdown';\n\nimport {\n CopyClipboard,\n MIN_RELEASE_AGE_DAYS,\n getBunfigRegistry,\n getCLIChangePassword,\n getCLISBerryYamlRegistry,\n getCLISetConfigRegistry,\n getCLISetRegistry,\n getMinReleaseAgeConfig,\n useConfig,\n} from '../../../';\nimport { Description, TextContent } from './styles';\n\nexport const NODE_MANAGER = {\n npm: 'npm',\n yarn: 'yarn',\n pnpm: 'pnpm',\n bun: 'bun',\n};\n\nconst renderNpmTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.npm} set`, scope, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.npm} adduser`, registryUrl)}\n />\n <CopyClipboard dataTestId=\"copy\" text={getCLIChangePassword(NODE_MANAGER.npm, registryUrl)} />\n </Box>\n );\n};\n\nconst renderPnpmTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.pnpm} set`, scope, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.pnpm} adduser`, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLIChangePassword(NODE_MANAGER.pnpm, registryUrl)}\n />\n </Box>\n );\n};\n\nconst renderYarnTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.yarn} config set`, scope, registryUrl)}\n />\n </Box>\n );\n};\n\nconst renderYarnBerryTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard dataTestId=\"copy\" text={getCLISBerryYamlRegistry(scope, registryUrl)} />\n </Box>\n );\n};\n\nconst renderBunTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard dataTestId=\"copy\" text={getBunfigRegistry(scope, registryUrl)} />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.bun} publish`, registryUrl)}\n />\n </Box>\n );\n};\n\n// shown when the registry sets no web.scope\nconst PLACEHOLDER_SCOPE = '@your-scope';\n\nconst renderMinReleaseAgeTab = (\n managers: string[],\n scope: string,\n t: (key: string) => string\n): React.JSX.Element => (\n <Box display=\"flex\" flexDirection=\"column\">\n {managers.map((manager) => (\n <Box data-testid={`min-release-age-${manager}`} key={manager} sx={{ mb: 2 }}>\n <Typography sx={{ fontWeight: 'bold' }}>{manager}</Typography>\n <Description>{t(`packageManagers.minReleaseAge.${manager}`)}</Description>\n <CopyClipboard dataTestId=\"copy\" text={getMinReleaseAgeConfig(manager, scope)} />\n </Box>\n ))}\n </Box>\n);\n\nexport const AccordionContainer = styled('div')({\n padding: 0,\n paddingLeft: 0,\n paddingRight: 0,\n});\n\nexport const CommandContainer = styled('div')({\n padding: 5,\n});\n\nexport type Props = {\n registryUrl: string;\n scope: string | undefined;\n};\n\nconst RegistryInfoContent: FC<Props> = ({ scope, registryUrl }) => {\n const { t } = useTranslation();\n const { configOptions } = useConfig();\n\n const hasNpm = configOptions?.pkgManagers?.includes('npm');\n const hasYarn = configOptions?.pkgManagers?.includes('yarn');\n const hasPnpm = configOptions?.pkgManagers?.includes('pnpm');\n const hasBun = configOptions?.pkgManagers?.includes('bun');\n const minAgeManagers = ['npm', 'pnpm', 'yarn', 'bun'].filter((manager) =>\n configOptions?.pkgManagers?.includes(manager)\n );\n const exampleScope = scope || PLACEHOLDER_SCOPE;\n // TODO: we can improve this logic, expanding only one accordion based on which package manager is enabled\n // feel free to contribute here\n return (\n <>\n <TextContent>{t('packageManagers.description')}</TextContent>\n <AccordionContainer>\n <Accordion disabled={!hasNpm}>\n <AccordionSummary\n aria-controls=\"panel1a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel1a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'npm'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <CommandContainer data-testid={'tab-content'}>\n {renderNpmTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n <Accordion disabled={!hasYarn}>\n <AccordionSummary\n aria-controls=\"panel2a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel2a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'yarn'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n <ReactMarkdown>{t('packageManagers.yarnclassicDetails')}</ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderYarnTab(scope, registryUrl)}\n </CommandContainer>\n <Description>\n <ReactMarkdown>{t('packageManagers.yarnBerryDetails')}</ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderYarnBerryTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n\n <Accordion disabled={!hasPnpm}>\n <AccordionSummary\n aria-controls=\"panel3a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel3a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'pnpm'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <CommandContainer data-testid={'tab-content'}>\n {renderPnpmTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n\n {hasBun && (\n <Accordion>\n <AccordionSummary\n aria-controls=\"panel4a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel4a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'bun'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n <ReactMarkdown>{t('packageManagers.bunDetails')}</ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderBunTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n )}\n\n {minAgeManagers.length > 0 && (\n <Accordion data-testid=\"min-release-age\">\n <AccordionSummary\n aria-controls=\"panel5a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel5a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>\n {t('packageManagers.minReleaseAge.title')}\n </Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n {t('packageManagers.minReleaseAge.description', {\n days: MIN_RELEASE_AGE_DAYS,\n scope: exampleScope,\n })}\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderMinReleaseAgeTab(minAgeManagers, exampleScope, t)}\n </CommandContainer>\n <Description>\n <ReactMarkdown>{t('packageManagers.minReleaseAge.registry')}</ReactMarkdown>\n </Description>\n </AccordionDetails>\n </Accordion>\n )}\n </AccordionContainer>\n </>\n );\n};\n\nexport default RegistryInfoContent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"RegistryInfoContent.mjs","names":["CopyClipboard","_Fragment"],"sources":["../../../../src/sections/Header/RegistryInfoContent/RegistryInfoContent.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport Accordion from '@mui/material/Accordion';\nimport AccordionDetails from '@mui/material/AccordionDetails';\nimport AccordionSummary from '@mui/material/AccordionSummary';\nimport Box from '@mui/material/Box';\nimport Typography from '@mui/material/Typography';\nimport type { FC } from 'react';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport ReactMarkdown from 'react-markdown';\n\nimport {\n CopyClipboard,\n MIN_RELEASE_AGE_DAYS,\n getBunfigRegistry,\n getCLIChangePassword,\n getCLISBerryYamlRegistry,\n getCLISetConfigRegistry,\n getCLISetRegistry,\n getMinReleaseAgeConfig,\n useConfig,\n} from '../../../';\nimport { externalLinkComponents } from '../../../utils/markdown';\nimport { Description, TextContent } from './styles';\n\nexport const NODE_MANAGER = {\n npm: 'npm',\n yarn: 'yarn',\n pnpm: 'pnpm',\n bun: 'bun',\n};\n\nconst renderNpmTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.npm} set`, scope, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.npm} adduser`, registryUrl)}\n />\n <CopyClipboard dataTestId=\"copy\" text={getCLIChangePassword(NODE_MANAGER.npm, registryUrl)} />\n </Box>\n );\n};\n\nconst renderPnpmTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.pnpm} set`, scope, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.pnpm} adduser`, registryUrl)}\n />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLIChangePassword(NODE_MANAGER.pnpm, registryUrl)}\n />\n </Box>\n );\n};\n\nconst renderYarnTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetConfigRegistry(`${NODE_MANAGER.yarn} config set`, scope, registryUrl)}\n />\n </Box>\n );\n};\n\nconst renderYarnBerryTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard dataTestId=\"copy\" text={getCLISBerryYamlRegistry(scope, registryUrl)} />\n </Box>\n );\n};\n\nconst renderBunTab = (scope: string | undefined, registryUrl: string): React.JSX.Element => {\n return (\n <Box display=\"flex\" flexDirection=\"column\">\n <CopyClipboard dataTestId=\"copy\" text={getBunfigRegistry(scope, registryUrl)} />\n <CopyClipboard\n dataTestId=\"copy\"\n text={getCLISetRegistry(`${NODE_MANAGER.bun} publish`, registryUrl)}\n />\n </Box>\n );\n};\n\n// shown when the registry sets no web.scope\nconst PLACEHOLDER_SCOPE = '@your-scope';\n\nconst renderMinReleaseAgeTab = (\n managers: string[],\n scope: string,\n t: (key: string) => string\n): React.JSX.Element => (\n <Box display=\"flex\" flexDirection=\"column\">\n {managers.map((manager) => (\n <Box data-testid={`min-release-age-${manager}`} key={manager} sx={{ mb: 2 }}>\n <Typography sx={{ fontWeight: 'bold' }}>{manager}</Typography>\n <Description>{t(`packageManagers.minReleaseAge.${manager}`)}</Description>\n <CopyClipboard dataTestId=\"copy\" text={getMinReleaseAgeConfig(manager, scope)} />\n </Box>\n ))}\n </Box>\n);\n\nexport const AccordionContainer = styled('div')({\n padding: 0,\n paddingLeft: 0,\n paddingRight: 0,\n});\n\nexport const CommandContainer = styled('div')({\n padding: 5,\n});\n\nexport type Props = {\n registryUrl: string;\n scope: string | undefined;\n};\n\nconst RegistryInfoContent: FC<Props> = ({ scope, registryUrl }) => {\n const { t } = useTranslation();\n const { configOptions } = useConfig();\n\n const hasNpm = configOptions?.pkgManagers?.includes('npm');\n const hasYarn = configOptions?.pkgManagers?.includes('yarn');\n const hasPnpm = configOptions?.pkgManagers?.includes('pnpm');\n const hasBun = configOptions?.pkgManagers?.includes('bun');\n const minAgeManagers = ['npm', 'pnpm', 'yarn', 'bun'].filter((manager) =>\n configOptions?.pkgManagers?.includes(manager)\n );\n const exampleScope = scope || PLACEHOLDER_SCOPE;\n // TODO: we can improve this logic, expanding only one accordion based on which package manager is enabled\n // feel free to contribute here\n return (\n <>\n <TextContent>{t('packageManagers.description')}</TextContent>\n <AccordionContainer>\n <Accordion disabled={!hasNpm}>\n <AccordionSummary\n aria-controls=\"panel1a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel1a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'npm'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <CommandContainer data-testid={'tab-content'}>\n {renderNpmTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n <Accordion disabled={!hasYarn}>\n <AccordionSummary\n aria-controls=\"panel2a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel2a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'yarn'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n <ReactMarkdown components={externalLinkComponents}>\n {t('packageManagers.yarnclassicDetails')}\n </ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderYarnTab(scope, registryUrl)}\n </CommandContainer>\n <Description>\n <ReactMarkdown components={externalLinkComponents}>\n {t('packageManagers.yarnBerryDetails')}\n </ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderYarnBerryTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n\n <Accordion disabled={!hasPnpm}>\n <AccordionSummary\n aria-controls=\"panel3a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel3a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'pnpm'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <CommandContainer data-testid={'tab-content'}>\n {renderPnpmTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n\n {hasBun && (\n <Accordion>\n <AccordionSummary\n aria-controls=\"panel4a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel4a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>{'bun'}</Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n <ReactMarkdown components={externalLinkComponents}>\n {t('packageManagers.bunDetails')}\n </ReactMarkdown>\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderBunTab(scope, registryUrl)}\n </CommandContainer>\n </AccordionDetails>\n </Accordion>\n )}\n\n {minAgeManagers.length > 0 && (\n <Accordion data-testid=\"min-release-age\">\n <AccordionSummary\n aria-controls=\"panel5a-content\"\n expandIcon={<ExpandMoreIcon />}\n id=\"panel5a-header\"\n >\n <Typography sx={{ fontSize: '1rem', fontWeight: 'bold' }}>\n {t('packageManagers.minReleaseAge.title')}\n </Typography>\n </AccordionSummary>\n <AccordionDetails>\n <Description>\n {t('packageManagers.minReleaseAge.description', {\n days: MIN_RELEASE_AGE_DAYS,\n scope: exampleScope,\n })}\n </Description>\n <CommandContainer data-testid={'tab-content'}>\n {renderMinReleaseAgeTab(minAgeManagers, exampleScope, t)}\n </CommandContainer>\n <Description>\n <ReactMarkdown components={externalLinkComponents}>\n {t('packageManagers.minReleaseAge.registry')}\n </ReactMarkdown>\n </Description>\n </AccordionDetails>\n </Accordion>\n )}\n </AccordionContainer>\n </>\n );\n};\n\nexport default RegistryInfoContent;\n"],"mappings":";;;;;;;;;;;;;;;;;;AA0BA,IAAa,eAAe;CAC1B,KAAK;CACL,MAAM;CACN,MAAM;CACN,KAAK;AACP;AAEA,IAAM,gBAAgB,OAA2B,gBAA2C;CAC1F,OACE,qBAAC,KAAD;EAAK,SAAQ;EAAO,eAAc;EAAlC,UAAA;GACE,oBAACA,iBAAD;IACE,YAAW;IACX,MAAM,wBAAwB,GAAG,aAAa,IAAI,OAAO,OAAO,WAAW;GAC5E,CAAA;GACD,oBAACA,iBAAD;IACE,YAAW;IACX,MAAM,kBAAkB,GAAG,aAAa,IAAI,WAAW,WAAW;GACnE,CAAA;GACD,oBAACA,iBAAD;IAAe,YAAW;IAAO,MAAM,qBAAqB,aAAa,KAAK,WAAW;GAAI,CAAA;EAC1F;;AAET;AAEA,IAAM,iBAAiB,OAA2B,gBAA2C;CAC3F,OACE,qBAAC,KAAD;EAAK,SAAQ;EAAO,eAAc;EAAlC,UAAA;GACE,oBAACA,iBAAD;IACE,YAAW;IACX,MAAM,wBAAwB,GAAG,aAAa,KAAK,OAAO,OAAO,WAAW;GAC7E,CAAA;GACD,oBAACA,iBAAD;IACE,YAAW;IACX,MAAM,kBAAkB,GAAG,aAAa,KAAK,WAAW,WAAW;GACpE,CAAA;GACD,oBAACA,iBAAD;IACE,YAAW;IACX,MAAM,qBAAqB,aAAa,MAAM,WAAW;GAC1D,CAAA;EACE;;AAET;AAEA,IAAM,iBAAiB,OAA2B,gBAA2C;CAC3F,OACE,oBAAC,KAAD;EAAK,SAAQ;EAAO,eAAc;EAChC,UAAA,oBAACA,iBAAD;GACE,YAAW;GACX,MAAM,wBAAwB,GAAG,aAAa,KAAK,cAAc,OAAO,WAAW;EACpF,CAAA;CACE,CAAA;AAET;AAEA,IAAM,sBAAsB,OAA2B,gBAA2C;CAChG,OACE,oBAAC,KAAD;EAAK,SAAQ;EAAO,eAAc;EAChC,UAAA,oBAACA,iBAAD;GAAe,YAAW;GAAO,MAAM,yBAAyB,OAAO,WAAW;EAAI,CAAA;CACnF,CAAA;AAET;AAEA,IAAM,gBAAgB,OAA2B,gBAA2C;CAC1F,OACE,qBAAC,KAAD;EAAK,SAAQ;EAAO,eAAc;EAAlC,UAAA,CACE,oBAACA,iBAAD;GAAe,YAAW;GAAO,MAAM,kBAAkB,OAAO,WAAW;EAAI,CAAA,GAC/E,oBAACA,iBAAD;GACE,YAAW;GACX,MAAM,kBAAkB,GAAG,aAAa,IAAI,WAAW,WAAW;EACnE,CAAA,CACE;;AAET;AAGA,IAAM,oBAAoB;AAE1B,IAAM,0BACJ,UACA,OACA,MAEA,oBAAC,KAAD;CAAK,SAAQ;CAAO,eAAc;CAC/B,UAAA,SAAS,KAAK,YACb,qBAAC,KAAD;EAAK,eAAa,mBAAmB;EAAyB,IAAI,EAAE,IAAI,EAAE;EAA1E,UAAA;GACE,oBAAC,YAAD;IAAY,IAAI,EAAE,YAAY,OAAO;IAAI,UAAA;GAAoB,CAAA;GAC7D,oBAAC,aAAD,EAAA,UAAc,EAAE,iCAAiC,SAAS,EAAe,CAAA;GACzE,oBAACA,iBAAD;IAAe,YAAW;IAAO,MAAM,uBAAuB,SAAS,KAAK;GAAI,CAAA;EAC7E;CAJgD,GAAA,OAIhD,CACN;AACE,CAAA;AAGP,IAAa,qBAAqB,OAAO,KAAK,CAAC,CAAC;CAC9C,SAAS;CACT,aAAa;CACb,cAAc;AAChB,CAAC;AAED,IAAa,mBAAmB,OAAO,KAAK,CAAC,CAAC,EAC5C,SAAS,EACX,CAAC;AAOD,IAAM,uBAAkC,EAAE,OAAO,kBAAkB;CACjE,MAAM,EAAE,MAAM,eAAe;CAC7B,MAAM,EAAE,kBAAkB,UAAU;CAEpC,MAAM,SAAS,eAAe,aAAa,SAAS,KAAK;CACzD,MAAM,UAAU,eAAe,aAAa,SAAS,MAAM;CAC3D,MAAM,UAAU,eAAe,aAAa,SAAS,MAAM;CAC3D,MAAM,SAAS,eAAe,aAAa,SAAS,KAAK;CACzD,MAAM,iBAAiB;EAAC;EAAO;EAAQ;EAAQ;CAAK,CAAC,CAAC,QAAQ,YAC5D,eAAe,aAAa,SAAS,OAAO,CAC9C;CACA,MAAM,eAAe,SAAS;CAG9B,OACE,qBAAAC,YAAA,EAAA,UAAA,CACE,oBAAC,aAAD,EAAA,UAAc,EAAE,6BAA6B,EAAe,CAAA,GAC5D,qBAAC,oBAAD,EAAA,UAAA;EACE,qBAAC,WAAD;GAAW,UAAU,CAAC;GAAtB,UAAA,CACE,oBAAC,kBAAD;IACE,iBAAc;IACd,YAAY,oBAAC,gBAAD,CAAiB,CAAA;IAC7B,IAAG;IAEH,UAAA,oBAAC,YAAD;KAAY,IAAI;MAAE,UAAU;MAAQ,YAAY;KAAO;KAAI,UAAA;IAAkB,CAAA;GAC7D,CAAA,GAClB,oBAAC,kBAAD,EAAA,UACE,oBAAC,kBAAD;IAAkB,eAAa;IAC5B,UAAA,aAAa,OAAO,WAAW;GAChB,CAAA,EACF,CAAA,CACT;;EACX,qBAAC,WAAD;GAAW,UAAU,CAAC;GAAtB,UAAA,CACE,oBAAC,kBAAD;IACE,iBAAc;IACd,YAAY,oBAAC,gBAAD,CAAiB,CAAA;IAC7B,IAAG;IAEH,UAAA,oBAAC,YAAD;KAAY,IAAI;MAAE,UAAU;MAAQ,YAAY;KAAO;KAAI,UAAA;IAAmB,CAAA;GAC9D,CAAA,GAClB,qBAAC,kBAAD,EAAA,UAAA;IACE,oBAAC,aAAD,EAAA,UACE,oBAAC,eAAD;KAAe,YAAY;KACxB,UAAA,EAAE,oCAAoC;IAC1B,CAAA,EACJ,CAAA;IACb,oBAAC,kBAAD;KAAkB,eAAa;KAC5B,UAAA,cAAc,OAAO,WAAW;IACjB,CAAA;IAClB,oBAAC,aAAD,EAAA,UACE,oBAAC,eAAD;KAAe,YAAY;KACxB,UAAA,EAAE,kCAAkC;IACxB,CAAA,EACJ,CAAA;IACb,oBAAC,kBAAD;KAAkB,eAAa;KAC5B,UAAA,mBAAmB,OAAO,WAAW;IACtB,CAAA;GACF,EAAA,CAAA,CACT;;EAEX,qBAAC,WAAD;GAAW,UAAU,CAAC;GAAtB,UAAA,CACE,oBAAC,kBAAD;IACE,iBAAc;IACd,YAAY,oBAAC,gBAAD,CAAiB,CAAA;IAC7B,IAAG;IAEH,UAAA,oBAAC,YAAD;KAAY,IAAI;MAAE,UAAU;MAAQ,YAAY;KAAO;KAAI,UAAA;IAAmB,CAAA;GAC9D,CAAA,GAClB,oBAAC,kBAAD,EAAA,UACE,oBAAC,kBAAD;IAAkB,eAAa;IAC5B,UAAA,cAAc,OAAO,WAAW;GACjB,CAAA,EACF,CAAA,CACT;;EAEV,UACC,qBAAC,WAAD,EAAA,UAAA,CACE,oBAAC,kBAAD;GACE,iBAAc;GACd,YAAY,oBAAC,gBAAD,CAAiB,CAAA;GAC7B,IAAG;GAEH,UAAA,oBAAC,YAAD;IAAY,IAAI;KAAE,UAAU;KAAQ,YAAY;IAAO;IAAI,UAAA;GAAkB,CAAA;EAC7D,CAAA,GAClB,qBAAC,kBAAD,EAAA,UAAA,CACE,oBAAC,aAAD,EAAA,UACE,oBAAC,eAAD;GAAe,YAAY;GACxB,UAAA,EAAE,4BAA4B;EAClB,CAAA,EACJ,CAAA,GACb,oBAAC,kBAAD;GAAkB,eAAa;GAC5B,UAAA,aAAa,OAAO,WAAW;EAChB,CAAA,CACF,EAAA,CAAA,CACT,EAAA,CAAA;EAGZ,eAAe,SAAS,KACvB,qBAAC,WAAD;GAAW,eAAY;GAAvB,UAAA,CACE,oBAAC,kBAAD;IACE,iBAAc;IACd,YAAY,oBAAC,gBAAD,CAAiB,CAAA;IAC7B,IAAG;IAEH,UAAA,oBAAC,YAAD;KAAY,IAAI;MAAE,UAAU;MAAQ,YAAY;KAAO;KACpD,UAAA,EAAE,qCAAqC;IAC9B,CAAA;GACI,CAAA,GAClB,qBAAC,kBAAD,EAAA,UAAA;IACE,oBAAC,aAAD,EAAA,UACG,EAAE,6CAA6C;KAC9C,MAAA;KACA,OAAO;IACT,CAAC,EACU,CAAA;IACb,oBAAC,kBAAD;KAAkB,eAAa;KAC5B,UAAA,uBAAuB,gBAAgB,cAAc,CAAC;IACvC,CAAA;IAClB,oBAAC,aAAD,EAAA,UACE,oBAAC,eAAD;KAAe,YAAY;KACxB,UAAA,EAAE,wCAAwC;IAC9B,CAAA,EACJ,CAAA;GACG,EAAA,CAAA,CACT;;CAEK,EAAA,CAAA,CACpB,EAAA,CAAA;AAEN"}
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  export declare const externalLinkComponents: {
3
- a: ({ node: _node, ...props }: React.AnchorHTMLAttributes<HTMLAnchorElement> & {
3
+ a: ({ node: _node, color: _color, ...props }: React.AnchorHTMLAttributes<HTMLAnchorElement> & {
4
4
  node?: unknown;
5
5
  }) => React.JSX.Element;
6
6
  };
@@ -2,8 +2,10 @@ const require_runtime = require("../_virtual/_rolldown/runtime.js");
2
2
  let react = require("react");
3
3
  react = require_runtime.__toESM(react);
4
4
  let react_jsx_runtime = require("react/jsx-runtime");
5
+ let _mui_material_Link = require("@mui/material/Link");
6
+ _mui_material_Link = require_runtime.__toESM(_mui_material_Link);
5
7
  //#region src/utils/markdown.tsx
6
- var externalLinkComponents = { a: ({ node: _node, ...props }) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("a", {
8
+ var externalLinkComponents = { a: ({ node: _node, color: _color, ...props }) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mui_material_Link.default, {
7
9
  ...props,
8
10
  rel: "noopener noreferrer",
9
11
  target: "_blank"
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.js","names":[],"sources":["../../src/utils/markdown.tsx"],"sourcesContent":["import React from 'react';\n\n// links in operator markdown leave the registry, so they open in a new tab; raw HTML is not rendered\nexport const externalLinkComponents = {\n a: ({\n node: _node,\n ...props\n }: React.AnchorHTMLAttributes<HTMLAnchorElement> & { node?: unknown }) => (\n <a {...props} rel=\"noopener noreferrer\" target=\"_blank\" />\n ),\n};\n"],"mappings":";;;;;AAGA,IAAa,yBAAyB,EACpC,IAAI,EACF,MAAM,OACN,GAAG,YAEH,iBAAA,GAAA,kBAAA,IAAA,CAAC,KAAD;CAAG,GAAI;CAAO,KAAI;CAAsB,QAAO;AAAU,CAAA,EAE7D"}
1
+ {"version":3,"file":"markdown.js","names":["Link"],"sources":["../../src/utils/markdown.tsx"],"sourcesContent":["import Link from '@mui/material/Link';\nimport React from 'react';\n\n// links in markdown leave the registry, so they open in a new tab; MUI Link keeps them readable in dark mode\nexport const externalLinkComponents = {\n a: ({\n node: _node,\n color: _color,\n ...props\n }: React.AnchorHTMLAttributes<HTMLAnchorElement> & { node?: unknown }) => (\n <Link {...props} rel=\"noopener noreferrer\" target=\"_blank\" />\n ),\n};\n"],"mappings":";;;;;;;AAIA,IAAa,yBAAyB,EACpC,IAAI,EACF,MAAM,OACN,OAAO,QACP,GAAG,YAEH,iBAAA,GAAA,kBAAA,IAAA,CAACA,mBAAAA,SAAD;CAAM,GAAI;CAAO,KAAI;CAAsB,QAAO;AAAU,CAAA,EAEhE"}
@@ -1,7 +1,8 @@
1
1
  import "react";
2
2
  import { jsx } from "react/jsx-runtime";
3
+ import Link from "@mui/material/Link";
3
4
  //#region src/utils/markdown.tsx
4
- var externalLinkComponents = { a: ({ node: _node, ...props }) => /* @__PURE__ */ jsx("a", {
5
+ var externalLinkComponents = { a: ({ node: _node, color: _color, ...props }) => /* @__PURE__ */ jsx(Link, {
5
6
  ...props,
6
7
  rel: "noopener noreferrer",
7
8
  target: "_blank"
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.mjs","names":[],"sources":["../../src/utils/markdown.tsx"],"sourcesContent":["import React from 'react';\n\n// links in operator markdown leave the registry, so they open in a new tab; raw HTML is not rendered\nexport const externalLinkComponents = {\n a: ({\n node: _node,\n ...props\n }: React.AnchorHTMLAttributes<HTMLAnchorElement> & { node?: unknown }) => (\n <a {...props} rel=\"noopener noreferrer\" target=\"_blank\" />\n ),\n};\n"],"mappings":";;;AAGA,IAAa,yBAAyB,EACpC,IAAI,EACF,MAAM,OACN,GAAG,YAEH,oBAAC,KAAD;CAAG,GAAI;CAAO,KAAI;CAAsB,QAAO;AAAU,CAAA,EAE7D"}
1
+ {"version":3,"file":"markdown.mjs","names":[],"sources":["../../src/utils/markdown.tsx"],"sourcesContent":["import Link from '@mui/material/Link';\nimport React from 'react';\n\n// links in markdown leave the registry, so they open in a new tab; MUI Link keeps them readable in dark mode\nexport const externalLinkComponents = {\n a: ({\n node: _node,\n color: _color,\n ...props\n }: React.AnchorHTMLAttributes<HTMLAnchorElement> & { node?: unknown }) => (\n <Link {...props} rel=\"noopener noreferrer\" target=\"_blank\" />\n ),\n};\n"],"mappings":";;;;AAIA,IAAa,yBAAyB,EACpC,IAAI,EACF,MAAM,OACN,OAAO,QACP,GAAG,YAEH,oBAAC,MAAD;CAAM,GAAI;CAAO,KAAI;CAAsB,QAAO;AAAU,CAAA,EAEhE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@verdaccio/ui-components",
3
- "version": "5.0.0-next-9.25",
3
+ "version": "5.0.0-next-9.26",
4
4
  "description": "Verdaccio UI Components",
5
5
  "author": "Juan Picado <juanpicado19@gmail.com>",
6
6
  "license": "MIT",