@common-origin/design-system 2.19.0 → 2.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client.js +1012 -512
- package/dist/client.js.map +1 -1
- package/dist/components/atoms/AILabel/AILabel.d.mts +30 -0
- package/dist/components/atoms/AILabel/AILabel.d.ts +30 -0
- package/dist/components/atoms/AILabel/AILabel.mjs +94 -0
- package/dist/components/atoms/AILabel/AILabel.mjs.map +1 -0
- package/dist/components/atoms/AILabel/index.d.mts +1 -0
- package/dist/components/atoms/AILabel/index.d.ts +1 -0
- package/dist/components/atoms/Avatar/Avatar.d.mts +8 -0
- package/dist/components/atoms/Avatar/Avatar.mjs +103 -0
- package/dist/components/atoms/Avatar/Avatar.mjs.map +1 -0
- package/dist/components/atoms/Avatar/index.d.mts +1 -0
- package/dist/components/atoms/Badge/Badge.d.mts +25 -0
- package/dist/components/atoms/Badge/Badge.mjs +98 -0
- package/dist/components/atoms/Badge/Badge.mjs.map +1 -0
- package/dist/components/atoms/Badge/index.d.mts +2 -0
- package/dist/components/atoms/Box/Box.d.mts +62 -0
- package/dist/components/atoms/Box/Box.mjs +246 -0
- package/dist/components/atoms/Box/Box.mjs.map +1 -0
- package/dist/components/atoms/Box/index.d.mts +1 -0
- package/dist/components/atoms/Button/Button.d.mts +40 -0
- package/dist/components/atoms/Button/Button.mjs +208 -0
- package/dist/components/atoms/Button/Button.mjs.map +1 -0
- package/dist/components/atoms/Button/index.d.mts +1 -0
- package/dist/components/atoms/CategoryBadge/CategoryBadge.d.mts +29 -0
- package/dist/components/atoms/CategoryBadge/CategoryBadge.mjs +29 -0
- package/dist/components/atoms/CategoryBadge/CategoryBadge.mjs.map +1 -0
- package/dist/components/atoms/CategoryBadge/index.d.mts +2 -0
- package/dist/components/atoms/CategoryLabel/CategoryLabel.d.mts +69 -0
- package/dist/components/atoms/CategoryLabel/CategoryLabel.mjs +151 -0
- package/dist/components/atoms/CategoryLabel/CategoryLabel.mjs.map +1 -0
- package/dist/components/atoms/CategoryLabel/index.d.mts +2 -0
- package/dist/components/atoms/Chip/BooleanChip.d.mts +28 -0
- package/dist/components/atoms/Chip/BooleanChip.mjs +76 -0
- package/dist/components/atoms/Chip/BooleanChip.mjs.map +1 -0
- package/dist/components/atoms/Chip/Chip.d.mts +37 -0
- package/dist/components/atoms/Chip/Chip.mjs +76 -0
- package/dist/components/atoms/Chip/Chip.mjs.map +1 -0
- package/dist/components/atoms/Chip/FilterChip.d.mts +13 -0
- package/dist/components/atoms/Chip/FilterChip.mjs +14 -0
- package/dist/components/atoms/Chip/FilterChip.mjs.map +1 -0
- package/dist/components/atoms/Chip/InputChip.d.mts +27 -0
- package/dist/components/atoms/Chip/InputChip.mjs +97 -0
- package/dist/components/atoms/Chip/InputChip.mjs.map +1 -0
- package/dist/components/atoms/Chip/SuggestionChip.d.mts +24 -0
- package/dist/components/atoms/Chip/SuggestionChip.d.ts +24 -0
- package/dist/components/atoms/Chip/SuggestionChip.mjs +61 -0
- package/dist/components/atoms/Chip/SuggestionChip.mjs.map +1 -0
- package/dist/components/atoms/Chip/index.d.mts +5 -0
- package/dist/components/atoms/Chip/index.d.ts +1 -0
- package/dist/components/atoms/Chip/shared/ChipBase.d.mts +12 -0
- package/dist/components/atoms/Chip/shared/ChipBase.mjs +45 -0
- package/dist/components/atoms/Chip/shared/ChipBase.mjs.map +1 -0
- package/dist/components/atoms/Chip/shared/types.d.mts +34 -0
- package/dist/components/atoms/Chip/shared/utils.d.mts +10 -0
- package/dist/components/atoms/Chip/shared/utils.mjs +46 -0
- package/dist/components/atoms/Chip/shared/utils.mjs.map +1 -0
- package/dist/components/atoms/Container/Container.d.mts +6 -0
- package/dist/components/atoms/Container/Container.mjs +24 -0
- package/dist/components/atoms/Container/Container.mjs.map +1 -0
- package/dist/components/atoms/Container/index.d.mts +1 -0
- package/dist/components/atoms/DateFormatter/DateFormatter.d.mts +23 -0
- package/dist/components/atoms/DateFormatter/DateFormatter.mjs +64 -0
- package/dist/components/atoms/DateFormatter/DateFormatter.mjs.map +1 -0
- package/dist/components/atoms/DateFormatter/index.d.mts +1 -0
- package/dist/components/atoms/Divider/Divider.d.mts +30 -0
- package/dist/components/atoms/Divider/Divider.mjs +134 -0
- package/dist/components/atoms/Divider/Divider.mjs.map +1 -0
- package/dist/components/atoms/Divider/index.d.mts +1 -0
- package/dist/components/atoms/Icon/Icon.d.mts +22 -0
- package/dist/components/atoms/Icon/Icon.mjs +95 -0
- package/dist/components/atoms/Icon/Icon.mjs.map +1 -0
- package/dist/components/atoms/Icon/index.d.mts +1 -0
- package/dist/components/atoms/IconButton/IconButton.d.mts +14 -0
- package/dist/components/atoms/IconButton/IconButton.mjs +150 -0
- package/dist/components/atoms/IconButton/IconButton.mjs.map +1 -0
- package/dist/components/atoms/IconButton/index.d.mts +1 -0
- package/dist/components/atoms/MoneyDisplay/MoneyDisplay.d.mts +26 -0
- package/dist/components/atoms/MoneyDisplay/MoneyDisplay.mjs +126 -0
- package/dist/components/atoms/MoneyDisplay/MoneyDisplay.mjs.map +1 -0
- package/dist/components/atoms/MoneyDisplay/index.d.mts +2 -0
- package/dist/components/atoms/Picture/Picture.d.mts +12 -0
- package/dist/components/atoms/Picture/Picture.mjs +65 -0
- package/dist/components/atoms/Picture/Picture.mjs.map +1 -0
- package/dist/components/atoms/Picture/index.d.mts +1 -0
- package/dist/components/atoms/ProgressBar/ProgressBar.d.mts +21 -0
- package/dist/components/atoms/ProgressBar/ProgressBar.mjs +91 -0
- package/dist/components/atoms/ProgressBar/ProgressBar.mjs.map +1 -0
- package/dist/components/atoms/ProgressBar/index.d.mts +2 -0
- package/dist/components/atoms/Stack/Stack.d.mts +16 -0
- package/dist/components/atoms/Stack/Stack.mjs +71 -0
- package/dist/components/atoms/Stack/Stack.mjs.map +1 -0
- package/dist/components/atoms/Stack/index.d.mts +1 -0
- package/dist/components/atoms/StatusBadge/StatusBadge.d.mts +23 -0
- package/dist/components/atoms/StatusBadge/StatusBadge.mjs +18 -0
- package/dist/components/atoms/StatusBadge/StatusBadge.mjs.map +1 -0
- package/dist/components/atoms/StatusBadge/index.d.mts +2 -0
- package/dist/components/atoms/StatusLabel/StatusLabel.d.mts +17 -0
- package/dist/components/atoms/StatusLabel/StatusLabel.mjs +28 -0
- package/dist/components/atoms/StatusLabel/StatusLabel.mjs.map +1 -0
- package/dist/components/atoms/StatusLabel/StatusLabelBase.d.mts +49 -0
- package/dist/components/atoms/StatusLabel/StatusLabelBase.mjs +161 -0
- package/dist/components/atoms/StatusLabel/StatusLabelBase.mjs.map +1 -0
- package/dist/components/atoms/StatusLabel/index.d.mts +2 -0
- package/dist/components/atoms/Tag/Tag.d.mts +36 -0
- package/dist/components/atoms/Tag/Tag.mjs +115 -0
- package/dist/components/atoms/Tag/Tag.mjs.map +1 -0
- package/dist/components/atoms/Tag/index.d.mts +2 -0
- package/dist/components/atoms/Typography/Typography.d.mts +34 -0
- package/dist/components/atoms/Typography/Typography.mjs +139 -0
- package/dist/components/atoms/Typography/Typography.mjs.map +1 -0
- package/dist/components/atoms/Typography/index.d.mts +1 -0
- package/dist/components/atoms/index.d.mts +21 -0
- package/dist/components/atoms/index.d.ts +1 -0
- package/dist/components/index.d.mts +4 -0
- package/dist/components/layout/GridSystem/GridSystem.d.mts +58 -0
- package/dist/components/layout/GridSystem/GridSystem.mjs +221 -0
- package/dist/components/layout/GridSystem/GridSystem.mjs.map +1 -0
- package/dist/components/layout/GridSystem/index.d.mts +1 -0
- package/dist/components/layout/index.d.mts +1 -0
- package/dist/components/molecules/AccountCard/AccountCard.d.mts +44 -0
- package/dist/components/molecules/AccountCard/AccountCard.mjs +191 -0
- package/dist/components/molecules/AccountCard/AccountCard.mjs.map +1 -0
- package/dist/components/molecules/AccountCard/index.d.mts +2 -0
- package/dist/components/molecules/ActionSheet/ActionSheet.d.mts +111 -0
- package/dist/components/molecules/ActionSheet/ActionSheet.mjs +283 -0
- package/dist/components/molecules/ActionSheet/ActionSheet.mjs.map +1 -0
- package/dist/components/molecules/ActionSheet/index.d.mts +2 -0
- package/dist/components/molecules/AgentInput/AgentInput.d.mts +92 -0
- package/dist/components/molecules/AgentInput/AgentInput.d.ts +63 -1
- package/dist/components/molecules/AgentInput/AgentInput.mjs +1099 -0
- package/dist/components/molecules/AgentInput/AgentInput.mjs.map +1 -0
- package/dist/components/molecules/AgentInput/agentInputSpeech.d.mts +45 -0
- package/dist/components/molecules/AgentInput/agentInputSpeech.d.ts +2 -0
- package/dist/components/molecules/AgentInput/agentInputSpeech.mjs +53 -0
- package/dist/components/molecules/AgentInput/agentInputSpeech.mjs.map +1 -0
- package/dist/components/molecules/AgentInput/agentInputStateMachine.d.mts +29 -0
- package/dist/components/molecules/AgentInput/agentInputStateMachine.mjs +55 -0
- package/dist/components/molecules/AgentInput/agentInputStateMachine.mjs.map +1 -0
- package/dist/components/molecules/AgentInput/index.d.mts +3 -0
- package/dist/components/molecules/AgentInput/index.d.ts +1 -1
- package/dist/components/molecules/Alert/Alert.d.mts +68 -0
- package/dist/components/molecules/Alert/Alert.mjs +284 -0
- package/dist/components/molecules/Alert/Alert.mjs.map +1 -0
- package/dist/components/molecules/Alert/index.d.mts +1 -0
- package/dist/components/molecules/Breadcrumbs/Breadcrumbs.d.mts +16 -0
- package/dist/components/molecules/Breadcrumbs/Breadcrumbs.mjs +74 -0
- package/dist/components/molecules/Breadcrumbs/Breadcrumbs.mjs.map +1 -0
- package/dist/components/molecules/Breadcrumbs/index.d.mts +1 -0
- package/dist/components/molecules/CardLarge/CardLarge.d.mts +12 -0
- package/dist/components/molecules/CardLarge/CardLarge.mjs +76 -0
- package/dist/components/molecules/CardLarge/CardLarge.mjs.map +1 -0
- package/dist/components/molecules/CardLarge/index.d.mts +1 -0
- package/dist/components/molecules/CardSmall/CardSmall.d.mts +16 -0
- package/dist/components/molecules/CardSmall/CardSmall.mjs +73 -0
- package/dist/components/molecules/CardSmall/CardSmall.mjs.map +1 -0
- package/dist/components/molecules/CardSmall/index.d.mts +1 -0
- package/dist/components/molecules/Checkbox/Checkbox.d.mts +64 -0
- package/dist/components/molecules/Checkbox/Checkbox.mjs +139 -0
- package/dist/components/molecules/Checkbox/Checkbox.mjs.map +1 -0
- package/dist/components/molecules/Checkbox/SelectableInputBase.d.mts +40 -0
- package/dist/components/molecules/Checkbox/SelectableInputBase.mjs +99 -0
- package/dist/components/molecules/Checkbox/SelectableInputBase.mjs.map +1 -0
- package/dist/components/molecules/Checkbox/index.d.mts +3 -0
- package/dist/components/molecules/ChipGroup/ChipGroup.d.mts +7 -0
- package/dist/components/molecules/ChipGroup/ChipGroup.mjs +56 -0
- package/dist/components/molecules/ChipGroup/ChipGroup.mjs.map +1 -0
- package/dist/components/molecules/ChipGroup/index.d.mts +1 -0
- package/dist/components/molecules/CodeBlock/CodeBlock.d.mts +46 -0
- package/dist/components/molecules/CodeBlock/CodeBlock.mjs +231 -0
- package/dist/components/molecules/CodeBlock/CodeBlock.mjs.map +1 -0
- package/dist/components/molecules/CodeBlock/index.d.mts +1 -0
- package/dist/components/molecules/DateGroup/DateGroup.d.mts +37 -0
- package/dist/components/molecules/DateGroup/DateGroup.mjs +104 -0
- package/dist/components/molecules/DateGroup/DateGroup.mjs.map +1 -0
- package/dist/components/molecules/DateGroup/index.d.mts +2 -0
- package/dist/components/molecules/Dropdown/Dropdown.d.mts +27 -0
- package/dist/components/molecules/Dropdown/Dropdown.mjs +282 -0
- package/dist/components/molecules/Dropdown/Dropdown.mjs.map +1 -0
- package/dist/components/molecules/Dropdown/index.d.mts +1 -0
- package/dist/components/molecules/EmptyState/EmptyState.d.mts +32 -0
- package/dist/components/molecules/EmptyState/EmptyState.mjs +133 -0
- package/dist/components/molecules/EmptyState/EmptyState.mjs.map +1 -0
- package/dist/components/molecules/EmptyState/index.d.mts +2 -0
- package/dist/components/molecules/FeatureBlock/FeatureBlock.d.mts +14 -0
- package/dist/components/molecules/FeatureBlock/FeatureBlock.mjs +100 -0
- package/dist/components/molecules/FeatureBlock/FeatureBlock.mjs.map +1 -0
- package/dist/components/molecules/FeatureBlock/index.d.mts +1 -0
- package/dist/components/molecules/InlineAlert/InlineAlert.d.mts +54 -0
- package/dist/components/molecules/InlineAlert/InlineAlert.mjs +140 -0
- package/dist/components/molecules/InlineAlert/InlineAlert.mjs.map +1 -0
- package/dist/components/molecules/InlineAlert/index.d.mts +2 -0
- package/dist/components/molecules/List/List.d.mts +30 -0
- package/dist/components/molecules/List/List.mjs +45 -0
- package/dist/components/molecules/List/List.mjs.map +1 -0
- package/dist/components/molecules/List/ListContext.d.mts +6 -0
- package/dist/components/molecules/List/ListContext.mjs +11 -0
- package/dist/components/molecules/List/ListContext.mjs.map +1 -0
- package/dist/components/molecules/List/ListItem.d.mts +101 -0
- package/dist/components/molecules/List/ListItem.mjs +224 -0
- package/dist/components/molecules/List/ListItem.mjs.map +1 -0
- package/dist/components/molecules/List/index.d.mts +4 -0
- package/dist/components/molecules/Modal/Modal.d.mts +69 -0
- package/dist/components/molecules/Modal/Modal.mjs +259 -0
- package/dist/components/molecules/Modal/Modal.mjs.map +1 -0
- package/dist/components/molecules/Modal/index.d.mts +2 -0
- package/dist/components/molecules/NumberInput/NumberInput.d.mts +86 -0
- package/dist/components/molecules/NumberInput/NumberInput.mjs +268 -0
- package/dist/components/molecules/NumberInput/NumberInput.mjs.map +1 -0
- package/dist/components/molecules/NumberInput/index.d.mts +2 -0
- package/dist/components/molecules/PageTitle/PageTitle.d.mts +21 -0
- package/dist/components/molecules/PageTitle/PageTitle.mjs +77 -0
- package/dist/components/molecules/PageTitle/PageTitle.mjs.map +1 -0
- package/dist/components/molecules/PageTitle/index.d.mts +1 -0
- package/dist/components/molecules/PasswordField/PasswordField.d.mts +55 -0
- package/dist/components/molecules/PasswordField/PasswordField.mjs +146 -0
- package/dist/components/molecules/PasswordField/PasswordField.mjs.map +1 -0
- package/dist/components/molecules/PasswordField/index.d.mts +2 -0
- package/dist/components/molecules/SearchField/SearchField.d.mts +108 -0
- package/dist/components/molecules/SearchField/SearchField.mjs +340 -0
- package/dist/components/molecules/SearchField/SearchField.mjs.map +1 -0
- package/dist/components/molecules/SearchField/index.d.mts +2 -0
- package/dist/components/molecules/Sheet/Sheet.d.mts +96 -0
- package/dist/components/molecules/Sheet/Sheet.mjs +243 -0
- package/dist/components/molecules/Sheet/Sheet.mjs.map +1 -0
- package/dist/components/molecules/Sheet/index.d.mts +2 -0
- package/dist/components/molecules/Slider/Slider.d.mts +102 -0
- package/dist/components/molecules/Slider/Slider.mjs +462 -0
- package/dist/components/molecules/Slider/Slider.mjs.map +1 -0
- package/dist/components/molecules/Slider/index.d.mts +2 -0
- package/dist/components/molecules/TabBar/TabBar.d.mts +82 -0
- package/dist/components/molecules/TabBar/TabBar.mjs +213 -0
- package/dist/components/molecules/TabBar/TabBar.mjs.map +1 -0
- package/dist/components/molecules/TabBar/index.d.mts +2 -0
- package/dist/components/molecules/TextField/InputBase.d.mts +22 -0
- package/dist/components/molecules/TextField/InputBase.mjs +56 -0
- package/dist/components/molecules/TextField/InputBase.mjs.map +1 -0
- package/dist/components/molecules/TextField/TextField.d.mts +56 -0
- package/dist/components/molecules/TextField/TextField.mjs +115 -0
- package/dist/components/molecules/TextField/TextField.mjs.map +1 -0
- package/dist/components/molecules/TextField/index.d.mts +4 -0
- package/dist/components/molecules/TransactionListItem/TransactionListItem.d.mts +39 -0
- package/dist/components/molecules/TransactionListItem/TransactionListItem.mjs +224 -0
- package/dist/components/molecules/TransactionListItem/TransactionListItem.mjs.map +1 -0
- package/dist/components/molecules/TransactionListItem/index.d.mts +2 -0
- package/dist/components/molecules/index.d.mts +26 -0
- package/dist/data.js +316 -3
- package/dist/data.js.map +1 -1
- package/dist/index.d.mts +3 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +57 -0
- package/dist/index.mjs.map +1 -0
- package/dist/lib/cssTokens.d.mts +14 -0
- package/dist/lib/cssTokens.mjs +19 -0
- package/dist/lib/cssTokens.mjs.map +1 -0
- package/dist/lib/cssVariables.d.mts +15 -0
- package/dist/lib/cssVariables.mjs +37 -0
- package/dist/lib/cssVariables.mjs.map +1 -0
- package/dist/lib/styleUtils.d.mts +42 -0
- package/dist/lib/styleUtils.mjs +160 -0
- package/dist/lib/styleUtils.mjs.map +1 -0
- package/dist/lib/tokenAliases.d.mts +13 -0
- package/dist/lib/tokenAliases.mjs +122 -0
- package/dist/lib/tokenAliases.mjs.map +1 -0
- package/dist/lib/usePresence.d.mts +16 -0
- package/dist/lib/usePresence.mjs +50 -0
- package/dist/lib/usePresence.mjs.map +1 -0
- package/dist/styles/icons.json +30 -1
- package/dist/{data.esm.js → styles/icons.json.mjs} +33 -1466
- package/dist/styles/icons.json.mjs.map +1 -0
- package/dist/styles/tokens.d.mts +3718 -0
- package/dist/styles/tokens.d.ts +545 -1
- package/dist/styles/tokens.json +284 -2
- package/dist/styles/tokens.json.mjs +1736 -0
- package/dist/{tokens/index.esm.js.map → styles/tokens.json.mjs.map} +1 -1
- package/dist/tokens/index.js +284 -2
- package/dist/tokens/index.js.map +1 -1
- package/dist/tokens/{index.esm.js → index.mjs} +285 -3
- package/dist/tokens/index.mjs.map +1 -0
- package/dist/tokens/styles/tokens.d.mts +3718 -0
- package/dist/tokens/styles/tokens.d.ts +545 -1
- package/dist/tokens/tokens.d.mts +4 -0
- package/dist/tokens/types/tokens.d.mts +6 -0
- package/dist/tokens.css +242 -0
- package/dist/tokens.css.d.mts +4 -0
- package/dist/types/icons.d.mts +25 -0
- package/dist/types/icons.d.ts +1 -1
- package/dist/types/icons.mjs +10 -0
- package/dist/types/icons.mjs.map +1 -0
- package/dist/types/index.d.mts +1 -0
- package/dist/types/tokens.d.mts +6 -0
- package/dist/types/tokens.mjs +10 -0
- package/dist/types/tokens.mjs.map +1 -0
- package/dist/vendor/tslib/tslib.es6.mjs +99 -0
- package/dist/vendor/tslib/tslib.es6.mjs.map +1 -0
- package/package.json +26 -12
- package/dist/client.esm.js +0 -8289
- package/dist/client.esm.js.map +0 -1
- package/dist/data.esm.js.map +0 -1
- package/dist/index.esm.js +0 -8
- package/dist/index.esm.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Divider.mjs';
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { type IconName } from '../../../types/icons.mjs';
|
|
3
|
+
export type { IconName };
|
|
4
|
+
export interface IconProps {
|
|
5
|
+
name: IconName;
|
|
6
|
+
size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
|
|
7
|
+
iconColor?: 'default' | 'emphasis' | 'subdued' | 'disabled' | 'inverse' | 'interactive' | 'error' | 'success' | 'warning' | 'inherit';
|
|
8
|
+
/**
|
|
9
|
+
* Makes the icon meaningful: it's announced as an image with this name. Without `aria-label`
|
|
10
|
+
* or `title`, the icon is decorative and hidden from assistive technology (#85). Use a
|
|
11
|
+
* human-readable name, never the internal icon name; `icons.json`'s `ariaLabelDefault` is a
|
|
12
|
+
* starting point.
|
|
13
|
+
*/
|
|
14
|
+
'aria-label'?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Like `aria-label`, and also shown as a tooltip. `aria-label` wins if both are given.
|
|
17
|
+
*/
|
|
18
|
+
title?: string;
|
|
19
|
+
'data-testid'?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare const Icon: FC<IconProps>;
|
|
22
|
+
export default Icon;
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { __makeTemplateObject, __assign } from '../../../vendor/tslib/tslib.es6.mjs';
|
|
3
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
4
|
+
import styled$module from 'styled-components';
|
|
5
|
+
const styled = styled$module.default || styled$module;
|
|
6
|
+
import tokens from '../../../lib/cssTokens.mjs';
|
|
7
|
+
import iconsJson from '../../../styles/icons.json.mjs';
|
|
8
|
+
|
|
9
|
+
var IconStyled = /*#__PURE__*/styled.span.withConfig({
|
|
10
|
+
shouldForwardProp: function shouldForwardProp(prop) {
|
|
11
|
+
return !prop.startsWith('$');
|
|
12
|
+
},
|
|
13
|
+
displayName: "Icon__IconStyled",
|
|
14
|
+
componentId: "sc-1105czq-0"
|
|
15
|
+
})(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: ", ";\n \n svg {\n width: 100%;\n height: 100%;\n display: block;\n }\n \n /* Use semantic icon colors */\n color: ", ";\n"], ["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: ", ";\n height: ", ";\n \n svg {\n width: 100%;\n height: 100%;\n display: block;\n }\n \n /* Use semantic icon colors */\n color: ", ";\n"])), function (_a) {
|
|
16
|
+
var $size = _a.$size;
|
|
17
|
+
return tokens.semantic.size.icon[$size];
|
|
18
|
+
}, function (_a) {
|
|
19
|
+
var $size = _a.$size;
|
|
20
|
+
return tokens.semantic.size.icon[$size];
|
|
21
|
+
}, function (_a) {
|
|
22
|
+
var $iconColor = _a.$iconColor;
|
|
23
|
+
switch ($iconColor) {
|
|
24
|
+
case 'default':
|
|
25
|
+
return tokens.semantic.color.icon["default"];
|
|
26
|
+
case 'emphasis':
|
|
27
|
+
return tokens.semantic.color.icon.emphasis;
|
|
28
|
+
case 'subdued':
|
|
29
|
+
return tokens.semantic.color.icon.muted;
|
|
30
|
+
case 'disabled':
|
|
31
|
+
return tokens.semantic.color.icon.disabled;
|
|
32
|
+
case 'inverse':
|
|
33
|
+
return tokens.semantic.color.icon.inverse;
|
|
34
|
+
case 'interactive':
|
|
35
|
+
return tokens.semantic.color.icon.accent;
|
|
36
|
+
case 'error':
|
|
37
|
+
return tokens.semantic.color.icon.danger;
|
|
38
|
+
case 'success':
|
|
39
|
+
return tokens.semantic.color.icon.success;
|
|
40
|
+
case 'warning':
|
|
41
|
+
return tokens.semantic.color.icon.warning;
|
|
42
|
+
case 'inherit':
|
|
43
|
+
return 'currentColor';
|
|
44
|
+
default:
|
|
45
|
+
return tokens.semantic.color.icon["default"];
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
var Icon = function Icon(_a) {
|
|
49
|
+
var name = _a.name,
|
|
50
|
+
_b = _a.size,
|
|
51
|
+
size = _b === void 0 ? 'lg' : _b,
|
|
52
|
+
_c = _a.iconColor,
|
|
53
|
+
iconColor = _c === void 0 ? 'default' : _c,
|
|
54
|
+
ariaLabel = _a["aria-label"],
|
|
55
|
+
title = _a.title,
|
|
56
|
+
dataTestId = _a["data-testid"];
|
|
57
|
+
// Decorative unless it's given a name. A blank name is no name, so the icon stays hidden
|
|
58
|
+
var label = (ariaLabel === null || ariaLabel === void 0 ? void 0 : ariaLabel.trim()) || (title === null || title === void 0 ? void 0 : title.trim()) || undefined;
|
|
59
|
+
// Get the icon data from the JSON file
|
|
60
|
+
var iconData = iconsJson[name];
|
|
61
|
+
if (!iconData) {
|
|
62
|
+
console.warn("Icon \"".concat(name, "\" not found in icons.json"));
|
|
63
|
+
return jsx(IconStyled, {
|
|
64
|
+
"$size": size,
|
|
65
|
+
"$iconColor": iconColor,
|
|
66
|
+
"data-testid": dataTestId
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
return jsx(IconStyled, {
|
|
70
|
+
"$size": size,
|
|
71
|
+
"$iconColor": iconColor,
|
|
72
|
+
"data-testid": dataTestId,
|
|
73
|
+
children: jsxs("svg", __assign({
|
|
74
|
+
viewBox: "0 0 24 24",
|
|
75
|
+
fill: "currentColor",
|
|
76
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
77
|
+
}, label ? {
|
|
78
|
+
role: 'img',
|
|
79
|
+
'aria-label': label
|
|
80
|
+
} : {
|
|
81
|
+
'aria-hidden': true,
|
|
82
|
+
focusable: false
|
|
83
|
+
}, {
|
|
84
|
+
children: [(title === null || title === void 0 ? void 0 : title.trim()) && jsx("title", {
|
|
85
|
+
children: title
|
|
86
|
+
}), jsx("path", {
|
|
87
|
+
d: iconData.path
|
|
88
|
+
})]
|
|
89
|
+
}))
|
|
90
|
+
});
|
|
91
|
+
};
|
|
92
|
+
var templateObject_1;
|
|
93
|
+
|
|
94
|
+
export { Icon, Icon as default };
|
|
95
|
+
//# sourceMappingURL=Icon.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Icon.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Icon.mjs';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type IconName } from '../Icon/index.mjs';
|
|
3
|
+
export interface IconButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
4
|
+
variant: 'primary' | 'secondary' | 'naked';
|
|
5
|
+
size?: 'small' | 'medium' | 'large';
|
|
6
|
+
iconName: IconName;
|
|
7
|
+
url?: string;
|
|
8
|
+
'aria-label': string;
|
|
9
|
+
'aria-describedby'?: string;
|
|
10
|
+
'aria-expanded'?: boolean;
|
|
11
|
+
'aria-pressed'?: boolean;
|
|
12
|
+
'data-testid'?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare const IconButton: React.FC<IconButtonProps>;
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { __makeTemplateObject, __rest, __assign } from '../../../vendor/tslib/tslib.es6.mjs';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
import styled$module from 'styled-components';
|
|
5
|
+
const styled = styled$module.default || styled$module;
|
|
6
|
+
import { Icon } from '../Icon/Icon.mjs';
|
|
7
|
+
import tokens from '../../../lib/cssTokens.mjs';
|
|
8
|
+
import { forcedColorsEdge } from '../../../lib/styleUtils.mjs';
|
|
9
|
+
|
|
10
|
+
var _a = tokens.semantic,
|
|
11
|
+
motion = _a.motion,
|
|
12
|
+
border = _a.border,
|
|
13
|
+
space = _a.space,
|
|
14
|
+
size = _a.size,
|
|
15
|
+
_b = tokens.component,
|
|
16
|
+
iconButton = _b.iconButton,
|
|
17
|
+
button = _b.button;
|
|
18
|
+
// Height and width come from size.control as a minimum (decision 0034)
|
|
19
|
+
var control = {
|
|
20
|
+
small: size.control.sm,
|
|
21
|
+
medium: size.control.md,
|
|
22
|
+
large: size.control.lg
|
|
23
|
+
};
|
|
24
|
+
// Padding comes from the semantic spacing scale: no component spacing tokens (decision 0022)
|
|
25
|
+
var padding = {
|
|
26
|
+
small: space.inset.xs,
|
|
27
|
+
medium: space.inset.sm,
|
|
28
|
+
large: space.inset.md
|
|
29
|
+
};
|
|
30
|
+
// Colours and motion come from Button's tokens, so IconButton's variants look and behave exactly like
|
|
31
|
+
// Button's in every state (#130). Only the size and the icon differ
|
|
32
|
+
var variants = {
|
|
33
|
+
primary: {
|
|
34
|
+
bg: button.primary.backgroundColor,
|
|
35
|
+
text: button.primary.textColor,
|
|
36
|
+
hoverBg: button.hover.backgroundColor,
|
|
37
|
+
activeBg: button.active.backgroundColor,
|
|
38
|
+
disabledBg: button.disabled.backgroundColor,
|
|
39
|
+
disabledText: button.disabled.textColor
|
|
40
|
+
},
|
|
41
|
+
secondary: {
|
|
42
|
+
bg: button.variants.secondary.backgroundColor,
|
|
43
|
+
text: button.variants.secondary.textColor,
|
|
44
|
+
hoverBg: button.variants.secondary.hover.backgroundColor,
|
|
45
|
+
activeBg: button.variants.secondary.active.backgroundColor,
|
|
46
|
+
disabledBg: button.variants.secondary.disabled.backgroundColor,
|
|
47
|
+
disabledText: button.variants.secondary.disabled.textColor
|
|
48
|
+
},
|
|
49
|
+
naked: {
|
|
50
|
+
bg: button.variants.naked.backgroundColor,
|
|
51
|
+
text: button.variants.naked.textColor,
|
|
52
|
+
hoverBg: button.variants.naked.hover.backgroundColor,
|
|
53
|
+
activeBg: button.variants.naked.active.backgroundColor,
|
|
54
|
+
disabledBg: button.variants.naked.disabled.backgroundColor,
|
|
55
|
+
disabledText: button.variants.naked.disabled.textColor
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
// JavaScript callers can pass any string, so an unknown variant falls back to primary, as before
|
|
59
|
+
var colours = function colours(variant) {
|
|
60
|
+
var _a;
|
|
61
|
+
return (_a = variants[variant]) !== null && _a !== void 0 ? _a : variants.primary;
|
|
62
|
+
};
|
|
63
|
+
var IconButtonStyled = /*#__PURE__*/styled.button.withConfig({
|
|
64
|
+
shouldForwardProp: function shouldForwardProp(prop) {
|
|
65
|
+
return !prop.startsWith('$');
|
|
66
|
+
},
|
|
67
|
+
displayName: "IconButton__IconButtonStyled",
|
|
68
|
+
componentId: "sc-k8b14t-0"
|
|
69
|
+
})(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: ", ";\n color: ", ";\n border: none;\n border-radius: ", ";\n transition: ", ";\n box-sizing: border-box;\n display: flex;\n justify-content: center;\n align-items: center;\n height: max-content;\n cursor: pointer;\n position: relative;\n\n min-width: ", ";\n min-height: ", ";\n padding: ", ";\n\n &:hover:not(:disabled) {\n background-color: ", ";\n }\n\n &:active:not(:disabled) {\n background-color: ", ";\n }\n\n &:focus {\n outline: ", ";\n outline-offset: ", ";\n }\n\n &:disabled {\n background-color: ", ";\n color: ", ";\n cursor: not-allowed;\n }\n\n ", "\n"], ["\n background-color: ", ";\n color: ", ";\n border: none;\n border-radius: ", ";\n transition: ", ";\n box-sizing: border-box;\n display: flex;\n justify-content: center;\n align-items: center;\n height: max-content;\n cursor: pointer;\n position: relative;\n\n min-width: ", ";\n min-height: ", ";\n padding: ", ";\n\n &:hover:not(:disabled) {\n background-color: ", ";\n }\n\n &:active:not(:disabled) {\n background-color: ", ";\n }\n\n &:focus {\n outline: ", ";\n outline-offset: ", ";\n }\n\n &:disabled {\n background-color: ", ";\n color: ", ";\n cursor: not-allowed;\n }\n\n ", "\n"])), function (_a) {
|
|
70
|
+
var $variant = _a.$variant;
|
|
71
|
+
return colours($variant).bg;
|
|
72
|
+
}, function (_a) {
|
|
73
|
+
var $variant = _a.$variant;
|
|
74
|
+
return colours($variant).text;
|
|
75
|
+
}, iconButton.primary.borderRadius, motion.transition.feedback, function (_a) {
|
|
76
|
+
var $size = _a.$size;
|
|
77
|
+
return control[$size];
|
|
78
|
+
}, function (_a) {
|
|
79
|
+
var $size = _a.$size;
|
|
80
|
+
return control[$size];
|
|
81
|
+
}, function (_a) {
|
|
82
|
+
var $size = _a.$size;
|
|
83
|
+
return padding[$size];
|
|
84
|
+
}, function (_a) {
|
|
85
|
+
var $variant = _a.$variant;
|
|
86
|
+
return colours($variant).hoverBg;
|
|
87
|
+
}, function (_a) {
|
|
88
|
+
var $variant = _a.$variant;
|
|
89
|
+
return colours($variant).activeBg;
|
|
90
|
+
}, iconButton.focus.outline, border.focusOffset, function (_a) {
|
|
91
|
+
var $variant = _a.$variant;
|
|
92
|
+
return colours($variant).disabledBg;
|
|
93
|
+
}, function (_a) {
|
|
94
|
+
var $variant = _a.$variant;
|
|
95
|
+
return colours($variant).disabledText;
|
|
96
|
+
}, forcedColorsEdge);
|
|
97
|
+
var IconButton = function IconButton(_a) {
|
|
98
|
+
var variant = _a.variant,
|
|
99
|
+
_b = _a.size,
|
|
100
|
+
size = _b === void 0 ? 'medium' : _b,
|
|
101
|
+
url = _a.url,
|
|
102
|
+
_c = _a.iconName,
|
|
103
|
+
iconName = _c === void 0 ? 'close' : _c,
|
|
104
|
+
onClick = _a.onClick,
|
|
105
|
+
ariaLabel = _a["aria-label"],
|
|
106
|
+
ariaDescribedBy = _a["aria-describedby"],
|
|
107
|
+
ariaExpanded = _a["aria-expanded"],
|
|
108
|
+
ariaPressed = _a["aria-pressed"],
|
|
109
|
+
dataTestId = _a["data-testid"],
|
|
110
|
+
disabled = _a.disabled,
|
|
111
|
+
_d = _a.type,
|
|
112
|
+
type = _d === void 0 ? 'button' : _d,
|
|
113
|
+
htmlProps = __rest(_a, ["variant", "size", "url", "iconName", "onClick", 'aria-label', 'aria-describedby', 'aria-expanded', 'aria-pressed', 'data-testid', "disabled", "type"]);
|
|
114
|
+
var handleClick = function handleClick(event) {
|
|
115
|
+
if (onClick) {
|
|
116
|
+
onClick(event);
|
|
117
|
+
} else if (url && url.trim() !== '') {
|
|
118
|
+
// Use proper navigation instead of direct href assignment
|
|
119
|
+
if (url.startsWith('http') || url.startsWith('//')) {
|
|
120
|
+
window.open(url, '_blank', 'noopener,noreferrer');
|
|
121
|
+
} else {
|
|
122
|
+
window.location.assign(url);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
var iconSize = size === 'large' ? 'lg' : size === 'small' ? 'sm' : 'md';
|
|
127
|
+
return jsx(IconButtonStyled, __assign({
|
|
128
|
+
"$variant": variant,
|
|
129
|
+
"$size": size,
|
|
130
|
+
onClick: handleClick,
|
|
131
|
+
disabled: disabled,
|
|
132
|
+
type: type,
|
|
133
|
+
"aria-label": ariaLabel,
|
|
134
|
+
"aria-describedby": ariaDescribedBy,
|
|
135
|
+
"aria-expanded": ariaExpanded,
|
|
136
|
+
"aria-pressed": ariaPressed,
|
|
137
|
+
"data-testid": dataTestId
|
|
138
|
+
}, htmlProps, {
|
|
139
|
+
children: jsx(Icon, {
|
|
140
|
+
name: iconName,
|
|
141
|
+
size: iconSize,
|
|
142
|
+
iconColor: "inherit",
|
|
143
|
+
"aria-hidden": "true" // Hide icon from screen readers since button has aria-label
|
|
144
|
+
})
|
|
145
|
+
}));
|
|
146
|
+
};
|
|
147
|
+
var templateObject_1;
|
|
148
|
+
|
|
149
|
+
export { IconButton };
|
|
150
|
+
//# sourceMappingURL=IconButton.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconButton.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './IconButton.mjs';
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type MoneyDisplayVariant = 'default' | 'positive' | 'negative' | 'neutral';
|
|
3
|
+
export type MoneyDisplaySize = 'small' | 'medium' | 'large' | 'xlarge';
|
|
4
|
+
export type MoneyDisplayWeight = 'regular' | 'medium' | 'bold';
|
|
5
|
+
export type MoneyDisplayAlign = 'left' | 'center' | 'right';
|
|
6
|
+
export interface MoneyDisplayProps {
|
|
7
|
+
/** The monetary amount to display */
|
|
8
|
+
amount: number;
|
|
9
|
+
/** Currency code (ISO 4217) */
|
|
10
|
+
currency?: string;
|
|
11
|
+
/** Visual variant affecting color and style */
|
|
12
|
+
variant?: MoneyDisplayVariant;
|
|
13
|
+
/** Show +/- sign prefix */
|
|
14
|
+
showSign?: boolean;
|
|
15
|
+
/** Size of the amount display */
|
|
16
|
+
size?: MoneyDisplaySize;
|
|
17
|
+
/** Font weight */
|
|
18
|
+
weight?: MoneyDisplayWeight;
|
|
19
|
+
/** Locale for number formatting */
|
|
20
|
+
locale?: string;
|
|
21
|
+
/** Align text */
|
|
22
|
+
align?: MoneyDisplayAlign;
|
|
23
|
+
/** Data test id for testing */
|
|
24
|
+
'data-testid'?: string;
|
|
25
|
+
}
|
|
26
|
+
export declare const MoneyDisplay: React.FC<MoneyDisplayProps>;
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { __makeTemplateObject } from '../../../vendor/tslib/tslib.es6.mjs';
|
|
3
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
4
|
+
import styled$module from 'styled-components';
|
|
5
|
+
const styled = styled$module.default || styled$module;
|
|
6
|
+
import { Typography } from '../Typography/Typography.mjs';
|
|
7
|
+
import { Icon } from '../Icon/Icon.mjs';
|
|
8
|
+
import tokens from '../../../lib/cssTokens.mjs';
|
|
9
|
+
|
|
10
|
+
var StyledWrapper = /*#__PURE__*/styled.span.withConfig({
|
|
11
|
+
shouldForwardProp: function shouldForwardProp(prop) {
|
|
12
|
+
return !prop.startsWith('$');
|
|
13
|
+
},
|
|
14
|
+
displayName: "MoneyDisplay__StyledWrapper",
|
|
15
|
+
componentId: "sc-1mddej3-0"
|
|
16
|
+
})(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n gap: 0.25rem;\n text-align: ", ";\n font-weight: ", ";\n"], ["\n display: inline-flex;\n align-items: center;\n gap: 0.25rem;\n text-align: ", ";\n font-weight: ", ";\n"
|
|
17
|
+
// Map size to Typography variant
|
|
18
|
+
])), function (_a) {
|
|
19
|
+
var $align = _a.$align;
|
|
20
|
+
return $align;
|
|
21
|
+
}, function (_a) {
|
|
22
|
+
var $weight = _a.$weight;
|
|
23
|
+
return tokens.semantic.fontWeight[$weight];
|
|
24
|
+
});
|
|
25
|
+
// Map size to Typography variant
|
|
26
|
+
var sizeToTypographyVariant = {
|
|
27
|
+
small: 'caption',
|
|
28
|
+
medium: 'body',
|
|
29
|
+
large: 'h3',
|
|
30
|
+
xlarge: 'h2'
|
|
31
|
+
};
|
|
32
|
+
// Map size to Icon size for consistent visual alignment
|
|
33
|
+
var sizeToIconSize = {
|
|
34
|
+
small: 'xs',
|
|
35
|
+
medium: 'sm',
|
|
36
|
+
large: 'md',
|
|
37
|
+
xlarge: 'lg'
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Generates aria-label with spelled out amount
|
|
41
|
+
*/
|
|
42
|
+
var generateAriaLabel = function generateAriaLabel(amount, currency, locale) {
|
|
43
|
+
var _a, _b;
|
|
44
|
+
var formatter = new Intl.NumberFormat(locale, {
|
|
45
|
+
style: 'currency',
|
|
46
|
+
currency: currency,
|
|
47
|
+
minimumFractionDigits: 2,
|
|
48
|
+
maximumFractionDigits: 2
|
|
49
|
+
});
|
|
50
|
+
// Get parts to spell out the amount
|
|
51
|
+
var parts = formatter.formatToParts(Math.abs(amount));
|
|
52
|
+
var integerPart = ((_a = parts.find(function (p) {
|
|
53
|
+
return p.type === 'integer';
|
|
54
|
+
})) === null || _a === void 0 ? void 0 : _a.value) || '0';
|
|
55
|
+
var fractionPart = ((_b = parts.find(function (p) {
|
|
56
|
+
return p.type === 'fraction';
|
|
57
|
+
})) === null || _b === void 0 ? void 0 : _b.value) || '00';
|
|
58
|
+
var sign = amount < 0 ? 'negative ' : '';
|
|
59
|
+
return "".concat(sign).concat(integerPart, " dollars and ").concat(fractionPart, " cents");
|
|
60
|
+
};
|
|
61
|
+
var MoneyDisplay = function MoneyDisplay(_a) {
|
|
62
|
+
var amount = _a.amount,
|
|
63
|
+
_b = _a.currency,
|
|
64
|
+
currency = _b === void 0 ? 'AUD' : _b,
|
|
65
|
+
_c = _a.variant,
|
|
66
|
+
variant = _c === void 0 ? 'default' : _c,
|
|
67
|
+
_d = _a.showSign,
|
|
68
|
+
showSign = _d === void 0 ? false : _d,
|
|
69
|
+
_e = _a.size,
|
|
70
|
+
size = _e === void 0 ? 'medium' : _e,
|
|
71
|
+
_f = _a.weight,
|
|
72
|
+
weight = _f === void 0 ? 'regular' : _f,
|
|
73
|
+
_g = _a.locale,
|
|
74
|
+
locale = _g === void 0 ? 'en-AU' : _g,
|
|
75
|
+
_h = _a.align,
|
|
76
|
+
align = _h === void 0 ? 'left' : _h,
|
|
77
|
+
dataTestId = _a["data-testid"];
|
|
78
|
+
// Format the number with Intl.NumberFormat
|
|
79
|
+
var formatter = new Intl.NumberFormat(locale, {
|
|
80
|
+
style: 'currency',
|
|
81
|
+
currency: currency,
|
|
82
|
+
minimumFractionDigits: 2,
|
|
83
|
+
maximumFractionDigits: 2
|
|
84
|
+
});
|
|
85
|
+
var formattedAmount = formatter.format(Math.abs(amount));
|
|
86
|
+
// Determine if we need to show a sign icon
|
|
87
|
+
var showPositiveIcon = showSign && amount > 0 || variant === 'positive';
|
|
88
|
+
var showNegativeIcon = amount < 0 || variant === 'negative';
|
|
89
|
+
// Generate accessibility label
|
|
90
|
+
var ariaLabel = generateAriaLabel(amount, currency, locale);
|
|
91
|
+
// Get typography variant and icon size
|
|
92
|
+
var typographyVariant = sizeToTypographyVariant[size];
|
|
93
|
+
var iconSize = sizeToIconSize[size];
|
|
94
|
+
// Determine icon color based on variant
|
|
95
|
+
var iconColor = variant === 'positive' || showPositiveIcon ? 'success' : variant === 'negative' || showNegativeIcon ? 'error' : variant === 'neutral' ? 'subdued' : 'default';
|
|
96
|
+
// Amount always uses default color (except neutral which stays subdued)
|
|
97
|
+
var amountColor = variant === 'neutral' ? 'subdued' : 'default';
|
|
98
|
+
return jsxs(StyledWrapper, {
|
|
99
|
+
"$align": align,
|
|
100
|
+
"$weight": weight,
|
|
101
|
+
"aria-label": ariaLabel,
|
|
102
|
+
"data-testid": dataTestId,
|
|
103
|
+
children: [showPositiveIcon && !showNegativeIcon &&
|
|
104
|
+
// The amount is shown without a sign, so the icon is the sign and needs a name (#85)
|
|
105
|
+
jsx(Icon, {
|
|
106
|
+
name: "addRing",
|
|
107
|
+
size: iconSize,
|
|
108
|
+
iconColor: iconColor,
|
|
109
|
+
"aria-label": "Plus"
|
|
110
|
+
}), showNegativeIcon && jsx(Icon, {
|
|
111
|
+
name: "remove",
|
|
112
|
+
size: iconSize,
|
|
113
|
+
iconColor: iconColor,
|
|
114
|
+
"aria-label": "Minus"
|
|
115
|
+
}), jsx(Typography, {
|
|
116
|
+
variant: typographyVariant,
|
|
117
|
+
color: amountColor,
|
|
118
|
+
as: "span",
|
|
119
|
+
children: formattedAmount
|
|
120
|
+
})]
|
|
121
|
+
});
|
|
122
|
+
};
|
|
123
|
+
var templateObject_1;
|
|
124
|
+
|
|
125
|
+
export { MoneyDisplay };
|
|
126
|
+
//# sourceMappingURL=MoneyDisplay.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MoneyDisplay.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type PictureProps = {
|
|
3
|
+
title: string;
|
|
4
|
+
src: string;
|
|
5
|
+
width?: number;
|
|
6
|
+
height?: number;
|
|
7
|
+
onClick?: () => void;
|
|
8
|
+
href?: string;
|
|
9
|
+
'data-testid'?: string;
|
|
10
|
+
};
|
|
11
|
+
export declare const Picture: React.FC<PictureProps>;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { __makeTemplateObject } from '../../../vendor/tslib/tslib.es6.mjs';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
import styled$module, { css } from 'styled-components';
|
|
5
|
+
const styled = styled$module.default || styled$module;
|
|
6
|
+
import tokens from '../../../lib/cssTokens.mjs';
|
|
7
|
+
import { media } from '../../../lib/styleUtils.mjs';
|
|
8
|
+
|
|
9
|
+
var PictureWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
10
|
+
displayName: "Picture__PictureWrapper",
|
|
11
|
+
componentId: "sc-11d9tei-0"
|
|
12
|
+
})(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n margin: 0 auto;\n \n ", " {\n margin-left: 0;\n margin-right: 0;\n }\n"], ["\n margin: 0 auto;\n \n ", " {\n margin-left: 0;\n margin-right: 0;\n }\n"
|
|
13
|
+
// A clickable image answers input on the image itself (decision 0029, #185): it fades on hover and
|
|
14
|
+
// one step further while pressed, and draws the system focus ring around the image, following its
|
|
15
|
+
// rounded corners. Fading isn't movement, so it stays under reduced motion.
|
|
16
|
+
])), media.sm);
|
|
17
|
+
// A clickable image answers input on the image itself (decision 0029, #185): it fades on hover and
|
|
18
|
+
// one step further while pressed, and draws the system focus ring around the image, following its
|
|
19
|
+
// rounded corners. Fading isn't movement, so it stays under reduced motion.
|
|
20
|
+
var clickableImage = css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: block;\n cursor: pointer;\n\n img {\n transition: ", ";\n }\n\n &:hover img {\n opacity: ", ";\n }\n\n &:active img {\n opacity: ", ";\n }\n\n &:focus-visible {\n outline: none;\n }\n\n &:focus-visible img {\n outline: ", ";\n outline-offset: ", ";\n }\n"], ["\n display: block;\n cursor: pointer;\n\n img {\n transition: ", ";\n }\n\n &:hover img {\n opacity: ", ";\n }\n\n &:active img {\n opacity: ", ";\n }\n\n &:focus-visible {\n outline: none;\n }\n\n &:focus-visible img {\n outline: ", ";\n outline-offset: ", ";\n }\n"])), tokens.semantic.motion.transition.press, tokens.semantic.opacity.hover, tokens.semantic.opacity.pressed, tokens.semantic.border.focus, tokens.semantic.border.focusOffset);
|
|
21
|
+
var ImageLink = /*#__PURE__*/styled.a.withConfig({
|
|
22
|
+
displayName: "Picture__ImageLink",
|
|
23
|
+
componentId: "sc-11d9tei-1"
|
|
24
|
+
})(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), clickableImage);
|
|
25
|
+
var ImageButton = /*#__PURE__*/styled.button.withConfig({
|
|
26
|
+
displayName: "Picture__ImageButton",
|
|
27
|
+
componentId: "sc-11d9tei-2"
|
|
28
|
+
})(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n border: none;\n background: none;\n padding: 0;\n width: 100%;\n ", "\n"], ["\n border: none;\n background: none;\n padding: 0;\n width: 100%;\n ", "\n"])), clickableImage);
|
|
29
|
+
var StyledImage = /*#__PURE__*/styled.img.withConfig({
|
|
30
|
+
displayName: "Picture__StyledImage",
|
|
31
|
+
componentId: "sc-11d9tei-3"
|
|
32
|
+
})(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n width: 100%;\n height: auto;\n border-radius: ", ";\n display: block;\n"], ["\n width: 100%;\n height: auto;\n border-radius: ", ";\n display: block;\n"])), tokens.semantic.radius.sm);
|
|
33
|
+
var Picture = function Picture(_a) {
|
|
34
|
+
var title = _a.title,
|
|
35
|
+
src = _a.src,
|
|
36
|
+
_b = _a.width,
|
|
37
|
+
width = _b === void 0 ? 1300 : _b,
|
|
38
|
+
_c = _a.height,
|
|
39
|
+
height = _c === void 0 ? 630 : _c,
|
|
40
|
+
onClick = _a.onClick,
|
|
41
|
+
href = _a.href,
|
|
42
|
+
dataTestId = _a["data-testid"];
|
|
43
|
+
var image = jsx(StyledImage, {
|
|
44
|
+
src: src,
|
|
45
|
+
alt: title,
|
|
46
|
+
width: width,
|
|
47
|
+
height: height
|
|
48
|
+
});
|
|
49
|
+
return jsx(PictureWrapper, {
|
|
50
|
+
"data-testid": dataTestId,
|
|
51
|
+
children: href ? jsx(ImageLink, {
|
|
52
|
+
href: href,
|
|
53
|
+
"aria-label": "Read more about ".concat(title),
|
|
54
|
+
children: image
|
|
55
|
+
}) : onClick ? jsx(ImageButton, {
|
|
56
|
+
onClick: onClick,
|
|
57
|
+
"aria-label": "Read more about ".concat(title),
|
|
58
|
+
children: image
|
|
59
|
+
}) : image
|
|
60
|
+
});
|
|
61
|
+
};
|
|
62
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
63
|
+
|
|
64
|
+
export { Picture };
|
|
65
|
+
//# sourceMappingURL=Picture.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Picture.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Picture.mjs';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface ProgressBarProps {
|
|
3
|
+
/** Progress value from 0 to 100 */
|
|
4
|
+
value: number;
|
|
5
|
+
/** Orientation of the progress bar */
|
|
6
|
+
variant?: 'horizontal' | 'vertical';
|
|
7
|
+
/** Fill colour: `default` is near-black (`background.emphasis`); `success` and `error` use their status colours */
|
|
8
|
+
color?: 'success' | 'error' | 'default';
|
|
9
|
+
/** Height size for horizontal progress bar (default: md) */
|
|
10
|
+
height?: 'sm' | 'md' | 'lg' | 'xl';
|
|
11
|
+
/** Width size for vertical progress bar (default: md) */
|
|
12
|
+
width?: 'sm' | 'md' | 'lg' | 'xl';
|
|
13
|
+
/** Accessible name, e.g. "Upload progress". Provide this or aria-labelledby; falls back to "Progress" */
|
|
14
|
+
'aria-label'?: string;
|
|
15
|
+
/** ID of the visible element that names the progress bar */
|
|
16
|
+
'aria-labelledby'?: string;
|
|
17
|
+
/** Data attribute for testing */
|
|
18
|
+
'data-testid'?: string;
|
|
19
|
+
}
|
|
20
|
+
export declare const ProgressBar: React.FC<ProgressBarProps>;
|
|
21
|
+
export default ProgressBar;
|