@transferwise/components 0.0.0-experimental-9e19bae → 0.0.0-experimental-b762045

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 (148) hide show
  1. package/build/avatarLayout/AvatarLayout.js +2 -9
  2. package/build/avatarLayout/AvatarLayout.js.map +1 -1
  3. package/build/avatarLayout/AvatarLayout.mjs +2 -9
  4. package/build/avatarLayout/AvatarLayout.mjs.map +1 -1
  5. package/build/button/Button.js +97 -76
  6. package/build/button/Button.js.map +1 -1
  7. package/build/button/Button.mjs +97 -76
  8. package/build/button/Button.mjs.map +1 -1
  9. package/build/circularButton/CircularButton.js +19 -24
  10. package/build/circularButton/CircularButton.js.map +1 -1
  11. package/build/circularButton/CircularButton.mjs +20 -25
  12. package/build/circularButton/CircularButton.mjs.map +1 -1
  13. package/build/criticalBanner/CriticalCommsBanner.js +2 -2
  14. package/build/criticalBanner/CriticalCommsBanner.js.map +1 -1
  15. package/build/criticalBanner/CriticalCommsBanner.mjs +1 -1
  16. package/build/definitionList/DefinitionList.js.map +1 -1
  17. package/build/definitionList/DefinitionList.mjs.map +1 -1
  18. package/build/header/Header.js +2 -2
  19. package/build/header/Header.js.map +1 -1
  20. package/build/header/Header.mjs +1 -1
  21. package/build/i18n/de.json +1 -0
  22. package/build/i18n/de.json.js +1 -0
  23. package/build/i18n/de.json.js.map +1 -1
  24. package/build/i18n/de.json.mjs +1 -0
  25. package/build/i18n/de.json.mjs.map +1 -1
  26. package/build/i18n/it.json +1 -0
  27. package/build/i18n/it.json.js +1 -0
  28. package/build/i18n/it.json.js.map +1 -1
  29. package/build/i18n/it.json.mjs +1 -0
  30. package/build/i18n/it.json.mjs.map +1 -1
  31. package/build/i18n/th.json +1 -0
  32. package/build/i18n/th.json.js +1 -0
  33. package/build/i18n/th.json.js.map +1 -1
  34. package/build/i18n/th.json.mjs +1 -0
  35. package/build/i18n/th.json.mjs.map +1 -1
  36. package/build/index.js +2 -2
  37. package/build/index.mjs +1 -1
  38. package/build/link/Link.js +3 -8
  39. package/build/link/Link.js.map +1 -1
  40. package/build/link/Link.mjs +3 -8
  41. package/build/link/Link.mjs.map +1 -1
  42. package/build/main.css +17 -431
  43. package/build/primitives/PrimitiveAnchor/src/PrimitiveAnchor.js +3 -1
  44. package/build/primitives/PrimitiveAnchor/src/PrimitiveAnchor.js.map +1 -1
  45. package/build/primitives/PrimitiveAnchor/src/PrimitiveAnchor.mjs +3 -1
  46. package/build/primitives/PrimitiveAnchor/src/PrimitiveAnchor.mjs.map +1 -1
  47. package/build/primitives/PrimitiveButton/src/PrimitiveButton.js +4 -1
  48. package/build/primitives/PrimitiveButton/src/PrimitiveButton.js.map +1 -1
  49. package/build/primitives/PrimitiveButton/src/PrimitiveButton.mjs +4 -1
  50. package/build/primitives/PrimitiveButton/src/PrimitiveButton.mjs.map +1 -1
  51. package/build/select/Select.js +3 -5
  52. package/build/select/Select.js.map +1 -1
  53. package/build/select/Select.mjs +2 -4
  54. package/build/select/Select.mjs.map +1 -1
  55. package/build/styles/avatarLayout/AvatarLayout.css +0 -11
  56. package/build/styles/button/Button.css +16 -255
  57. package/build/styles/circularButton/CircularButton.css +17 -158
  58. package/build/styles/main.css +17 -431
  59. package/build/types/avatarLayout/AvatarLayout.d.ts +2 -1
  60. package/build/types/avatarLayout/AvatarLayout.d.ts.map +1 -1
  61. package/build/types/avatarLayout/index.d.ts +0 -1
  62. package/build/types/avatarLayout/index.d.ts.map +1 -1
  63. package/build/types/button/Button.d.ts +23 -1
  64. package/build/types/button/Button.d.ts.map +1 -1
  65. package/build/types/button/index.d.ts +2 -2
  66. package/build/types/button/index.d.ts.map +1 -1
  67. package/build/types/circularButton/CircularButton.d.ts +11 -4
  68. package/build/types/circularButton/CircularButton.d.ts.map +1 -1
  69. package/build/types/definitionList/DefinitionList.d.ts +1 -2
  70. package/build/types/definitionList/DefinitionList.d.ts.map +1 -1
  71. package/build/types/link/Link.d.ts +2 -2
  72. package/build/types/link/Link.d.ts.map +1 -1
  73. package/build/types/primitives/PrimitiveAnchor/src/PrimitiveAnchor.d.ts.map +1 -1
  74. package/build/types/primitives/PrimitiveAnchor/src/PrimitiveAnchor.types.d.ts +1 -1
  75. package/build/types/primitives/PrimitiveAnchor/src/PrimitiveAnchor.types.d.ts.map +1 -1
  76. package/build/types/primitives/PrimitiveButton/src/PrimitiveButton.d.ts.map +1 -1
  77. package/build/types/select/Select.d.ts.map +1 -1
  78. package/build/upload/steps/completeStep/completeStep.js +2 -2
  79. package/build/upload/steps/completeStep/completeStep.js.map +1 -1
  80. package/build/upload/steps/completeStep/completeStep.mjs +1 -1
  81. package/build/upload/steps/processingStep/processingStep.js +2 -2
  82. package/build/upload/steps/processingStep/processingStep.js.map +1 -1
  83. package/build/upload/steps/processingStep/processingStep.mjs +1 -1
  84. package/build/uploadInput/UploadInput.js +3 -3
  85. package/build/uploadInput/UploadInput.js.map +1 -1
  86. package/build/uploadInput/UploadInput.mjs +1 -1
  87. package/package.json +3 -3
  88. package/src/avatarLayout/AvatarLayout.css +0 -11
  89. package/src/avatarLayout/AvatarLayout.less +1 -18
  90. package/src/avatarLayout/AvatarLayout.tsx +3 -11
  91. package/src/avatarLayout/index.ts +0 -1
  92. package/src/button/Button.css +16 -255
  93. package/src/button/Button.less +14 -215
  94. package/src/button/Button.spec.tsx +231 -54
  95. package/src/button/Button.story.tsx +136 -287
  96. package/src/button/Button.tsx +131 -84
  97. package/src/button/__snapshots__/{LegacyButton.spec.tsx.snap → Button.spec.tsx.snap} +22 -22
  98. package/src/button/index.ts +3 -2
  99. package/src/circularButton/CircularButton.css +17 -158
  100. package/src/circularButton/CircularButton.less +22 -91
  101. package/src/circularButton/CircularButton.story.tsx +45 -24
  102. package/src/circularButton/CircularButton.tsx +39 -28
  103. package/src/definitionList/DefinitionList.story.tsx +57 -57
  104. package/src/definitionList/DefinitionList.tsx +1 -1
  105. package/src/flowNavigation/__snapshots__/FlowNavigation.spec.js.snap +1 -1
  106. package/src/i18n/de.json +1 -0
  107. package/src/i18n/it.json +1 -0
  108. package/src/i18n/th.json +1 -0
  109. package/src/iconButton/IconButton.story.tsx +6 -6
  110. package/src/inputs/SelectInput.story.tsx +1 -1
  111. package/src/link/Link.tsx +6 -15
  112. package/src/main.css +17 -431
  113. package/src/main.less +0 -1
  114. package/src/primitives/PrimitiveAnchor/src/PrimitiveAnchor.tsx +7 -1
  115. package/src/primitives/PrimitiveAnchor/src/PrimitiveAnchor.types.ts +1 -1
  116. package/src/primitives/PrimitiveAnchor/test/PrimitiveAnchor.spec.tsx +3 -1
  117. package/src/primitives/PrimitiveButton/src/PrimitiveButton.tsx +8 -1
  118. package/src/primitives/PrimitiveButton/test/PrimitiveButton.spec.tsx +5 -2
  119. package/src/select/Select.tsx +0 -1
  120. package/src/slidingPanel/SlidingPanel.spec.tsx +69 -0
  121. package/build/button/Button.resolver.js +0 -78
  122. package/build/button/Button.resolver.js.map +0 -1
  123. package/build/button/Button.resolver.mjs +0 -76
  124. package/build/button/Button.resolver.mjs.map +0 -1
  125. package/build/button/LegacyButton.js +0 -114
  126. package/build/button/LegacyButton.js.map +0 -1
  127. package/build/button/LegacyButton.mjs +0 -112
  128. package/build/button/LegacyButton.mjs.map +0 -1
  129. package/build/styles/button/Button.vars.css +0 -59
  130. package/build/styles/button/LegacyButton.css +0 -23
  131. package/build/types/button/Button.resolver.d.ts +0 -31
  132. package/build/types/button/Button.resolver.d.ts.map +0 -1
  133. package/build/types/button/Button.types.d.ts +0 -58
  134. package/build/types/button/Button.types.d.ts.map +0 -1
  135. package/build/types/button/LegacyButton.d.ts +0 -30
  136. package/build/types/button/LegacyButton.d.ts.map +0 -1
  137. package/src/button/Button.resolver.tsx +0 -120
  138. package/src/button/Button.types.ts +0 -79
  139. package/src/button/Button.vars.css +0 -59
  140. package/src/button/Button.vars.less +0 -73
  141. package/src/button/LegacyButton.css +0 -23
  142. package/src/button/LegacyButton.less +0 -24
  143. package/src/button/LegacyButton.spec.tsx +0 -245
  144. package/src/button/LegacyButton.story.tsx +0 -224
  145. package/src/button/LegacyButton.tsx +0 -161
  146. package/src/circularButton/_button-label-states.less +0 -34
  147. package/src/definitionList/DefinitionList.spec.js +0 -91
  148. package/src/slidingPanel/SlidingPanel.spec.js +0 -56
