@gen-epix/ui-core-components 4.4.0 → 4.4.1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["useCleanupCallback","__toESM","m","ContentCopyIcon","DoneIcon","ErrorIcon","require_builtin_esm_external_require_react","import_dist","__commonJSMin","e","n","r","l","a","t","o","i","p","f","s","C","U","c","u","CopyToClipboardButton","useTranslation","copyToClipBoardButtonColor","setCopyToClipBoardButtonColor","useState","copyToClipBoardIcon","setCopyToClipBoardIcon","baseIcon","tooltipText","setTooltipText","buttonText","onCopyToClipboardButtonClick","timeoutId","clipboardValue","onGetClipboardValue","tooltipSuccessText","iconOnly","Tooltip","IconButton","buttonProps","Button","buttonVariant"],"sources":["../../../builtin:esm-external-require-react","../../../../../node_modules/.pnpm/use-cleanup-callback@1.3.0_react@19.3.
|
|
1
|
+
{"version":3,"file":"index.js","names":["useCleanupCallback","__toESM","m","ContentCopyIcon","DoneIcon","ErrorIcon","require_builtin_esm_external_require_react","import_dist","__commonJSMin","e","n","r","l","a","t","o","i","p","f","s","C","U","c","u","CopyToClipboardButton","useTranslation","copyToClipBoardButtonColor","setCopyToClipBoardButtonColor","useState","copyToClipBoardIcon","setCopyToClipBoardIcon","baseIcon","tooltipText","setTooltipText","buttonText","onCopyToClipboardButtonClick","timeoutId","clipboardValue","onGetClipboardValue","tooltipSuccessText","iconOnly","Tooltip","IconButton","buttonProps","Button","buttonVariant"],"sources":["../../../builtin:esm-external-require-react","../../../../../node_modules/.pnpm/use-cleanup-callback@1.3.0_react@19.3.1/node_modules/use-cleanup-callback/dist/index.js","../../../src/components/CopyToClipboardButton/CopyToClipboardButton.tsx"],"sourcesContent":["import * as m from 'react';module.exports = Object.prototype.hasOwnProperty.call(m, 'module.exports') ? m['module.exports'] : { ...m };","var n=require(\"react\");function e(n){var e=n.cleanup;n.isCalled||\"function\"!=typeof e||(n.isCalled=!0,e())}module.exports=function(u,c,l){var r=void 0===l?{}:l,a=r.cleanUpOnCall,t=void 0===a||a,o=r.cleanUpOnDepsChange,i=void 0!==o&&o,p=r.cleanUpOnUnmount,f=void 0===p||p,s=n.useRef({cleanup:null,isCalled:!1}),C={cleanUpOnCall:t,cleanUpOnDepsChange:i,cleanUpOnUnmount:f},U=n.useRef(C);return n.useEffect(function(){U.current=C}),n.useEffect(function(){return function(){U.current.cleanUpOnDepsChange&&e(s.current)}},[c]),n.useEffect(function(){return function(){U.current.cleanUpOnUnmount&&e(s.current)}},[]),n.useCallback(function(){U.current.cleanUpOnCall&&e(s.current);var n=u.apply(void 0,[].slice.call(arguments));if(\"object\"==typeof n){var c=n.value,l=n.cleanup;return s.current={cleanup:l,isCalled:!1},c}return\"function\"==typeof n&&(s.current={cleanup:n,isCalled:!1}),n},c)};\n//# sourceMappingURL=index.js.map\n","import type { ButtonOwnProps } from '@mui/material';\nimport {\n Button,\n IconButton,\n Tooltip,\n} from '@mui/material';\nimport { useTranslation } from 'react-i18next';\nimport useCleanupCallback from 'use-cleanup-callback';\nimport ContentCopyIcon from '@mui/icons-material/ContentCopy';\nimport DoneIcon from '@mui/icons-material/Done';\nimport ErrorIcon from '@mui/icons-material/Error';\nimport type { ReactElement } from 'react';\nimport { useState } from 'react';\n\nexport type CopyToClipboardButtonProps = {\n readonly baseIcon?: ReactElement;\n readonly buttonProps?: ButtonOwnProps;\n readonly buttonText?: string;\n readonly buttonVariant?: ButtonOwnProps['variant'];\n readonly clipboardValue?: string;\n readonly iconOnly?: boolean;\n readonly onGetClipboardValue?: () => string;\n readonly tooltipSuccessText?: string;\n};\n\nexport const CopyToClipboardButton = ({ baseIcon, buttonProps, buttonText, buttonVariant, clipboardValue, iconOnly, onGetClipboardValue, tooltipSuccessText }: CopyToClipboardButtonProps) => {\n const { t } = useTranslation();\n const [copyToClipBoardButtonColor, setCopyToClipBoardButtonColor] = useState<ButtonOwnProps['color']>('primary');\n const [copyToClipBoardIcon, setCopyToClipBoardIcon] = useState<ReactElement>(baseIcon ?? <ContentCopyIcon />);\n const [tooltipText, setTooltipText] = useState<string>(buttonText ?? t`Copy to clipboard`);\n\n\n const onCopyToClipboardButtonClick = useCleanupCallback(() => {\n let timeoutId: number;\n const perform = async () => {\n try {\n await navigator.clipboard.writeText(clipboardValue ?? onGetClipboardValue());\n setCopyToClipBoardButtonColor('success');\n setCopyToClipBoardIcon(\n <DoneIcon />,\n );\n setTooltipText(tooltipSuccessText ?? t`Copied to clipboard`);\n } catch (_error: unknown) {\n setCopyToClipBoardButtonColor('error');\n setCopyToClipBoardIcon(\n <ErrorIcon />,\n );\n setTooltipText(t`Error`);\n } finally {\n timeoutId = window.setTimeout(() => {\n setCopyToClipBoardButtonColor('primary');\n setCopyToClipBoardIcon(baseIcon ?? <ContentCopyIcon />);\n setTooltipText(buttonText ?? t`Copy to clipboard`);\n }, 2000);\n }\n };\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n perform();\n return () => {\n clearTimeout(timeoutId);\n };\n }, [baseIcon, buttonText, clipboardValue, onGetClipboardValue, t, tooltipSuccessText]);\n\n if (iconOnly) {\n return (\n <Tooltip\n arrow\n placement={'top'}\n title={tooltipText}\n >\n <IconButton\n {...buttonProps}\n color={copyToClipBoardButtonColor}\n onClick={onCopyToClipboardButtonClick}\n size={'small'}\n >\n {copyToClipBoardIcon}\n </IconButton>\n </Tooltip>\n );\n }\n\n return (\n <Button\n {...buttonProps}\n color={copyToClipBoardButtonColor}\n onClick={onCopyToClipboardButtonClick}\n startIcon={copyToClipBoardIcon}\n variant={buttonVariant ?? 'contained'}\n >\n {buttonText ?? t`Copy to clipboard`}\n </Button>\n );\n};\n"],"ignoreList":[1],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gen-epix/ui-core-components",
|
|
3
|
-
"version": "4.4.
|
|
3
|
+
"version": "4.4.1",
|
|
4
4
|
"homepage": "https://github.com/RIVM-bioinformatics/gen-epix",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -83,15 +83,15 @@
|
|
|
83
83
|
"devDependencies": {
|
|
84
84
|
"@gen-epix/eslint-config": "0.8.0",
|
|
85
85
|
"@gen-epix/translation-util": "0.5.0",
|
|
86
|
-
"@gen-epix/ui-core": "^3.9.
|
|
86
|
+
"@gen-epix/ui-core": "^3.9.1",
|
|
87
87
|
"@mui/icons-material": "9.5.0",
|
|
88
88
|
"@mui/material": "9.5.0",
|
|
89
89
|
"@mui/utils": "9.5.0",
|
|
90
90
|
"@types/lodash": "4.17.26",
|
|
91
91
|
"@types/react": "19.3.0",
|
|
92
92
|
"eslint": "10.12.0",
|
|
93
|
-
"i18next": "26.4.
|
|
94
|
-
"react": "19.3.
|
|
93
|
+
"i18next": "26.4.5",
|
|
94
|
+
"react": "19.3.1",
|
|
95
95
|
"react-hook-form": "7.90.0",
|
|
96
96
|
"react-i18next": "17.0.16",
|
|
97
97
|
"typescript": "6.0.3",
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
"vitest": "5.0.4"
|
|
102
102
|
},
|
|
103
103
|
"peerDependencies": {
|
|
104
|
-
"@gen-epix/ui-core": "^3.9.
|
|
104
|
+
"@gen-epix/ui-core": "^3.9.1",
|
|
105
105
|
"@mui/icons-material": "*",
|
|
106
106
|
"@mui/material": "*",
|
|
107
107
|
"@mui/utils": "*",
|