@@ -3,8 +3,6 @@
3
3
  var icons = require('@transferwise/icons');
4
4
  var clsx = require('clsx');
5
5
  var reactIntl = require('react-intl');
6
- require('../primitives/PrimitiveButton/src/PrimitiveButton.js');
7
- var PrimitiveAnchor = require('../primitives/PrimitiveAnchor/src/PrimitiveAnchor.js');
8
6
  var Link_messages = require('./Link.messages.js');
9
7
  var jsxRuntime = require('react/jsx-runtime');
10
8
 
@@ -18,17 +16,14 @@ const Link = ({
18
16
  onClick,
19
17
  ...props
20
18
  }) => {
19
+ const isBlank = target === '_blank';
21
20
  const {
22
21
  formatMessage
23
22
  } = reactIntl.useIntl();
24
- const isBlank = target === '_blank';
25
- const classNames = clsx.clsx('np-link', 'd-inline-flex', {
26
- [`np-text-${type}`]: type
27
- }, className);
28
- return /*#__PURE__*/jsxRuntime.jsxs(PrimitiveAnchor, {
23
+ return /*#__PURE__*/jsxRuntime.jsxs("a", {
29
24
  href: href,
30
25
  target: target,
31
- className: classNames,
26
+ className: clsx.clsx('np-link', type ? `np-text-${type}` : undefined, 'd-inline-flex', className),
32
27
  "aria-label": ariaLabel,
33
28
  rel: isBlank ? 'noreferrer' : undefined,
34
29
  onClick: onClick,
@@ -1 +1 @@
1
- {"version":3,"file":"Link.js","sources":["../../src/link/Link.tsx"],"sourcesContent":["import { NavigateAway as NavigateAwayIcon } from '@transferwise/icons';\nimport { clsx } from 'clsx';\nimport { useIntl } from 'react-intl';\nimport { PrimitiveAnchor } from '../primitives';\nimport type { PrimitiveAnchorProps } from '../primitives';\n\nimport { LinkLarge, LinkDefault } from '../common';\n\nimport messages from './Link.messages';\n\nexport type Props = PrimitiveAnchorProps & { type?: LinkLarge | LinkDefault };\n\n/**\n * Standard Link component with navigate away icon\n *\n * Documentation: https://transferwise.github.io/neptune-web/components/content/Link\n */\nconst Link = ({\n className,\n children,\n href,\n target,\n type,\n 'aria-label': ariaLabel,\n onClick,\n ...props\n}: Props) => {\n const { formatMessage } = useIntl();\n const isBlank = target === '_blank';\n\n const classNames = clsx(\n 'np-link',\n 'd-inline-flex',\n {\n [`np-text-${type}`]: type,\n },\n className,\n );\n\n return (\n <PrimitiveAnchor\n href={href}\n target={target}\n className={classNames}\n aria-label={ariaLabel}\n rel={isBlank ? 'noreferrer' : undefined}\n onClick={onClick}\n {...props}\n >\n {children} {isBlank && <NavigateAwayIcon title={formatMessage(messages.opensInNewTab)} />}\n </PrimitiveAnchor>\n );\n};\n\nexport default Link;\n"],"names":["Link","className","children","href","target","type","ariaLabel","onClick","props","formatMessage","useIntl","isBlank","classNames","clsx","_jsxs","PrimitiveAnchor","rel","undefined","_jsx","NavigateAwayIcon","title","messages","opensInNewTab"],"mappings":";;;;;;;;;;AAiBMA,MAAAA,IAAI,GAAGA,CAAC;EACZC,SAAS;EACTC,QAAQ;EACRC,IAAI;EACJC,MAAM;EACNC,IAAI;AACJ,EAAA,YAAY,EAAEC,SAAS;EACvBC,OAAO;EACP,GAAGC,KAAAA;AACG,CAAA,KAAI;EACV,MAAM;AAAEC,IAAAA,aAAAA;GAAe,GAAGC,iBAAO,EAAE,CAAA;AACnC,EAAA,MAAMC,OAAO,GAAGP,MAAM,KAAK,QAAQ,CAAA;AAEnC,EAAA,MAAMQ,UAAU,GAAGC,SAAI,CACrB,SAAS,EACT,eAAe,EACf;IACE,CAAC,CAAA,QAAA,EAAWR,IAAI,CAAA,CAAE,GAAGA,IAAAA;GACtB,EACDJ,SAAS,CACV,CAAA;EAED,oBACEa,eAAA,CAACC,eAAe,EAAA;AACdZ,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,MAAM,EAAEA,MAAO;AACfH,IAAAA,SAAS,EAAEW,UAAW;AACtB,IAAA,YAAA,EAAYN,SAAU;AACtBU,IAAAA,GAAG,EAAEL,OAAO,GAAG,YAAY,GAAGM,SAAU;AACxCV,IAAAA,OAAO,EAAEA,OAAQ;AAAA,IAAA,GACbC,KAAK;IAAAN,QAAA,EAAA,CAERA,QAAQ,EAAE,GAAA,EAACS,OAAO,iBAAIO,cAAA,CAACC,kBAAgB,EAAA;AAACC,MAAAA,KAAK,EAAEX,aAAa,CAACY,aAAQ,CAACC,aAAa,CAAA;AAAE,MAAG,CAAA;AAAA,GAC1E,CAAC,CAAA;AAEtB;;;;"}
1
+ {"version":3,"file":"Link.js","sources":["../../src/link/Link.tsx"],"sourcesContent":["import { NavigateAway as NavigateAwayIcon } from '@transferwise/icons';\nimport { clsx } from 'clsx';\nimport { AnchorHTMLAttributes } from 'react';\nimport { useIntl } from 'react-intl';\n\nimport { LinkLarge, LinkDefault } from '../common';\n\nimport messages from './Link.messages';\n\nexport type Props = AnchorHTMLAttributes<HTMLAnchorElement> & { type?: LinkLarge | LinkDefault };\n\n/**\n * Standard Link component with navigate away icon\n *\n * Documentation: https://transferwise.github.io/neptune-web/components/content/Link\n */\nconst Link = ({\n className,\n children,\n href,\n target,\n type,\n 'aria-label': ariaLabel,\n onClick,\n ...props\n}: Props) => {\n const isBlank = target === '_blank';\n\n const { formatMessage } = useIntl();\n\n return (\n <a\n href={href}\n target={target}\n className={clsx('np-link', type ? `np-text-${type}` : undefined, 'd-inline-flex', className)}\n aria-label={ariaLabel}\n rel={isBlank ? 'noreferrer' : undefined}\n onClick={onClick}\n {...props}\n >\n {children} {isBlank && <NavigateAwayIcon title={formatMessage(messages.opensInNewTab)} />}\n </a>\n );\n};\n\nexport default Link;\n"],"names":["Link","className","children","href","target","type","ariaLabel","onClick","props","isBlank","formatMessage","useIntl","_jsxs","clsx","undefined","rel","_jsx","NavigateAwayIcon","title","messages","opensInNewTab"],"mappings":";;;;;;;;AAgBMA,MAAAA,IAAI,GAAGA,CAAC;EACZC,SAAS;EACTC,QAAQ;EACRC,IAAI;EACJC,MAAM;EACNC,IAAI;AACJ,EAAA,YAAY,EAAEC,SAAS;EACvBC,OAAO;EACP,GAAGC,KAAAA;AACG,CAAA,KAAI;AACV,EAAA,MAAMC,OAAO,GAAGL,MAAM,KAAK,QAAQ,CAAA;EAEnC,MAAM;AAAEM,IAAAA,aAAAA;GAAe,GAAGC,iBAAO,EAAE,CAAA;AAEnC,EAAA,oBACEC,eAAA,CAAA,GAAA,EAAA;AACET,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,MAAM,EAAEA,MAAO;AACfH,IAAAA,SAAS,EAAEY,SAAI,CAAC,SAAS,EAAER,IAAI,GAAG,CAAA,QAAA,EAAWA,IAAI,CAAA,CAAE,GAAGS,SAAS,EAAE,eAAe,EAAEb,SAAS,CAAE;AAC7F,IAAA,YAAA,EAAYK,SAAU;AACtBS,IAAAA,GAAG,EAAEN,OAAO,GAAG,YAAY,GAAGK,SAAU;AACxCP,IAAAA,OAAO,EAAEA,OAAQ;AAAA,IAAA,GACbC,KAAK;IAAAN,QAAA,EAAA,CAERA,QAAQ,EAAE,GAAA,EAACO,OAAO,iBAAIO,cAAA,CAACC,kBAAgB,EAAA;AAACC,MAAAA,KAAK,EAAER,aAAa,CAACS,aAAQ,CAACC,aAAa,CAAA;AAAE,MAAG,CAAA;AAAA,GACxF,CAAC,CAAA;AAER;;;;"}
@@ -1,8 +1,6 @@
1
1
  import { NavigateAway } from '@transferwise/icons';
2
2
  import { clsx } from 'clsx';
3
3
  import { useIntl } from 'react-intl';
4
- import '../primitives/PrimitiveButton/src/PrimitiveButton.mjs';
5
- import PrimitiveAnchor from '../primitives/PrimitiveAnchor/src/PrimitiveAnchor.mjs';
6
4
  import messages from './Link.messages.mjs';
7
5
  import { jsxs, jsx } from 'react/jsx-runtime';
8
6
 
@@ -16,17 +14,14 @@ const Link = ({
16
14
  onClick,
17
15
  ...props
18
16
  }) => {
17
+ const isBlank = target === '_blank';
19
18
  const {
20
19
  formatMessage
21
20
  } = useIntl();
22
- const isBlank = target === '_blank';
23
- const classNames = clsx('np-link', 'd-inline-flex', {
24
- [`np-text-${type}`]: type
25
- }, className);
26
- return /*#__PURE__*/jsxs(PrimitiveAnchor, {
21
+ return /*#__PURE__*/jsxs("a", {
27
22
  href: href,
28
23
  target: target,
29
- className: classNames,
24
+ className: clsx('np-link', type ? `np-text-${type}` : undefined, 'd-inline-flex', className),
30
25
  "aria-label": ariaLabel,
31
26
  rel: isBlank ? 'noreferrer' : undefined,
32
27
  onClick: onClick,
@@ -1 +1 @@
1
- {"version":3,"file":"Link.mjs","sources":["../../src/link/Link.tsx"],"sourcesContent":["import { NavigateAway as NavigateAwayIcon } from '@transferwise/icons';\nimport { clsx } from 'clsx';\nimport { useIntl } from 'react-intl';\nimport { PrimitiveAnchor } from '../primitives';\nimport type { PrimitiveAnchorProps } from '../primitives';\n\nimport { LinkLarge, LinkDefault } from '../common';\n\nimport messages from './Link.messages';\n\nexport type Props = PrimitiveAnchorProps & { type?: LinkLarge | LinkDefault };\n\n/**\n * Standard Link component with navigate away icon\n *\n * Documentation: https://transferwise.github.io/neptune-web/components/content/Link\n */\nconst Link = ({\n className,\n children,\n href,\n target,\n type,\n 'aria-label': ariaLabel,\n onClick,\n ...props\n}: Props) => {\n const { formatMessage } = useIntl();\n const isBlank = target === '_blank';\n\n const classNames = clsx(\n 'np-link',\n 'd-inline-flex',\n {\n [`np-text-${type}`]: type,\n },\n className,\n );\n\n return (\n <PrimitiveAnchor\n href={href}\n target={target}\n className={classNames}\n aria-label={ariaLabel}\n rel={isBlank ? 'noreferrer' : undefined}\n onClick={onClick}\n {...props}\n >\n {children} {isBlank && <NavigateAwayIcon title={formatMessage(messages.opensInNewTab)} />}\n </PrimitiveAnchor>\n );\n};\n\nexport default Link;\n"],"names":["Link","className","children","href","target","type","ariaLabel","onClick","props","formatMessage","useIntl","isBlank","classNames","clsx","_jsxs","PrimitiveAnchor","rel","undefined","_jsx","NavigateAwayIcon","title","messages","opensInNewTab"],"mappings":";;;;;;;;AAiBMA,MAAAA,IAAI,GAAGA,CAAC;EACZC,SAAS;EACTC,QAAQ;EACRC,IAAI;EACJC,MAAM;EACNC,IAAI;AACJ,EAAA,YAAY,EAAEC,SAAS;EACvBC,OAAO;EACP,GAAGC,KAAAA;AACG,CAAA,KAAI;EACV,MAAM;AAAEC,IAAAA,aAAAA;GAAe,GAAGC,OAAO,EAAE,CAAA;AACnC,EAAA,MAAMC,OAAO,GAAGP,MAAM,KAAK,QAAQ,CAAA;AAEnC,EAAA,MAAMQ,UAAU,GAAGC,IAAI,CACrB,SAAS,EACT,eAAe,EACf;IACE,CAAC,CAAA,QAAA,EAAWR,IAAI,CAAA,CAAE,GAAGA,IAAAA;GACtB,EACDJ,SAAS,CACV,CAAA;EAED,oBACEa,IAAA,CAACC,eAAe,EAAA;AACdZ,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,MAAM,EAAEA,MAAO;AACfH,IAAAA,SAAS,EAAEW,UAAW;AACtB,IAAA,YAAA,EAAYN,SAAU;AACtBU,IAAAA,GAAG,EAAEL,OAAO,GAAG,YAAY,GAAGM,SAAU;AACxCV,IAAAA,OAAO,EAAEA,OAAQ;AAAA,IAAA,GACbC,KAAK;IAAAN,QAAA,EAAA,CAERA,QAAQ,EAAE,GAAA,EAACS,OAAO,iBAAIO,GAAA,CAACC,YAAgB,EAAA;AAACC,MAAAA,KAAK,EAAEX,aAAa,CAACY,QAAQ,CAACC,aAAa,CAAA;AAAE,MAAG,CAAA;AAAA,GAC1E,CAAC,CAAA;AAEtB;;;;"}
1
+ {"version":3,"file":"Link.mjs","sources":["../../src/link/Link.tsx"],"sourcesContent":["import { NavigateAway as NavigateAwayIcon } from '@transferwise/icons';\nimport { clsx } from 'clsx';\nimport { AnchorHTMLAttributes } from 'react';\nimport { useIntl } from 'react-intl';\n\nimport { LinkLarge, LinkDefault } from '../common';\n\nimport messages from './Link.messages';\n\nexport type Props = AnchorHTMLAttributes<HTMLAnchorElement> & { type?: LinkLarge | LinkDefault };\n\n/**\n * Standard Link component with navigate away icon\n *\n * Documentation: https://transferwise.github.io/neptune-web/components/content/Link\n */\nconst Link = ({\n className,\n children,\n href,\n target,\n type,\n 'aria-label': ariaLabel,\n onClick,\n ...props\n}: Props) => {\n const isBlank = target === '_blank';\n\n const { formatMessage } = useIntl();\n\n return (\n <a\n href={href}\n target={target}\n className={clsx('np-link', type ? `np-text-${type}` : undefined, 'd-inline-flex', className)}\n aria-label={ariaLabel}\n rel={isBlank ? 'noreferrer' : undefined}\n onClick={onClick}\n {...props}\n >\n {children} {isBlank && <NavigateAwayIcon title={formatMessage(messages.opensInNewTab)} />}\n </a>\n );\n};\n\nexport default Link;\n"],"names":["Link","className","children","href","target","type","ariaLabel","onClick","props","isBlank","formatMessage","useIntl","_jsxs","clsx","undefined","rel","_jsx","NavigateAwayIcon","title","messages","opensInNewTab"],"mappings":";;;;;;AAgBMA,MAAAA,IAAI,GAAGA,CAAC;EACZC,SAAS;EACTC,QAAQ;EACRC,IAAI;EACJC,MAAM;EACNC,IAAI;AACJ,EAAA,YAAY,EAAEC,SAAS;EACvBC,OAAO;EACP,GAAGC,KAAAA;AACG,CAAA,KAAI;AACV,EAAA,MAAMC,OAAO,GAAGL,MAAM,KAAK,QAAQ,CAAA;EAEnC,MAAM;AAAEM,IAAAA,aAAAA;GAAe,GAAGC,OAAO,EAAE,CAAA;AAEnC,EAAA,oBACEC,IAAA,CAAA,GAAA,EAAA;AACET,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,MAAM,EAAEA,MAAO;AACfH,IAAAA,SAAS,EAAEY,IAAI,CAAC,SAAS,EAAER,IAAI,GAAG,CAAA,QAAA,EAAWA,IAAI,CAAA,CAAE,GAAGS,SAAS,EAAE,eAAe,EAAEb,SAAS,CAAE;AAC7F,IAAA,YAAA,EAAYK,SAAU;AACtBS,IAAAA,GAAG,EAAEN,OAAO,GAAG,YAAY,GAAGK,SAAU;AACxCP,IAAAA,OAAO,EAAEA,OAAQ;AAAA,IAAA,GACbC,KAAK;IAAAN,QAAA,EAAA,CAERA,QAAQ,EAAE,GAAA,EAACO,OAAO,iBAAIO,GAAA,CAACC,YAAgB,EAAA;AAACC,MAAAA,KAAK,EAAER,aAAa,CAACS,QAAQ,CAACC,aAAa,CAAA;AAAE,MAAG,CAAA;AAAA,GACxF,CAAC,CAAA;AAER;;;;"}
package/build/main.css CHANGED
@@ -518,18 +518,10 @@ div.critical-comms .critical-comms-body {
518
518
  -webkit-mask-image: radial-gradient(circle at bottom calc(100% - var(--np-avatar-size) - var(--np-avatar-offset)) right calc(100% - var(--np-avatar-size) - var(--np-avatar-offset)), transparent 0, transparent calc(var(--np-avatar-size) / 2 + 2px), black 0);
519
519
  mask-image: radial-gradient(circle at bottom calc(100% - var(--np-avatar-size) - var(--np-avatar-offset)) right calc(100% - var(--np-avatar-size) - var(--np-avatar-offset)), transparent 0, transparent calc(var(--np-avatar-size) / 2 + 2px), black 0);
520
520
  }
521
- [dir="rtl"] .np-avatar-layout-diagonal-mask {
522
- -webkit-mask-image: radial-gradient(circle at bottom calc(100% - var(--np-avatar-size) - var(--np-avatar-offset)) left calc(100% - var(--np-avatar-size) - var(--np-avatar-offset)), transparent 0, transparent calc(var(--np-avatar-size) / 2 + 2px), black 0);
523
- mask-image: radial-gradient(circle at bottom calc(100% - var(--np-avatar-size) - var(--np-avatar-offset)) left calc(100% - var(--np-avatar-size) - var(--np-avatar-offset)), transparent 0, transparent calc(var(--np-avatar-size) / 2 + 2px), black 0);
524
- }
525
521
  .np-avatar-layout-diagonal-child {
526
522
  margin-left: calc(var(--np-avatar-layout-size) - var(--np-avatar-size) * 2);
527
523
  margin-top: calc(var(--np-avatar-layout-size) - var(--np-avatar-size));
528
524
  }
529
- [dir="rtl"] .np-avatar-layout-diagonal-child {
530
- margin-left: 0;
531
- margin-right: calc(var(--np-avatar-layout-size) - var(--np-avatar-size) * 2);
532
- }
533
525
  .np-avatar-layout-horizontal {
534
526
  width: calc(var(--np-avatar-size) * 2 - var(--np-avatar-offset) - 2px);
535
527
  height: var(--np-avatar-layout-size);
@@ -543,9 +535,6 @@ div.critical-comms .critical-comms-body {
543
535
  .np-avatar-layout-horizontal-child {
544
536
  margin-left: calc(var(--np-avatar-offset) * -1);
545
537
  }
546
- [dir="rtl"] .np-avatar-layout-horizontal-child {
547
- margin-right: calc(var(--np-avatar-offset) * -1);
548
- }
549
538
  .np-icon-button {
550
539
  border: none;
551
540
  }
@@ -716,268 +705,6 @@ div.critical-comms .critical-comms-body {
716
705
  .np-btn.disabled[class] {
717
706
  pointer-events: auto;
718
707
  }
719
- :root {
720
- --Button-background: var(--color-interactive-accent);
721
- --Button-background-hover: var(--color-interactive-accent-hover);
722
- --Button-background-active: var(--color-interactive-accent-active);
723
- --Button-color: var(--color-interactive-control);
724
- --Button-padding: var(--size-8) var(--size-12);
725
- --Button-border-radius: var(--radius-full);
726
- --Button-font-size: var(--font-size-16);
727
- --Button-line-height: var(--size-24);
728
- --Button-font-weight: var(--font-weight-semi-bold);
729
- --Button-letter-spacing: -0.011em;
730
- --Button-size-small-padding: 5px var(--size-12);
731
- --Button-size-medium-padding: var(--size-8) var(--size-12);
732
- --Button-size-large-padding: var(--size-12) var(--size-16);
733
- --Button-avatar-border-color: var(--color-border-neutral);
734
- --Button-transition-duration: 150ms;
735
- --Button-transition-easing: ease-in-out;
736
- --Button-secondary-background: var(--color-interactive-neutral);
737
- --Button-secondary-background-hover: var(--color-interactive-neutral-hover);
738
- --Button-secondary-background-active: var(--color-interactive-neutral-active);
739
- --Button-secondary-color: var(--color-interactive-primary);
740
- --Button-tertiary-background: var(--color-background-neutral);
741
- --Button-tertiary-background-hover: var(--color-background-neutral-hover);
742
- --Button-tertiary-background-active: var(--color-background-neutral-active);
743
- --Button-tertiary-color: var(--color-content-primary);
744
- --Button-minimal-background: transparent;
745
- --Button-minimal-background-hover: var(--color-background-screen-hover);
746
- --Button-minimal-background-active: var(--color-background-screen-active);
747
- --Button-minimal-color: var(--color-interactive-primary);
748
- --Button-primary-negative-background: var(--color-sentiment-negative-primary);
749
- --Button-primary-negative-background-hover: var(--color-sentiment-negative-primary-hover);
750
- --Button-primary-negative-background-active: var(--color-sentiment-negative-primary-active);
751
- --Button-primary-negative-color: var(--color-contrast);
752
- --Button-primary-netative-avatar-border-color: rgba(255,255,255,0.2);
753
- --Button-secondary-negative-background: var(--color-sentiment-negative-secondary);
754
- --Button-secondary-negative-background-hover: var(--color-sentiment-negative-secondary-hover);
755
- --Button-secondary-negative-background-active: var(--color-sentiment-negative-secondary-active);
756
- --Button-secondary-negative-color: var(--color-sentiment-negative-primary);
757
- --Button-secondary-netative-avatar-border-color: rgba(168,32,13,0.12157);
758
- }
759
- .np-theme-personal--dark .wds-Button {
760
- --Button-primary-netative-avatar-border-color: rgba(14,15,12,0.12157);
761
- }
762
- .np-theme-personal--forest-green .wds-Button {
763
- --color-interactive-neutral: rgba(159,232,112,0.2);
764
- --color-interactive-neutral-hover: rgba(205,255,173,0.2);
765
- --color-interactive-neutral-active: rgba(236,255,224,0.2);
766
- --color-sentiment-negative-secondary: rgba(255,196,194,0.2);
767
- --color-sentiment-negative-secondary-hover: rgba(255,220,219,0.2);
768
- --color-sentiment-negative-secondary-active: rgba(255,235,235,0.2);
769
- --Button-primary-netative-avatar-border-color: rgba(14,15,12,0.12157);
770
- --Button-secondary-netative-avatar-border-color: rgba(14,15,12,0.12157);
771
- }
772
- .np-theme-personal--bright-green .wds-Button {
773
- --color-contrast: #FFFFFF;
774
- --Button-secondary-color: var(--color-interactive-control);
775
- --Button-secondary-negative-color: var(--color-contrast);
776
- --Button-secondary-netative-avatar-border-color: var(--Button-primary-netative-avatar-border-color);
777
- }
778
- /* Button Styles */
779
- .wds-Button {
780
- display: inline-flex;
781
- flex: none;
782
- width: auto;
783
- align-items: center;
784
- justify-content: center;
785
- vertical-align: middle;
786
- font-weight: 600;
787
- font-weight: var(--Button-font-weight);
788
- font-size: 1rem;
789
- font-size: var(--Button-font-size);
790
- letter-spacing: -0.011em;
791
- letter-spacing: var(--Button-letter-spacing);
792
- line-height: 24px;
793
- line-height: var(--Button-line-height);
794
- text-align: center;
795
- -webkit-text-decoration: none;
796
- text-decoration: none;
797
- white-space: nowrap;
798
- word-wrap: break-word;
799
- -webkit-appearance: none;
800
- -moz-appearance: none;
801
- appearance: none;
802
- background-color: #00a2dd;
803
- background-color: var(--Button-background);
804
- border: none;
805
- border-radius: 9999px;
806
- border-radius: var(--Button-border-radius);
807
- color: var(--Button-color);
808
- cursor: pointer;
809
- padding: 8px 12px;
810
- padding: var(--Button-padding);
811
- transition: color, background-color 150ms ease-in-out;
812
- transition: color, background-color var(--Button-transition-duration) var(--Button-transition-easing);
813
- }
814
- .wds-Button:focus {
815
- -webkit-text-decoration: none;
816
- text-decoration: none;
817
- }
818
- .wds-Button:hover {
819
- background-color: #008fc9;
820
- background-color: var(--Button-background-hover);
821
- -webkit-text-decoration: none;
822
- text-decoration: none;
823
- }
824
- .wds-Button:active {
825
- background-color: #0081ba;
826
- background-color: var(--Button-background-active);
827
- -webkit-text-decoration: none;
828
- text-decoration: none;
829
- }
830
- .wds-Button.wds-Button--disabled,
831
- .wds-Button:disabled {
832
- mix-blend-mode: luminosity;
833
- opacity: 0.45;
834
- cursor: not-allowed;
835
- }
836
- .wds-Button.wds-Button--disabled:hover,
837
- .wds-Button:disabled:hover,
838
- .wds-Button.wds-Button--disabled:active,
839
- .wds-Button:disabled:active {
840
- background-color: #00a2dd;
841
- background-color: var(--Button-background);
842
- }
843
- .wds-Button--secondary {
844
- --Button-background: var(--Button-secondary-background);
845
- --Button-background-hover: var(--Button-secondary-background-hover);
846
- --Button-background-active: var(--Button-secondary-background-active);
847
- --Button-color: var(--Button-secondary-color);
848
- }
849
- .wds-Button--tertiary {
850
- --Button-background: var(--Button-tertiary-background);
851
- --Button-background-hover: var(--Button-tertiary-background-hover);
852
- --Button-background-active: var(--Button-tertiary-background-active);
853
- --Button-color: var(--Button-tertiary-color);
854
- }
855
- .wds-Button--tertiary .wds-Button-icon--end {
856
- color: var(--color-interactive-primary);
857
- }
858
- .wds-Button--minimal {
859
- --Button-background: var(--Button-minimal-background);
860
- --Button-background-hover: var(--Button-minimal-background-hover);
861
- --Button-background-active: var(--Button-minimal-background-active);
862
- --Button-color: var(--Button-minimal-color);
863
- -webkit-text-decoration: underline;
864
- text-decoration: underline;
865
- text-underline-offset: 3px;
866
- text-decoration-thickness: 1px;
867
- }
868
- .wds-Button--minimal:hover,
869
- .wds-Button--minimal:hover:active {
870
- -webkit-text-decoration: underline;
871
- text-decoration: underline;
872
- }
873
- .wds-Button--negative.wds-Button--primary {
874
- --Button-background: var(--Button-primary-negative-background);
875
- --Button-background-hover: var(--Button-primary-negative-background-hover);
876
- --Button-background-active: var(--Button-primary-negative-background-active);
877
- --Button-color: var(--Button-primary-negative-color);
878
- --Button-avatar-border-color: var(--Button-primary-netative-avatar-border-color);
879
- }
880
- .wds-Button--negative.wds-Button--secondary {
881
- --Button-background: var(--Button-secondary-negative-background);
882
- --Button-background-hover: var(--Button-secondary-negative-background-hover);
883
- --Button-background-active: var(--Button-secondary-negative-background-active);
884
- --Button-color: var(--Button-secondary-negative-color);
885
- --Button-avatar-border-color: var(--Button-secondary-netative-avatar-border-color);
886
- }
887
- .wds-Button--small {
888
- --Button-padding: var(--Button-size-small-padding);
889
- --Button-line-height: 22px;
890
- --Button-font-size: var(--font-size-14);
891
- --Button-letter-spacing: -0.006em;
892
- }
893
- .wds-Button--small .wds-Button-icon--start {
894
- margin-right: 4px;
895
- margin-right: var(--size-4);
896
- }
897
- [dir="rtl"] .wds-Button--small .wds-Button-icon--start {
898
- margin-right: 0;
899
- margin-left: 4px;
900
- margin-left: var(--size-4);
901
- }
902
- .wds-Button--medium {
903
- --Button-padding: var(--Button-size-medium-padding);
904
- }
905
- .wds-Button--large {
906
- --Button-padding: var(--Button-size-large-padding);
907
- }
908
- .wds-Button--block {
909
- width: 100%;
910
- }
911
- .wds-Button-avatars {
912
- display: inline-flex;
913
- margin-right: 5px;
914
- margin-left: calc(4px * -1);
915
- margin-left: calc(var(--size-4) * -1);
916
- }
917
- [dir="rtl"] .wds-Button-avatars {
918
- margin-right: 0;
919
- margin-left: 5px;
920
- }
921
- .wds-Button-avatars .np-circle {
922
- --circle-border-color: var(--Button-avatar-border-color);
923
- }
924
- .wds-Button-avatars .np-avatar-view .np-avatar-view-content {
925
- color: var(--Button-color);
926
- }
927
- .wds-Button-icon {
928
- display: inline-block;
929
- }
930
- .wds-Button-icon--start {
931
- margin-right: 8px;
932
- margin-right: var(--size-8);
933
- }
934
- [dir="rtl"] .wds-Button-icon--start {
935
- margin-right: 0;
936
- margin-left: 8px;
937
- margin-left: var(--size-8);
938
- }
939
- .wds-Button-icon--end {
940
- margin-left: 4px;
941
- margin-left: var(--size-4);
942
- }
943
- [dir="rtl"] .wds-Button-icon--end {
944
- margin-left: 0;
945
- margin-right: 4px;
946
- margin-right: var(--size-4);
947
- }
948
- .wds-Button-content {
949
- position: relative;
950
- }
951
- .wds-Button-content--loading .wds-Button-label,
952
- .wds-Button-content--loading .wds-Button-media,
953
- .wds-Button-content--loading .wds-Button-icon {
954
- visibility: hidden;
955
- opacity: 0;
956
- }
957
- .wds-Button-label {
958
- display: flex;
959
- justify-content: center;
960
- align-items: center;
961
- position: relative;
962
- }
963
- .wds-Button-loader {
964
- position: absolute;
965
- display: flex;
966
- justify-content: center;
967
- align-items: center;
968
- width: 100%;
969
- height: 100%;
970
- }
971
- .wds-Button-loader .process-circle {
972
- stroke: var(--Button-color);
973
- }
974
- /* RTL Styles */
975
- [dir="rtl"] .wds-Button .tw-icon-chevron-right,[dir="rtl"] .wds-Button .tw-icon-arrow-right {
976
- transform: rotate(180deg);
977
- }
978
- [dir="rtl"] .wds-Button .tw-icon-chevron-left,[dir="rtl"] .wds-Button .tw-icon-arrow-left {
979
- transform: rotate(180deg);
980
- }
981
708
  .np-card {
982
709
  overflow: hidden;
983
710
  transition-property: transform, box-shadow;
@@ -1457,175 +1184,34 @@ div.critical-comms .critical-comms-body {
1457
1184
  display: inline-flex;
1458
1185
  flex-direction: column;
1459
1186
  align-items: center;
1460
- text-align: center;
1461
1187
  cursor: pointer;
1462
- position: relative;
1463
- }
1464
- .np-circular-btn .tw-icon {
1465
- position: absolute;
1466
- top: 16px;
1467
- top: var(--size-16);
1468
- pointer-events: none;
1469
- color: white;
1470
- transition: color 0.15s ease-in-out;
1471
- width: 100%;
1472
- left: 0;
1473
- }
1474
- [dir="rtl"] .np-circular-btn .tw-icon {
1475
- right: 0;
1476
- left: auto;
1477
- left: initial;
1478
- }
1479
- @media (max-width: 320px) {
1480
- .np-circular-btn .tw-icon {
1481
- top: 12px;
1482
- top: var(--size-12);
1483
- }
1484
- }
1485
- .np-circular-btn .tw-icon > svg {
1486
- margin: 0 auto;
1487
- }
1488
- .np-theme-personal .np-circular-btn {
1489
- /* stylelint-disable-next-line no-duplicate-selectors */
1490
- }
1491
- .np-theme-personal .np-circular-btn .tw-icon,
1492
- .np-theme-personal .np-circular-btn .tw-icon:hover,
1493
- .np-theme-personal .np-circular-btn .tw-icon:active {
1494
- color: var(--color-interactive-control);
1495
- }
1496
- .np-theme-personal .np-circular-btn.negative .tw-icon,
1497
- .np-theme-personal .np-circular-btn.negative.secondary:not(.disabled):not(:disabled):hover .tw-icon,
1498
- .np-theme-personal .np-circular-btn.negative.secondary:not(.disabled):not(:disabled):active .tw-icon {
1499
- color: var(--color-contrast) !important;
1500
- }
1501
- .np-theme-personal .np-circular-btn.negative.secondary:not(.disabled):not(:disabled) .tw-icon {
1502
- color: var(--color-sentiment-negative) !important;
1503
- }
1504
- .np-circular-btn.accent .np-circular-btn__label {
1505
- color: #00a2dd;
1506
- color: var(--color-interactive-accent);
1507
- }
1508
- .np-circular-btn.accent:not(.disabled):not(:disabled):hover .np-circular-btn__label {
1509
- color: #008fc9;
1510
- color: var(--color-interactive-accent-hover);
1511
- }
1512
- .np-circular-btn.accent:active .np-circular-btn__label,
1513
- .np-circular-btn.accent input[type="button"]:active ~ .np-circular-btn__label {
1514
- color: #0081ba;
1515
- color: var(--color-interactive-accent-active);
1516
- }
1517
- .np-circular-btn.accent.secondary .tw-icon {
1518
- color: #00a2dd;
1519
- color: var(--color-interactive-accent);
1520
1188
  }
1521
- .np-circular-btn.accent.secondary:not(.disabled):not(:disabled):hover .tw-icon,
1522
- .np-circular-btn.accent.secondary input[type="button"]:active + .tw-icon {
1523
- color: white;
1524
- }
1525
- .np-circular-btn.positive .np-circular-btn__label {
1526
- color: #2ead4b;
1527
- color: var(--color-interactive-positive);
1528
- }
1529
- .np-circular-btn.positive:not(.disabled):not(:disabled):hover .np-circular-btn__label {
1530
- color: #069939;
1531
- color: var(--color-interactive-positive-hover);
1532
- }
1533
- .np-circular-btn.positive:active .np-circular-btn__label,
1534
- .np-circular-btn.positive input[type="button"]:active ~ .np-circular-btn__label {
1535
- color: #008b2b;
1536
- color: var(--color-interactive-positive-active);
1537
- }
1538
- .np-circular-btn.positive.secondary .tw-icon {
1539
- color: #2ead4b;
1540
- color: var(--color-interactive-positive);
1541
- }
1542
- .np-circular-btn.positive.secondary:not(.disabled):not(:disabled):hover .tw-icon,
1543
- .np-circular-btn.positive.secondary input[type="button"]:active + .tw-icon {
1544
- color: white;
1545
- }
1546
- .np-circular-btn.negative .np-circular-btn__label {
1547
- color: #e74848;
1548
- color: var(--color-interactive-negative);
1549
- }
1550
- .np-circular-btn.negative:not(.disabled):not(:disabled):hover .np-circular-btn__label {
1551
- color: #d03238;
1552
- color: var(--color-interactive-negative-hover);
1553
- }
1554
- .np-circular-btn.negative:active .np-circular-btn__label,
1555
- .np-circular-btn.negative input[type="button"]:active ~ .np-circular-btn__label {
1556
- color: #bf1e2c;
1557
- color: var(--color-interactive-negative-active);
1558
- }
1559
- .np-circular-btn.negative.secondary .tw-icon {
1560
- color: #e74848;
1561
- color: var(--color-interactive-negative);
1562
- }
1563
- .np-circular-btn.negative.secondary:not(.disabled):not(:disabled):hover .tw-icon,
1564
- .np-circular-btn.negative.secondary input[type="button"]:active + .tw-icon {
1565
- color: white;
1566
- }
1567
- .np-theme-personal .np-circular-btn.accent .np-circular-btn__label {
1189
+ .np-circular-btn-primary-default .np-circular-btn-label,
1190
+ .np-circular-btn-secondary-default .np-circular-btn-label {
1568
1191
  color: var(--color-interactive-primary);
1569
1192
  }
1570
- .np-theme-personal .np-circular-btn.accent:not(.disabled):not(:disabled):hover .np-circular-btn__label {
1193
+ .np-circular-btn-primary-default .np-circular-btn-label:not(.disabled):not(:disabled):hover,
1194
+ .np-circular-btn-secondary-default .np-circular-btn-label:not(.disabled):not(:disabled):hover {
1571
1195
  color: var(--color-interactive-primary-hover);
1572
1196
  }
1573
- .np-theme-personal .np-circular-btn.accent:active .np-circular-btn__label,
1574
- .np-theme-personal .np-circular-btn.accent input[type="button"]:active ~ .np-circular-btn__label {
1197
+ .np-circular-btn-primary-default .np-circular-btn-label:not(.disabled):not(:disabled):active,
1198
+ .np-circular-btn-secondary-default .np-circular-btn-label:not(.disabled):not(:disabled):active {
1575
1199
  color: var(--color-interactive-primary-active);
1576
1200
  }
1577
- .np-theme-personal .np-circular-btn.accent.secondary .tw-icon {
1578
- color: var(--color-interactive-primary);
1579
- }
1580
- .np-theme-personal .np-circular-btn.accent.secondary:not(.disabled):not(:disabled):hover .tw-icon,
1581
- .np-theme-personal .np-circular-btn.accent.secondary input[type="button"]:active + .tw-icon {
1582
- color: white;
1583
- color: var(--color-interactive-control);
1584
- }
1585
- .np-theme-personal .np-circular-btn.accent.secondary:active input[type="button"] + .tw-icon {
1586
- color: var(--color-interactive-control);
1587
- }
1588
- .np-theme-personal .np-circular-btn.positive .np-circular-btn__label {
1589
- color: var(--color-interactive-primary);
1590
- }
1591
- .np-theme-personal .np-circular-btn.positive:not(.disabled):not(:disabled):hover .np-circular-btn__label {
1592
- color: var(--color-interactive-primary-hover);
1593
- }
1594
- .np-theme-personal .np-circular-btn.positive:active .np-circular-btn__label,
1595
- .np-theme-personal .np-circular-btn.positive input[type="button"]:active ~ .np-circular-btn__label {
1596
- color: var(--color-interactive-primary-active);
1597
- }
1598
- .np-theme-personal .np-circular-btn.positive.secondary .tw-icon {
1599
- color: var(--color-interactive-primary);
1600
- }
1601
- .np-theme-personal .np-circular-btn.positive.secondary:not(.disabled):not(:disabled):hover .tw-icon,
1602
- .np-theme-personal .np-circular-btn.positive.secondary input[type="button"]:active + .tw-icon {
1603
- color: white;
1604
- color: var(--color-interactive-control);
1605
- }
1606
- .np-theme-personal .np-circular-btn.positive.secondary:active input[type="button"] + .tw-icon {
1607
- color: var(--color-interactive-control);
1608
- }
1609
- .np-theme-personal .np-circular-btn.negative .np-circular-btn__label {
1610
- color: var(--color-sentiment-negative);
1611
- }
1612
- .np-theme-personal .np-circular-btn.negative:not(.disabled):not(:disabled):hover .np-circular-btn__label {
1613
- color: var(--color-sentiment-negative-hover);
1201
+ .np-circular-btn-primary-negative .np-circular-btn-label,
1202
+ .np-circular-btn-secondary-negative .np-circular-btn-label {
1203
+ color: var(--color-sentiment-negative-primary);
1614
1204
  }
1615
- .np-theme-personal .np-circular-btn.negative:active .np-circular-btn__label,
1616
- .np-theme-personal .np-circular-btn.negative input[type="button"]:active ~ .np-circular-btn__label {
1617
- color: var(--color-sentiment-negative-active);
1205
+ .np-circular-btn-primary-negative .np-circular-btn-label:not(.disabled):not(:disabled):hover,
1206
+ .np-circular-btn-secondary-negative .np-circular-btn-label:not(.disabled):not(:disabled):hover {
1207
+ color: var(--color-sentiment-negative-primary-hover);
1618
1208
  }
1619
- .np-theme-personal .np-circular-btn.negative.secondary .tw-icon {
1620
- color: var(--color-sentiment-negative);
1209
+ .np-circular-btn-primary-negative .np-circular-btn-label:not(.disabled):not(:disabled):active,
1210
+ .np-circular-btn-secondary-negative .np-circular-btn-label:not(.disabled):not(:disabled):active {
1211
+ color: var(--color-sentiment-negative-primary-active);
1621
1212
  }
1622
- .np-theme-personal .np-circular-btn.negative.secondary:not(.disabled):not(:disabled):hover .tw-icon,
1623
- .np-theme-personal .np-circular-btn.negative.secondary input[type="button"]:active + .tw-icon {
1624
- color: white;
1625
- color: var(--color-interactive-control);
1626
- }
1627
- .np-theme-personal .np-circular-btn.negative.secondary:active input[type="button"] + .tw-icon {
1628
- color: var(--color-interactive-control);
1213
+ .np-circular-btn-disabled {
1214
+ cursor: not-allowed;
1629
1215
  }
1630
1216
  .np-circle {
1631
1217
  border-radius: 9999px;
@@ -19,7 +19,9 @@ const PrimitiveAnchor = /*#__PURE__*/React.forwardRef(({
19
19
  onKeyDown,
20
20
  ...props
21
21
  }, ref) => {
22
- const anchorClasses = clsx.clsx(className);
22
+ const anchorClasses = clsx.clsx('wds-Anchor', {
23
+ 'wds-Anchor--disabled': disabled
24
+ }, className);
23
25
  const handleClick = React.useCallback(event => {
24
26
  if (disabled) {
25
27
  event.preventDefault();
@@ -1 +1 @@
1
- {"version":3,"file":"PrimitiveAnchor.js","sources":["../../../../src/primitives/PrimitiveAnchor/src/PrimitiveAnchor.tsx"],"sourcesContent":["import React, { forwardRef, useCallback } from 'react';\nimport { clsx } from 'clsx';\nimport type { PrimitiveAnchorProps } from '..';\n\n/**\n * The Primitive `PrimitiveAnchor` component is customisable link element that can be\n * used in various parts of the Wise Design System internally. It supports\n * different states such as disabled and provides event handlers for common\n * interactions like click, focus, blur, mouse enter, mouse leave, and key down.\n *\n * @see {@link PrimitiveAnchor} for further information.\n * @see {@link https://storybook.wise.design/?path=/docs/primitive-anchor--docs|Storybook Wise Design}\n */\nconst PrimitiveAnchor = forwardRef<HTMLAnchorElement, PrimitiveAnchorProps>(\n (\n {\n children,\n className,\n href,\n id,\n disabled = false,\n testId,\n onClick,\n onFocus,\n onBlur,\n onMouseEnter,\n onMouseLeave,\n onKeyDown,\n ...props\n },\n ref,\n ) => {\n const anchorClasses = clsx(className);\n\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLAnchorElement>) => {\n if (disabled) {\n event.preventDefault();\n } else {\n onClick?.(event);\n }\n },\n [disabled, onClick],\n );\n\n const handleFocus = useCallback(\n (event: React.FocusEvent<HTMLAnchorElement>) => {\n onFocus?.(event);\n },\n [onFocus],\n );\n\n const handleBlur = useCallback(\n (event: React.FocusEvent<HTMLAnchorElement>) => {\n onBlur?.(event);\n },\n [onBlur],\n );\n\n const handleMouseEnter = useCallback(\n (event: React.MouseEvent<HTMLAnchorElement>) => {\n onMouseEnter?.(event);\n },\n [onMouseEnter],\n );\n\n const handleMouseLeave = useCallback(\n (event: React.MouseEvent<HTMLAnchorElement>) => {\n onMouseLeave?.(event);\n },\n [onMouseLeave],\n );\n\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLAnchorElement>) => {\n onKeyDown?.(event);\n },\n [onKeyDown],\n );\n\n /**\n * The following props are set to handle the `disabled` state for the link:\n *\n * - `aria-disabled`: Exposes the link as disabled to assistive technologies.\n * - `href`: Removed when `disabled` is true to prevent navigation.\n * - `role`: Set to 'link' when `disabled` is true to ensure the element\n * is still exposed as a link.\n *\n * For more details, refer to Scott O'Hara's article on disabling links:\n * https://www.scottohara.me/blog/2021/05/28/disabled-links.html\n */\n const anchorProps = {\n 'aria-disabled': disabled,\n className: anchorClasses,\n 'data-testid': testId,\n href: disabled ? undefined : href,\n id,\n ref,\n role: disabled ? 'link' : undefined,\n rel: props.target === '_blank' ? 'noopener noreferrer' : undefined,\n onClick: handleClick,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onMouseEnter: handleMouseEnter,\n onMouseLeave: handleMouseLeave,\n onKeyDown: handleKeyDown,\n ...props,\n };\n\n return <a {...anchorProps}>{children}</a>;\n },\n);\n\nPrimitiveAnchor.displayName = 'PrimitiveAnchor';\n\nexport default PrimitiveAnchor;\n"],"names":["PrimitiveAnchor","forwardRef","children","className","href","id","disabled","testId","onClick","onFocus","onBlur","onMouseEnter","onMouseLeave","onKeyDown","props","ref","anchorClasses","clsx","handleClick","useCallback","event","preventDefault","handleFocus","handleBlur","handleMouseEnter","handleMouseLeave","handleKeyDown","anchorProps","undefined","role","rel","target","_jsx","displayName"],"mappings":";;;;;;AAaA,MAAMA,eAAe,gBAAGC,gBAAU,CAChC,CACE;EACEC,QAAQ;EACRC,SAAS;EACTC,IAAI;EACJC,EAAE;AACFC,EAAAA,QAAQ,GAAG,KAAK;EAChBC,MAAM;EACNC,OAAO;EACPC,OAAO;EACPC,MAAM;EACNC,YAAY;EACZC,YAAY;EACZC,SAAS;EACT,GAAGC,KAAAA;CACJ,EACDC,GAAG,KACD;AACF,EAAA,MAAMC,aAAa,GAAGC,SAAI,CAACd,SAAS,CAAC,CAAA;AAErC,EAAA,MAAMe,WAAW,GAAGC,iBAAW,CAC5BC,KAA0C,IAAI;AAC7C,IAAA,IAAId,QAAQ,EAAE;MACZc,KAAK,CAACC,cAAc,EAAE,CAAA;AACxB,KAAC,MAAM;MACLb,OAAO,GAAGY,KAAK,CAAC,CAAA;AAClB,KAAA;AACF,GAAC,EACD,CAACd,QAAQ,EAAEE,OAAO,CAAC,CACpB,CAAA;AAED,EAAA,MAAMc,WAAW,GAAGH,iBAAW,CAC5BC,KAA0C,IAAI;IAC7CX,OAAO,GAAGW,KAAK,CAAC,CAAA;AAClB,GAAC,EACD,CAACX,OAAO,CAAC,CACV,CAAA;AAED,EAAA,MAAMc,UAAU,GAAGJ,iBAAW,CAC3BC,KAA0C,IAAI;IAC7CV,MAAM,GAAGU,KAAK,CAAC,CAAA;AACjB,GAAC,EACD,CAACV,MAAM,CAAC,CACT,CAAA;AAED,EAAA,MAAMc,gBAAgB,GAAGL,iBAAW,CACjCC,KAA0C,IAAI;IAC7CT,YAAY,GAAGS,KAAK,CAAC,CAAA;AACvB,GAAC,EACD,CAACT,YAAY,CAAC,CACf,CAAA;AAED,EAAA,MAAMc,gBAAgB,GAAGN,iBAAW,CACjCC,KAA0C,IAAI;IAC7CR,YAAY,GAAGQ,KAAK,CAAC,CAAA;AACvB,GAAC,EACD,CAACR,YAAY,CAAC,CACf,CAAA;AAED,EAAA,MAAMc,aAAa,GAAGP,iBAAW,CAC9BC,KAA6C,IAAI;IAChDP,SAAS,GAAGO,KAAK,CAAC,CAAA;AACpB,GAAC,EACD,CAACP,SAAS,CAAC,CACZ,CAAA;AAED;;;;;;;;;;AAUG;AACH,EAAA,MAAMc,WAAW,GAAG;AAClB,IAAA,eAAe,EAAErB,QAAQ;AACzBH,IAAAA,SAAS,EAAEa,aAAa;AACxB,IAAA,aAAa,EAAET,MAAM;AACrBH,IAAAA,IAAI,EAAEE,QAAQ,GAAGsB,SAAS,GAAGxB,IAAI;IACjCC,EAAE;IACFU,GAAG;AACHc,IAAAA,IAAI,EAAEvB,QAAQ,GAAG,MAAM,GAAGsB,SAAS;IACnCE,GAAG,EAAEhB,KAAK,CAACiB,MAAM,KAAK,QAAQ,GAAG,qBAAqB,GAAGH,SAAS;AAClEpB,IAAAA,OAAO,EAAEU,WAAW;AACpBT,IAAAA,OAAO,EAAEa,WAAW;AACpBZ,IAAAA,MAAM,EAAEa,UAAU;AAClBZ,IAAAA,YAAY,EAAEa,gBAAgB;AAC9BZ,IAAAA,YAAY,EAAEa,gBAAgB;AAC9BZ,IAAAA,SAAS,EAAEa,aAAa;IACxB,GAAGZ,KAAAA;GACJ,CAAA;AAED,EAAA,oBAAOkB,cAAA,CAAA,GAAA,EAAA;AAAA,IAAA,GAAOL,WAAW;AAAAzB,IAAAA,QAAA,EAAGA,QAAAA;AAAQ,GAAI,CAAC,CAAA;AAC3C,CAAC,EACF;AAEDF,eAAe,CAACiC,WAAW,GAAG,iBAAiB;;;;"}
1
+ {"version":3,"file":"PrimitiveAnchor.js","sources":["../../../../src/primitives/PrimitiveAnchor/src/PrimitiveAnchor.tsx"],"sourcesContent":["import React, { forwardRef, useCallback } from 'react';\nimport { clsx } from 'clsx';\nimport type { PrimitiveAnchorProps } from '..';\n\n/**\n * The Primitive `PrimitiveAnchor` component is customisable link element that can be\n * used in various parts of the Wise Design System internally. It supports\n * different states such as disabled and provides event handlers for common\n * interactions like click, focus, blur, mouse enter, mouse leave, and key down.\n *\n * @see {@link PrimitiveAnchor} for further information.\n * @see {@link https://storybook.wise.design/?path=/docs/primitive-anchor--docs|Storybook Wise Design}\n */\nconst PrimitiveAnchor = forwardRef<HTMLAnchorElement, PrimitiveAnchorProps>(\n (\n {\n children,\n className,\n href,\n id,\n disabled = false,\n testId,\n onClick,\n onFocus,\n onBlur,\n onMouseEnter,\n onMouseLeave,\n onKeyDown,\n ...props\n },\n ref,\n ) => {\n const anchorClasses = clsx(\n 'wds-Anchor',\n {\n 'wds-Anchor--disabled': disabled,\n },\n className,\n );\n\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLAnchorElement>) => {\n if (disabled) {\n event.preventDefault();\n } else {\n onClick?.(event);\n }\n },\n [disabled, onClick],\n );\n\n const handleFocus = useCallback(\n (event: React.FocusEvent<HTMLAnchorElement>) => {\n onFocus?.(event);\n },\n [onFocus],\n );\n\n const handleBlur = useCallback(\n (event: React.FocusEvent<HTMLAnchorElement>) => {\n onBlur?.(event);\n },\n [onBlur],\n );\n\n const handleMouseEnter = useCallback(\n (event: React.MouseEvent<HTMLAnchorElement>) => {\n onMouseEnter?.(event);\n },\n [onMouseEnter],\n );\n\n const handleMouseLeave = useCallback(\n (event: React.MouseEvent<HTMLAnchorElement>) => {\n onMouseLeave?.(event);\n },\n [onMouseLeave],\n );\n\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLAnchorElement>) => {\n onKeyDown?.(event);\n },\n [onKeyDown],\n );\n\n /**\n * The following props are set to handle the `disabled` state for the link:\n *\n * - `aria-disabled`: Exposes the link as disabled to assistive technologies.\n * - `href`: Removed when `disabled` is true to prevent navigation.\n * - `role`: Set to 'link' when `disabled` is true to ensure the element\n * is still exposed as a link.\n *\n * For more details, refer to Scott O'Hara's article on disabling links:\n * https://www.scottohara.me/blog/2021/05/28/disabled-links.html\n */\n const anchorProps = {\n 'aria-disabled': disabled,\n className: anchorClasses,\n 'data-testid': testId,\n href: disabled ? undefined : href,\n id,\n ref,\n role: disabled ? 'link' : undefined,\n rel: props.target === '_blank' ? 'noopener noreferrer' : undefined,\n onClick: handleClick,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onMouseEnter: handleMouseEnter,\n onMouseLeave: handleMouseLeave,\n onKeyDown: handleKeyDown,\n ...props,\n };\n\n return <a {...anchorProps}>{children}</a>;\n },\n);\n\nPrimitiveAnchor.displayName = 'PrimitiveAnchor';\n\nexport default PrimitiveAnchor;\n"],"names":["PrimitiveAnchor","forwardRef","children","className","href","id","disabled","testId","onClick","onFocus","onBlur","onMouseEnter","onMouseLeave","onKeyDown","props","ref","anchorClasses","clsx","handleClick","useCallback","event","preventDefault","handleFocus","handleBlur","handleMouseEnter","handleMouseLeave","handleKeyDown","anchorProps","undefined","role","rel","target","_jsx","displayName"],"mappings":";;;;;;AAaA,MAAMA,eAAe,gBAAGC,gBAAU,CAChC,CACE;EACEC,QAAQ;EACRC,SAAS;EACTC,IAAI;EACJC,EAAE;AACFC,EAAAA,QAAQ,GAAG,KAAK;EAChBC,MAAM;EACNC,OAAO;EACPC,OAAO;EACPC,MAAM;EACNC,YAAY;EACZC,YAAY;EACZC,SAAS;EACT,GAAGC,KAAAA;CACJ,EACDC,GAAG,KACD;AACF,EAAA,MAAMC,aAAa,GAAGC,SAAI,CACxB,YAAY,EACZ;AACE,IAAA,sBAAsB,EAAEX,QAAAA;GACzB,EACDH,SAAS,CACV,CAAA;AAED,EAAA,MAAMe,WAAW,GAAGC,iBAAW,CAC5BC,KAA0C,IAAI;AAC7C,IAAA,IAAId,QAAQ,EAAE;MACZc,KAAK,CAACC,cAAc,EAAE,CAAA;AACxB,KAAC,MAAM;MACLb,OAAO,GAAGY,KAAK,CAAC,CAAA;AAClB,KAAA;AACF,GAAC,EACD,CAACd,QAAQ,EAAEE,OAAO,CAAC,CACpB,CAAA;AAED,EAAA,MAAMc,WAAW,GAAGH,iBAAW,CAC5BC,KAA0C,IAAI;IAC7CX,OAAO,GAAGW,KAAK,CAAC,CAAA;AAClB,GAAC,EACD,CAACX,OAAO,CAAC,CACV,CAAA;AAED,EAAA,MAAMc,UAAU,GAAGJ,iBAAW,CAC3BC,KAA0C,IAAI;IAC7CV,MAAM,GAAGU,KAAK,CAAC,CAAA;AACjB,GAAC,EACD,CAACV,MAAM,CAAC,CACT,CAAA;AAED,EAAA,MAAMc,gBAAgB,GAAGL,iBAAW,CACjCC,KAA0C,IAAI;IAC7CT,YAAY,GAAGS,KAAK,CAAC,CAAA;AACvB,GAAC,EACD,CAACT,YAAY,CAAC,CACf,CAAA;AAED,EAAA,MAAMc,gBAAgB,GAAGN,iBAAW,CACjCC,KAA0C,IAAI;IAC7CR,YAAY,GAAGQ,KAAK,CAAC,CAAA;AACvB,GAAC,EACD,CAACR,YAAY,CAAC,CACf,CAAA;AAED,EAAA,MAAMc,aAAa,GAAGP,iBAAW,CAC9BC,KAA6C,IAAI;IAChDP,SAAS,GAAGO,KAAK,CAAC,CAAA;AACpB,GAAC,EACD,CAACP,SAAS,CAAC,CACZ,CAAA;AAED;;;;;;;;;;AAUG;AACH,EAAA,MAAMc,WAAW,GAAG;AAClB,IAAA,eAAe,EAAErB,QAAQ;AACzBH,IAAAA,SAAS,EAAEa,aAAa;AACxB,IAAA,aAAa,EAAET,MAAM;AACrBH,IAAAA,IAAI,EAAEE,QAAQ,GAAGsB,SAAS,GAAGxB,IAAI;IACjCC,EAAE;IACFU,GAAG;AACHc,IAAAA,IAAI,EAAEvB,QAAQ,GAAG,MAAM,GAAGsB,SAAS;IACnCE,GAAG,EAAEhB,KAAK,CAACiB,MAAM,KAAK,QAAQ,GAAG,qBAAqB,GAAGH,SAAS;AAClEpB,IAAAA,OAAO,EAAEU,WAAW;AACpBT,IAAAA,OAAO,EAAEa,WAAW;AACpBZ,IAAAA,MAAM,EAAEa,UAAU;AAClBZ,IAAAA,YAAY,EAAEa,gBAAgB;AAC9BZ,IAAAA,YAAY,EAAEa,gBAAgB;AAC9BZ,IAAAA,SAAS,EAAEa,aAAa;IACxB,GAAGZ,KAAAA;GACJ,CAAA;AAED,EAAA,oBAAOkB,cAAA,CAAA,GAAA,EAAA;AAAA,IAAA,GAAOL,WAAW;AAAAzB,IAAAA,QAAA,EAAGA,QAAAA;AAAQ,GAAI,CAAC,CAAA;AAC3C,CAAC,EACF;AAEDF,eAAe,CAACiC,WAAW,GAAG,iBAAiB;;;;"}
@@ -17,7 +17,9 @@ const PrimitiveAnchor = /*#__PURE__*/forwardRef(({
17
17
  onKeyDown,
18
18
  ...props
19
19
  }, ref) => {
20
- const anchorClasses = clsx(className);
20
+ const anchorClasses = clsx('wds-Anchor', {
21
+ 'wds-Anchor--disabled': disabled
22
+ }, className);
21
23
  const handleClick = useCallback(event => {
22
24
  if (disabled) {
23
25
  event.preventDefault();