@sphereon/ui-components.ssi-react 0.1.3-unstable.134 → 0.1.3-unstable.144
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/components/assets/icons/CrossIcon/index.d.ts +8 -0
- package/dist/components/assets/icons/CrossIcon/index.js +7 -0
- package/dist/components/assets/icons/DocumentIcon/index.d.ts +9 -0
- package/dist/components/assets/icons/DocumentIcon/index.js +7 -0
- package/dist/components/assets/icons/ImageIcon/index.d.ts +9 -0
- package/dist/components/assets/icons/ImageIcon/index.js +7 -0
- package/dist/components/assets/icons/MeatBallsIcon/index.js +1 -1
- package/dist/components/assets/icons/SSIAddIcon/index.js +1 -1
- package/dist/components/assets/icons/SSIArrowDownIcon/index.js +1 -1
- package/dist/components/assets/icons/SSIFilterIcon/index.js +1 -1
- package/dist/components/assets/placeholders/PersonPlaceholder/index.d.ts +9 -0
- package/dist/components/assets/placeholders/PersonPlaceholder/index.js +7 -0
- package/dist/components/fields/ComboBox/index.d.ts +20 -0
- package/dist/components/fields/ComboBox/index.js +45 -0
- package/dist/components/fields/DragAndDropBox/index.d.ts +8 -0
- package/dist/components/fields/DragAndDropBox/index.js +30 -0
- package/dist/components/fields/FileSelection/index.d.ts +12 -0
- package/dist/components/fields/FileSelection/index.js +46 -0
- package/dist/components/fields/JSONForms/PassportPhotoControl/index.d.ts +5 -0
- package/dist/components/fields/JSONForms/PassportPhotoControl/index.js +37 -0
- package/dist/components/views/CredentialIssuanceWizardView/index.d.ts +10 -0
- package/dist/components/views/CredentialIssuanceWizardView/index.js +43 -0
- package/dist/components/views/CredentialIssuanceWizardView/styles.css +87 -0
- package/dist/index.d.ts +10 -1
- package/dist/index.js +10 -1
- package/dist/renders/jsonFormsRenders.d.ts +2 -0
- package/dist/renders/jsonFormsRenders.js +6 -0
- package/dist/styles/components/components/CredentialIssuanceWizardView/index.d.ts +9 -0
- package/dist/styles/components/components/CredentialIssuanceWizardView/index.js +55 -0
- package/dist/styles/components/components/DragAndDropBox/index.d.ts +4 -0
- package/dist/styles/components/components/DragAndDropBox/index.js +25 -0
- package/dist/styles/components/components/FileSelectionField/index.d.ts +10 -0
- package/dist/styles/components/components/FileSelectionField/index.js +64 -0
- package/dist/styles/components/components/Pagination/index.d.ts +5 -4
- package/dist/styles/components/components/PassportPhotoControl/index.d.ts +4 -0
- package/dist/styles/components/components/PassportPhotoControl/index.js +27 -0
- package/dist/styles/components/components/ProgressStepIndicator/index.js +1 -0
- package/dist/styles/components/components/index.d.ts +4 -0
- package/dist/styles/components/components/index.js +4 -0
- package/dist/styles/css/index.d.ts +1 -0
- package/dist/styles/css/index.js +7 -0
- package/dist/styles/fonts/index.d.ts +3 -0
- package/dist/styles/fonts/index.js +10 -1
- package/dist/styles/typography.js +6 -0
- package/dist/types/field/index.d.ts +21 -0
- package/dist/types/field/index.js +10 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +2 -0
- package/dist/types/view/index.d.ts +13 -0
- package/dist/types/view/index.js +1 -0
- package/package.json +19 -7
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { fontColors } from '@sphereon/ui-components.core';
|
|
3
|
+
const CrossIcon = (props) => {
|
|
4
|
+
const { size = 12, color = fontColors.dark, style = {} } = props;
|
|
5
|
+
return (_jsx("div", { style: { ...style, width: size, height: size, display: 'flex' }, children: _jsx("svg", { width: "100%", height: "100%", viewBox: "0 0 12 12", fill: "none", children: _jsx("path", { d: "M11.3763 0.623718C11.2113 0.45875 10.9439 0.458771 10.7789 0.623718L5.99999 5.40265L1.22108 0.623744C1.05612 0.458776 0.788685 0.458776 0.62372 0.623744C0.458759 0.788692 0.458761 1.05613 0.623722 1.2211L5.40263 6L0.623735 10.7789C0.458779 10.9439 0.458773 11.2113 0.623733 11.3763C0.788697 11.5412 1.05614 11.5412 1.2211 11.3763L5.99999 6.59737L10.7789 11.3763C10.9439 11.5412 11.2113 11.5412 11.3763 11.3763C11.5412 11.2113 11.5412 10.9439 11.3763 10.7789L6.59736 6L11.3763 1.22107C11.5412 1.05612 11.5412 0.788687 11.3763 0.623718Z", fill: color }) }) }));
|
|
6
|
+
};
|
|
7
|
+
export default CrossIcon;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { fontColors } from '@sphereon/ui-components.core';
|
|
3
|
+
const DocumentIcon = (props) => {
|
|
4
|
+
const { width = 28, height = 38, color = fontColors.dark, style = {} } = props;
|
|
5
|
+
return (_jsx("div", { style: { ...style, width, height, display: 'flex' }, children: _jsx("svg", { width: "100%", height: "100%", viewBox: "0 0 28 38", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M26.8828 7.409L21.4423 1.677C20.8054 1.006 19.6456 0.5 18.7458 0.5H17.5593H13.7627H3.32203C1.49064 0.5 0 2.0705 0 4V34C0 35.9295 1.49064 37.5 3.32203 37.5H24.678C26.5094 37.5 28 35.9295 28 34V19V11.5V10.25C28 9.3015 27.5197 8.08 26.8828 7.409ZM24.7643 8.0045C24.7349 8.004 24.7074 8 24.678 8H22.3051C21.5201 8 20.8814 7.327 20.8814 6.5V4C20.8814 3.9695 20.8776 3.94 20.8771 3.9095L24.7643 8.0045ZM26.1017 34C26.1017 34.827 25.4629 35.5 24.678 35.5H3.32203C2.53708 35.5 1.89831 34.827 1.89831 34V4C1.89831 3.173 2.53708 2.5 3.32203 2.5H13.7627H17.5593C18.3443 2.5 18.9831 3.173 18.9831 4V6.5C18.9831 8.4295 20.4737 10 22.3051 10H24.678C25.4629 10 26.1017 10.673 26.1017 11.5V19V34Z", fill: color }) }) }));
|
|
6
|
+
};
|
|
7
|
+
export default DocumentIcon;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { fontColors } from '@sphereon/ui-components.core';
|
|
3
|
+
const ImageIcon = (props) => {
|
|
4
|
+
const { width = 38, height = 30, color = fontColors.dark, style = {} } = props;
|
|
5
|
+
return (_jsx("div", { style: { ...style, width, height, display: 'flex' }, children: _jsx("svg", { width: "100%", height: "100%", viewBox: "0 0 38 30", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M15.773 8.1151C16.0717 8.1151 16.3637 8.20496 16.6121 8.37331C16.8604 8.54166 17.054 8.78094 17.1683 9.06089C17.2826 9.34083 17.3125 9.64888 17.2542 9.94605C17.1959 10.2432 17.052 10.5162 16.8407 10.7304C16.6295 10.9446 16.3603 11.0905 16.0673 11.1496C15.7743 11.2086 15.4707 11.1782 15.1947 11.0622C14.9187 10.9462 14.6829 10.7498 14.517 10.4978C14.3511 10.2458 14.2626 9.94961 14.2627 9.6466C14.2632 9.24048 14.4225 8.85116 14.7056 8.56399C14.9888 8.27682 15.3726 8.11567 15.773 8.1151ZM15.773 12.3833C16.3066 12.3833 16.8283 12.2229 17.272 11.9223C17.7157 11.6216 18.0616 11.1942 18.2659 10.6942C18.4702 10.1941 18.5236 9.64386 18.4196 9.11297C18.3155 8.58208 18.0586 8.09442 17.6813 7.71164C17.304 7.32887 16.8233 7.06819 16.2999 6.96256C15.7765 6.85693 15.234 6.9111 14.741 7.11822C14.248 7.32534 13.8266 7.6761 13.5301 8.12615C13.2336 8.5762 13.0754 9.10532 13.0754 9.6466C13.0766 10.3719 13.3612 11.0672 13.8668 11.58C14.3725 12.0929 15.0579 12.382 15.773 12.3833ZM2.81918 1.70473C2.38666 1.70507 1.97195 1.87947 1.66608 2.18964C1.3602 2.49982 1.18816 2.92043 1.18771 3.35914V22.6369L9.78458 13.9173C10.105 13.5935 10.5389 13.4116 10.9913 13.4116C11.4436 13.4116 11.8776 13.5935 12.198 13.9173L15.6007 17.3692L23.5385 9.32026C23.8587 8.99597 24.2927 8.81382 24.7452 8.81382C25.1977 8.81382 25.6317 8.99597 25.9519 9.32026L36.8123 20.338V3.35914C36.8118 2.9205 36.6399 2.49996 36.3341 2.1898C36.0283 1.87963 35.6137 1.70518 35.1812 1.70473H2.81918ZM35.1812 28.2957C35.6137 28.2951 36.0283 28.1206 36.3341 27.8104C36.6399 27.5001 36.8118 27.0795 36.8123 26.6409V22.0421L25.1104 10.1721C25.0129 10.0733 24.8807 10.0178 24.7429 10.0178C24.605 10.0178 24.4728 10.0733 24.3753 10.1721L16.0208 18.6467C15.9093 18.7597 15.7582 18.8231 15.6007 18.8231C15.4431 18.8231 15.292 18.7597 15.1806 18.6467L11.3578 14.7692C11.2604 14.6704 11.1283 14.615 10.9907 14.615C10.853 14.615 10.7209 14.6704 10.6235 14.7692L1.18771 24.3402V26.6409C1.18816 27.0796 1.36019 27.5003 1.66605 27.8105C1.97191 28.1208 2.38662 28.2952 2.81918 28.2957H35.1812ZM2.81918 29.5H35.1812C35.9286 29.4991 36.645 29.1976 37.1734 28.6616C37.7018 28.1256 37.9991 27.3989 38 26.6409V3.35914C37.9991 2.60113 37.7018 1.87442 37.1734 1.33843C36.645 0.802428 35.9286 0.500907 35.1812 0.5H2.81918C2.0718 0.500793 1.35525 0.802265 0.826731 1.33827C0.298214 1.87428 0.000894121 2.60106 0 3.35914V26.6409C0.000894121 27.3989 0.298214 28.1257 0.826731 28.6617C1.35525 29.1977 2.0718 29.4992 2.81918 29.5Z", fill: color }) }) }));
|
|
6
|
+
};
|
|
7
|
+
export default ImageIcon;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { fontColors } from '@sphereon/ui-components.core';
|
|
3
3
|
const MeatBallsIcon = (props) => {
|
|
4
|
-
const { width = 20, height = 5, color = fontColors.dark, style } = props;
|
|
4
|
+
const { width = 20, height = 5, color = fontColors.dark, style = {} } = props;
|
|
5
5
|
return (_jsx("div", { style: { ...style, width, height, display: 'flex' }, children: _jsxs("svg", { width: "100%", height: "100%", viewBox: "0 0 20 5", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("circle", { cx: "2", cy: "2.5", r: "2", fill: color }), _jsx("circle", { cx: "10", cy: "2.5", r: "2", fill: color }), _jsx("circle", { cx: "18", cy: "2.5", r: "2", fill: color })] }) }));
|
|
6
6
|
};
|
|
7
7
|
export default MeatBallsIcon;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { fontColors } from '@sphereon/ui-components.core';
|
|
3
3
|
const SSIAddIcon = (props) => {
|
|
4
|
-
const { size = 16, color = fontColors.dark, style } = props;
|
|
4
|
+
const { size = 16, color = fontColors.dark, style = {} } = props;
|
|
5
5
|
return (_jsx("div", { style: { ...style, width: size, height: size, display: 'flex' }, children: _jsx("svg", { width: "100%", height: "100%", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M8 0.5C7.65483 0.5 7.375 0.779833 7.375 1.125V7.37503H1.125C0.779812 7.37503 0.5 7.65484 0.5 8.00003C0.5 8.34519 0.779812 8.62502 1.125 8.62502H7.375V14.875C7.375 15.2202 7.65483 15.5 8 15.5C8.34519 15.5 8.625 15.2202 8.625 14.875V8.62502H14.875C15.2202 8.62502 15.5 8.34519 15.5 8.00003C15.5 7.65484 15.2202 7.37503 14.875 7.37503H8.625V1.125C8.625 0.779833 8.34519 0.5 8 0.5Z", fill: color }) }) }));
|
|
6
6
|
};
|
|
7
7
|
export default SSIAddIcon;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { fontColors } from '@sphereon/ui-components.core';
|
|
3
3
|
const SSIArrowDownIcon = (props) => {
|
|
4
|
-
const { width = 16, height = 8, color = fontColors.dark, style } = props;
|
|
4
|
+
const { width = 16, height = 8, color = fontColors.dark, style = {} } = props;
|
|
5
5
|
return (_jsx("div", { style: { ...style, width, height, display: 'flex' }, children: _jsx("svg", { width: "100%", height: "100%", viewBox: "0 0 16 8", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M8.03265 7.74886C8.14951 7.74175 8.26065 7.69465 8.34825 7.61511L15.3133 1.19499C15.367 1.1489 15.411 1.09224 15.4429 1.02837C15.4747 0.964504 15.4937 0.894731 15.4987 0.823204C15.5037 0.751676 15.4946 0.67985 15.4719 0.611995C15.4493 0.54414 15.4135 0.481647 15.3668 0.428216C15.3201 0.374784 15.2634 0.331504 15.2001 0.300961C15.1367 0.270419 15.068 0.253238 14.9981 0.250423C14.9281 0.247608 14.8583 0.259221 14.7928 0.28458C14.7273 0.309939 14.6675 0.348517 14.6168 0.398032L8 6.49492L1.38317 0.398032C1.33252 0.348517 1.27268 0.309939 1.20718 0.28458C1.14169 0.259221 1.07189 0.247597 1.00193 0.250412C0.931963 0.253227 0.863266 0.270419 0.799918 0.300961C0.736569 0.331504 0.679861 0.374784 0.633164 0.428216C0.586466 0.481647 0.550732 0.54414 0.528085 0.611995C0.505437 0.67985 0.496338 0.751676 0.501329 0.823204C0.506319 0.894731 0.525297 0.964504 0.557135 1.02837C0.588973 1.09224 0.633022 1.1489 0.686663 1.19499L7.65174 7.61511C7.70344 7.6621 7.76372 7.69811 7.82911 7.72107C7.89449 7.74403 7.96367 7.75348 8.03265 7.74886Z", fill: color }) }) }));
|
|
6
6
|
};
|
|
7
7
|
export default SSIArrowDownIcon;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { fontColors } from '@sphereon/ui-components.core';
|
|
3
3
|
const SSIFilterIcon = (props) => {
|
|
4
|
-
const { height = 16, width = 18, color = fontColors.dark, style } = props;
|
|
4
|
+
const { height = 16, width = 18, color = fontColors.dark, style = {} } = props;
|
|
5
5
|
return (_jsx("div", { style: { ...style, width, height, display: 'flex' }, children: _jsx("svg", { width: "100%", height: "100%", viewBox: "0 0 18 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M16.5 1.5H1.5L7.5 8.33222V13.0556L10.5 14.5V8.33222L16.5 1.5Z", stroke: color, strokeOpacity: "0.8", strokeWidth: "1.29412", strokeLinecap: "round", strokeLinejoin: "round" }) }) }));
|
|
6
6
|
};
|
|
7
7
|
export default SSIFilterIcon;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { elementColors } from '@sphereon/ui-components.core';
|
|
3
|
+
const PersonPlaceholder = (props) => {
|
|
4
|
+
const { width = 79, height = 77, color = elementColors[300], style = {} } = props;
|
|
5
|
+
return (_jsx("div", { style: { ...style, width, height, display: 'flex' }, children: _jsx("svg", { width: "100%", height: "100%", viewBox: "0 0 79 77", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: _jsx("path", { d: "M22.8136 19.3766C22.8136 10.2672 30.2594 2.85265 39.4999 2.85265C48.7404 2.85265 56.1862 10.2672 56.1862 19.3766C56.1862 28.486 48.7404 35.9005 39.4999 35.9005C30.2594 35.9005 22.8136 28.486 22.8136 19.3766ZM3.52788 62.4042C3.52788 60.1881 4.62672 58.0491 6.89989 55.9687C9.18981 53.873 12.4868 52.0225 16.3463 50.4894C24.0686 47.4219 33.3853 45.8802 39.4999 45.8802C45.6144 45.8802 54.9312 47.4219 62.6534 50.4894C66.513 52.0225 69.81 53.873 72.0999 55.9687C74.3731 58.0491 75.4719 60.1881 75.4719 62.4042V74.1473H3.52788V62.4042Z", stroke: color, strokeWidth: "5.19882" }) }) }));
|
|
6
|
+
};
|
|
7
|
+
export default PersonPlaceholder;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { CSSProperties, ReactElement } from 'react';
|
|
2
|
+
type ComboBoxOption = {
|
|
3
|
+
label: string;
|
|
4
|
+
value: any;
|
|
5
|
+
};
|
|
6
|
+
type Props<T extends ComboBoxOption> = {
|
|
7
|
+
onChange?: (value: any) => Promise<void>;
|
|
8
|
+
noOptionsMessage?: string;
|
|
9
|
+
placeholder?: string;
|
|
10
|
+
defaultValue?: T;
|
|
11
|
+
inlineOption?: InlineOption;
|
|
12
|
+
options: Array<T>;
|
|
13
|
+
style?: CSSProperties;
|
|
14
|
+
};
|
|
15
|
+
type InlineOption = {
|
|
16
|
+
caption: string;
|
|
17
|
+
onCreate: (name: string) => Promise<void>;
|
|
18
|
+
};
|
|
19
|
+
declare const ComboBox: <T extends ComboBoxOption>(props: Props<T>) => ReactElement;
|
|
20
|
+
export default ComboBox;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import CreatableSelect from 'react-select/creatable';
|
|
3
|
+
import { backgroundColors, fontColors } from '@sphereon/ui-components.core';
|
|
4
|
+
const ComboBox = (props) => {
|
|
5
|
+
const { onChange, noOptionsMessage, placeholder, defaultValue, inlineOption, options = [] } = props;
|
|
6
|
+
const creatableProps = inlineOption
|
|
7
|
+
? {
|
|
8
|
+
allowCreateWhileLoading: true,
|
|
9
|
+
isValidNewOption: () => true,
|
|
10
|
+
onCreateOption: inlineOption.onCreate,
|
|
11
|
+
createOptionPosition: 'last',
|
|
12
|
+
formatCreateLabel: (inputValue) => `${inlineOption.caption}`,
|
|
13
|
+
}
|
|
14
|
+
: {};
|
|
15
|
+
return (_jsx(CreatableSelect, { styles: {
|
|
16
|
+
control: (provided, state) => ({
|
|
17
|
+
...provided,
|
|
18
|
+
maxWidth: 455,
|
|
19
|
+
borderColor: state.isFocused ? '#7276F7' : provided.borderColor,
|
|
20
|
+
'&:hover': {
|
|
21
|
+
borderColor: '#7276F7',
|
|
22
|
+
},
|
|
23
|
+
boxShadow: 'none',
|
|
24
|
+
height: 48,
|
|
25
|
+
backgroundColor: backgroundColors.primaryLight,
|
|
26
|
+
}),
|
|
27
|
+
menu: (provided) => ({
|
|
28
|
+
...provided,
|
|
29
|
+
maxWidth: 455,
|
|
30
|
+
}),
|
|
31
|
+
option: (provided, state) => ({
|
|
32
|
+
...provided,
|
|
33
|
+
color: 'rgba(17, 17, 19, 0.60)',
|
|
34
|
+
backgroundColor: state.isSelected ? '#7B61FF' : state.isFocused ? '#B7B8D9' : backgroundColors.primaryLight,
|
|
35
|
+
'&:hover': {
|
|
36
|
+
backgroundColor: '#B7B8D9',
|
|
37
|
+
},
|
|
38
|
+
}),
|
|
39
|
+
singleValue: (provided) => ({
|
|
40
|
+
...provided,
|
|
41
|
+
color: fontColors.dark,
|
|
42
|
+
}),
|
|
43
|
+
}, defaultValue: defaultValue, onChange: onChange, options: options, placeholder: placeholder, noOptionsMessage: noOptionsMessage ? () => noOptionsMessage : undefined, maxMenuHeight: 210, ...creatableProps }));
|
|
44
|
+
};
|
|
45
|
+
export default ComboBox;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useRef } from 'react';
|
|
3
|
+
import { DragAndDropBoxContainerStyled as Container, DragAndDropBoxHiddenInputStyled as HiddenInput, DragAndDropBoxCaptionContainerStyled as CaptionContainer, SSITextH2DarkStyled as Caption, DragAndDropBoxDescriptionStyled as Description } from '../../../styles';
|
|
4
|
+
const DragAndDropBox = (props) => {
|
|
5
|
+
const { caption, description, onChangeFile } = props;
|
|
6
|
+
const inputFile = useRef(null);
|
|
7
|
+
const onSelect = async () => {
|
|
8
|
+
inputFile.current?.click();
|
|
9
|
+
};
|
|
10
|
+
const onChange = async (event) => {
|
|
11
|
+
const file = event.target.files?.[0];
|
|
12
|
+
if (file) {
|
|
13
|
+
await onChangeFile(file);
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
const onDrop = async (event) => {
|
|
17
|
+
event.preventDefault();
|
|
18
|
+
const file = event.dataTransfer.files[0];
|
|
19
|
+
const reader = new FileReader();
|
|
20
|
+
reader.onload = async () => {
|
|
21
|
+
await onChangeFile(file);
|
|
22
|
+
};
|
|
23
|
+
reader.readAsText(file);
|
|
24
|
+
};
|
|
25
|
+
const onDragOver = async (event) => {
|
|
26
|
+
event.preventDefault();
|
|
27
|
+
};
|
|
28
|
+
return (_jsxs(Container, { onClick: onSelect, onDrop: onDrop, onDragOver: onDragOver, children: [_jsx(HiddenInput, { ref: inputFile, type: 'file', onChange: onChange }), _jsxs(CaptionContainer, { children: [_jsx(Caption, { children: caption }), _jsx(Description, { children: description })] })] }));
|
|
29
|
+
};
|
|
30
|
+
export default DragAndDropBox;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React, { CSSProperties } from 'react';
|
|
2
|
+
import { AssetFilePermission, FileSelectionFieldType } from '../../../types';
|
|
3
|
+
type Props = {
|
|
4
|
+
file: File;
|
|
5
|
+
fileType?: FileSelectionFieldType;
|
|
6
|
+
permission?: AssetFilePermission;
|
|
7
|
+
onPermissionChange?: (permission: AssetFilePermission) => Promise<void>;
|
|
8
|
+
onRemove?: () => Promise<void>;
|
|
9
|
+
style?: CSSProperties;
|
|
10
|
+
};
|
|
11
|
+
declare const FileSelection: React.FC<Props>;
|
|
12
|
+
export default FileSelection;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import ComboBox from '../ComboBox';
|
|
3
|
+
import DocumentIcon from '../../assets/icons/DocumentIcon';
|
|
4
|
+
import ImageIcon from '../../assets/icons/ImageIcon';
|
|
5
|
+
import CrossIcon from '../../assets/icons/CrossIcon';
|
|
6
|
+
import { FileSelectionFieldContainerStyled as Container, FileSelectionFieldContentContainerStyled as ContentContainer, FileSelectionFieldRemoveContainerStyled as RemoveContainer, FileSelectionFieldRemoveButtonStyled as RemoveButton, FileSelectionFieldRemoveButtonCircleIconStyled as RemoveButtonCircleIcon, FileSelectionFieldIconContainerStyled as IconContainer, FileSelectionFieldFileDataContainerStyled as FileDataContainer, FileSelectionFieldFileNameCaptionStyled as FileNameCaption, FileSelectionFieldFileSizeCaptionStyled as FileSizeCaption, FileSelectionFieldPermissionSelectionContainerStyled as PermissionSelectionContainer } from '../../../styles';
|
|
7
|
+
import { FileSelectionFieldType } from '../../../types';
|
|
8
|
+
const filePermissions = [
|
|
9
|
+
{ label: 'Public', value: 'public' },
|
|
10
|
+
{ label: 'Private', value: 'private' },
|
|
11
|
+
];
|
|
12
|
+
const getFileSizeDisplay = (bytes) => {
|
|
13
|
+
if (bytes < 1024) {
|
|
14
|
+
return `${bytes} B`;
|
|
15
|
+
}
|
|
16
|
+
else if (bytes <= 1024 * 1024) {
|
|
17
|
+
return `${(bytes / 1024).toFixed(1)} KB`;
|
|
18
|
+
}
|
|
19
|
+
else if (bytes <= 1024 * 1024 * 1024) {
|
|
20
|
+
return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
return `${(bytes / (1024 * 1024 * 1024)).toFixed(1)} GB`;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
const FileSelection = (props) => {
|
|
27
|
+
const { file, fileType = FileSelectionFieldType.FILE, permission, onPermissionChange, onRemove, style } = props;
|
|
28
|
+
const onChange = async (selection) => {
|
|
29
|
+
if (onPermissionChange) {
|
|
30
|
+
await onPermissionChange(selection.value);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
return (_jsxs(Container, { style: style, children: [_jsxs(ContentContainer, { children: [_jsx(IconContainer, { children: getIcon(fileType) }), _jsxs(FileDataContainer, { children: [_jsx(FileNameCaption, { children: file.name }), file.size && _jsx(FileSizeCaption, { children: getFileSizeDisplay(file.size) })] }), permission && (_jsx(PermissionSelectionContainer, { children: _jsx(ComboBox, { style: { width: 152, marginLeft: 'auto' }, defaultValue: filePermissions.find((selection) => selection.value === permission), onChange: onChange, options: filePermissions }) }))] }), onRemove &&
|
|
34
|
+
_jsx(RemoveContainer, { children: _jsx(RemoveButton, { onClick: onRemove, children: _jsx(RemoveButtonCircleIcon, { children: _jsx(CrossIcon, { size: 10 }) }) }) })] }));
|
|
35
|
+
};
|
|
36
|
+
const getIcon = (fileType) => {
|
|
37
|
+
switch (fileType) {
|
|
38
|
+
case FileSelectionFieldType.FILE:
|
|
39
|
+
return _jsx(DocumentIcon, {});
|
|
40
|
+
case FileSelectionFieldType.IMAGE:
|
|
41
|
+
return _jsx(ImageIcon, {});
|
|
42
|
+
default:
|
|
43
|
+
return _jsx("div", {});
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
export default FileSelection;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { and, isObjectControl, optionIs, rankWith, } from '@jsonforms/core';
|
|
4
|
+
import { withJsonFormsControlProps } from '@jsonforms/react';
|
|
5
|
+
import { base64toFile, Localization } from '@sphereon/ui-components.core';
|
|
6
|
+
import DragAndDropBox from '../../DragAndDropBox';
|
|
7
|
+
import PersonPlaceholder from '../../../assets/placeholders/PersonPlaceholder';
|
|
8
|
+
import FileSelection from '../../FileSelection';
|
|
9
|
+
import { PassportPhotoControlContainerStyled as Container, PassportPhotoControlDragAndDropBoxContainerStyled as DragAndDropBoxContainer, PassportPhotoControlPassportPhotoContainerStyled as PassportPhotoContainer, PassportPhotoControlPassportPhotoImageStyled as PassportPhotoImage } from '../../../../styles';
|
|
10
|
+
import { FileSelectionFieldType } from '../../../../types';
|
|
11
|
+
const PassportPhotoControl = (props) => {
|
|
12
|
+
const { data, handleChange, path } = props;
|
|
13
|
+
const [image, setImage] = useState(data && { file: base64toFile(data.base64, data.fileName, data.mimeType), base64: data.base64 });
|
|
14
|
+
const onAddImage = async (file) => {
|
|
15
|
+
const reader = new FileReader();
|
|
16
|
+
reader.onload = () => {
|
|
17
|
+
const result = reader.result;
|
|
18
|
+
if (typeof result === 'string') {
|
|
19
|
+
const base64Parts = result.split(';base64,');
|
|
20
|
+
const mimeType = base64Parts[0].replace("data:", "");
|
|
21
|
+
setImage({ file, base64: result });
|
|
22
|
+
handleChange(path, { fileName: file.name, mimeType, base64: result });
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
reader.readAsDataURL(file);
|
|
26
|
+
};
|
|
27
|
+
const onRemoveImage = async () => {
|
|
28
|
+
setImage(undefined);
|
|
29
|
+
handleChange(path, undefined);
|
|
30
|
+
};
|
|
31
|
+
return (_jsxs(Container, { children: [_jsxs(DragAndDropBoxContainer, { children: [_jsx(DragAndDropBox, { caption: Localization.translate('drag_and_drop_upload_image_caption'), description: Localization.translate('credential_attach_image_description'), onChangeFile: onAddImage }), _jsx(PassportPhotoContainer, { children: image
|
|
32
|
+
? _jsx(PassportPhotoImage, { src: image.base64, alt: Localization.translate('passport_photo_alt') })
|
|
33
|
+
: _jsx(PersonPlaceholder, {}) })] }), image &&
|
|
34
|
+
_jsx(FileSelection, { file: image.file, fileType: FileSelectionFieldType.IMAGE, onRemove: onRemoveImage })] }));
|
|
35
|
+
};
|
|
36
|
+
export const passportPhotoControlTester = rankWith(3, and(isObjectControl, optionIs('type', 'passportPhoto')));
|
|
37
|
+
export default withJsonFormsControlProps(PassportPhotoControl);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { CredentialFormData, CredentialFormSelectionType } from '../../../types';
|
|
3
|
+
type Props = {
|
|
4
|
+
credentialTypes: Array<CredentialFormSelectionType>;
|
|
5
|
+
onSelectCredentialTypeChange?: (credentialType: CredentialFormSelectionType) => Promise<void>;
|
|
6
|
+
onCredentialFormDataChange?: (credentialFormData: CredentialFormData) => Promise<void>;
|
|
7
|
+
credentialData?: Record<any, any>;
|
|
8
|
+
};
|
|
9
|
+
declare const CredentialIssuanceWizardView: FC<Props>;
|
|
10
|
+
export default CredentialIssuanceWizardView;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { Autocomplete, TextField } from '@mui/material';
|
|
4
|
+
import { materialCells } from '@jsonforms/material-renderers';
|
|
5
|
+
import { JsonForms } from '@jsonforms/react';
|
|
6
|
+
import { Localization } from '@sphereon/ui-components.core';
|
|
7
|
+
import FileSelection from '../../fields/FileSelection';
|
|
8
|
+
import DragAndDropBox from '../../fields/DragAndDropBox';
|
|
9
|
+
import { jsonFormsMaterialRenderers } from '../../../renders/jsonFormsRenders';
|
|
10
|
+
import { CredentialIssuanceWizardViewContainerStyled as Container, CredentialIssuanceWizardViewCredentialTypeContainerStyled as CredentialTypeContainer, CredentialIssuanceWizardViewCredentialTypeTitleStyled as CredentialTypeTitle, CredentialIssuanceWizardViewFormContainerStyled as FormContainer, CredentialIssuanceWizardViewEvidenceContainerStyled as EvidenceContainer, CredentialIssuanceWizardViewEvidenceContentContainerStyled as EvidenceContentContainer, CredentialIssuanceWizardViewEvidenceTitleContainerStyled as EvidenceTitleContainer, SSITextH2SemiBoldDarkStyled as EvidenceTitle, CredentialIssuanceWizardViewEvidenceTitleOptionalStyled as EvidenceTitleOptional, SSITextH2DarkStyled as EvidenceDescription, CredentialIssuanceWizardViewEvidenceFilesContainerStyled as EvidenceFilesContainer } from '../../../styles';
|
|
11
|
+
const CredentialIssuanceWizardView = (props) => {
|
|
12
|
+
const { credentialData, credentialTypes, onSelectCredentialTypeChange, onCredentialFormDataChange } = props;
|
|
13
|
+
const [selectedCredentialType, setSelectedCredentialType] = useState(null);
|
|
14
|
+
const [credentialInput, setCredentialInput] = useState(null);
|
|
15
|
+
const [evidence, setEvidence] = useState([]);
|
|
16
|
+
const onCredentialTypeChange = (event, value) => {
|
|
17
|
+
setCredentialInput(null);
|
|
18
|
+
setEvidence([]);
|
|
19
|
+
setSelectedCredentialType(value);
|
|
20
|
+
onSelectCredentialTypeChange?.(value);
|
|
21
|
+
};
|
|
22
|
+
const onCredentialFormInputChange = (state) => {
|
|
23
|
+
setCredentialInput(state);
|
|
24
|
+
onCredentialFormDataChange?.({ ...state, evidence });
|
|
25
|
+
};
|
|
26
|
+
const onAddEvidence = async (file) => {
|
|
27
|
+
const evidenceFiles = [...evidence, file];
|
|
28
|
+
setEvidence(evidenceFiles);
|
|
29
|
+
onCredentialFormDataChange?.({ ...credentialInput, evidence: evidenceFiles });
|
|
30
|
+
};
|
|
31
|
+
const onRemoveEvidence = async (index) => {
|
|
32
|
+
evidence.splice(index, 1);
|
|
33
|
+
const evidenceFiles = [...evidence];
|
|
34
|
+
setEvidence(evidenceFiles);
|
|
35
|
+
onCredentialFormDataChange?.({ ...credentialInput, evidence: evidenceFiles });
|
|
36
|
+
};
|
|
37
|
+
const getEvidenceElements = () => {
|
|
38
|
+
return evidence.map((file, index) => _jsx(FileSelection, { file: file, onRemove: async () => onRemoveEvidence(index) }, index));
|
|
39
|
+
};
|
|
40
|
+
return (_jsxs(Container, { children: [_jsxs(CredentialTypeContainer, { children: [_jsx(CredentialTypeTitle, { children: Localization.translate('credential_issuance_wizard_title') }), _jsx(Autocomplete, { options: credentialTypes, sx: { flexGrow: 1 }, renderInput: (params) => _jsx(TextField, { ...params, label: Localization.translate('credential_issuance_wizard_credential_type_label') }), onChange: onCredentialTypeChange })] }), selectedCredentialType &&
|
|
41
|
+
_jsxs(_Fragment, { children: [_jsx(FormContainer, { children: _jsx(JsonForms, { schema: selectedCredentialType.schema, uischema: selectedCredentialType.uiSchema, data: credentialData, renderers: jsonFormsMaterialRenderers, cells: materialCells, onChange: onCredentialFormInputChange }) }), _jsx(EvidenceContainer, { children: _jsxs(EvidenceContentContainer, { children: [_jsxs("div", { children: [_jsxs(EvidenceTitleContainer, { children: [_jsx(EvidenceTitle, { children: Localization.translate('credential_issuance_wizard_evidence_title') }), _jsx(EvidenceTitleOptional, { children: Localization.translate('credential_issuance_wizard_evidence_optional_title') })] }), _jsx(EvidenceDescription, { children: Localization.translate('credential_issuance_wizard_evidence_description') })] }), _jsxs(EvidenceFilesContainer, { children: [_jsx(DragAndDropBox, { caption: Localization.translate('drag_and_drop_upload_evidence_caption'), description: Localization.translate('credential_attach_evidence_description'), onChangeFile: onAddEvidence }), getEvidenceElements()] })] }) })] })] }));
|
|
42
|
+
};
|
|
43
|
+
export default CredentialIssuanceWizardView;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
.MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline {
|
|
2
|
+
border-color: #7276F7 !important;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline {
|
|
6
|
+
border-color: #7276F7 !important;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.MuiInputLabel-root.MuiFormLabel-root {
|
|
10
|
+
color: #303030 !important;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.MuiTypography-h6 {
|
|
14
|
+
color: #303030 !important;
|
|
15
|
+
font-size: 16px !important;
|
|
16
|
+
font-style: normal !important;
|
|
17
|
+
font-weight: 600 !important;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.MuiGrid-container {
|
|
21
|
+
padding: 0 !important;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.MuiFormControl-root {
|
|
25
|
+
padding: 0 !important;
|
|
26
|
+
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.MuiCardContent-root {
|
|
30
|
+
padding: 0 !important;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.MuiCardHeader-root {
|
|
34
|
+
padding: 0 !important;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.MuiPaper-root {
|
|
38
|
+
margin: 0 !important;
|
|
39
|
+
background-color: #FBFBFB !important;
|
|
40
|
+
box-shadow: none !important;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.MuiCardHeader-title {
|
|
44
|
+
font-family: Poppins, serif !important;
|
|
45
|
+
font-size: 16px !important;
|
|
46
|
+
font-style: normal !important;
|
|
47
|
+
font-weight: 400 !important;
|
|
48
|
+
margin-bottom: 10px !important;
|
|
49
|
+
color: #303030 !important;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.MuiGrid-root.MuiGrid-container.MuiGrid-direction-xs-column {
|
|
53
|
+
gap: 24px !important;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.MuiFormLabel-root.MuiInputLabel-root {
|
|
57
|
+
font-family: 'Poppins', sans-serif !important;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.MuiInputBase-root.MuiOutlinedInput-root .MuiInputBase-input {
|
|
61
|
+
font-family: 'Poppins', sans-serif !important;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.MuiInputBase-root.MuiOutlinedInput-root {
|
|
65
|
+
font-family: 'Poppins', sans-serif !important;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.MuiTypography-root {
|
|
69
|
+
font-family: 'Poppins', sans-serif !important;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.MuiDateCalendar-root {
|
|
73
|
+
background-color: #ECE6F0 !important;
|
|
74
|
+
border-radius: 16px !important;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.MuiPaper-root.MuiPaper-elevation.MuiPaper-rounded.MuiPaper-elevation8.MuiPickersPopper-paper {
|
|
78
|
+
border-radius: 16px !important;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.MuiButtonBase-root.MuiPickersDay-root.Mui-selected.MuiPickersDay-dayWithMargin {
|
|
82
|
+
background-color: #7276F7 !important;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.MuiButtonBase-root.MuiPickersDay-root.MuiPickersDay-dayWithMargin:hover {
|
|
86
|
+
background-color: #B7B8D9 !important;
|
|
87
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -25,10 +25,19 @@ import SSIActivityIndicator from './components/indicators/SSIActivityIndicator';
|
|
|
25
25
|
import SSIHoverText from './components/fields/SSIHoverText';
|
|
26
26
|
import ProgressStepIndicator from './components/indicators/ProgressStepIndicator';
|
|
27
27
|
import StepMarker from './components/assets/markers/StepMarker';
|
|
28
|
+
import DocumentIcon from './components/assets/icons/DocumentIcon';
|
|
29
|
+
import CrossIcon from './components/assets/icons/CrossIcon';
|
|
30
|
+
import ImageIcon from './components/assets/icons/ImageIcon';
|
|
31
|
+
import FileSelection from './components/fields/FileSelection';
|
|
32
|
+
import ComboBox from './components/fields/ComboBox';
|
|
33
|
+
import DragAndDropBox from './components/fields/DragAndDropBox';
|
|
34
|
+
import PersonPlaceholder from './components/assets/placeholders/PersonPlaceholder';
|
|
35
|
+
import PassportPhotoControl, { passportPhotoControlTester } from './components/fields/JSONForms/PassportPhotoControl';
|
|
36
|
+
import CredentialIssuanceWizardView from './components/views/CredentialIssuanceWizardView';
|
|
28
37
|
import PaginationControls from './components/views/SSITableView/PaginationControls';
|
|
29
38
|
import PaginationControlsProps from './components/views/SSITableView/PaginationControls';
|
|
30
39
|
import { Row } from '@tanstack/react-table';
|
|
31
40
|
export * from './styles/fonts';
|
|
32
41
|
export * from './types';
|
|
33
42
|
export * from './helpers';
|
|
34
|
-
export { SSICredentialCardView, CredentialMiniCardView, CredentialMiniCardViewProps, SSIStatusLabel, SSICheckmarkBadge, SSIExclamationMarkBadge, SSIPlaceholderLogo, SSILogo, SSIAddIcon, SSIFilterIcon, SSIArrowDownIcon, SSITypeLabel, SSIIconButton, SSIPrimaryButton, SSISecondaryButton, DropDownList, SSITableView, SSITableViewHeader, SSITabView, SSITabViewHeader, SSIProfileIcon, SSIToastContainer, SSICheckbox, SSIActivityIndicator, SSIHoverText, StepMarker, ProgressStepIndicator, PaginationControls, PaginationControlsProps, Row, };
|
|
43
|
+
export { SSICredentialCardView, CredentialMiniCardView, CredentialMiniCardViewProps, SSIStatusLabel, SSICheckmarkBadge, SSIExclamationMarkBadge, SSIPlaceholderLogo, SSILogo, SSIAddIcon, SSIFilterIcon, SSIArrowDownIcon, SSITypeLabel, SSIIconButton, SSIPrimaryButton, SSISecondaryButton, DropDownList, SSITableView, SSITableViewHeader, SSITabView, SSITabViewHeader, SSIProfileIcon, SSIToastContainer, SSICheckbox, SSIActivityIndicator, SSIHoverText, StepMarker, ProgressStepIndicator, PaginationControls, PaginationControlsProps, Row, DocumentIcon, CrossIcon, ImageIcon, FileSelection, ComboBox, DragAndDropBox, PersonPlaceholder, PassportPhotoControl, passportPhotoControlTester, CredentialIssuanceWizardView, };
|
package/dist/index.js
CHANGED
|
@@ -24,9 +24,18 @@ import SSIActivityIndicator from './components/indicators/SSIActivityIndicator';
|
|
|
24
24
|
import SSIHoverText from './components/fields/SSIHoverText';
|
|
25
25
|
import ProgressStepIndicator from './components/indicators/ProgressStepIndicator';
|
|
26
26
|
import StepMarker from './components/assets/markers/StepMarker';
|
|
27
|
+
import DocumentIcon from './components/assets/icons/DocumentIcon';
|
|
28
|
+
import CrossIcon from './components/assets/icons/CrossIcon';
|
|
29
|
+
import ImageIcon from './components/assets/icons/ImageIcon';
|
|
30
|
+
import FileSelection from './components/fields/FileSelection';
|
|
31
|
+
import ComboBox from './components/fields/ComboBox';
|
|
32
|
+
import DragAndDropBox from './components/fields/DragAndDropBox';
|
|
33
|
+
import PersonPlaceholder from './components/assets/placeholders/PersonPlaceholder';
|
|
34
|
+
import PassportPhotoControl, { passportPhotoControlTester } from './components/fields/JSONForms/PassportPhotoControl';
|
|
35
|
+
import CredentialIssuanceWizardView from './components/views/CredentialIssuanceWizardView';
|
|
27
36
|
import PaginationControls from './components/views/SSITableView/PaginationControls';
|
|
28
37
|
import PaginationControlsProps from './components/views/SSITableView/PaginationControls';
|
|
29
38
|
export * from './styles/fonts';
|
|
30
39
|
export * from './types';
|
|
31
40
|
export * from './helpers';
|
|
32
|
-
export { SSICredentialCardView, CredentialMiniCardView, SSIStatusLabel, SSICheckmarkBadge, SSIExclamationMarkBadge, SSIPlaceholderLogo, SSILogo, SSIAddIcon, SSIFilterIcon, SSIArrowDownIcon, SSITypeLabel, SSIIconButton, SSIPrimaryButton, SSISecondaryButton, DropDownList, SSITableView, SSITableViewHeader, SSITabView, SSITabViewHeader, SSIProfileIcon, SSIToastContainer, SSICheckbox, SSIActivityIndicator, SSIHoverText, StepMarker, ProgressStepIndicator, PaginationControls, PaginationControlsProps, };
|
|
41
|
+
export { SSICredentialCardView, CredentialMiniCardView, SSIStatusLabel, SSICheckmarkBadge, SSIExclamationMarkBadge, SSIPlaceholderLogo, SSILogo, SSIAddIcon, SSIFilterIcon, SSIArrowDownIcon, SSITypeLabel, SSIIconButton, SSIPrimaryButton, SSISecondaryButton, DropDownList, SSITableView, SSITableViewHeader, SSITabView, SSITabViewHeader, SSIProfileIcon, SSIToastContainer, SSICheckbox, SSIActivityIndicator, SSIHoverText, StepMarker, ProgressStepIndicator, PaginationControls, PaginationControlsProps, DocumentIcon, CrossIcon, ImageIcon, FileSelection, ComboBox, DragAndDropBox, PersonPlaceholder, PassportPhotoControl, passportPhotoControlTester, CredentialIssuanceWizardView, };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { materialRenderers } from '@jsonforms/material-renderers';
|
|
2
|
+
import PassportPhotoControl, { passportPhotoControlTester } from '../components/fields/JSONForms/PassportPhotoControl';
|
|
3
|
+
export const jsonFormsMaterialRenderers = [
|
|
4
|
+
...materialRenderers,
|
|
5
|
+
{ tester: passportPhotoControlTester, renderer: PassportPhotoControl },
|
|
6
|
+
];
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const CredentialIssuanceWizardViewContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
|
+
export declare const CredentialIssuanceWizardViewCredentialTypeContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export declare const CredentialIssuanceWizardViewCredentialTypeTitleStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
|
+
export declare const CredentialIssuanceWizardViewFormContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
5
|
+
export declare const CredentialIssuanceWizardViewEvidenceContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
6
|
+
export declare const CredentialIssuanceWizardViewEvidenceContentContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
7
|
+
export declare const CredentialIssuanceWizardViewEvidenceTitleContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
|
+
export declare const CredentialIssuanceWizardViewEvidenceTitleOptionalStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
9
|
+
export declare const CredentialIssuanceWizardViewEvidenceFilesContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import styled from 'styled-components';
|
|
2
|
+
import { backgroundColors, borderColors, SSIRoundedEdgesCss } from "@sphereon/ui-components.core";
|
|
3
|
+
import { SSITextH1SemiBoldDarkStyled, SSITextH2DarkStyled } from "../../../fonts";
|
|
4
|
+
export const CredentialIssuanceWizardViewContainerStyled = styled.div `
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
gap: 42px;
|
|
8
|
+
width: 560px;
|
|
9
|
+
height: fit-content;
|
|
10
|
+
`;
|
|
11
|
+
export const CredentialIssuanceWizardViewCredentialTypeContainerStyled = styled.div `
|
|
12
|
+
border: 1px solid ${borderColors.lightGrey};
|
|
13
|
+
${SSIRoundedEdgesCss};
|
|
14
|
+
background-color: ${backgroundColors.primaryLight};
|
|
15
|
+
padding: 24px;
|
|
16
|
+
display: flex;
|
|
17
|
+
flex-direction: column;
|
|
18
|
+
gap: 24px;
|
|
19
|
+
flex-grow: 1;
|
|
20
|
+
`;
|
|
21
|
+
export const CredentialIssuanceWizardViewCredentialTypeTitleStyled = styled(SSITextH1SemiBoldDarkStyled) `
|
|
22
|
+
text-align: left;
|
|
23
|
+
`;
|
|
24
|
+
export const CredentialIssuanceWizardViewFormContainerStyled = styled.div `
|
|
25
|
+
flex-grow: 1;
|
|
26
|
+
border: 1px solid ${borderColors.lightGrey};
|
|
27
|
+
background-color: ${backgroundColors.primaryLight};
|
|
28
|
+
${SSIRoundedEdgesCss};
|
|
29
|
+
padding: 24px;
|
|
30
|
+
`;
|
|
31
|
+
export const CredentialIssuanceWizardViewEvidenceContainerStyled = styled.div `
|
|
32
|
+
flex-grow: 1;
|
|
33
|
+
border: 1px solid ${borderColors.lightGrey};
|
|
34
|
+
background-color: ${backgroundColors.primaryLight};
|
|
35
|
+
${SSIRoundedEdgesCss};
|
|
36
|
+
padding: 24px;
|
|
37
|
+
`;
|
|
38
|
+
export const CredentialIssuanceWizardViewEvidenceContentContainerStyled = styled.div `
|
|
39
|
+
display: flex;
|
|
40
|
+
flex-direction: column;
|
|
41
|
+
gap: 24px;
|
|
42
|
+
`;
|
|
43
|
+
export const CredentialIssuanceWizardViewEvidenceTitleContainerStyled = styled.div `
|
|
44
|
+
display: flex;
|
|
45
|
+
flex-direction: row;
|
|
46
|
+
gap: 4px;
|
|
47
|
+
`;
|
|
48
|
+
export const CredentialIssuanceWizardViewEvidenceTitleOptionalStyled = styled(SSITextH2DarkStyled) `
|
|
49
|
+
font-style: italic;
|
|
50
|
+
`;
|
|
51
|
+
export const CredentialIssuanceWizardViewEvidenceFilesContainerStyled = styled.div `
|
|
52
|
+
display: flex;
|
|
53
|
+
flex-direction: column;
|
|
54
|
+
gap: 12px;
|
|
55
|
+
`;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const DragAndDropBoxContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
|
+
export declare const DragAndDropBoxHiddenInputStyled: import("styled-components").StyledComponent<"input", any, {}, never>;
|
|
3
|
+
export declare const DragAndDropBoxCaptionContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
|
+
export declare const DragAndDropBoxDescriptionStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { backgroundColors, borderColors, fontColors } from '@sphereon/ui-components.core';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
import { SSITextH7RegularStyled } from '../../../fonts';
|
|
4
|
+
export const DragAndDropBoxContainerStyled = styled.div `
|
|
5
|
+
background-color: ${backgroundColors.lightGrey};
|
|
6
|
+
flex-grow: 1;
|
|
7
|
+
height: 138px;
|
|
8
|
+
cursor: pointer;
|
|
9
|
+
border: 1px dashed ${borderColors.lightGrey};
|
|
10
|
+
border-radius: 4px;
|
|
11
|
+
display: flex;
|
|
12
|
+
align-items: center;
|
|
13
|
+
justify-content: center;
|
|
14
|
+
`;
|
|
15
|
+
export const DragAndDropBoxHiddenInputStyled = styled.input `
|
|
16
|
+
display: none;
|
|
17
|
+
`;
|
|
18
|
+
export const DragAndDropBoxCaptionContainerStyled = styled.div `
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-direction: column;
|
|
21
|
+
align-items: center;
|
|
22
|
+
`;
|
|
23
|
+
export const DragAndDropBoxDescriptionStyled = styled(SSITextH7RegularStyled) `
|
|
24
|
+
color: ${fontColors.lightGrey};
|
|
25
|
+
`;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const FileSelectionFieldContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
|
+
export declare const FileSelectionFieldContentContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export declare const FileSelectionFieldRemoveContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
|
+
export declare const FileSelectionFieldRemoveButtonStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
5
|
+
export declare const FileSelectionFieldRemoveButtonCircleIconStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
6
|
+
export declare const FileSelectionFieldIconContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
7
|
+
export declare const FileSelectionFieldFileDataContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
|
+
export declare const FileSelectionFieldFileNameCaptionStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
9
|
+
export declare const FileSelectionFieldFileSizeCaptionStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
10
|
+
export declare const FileSelectionFieldPermissionSelectionContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import styled from 'styled-components';
|
|
2
|
+
import { borderColors, fontColors } from '@sphereon/ui-components.core';
|
|
3
|
+
import { SSITextH2SemiBoldDarkStyled, SSITextH7RegularStyled } from '../../../fonts';
|
|
4
|
+
export const FileSelectionFieldContainerStyled = styled.div `
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-grow: 1;
|
|
7
|
+
flex-direction: row;
|
|
8
|
+
border-radius: 6px;
|
|
9
|
+
border: 1px solid ${borderColors.lightGrey};
|
|
10
|
+
overflow: hidden;
|
|
11
|
+
`;
|
|
12
|
+
export const FileSelectionFieldContentContainerStyled = styled.div `
|
|
13
|
+
display: flex;
|
|
14
|
+
flex-direction: row;
|
|
15
|
+
padding: 5px 0 5px 8px;
|
|
16
|
+
`;
|
|
17
|
+
export const FileSelectionFieldRemoveContainerStyled = styled.div `
|
|
18
|
+
margin-left: auto;
|
|
19
|
+
border-left: 1px solid ${borderColors.lightGrey};
|
|
20
|
+
display: flex;
|
|
21
|
+
align-items: center;
|
|
22
|
+
`;
|
|
23
|
+
export const FileSelectionFieldRemoveButtonStyled = styled.div `
|
|
24
|
+
width: 42px;
|
|
25
|
+
height: 42px;
|
|
26
|
+
display: flex;
|
|
27
|
+
align-items: center;
|
|
28
|
+
justify-content: center;
|
|
29
|
+
cursor: pointer;
|
|
30
|
+
`;
|
|
31
|
+
export const FileSelectionFieldRemoveButtonCircleIconStyled = styled.div `
|
|
32
|
+
width: 20px;
|
|
33
|
+
height: 20px;
|
|
34
|
+
display: flex;
|
|
35
|
+
align-items: center;
|
|
36
|
+
justify-content: center;
|
|
37
|
+
border: 1px solid ${borderColors.darkGrey};
|
|
38
|
+
border-radius: 50%;
|
|
39
|
+
`;
|
|
40
|
+
export const FileSelectionFieldIconContainerStyled = styled.div `
|
|
41
|
+
margin-right: 12px;
|
|
42
|
+
width: 42px;
|
|
43
|
+
height: 42px;
|
|
44
|
+
display: flex;
|
|
45
|
+
align-items: center;
|
|
46
|
+
justify-content: center;
|
|
47
|
+
`;
|
|
48
|
+
export const FileSelectionFieldFileDataContainerStyled = styled.div `
|
|
49
|
+
display: flex;
|
|
50
|
+
flex-direction: column;
|
|
51
|
+
`;
|
|
52
|
+
export const FileSelectionFieldFileNameCaptionStyled = styled(SSITextH2SemiBoldDarkStyled) `
|
|
53
|
+
overflow: hidden;
|
|
54
|
+
text-overflow: ellipsis;
|
|
55
|
+
max-width: 350px;
|
|
56
|
+
`;
|
|
57
|
+
export const FileSelectionFieldFileSizeCaptionStyled = styled(SSITextH7RegularStyled) `
|
|
58
|
+
color: ${fontColors.lightGrey};
|
|
59
|
+
`;
|
|
60
|
+
export const FileSelectionFieldPermissionSelectionContainerStyled = styled.div `
|
|
61
|
+
width: 152px;
|
|
62
|
+
margin-left: auto;
|
|
63
|
+
margin-right: 5px;
|
|
64
|
+
`;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
export declare const
|
|
3
|
-
export declare const
|
|
4
|
-
export declare const
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const PaginationContainerStyled: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
3
|
+
export declare const GoToInputStyled: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, {}>;
|
|
4
|
+
export declare const GoToInputContainer: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
5
|
+
export declare const PaginationStyled: import("@emotion/styled").StyledComponent<import("@mui/material").PaginationProps & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const PassportPhotoControlContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
|
+
export declare const PassportPhotoControlDragAndDropBoxContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export declare const PassportPhotoControlPassportPhotoContainerStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
|
+
export declare const PassportPhotoControlPassportPhotoImageStyled: import("styled-components").StyledComponent<"img", any, {}, never>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import styled from 'styled-components';
|
|
2
|
+
import { backgroundColors, borderColors } from '@sphereon/ui-components.core';
|
|
3
|
+
export const PassportPhotoControlContainerStyled = styled.div `
|
|
4
|
+
display: flex;
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
gap: 12px;
|
|
7
|
+
`;
|
|
8
|
+
export const PassportPhotoControlDragAndDropBoxContainerStyled = styled.div `
|
|
9
|
+
display: flex;
|
|
10
|
+
flex-direction: row;
|
|
11
|
+
gap: 10px;
|
|
12
|
+
`;
|
|
13
|
+
export const PassportPhotoControlPassportPhotoContainerStyled = styled.div `
|
|
14
|
+
height: 138px;
|
|
15
|
+
width: 112px;
|
|
16
|
+
background-color: ${backgroundColors.lightGrey};
|
|
17
|
+
overflow: hidden;
|
|
18
|
+
border-radius: 4px;
|
|
19
|
+
border: 1px solid ${borderColors.lightGrey};
|
|
20
|
+
display: flex;
|
|
21
|
+
align-items: center;
|
|
22
|
+
justify-content: center;
|
|
23
|
+
`;
|
|
24
|
+
export const PassportPhotoControlPassportPhotoImageStyled = styled.img `
|
|
25
|
+
width: 100%;
|
|
26
|
+
height: auto
|
|
27
|
+
`;
|
|
@@ -19,4 +19,8 @@ export * from './SSIHoverText';
|
|
|
19
19
|
export * from './SSICheckbox';
|
|
20
20
|
export * from './ProgressStepIndicator';
|
|
21
21
|
export * from './StepMarker';
|
|
22
|
+
export * from './FileSelectionField';
|
|
23
|
+
export * from './DragAndDropBox';
|
|
24
|
+
export * from './PassportPhotoControl';
|
|
25
|
+
export * from './CredentialIssuanceWizardView';
|
|
22
26
|
export * from './Pagination';
|
|
@@ -19,4 +19,8 @@ export * from './SSIHoverText';
|
|
|
19
19
|
export * from './SSICheckbox';
|
|
20
20
|
export * from './ProgressStepIndicator';
|
|
21
21
|
export * from './StepMarker';
|
|
22
|
+
export * from './FileSelectionField';
|
|
23
|
+
export * from './DragAndDropBox';
|
|
24
|
+
export * from './PassportPhotoControl';
|
|
25
|
+
export * from './CredentialIssuanceWizardView';
|
|
22
26
|
export * from './Pagination';
|
|
@@ -7,4 +7,5 @@ export declare const SSITextH4Css: import("styled-components").FlattenSimpleInte
|
|
|
7
7
|
export declare const SSITextH4SemiBoldCss: import("styled-components").FlattenSimpleInterpolation;
|
|
8
8
|
export declare const SSITextH5Css: import("styled-components").FlattenSimpleInterpolation;
|
|
9
9
|
export declare const SSITextH6Css: import("styled-components").FlattenSimpleInterpolation;
|
|
10
|
+
export declare const SSITextH7RegularCss: import("styled-components").FlattenSimpleInterpolation;
|
|
10
11
|
export declare const gradient100TextCss: import("styled-components").FlattenSimpleInterpolation;
|
package/dist/styles/css/index.js
CHANGED
|
@@ -64,6 +64,13 @@ export const SSITextH6Css = css `
|
|
|
64
64
|
line-height: ${fontStyle.h6.lineHeight}px;
|
|
65
65
|
height: auto;
|
|
66
66
|
`;
|
|
67
|
+
export const SSITextH7RegularCss = css `
|
|
68
|
+
font-family: ${fontStyle.h7Regular.fontFamily};
|
|
69
|
+
font-size: ${fontStyle.h7Regular.fontSize}px;
|
|
70
|
+
font-weight: ${fontStyle.h7Regular.fontWeight};
|
|
71
|
+
line-height: ${fontStyle.h7Regular.lineHeight}px;
|
|
72
|
+
height: auto;
|
|
73
|
+
`;
|
|
67
74
|
export const gradient100TextCss = css `
|
|
68
75
|
background: ${gradientColors['100']};
|
|
69
76
|
background-clip: text;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
export declare const SSITextH1Styled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
2
|
export declare const SSITextH1SemiBoldStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export declare const SSITextH1SemiBoldDarkStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
4
|
export declare const SSITextH1SemiBoldLightStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
5
|
export declare const SSITextH2Styled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
5
6
|
export declare const SSITextH2DarkStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
6
7
|
export declare const SSITextH2SemiBoldStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
|
+
export declare const SSITextH2SemiBoldDarkStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
7
9
|
export declare const SSITextH3Styled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
10
|
export declare const SSITextH3LightStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
9
11
|
export declare const SSITextH4Styled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -15,3 +17,4 @@ export declare const SSITextH5Styled: import("styled-components").StyledComponen
|
|
|
15
17
|
export declare const SSITextH5LightStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
16
18
|
export declare const SSITextH6Styled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
17
19
|
export declare const SSITextH6LightStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
20
|
+
export declare const SSITextH7RegularStyled: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import styled from 'styled-components';
|
|
2
2
|
import { fontColors } from '@sphereon/ui-components.core';
|
|
3
|
-
import { SSITextH1Css, SSITextH1SemiBoldCss, SSITextH2Css, SSITextH2SemiBoldStyledCss, SSITextH3Css, SSITextH4Css, SSITextH4SemiBoldCss, SSITextH5Css, SSITextH6Css, } from '../css';
|
|
3
|
+
import { SSITextH1Css, SSITextH1SemiBoldCss, SSITextH2Css, SSITextH2SemiBoldStyledCss, SSITextH3Css, SSITextH4Css, SSITextH4SemiBoldCss, SSITextH5Css, SSITextH6Css, SSITextH7RegularCss, } from '../css';
|
|
4
4
|
export const SSITextH1Styled = styled.div `
|
|
5
5
|
${SSITextH1Css}
|
|
6
6
|
`;
|
|
7
7
|
export const SSITextH1SemiBoldStyled = styled.div `
|
|
8
8
|
${SSITextH1SemiBoldCss}
|
|
9
9
|
`;
|
|
10
|
+
export const SSITextH1SemiBoldDarkStyled = styled(SSITextH1SemiBoldStyled) `
|
|
11
|
+
color: ${fontColors.dark};
|
|
12
|
+
`;
|
|
10
13
|
export const SSITextH1SemiBoldLightStyled = styled(SSITextH1SemiBoldStyled) `
|
|
11
14
|
color: ${fontColors.light};
|
|
12
15
|
`;
|
|
@@ -19,6 +22,9 @@ export const SSITextH2DarkStyled = styled(SSITextH2Styled) `
|
|
|
19
22
|
export const SSITextH2SemiBoldStyled = styled.div `
|
|
20
23
|
${SSITextH2SemiBoldStyledCss}
|
|
21
24
|
`;
|
|
25
|
+
export const SSITextH2SemiBoldDarkStyled = styled(SSITextH2SemiBoldStyled) `
|
|
26
|
+
color: ${fontColors.dark};
|
|
27
|
+
`;
|
|
22
28
|
export const SSITextH3Styled = styled.div `
|
|
23
29
|
${SSITextH3Css};
|
|
24
30
|
color: ${fontColors.dark};
|
|
@@ -53,3 +59,6 @@ export const SSITextH6Styled = styled.div `
|
|
|
53
59
|
export const SSITextH6LightStyled = styled(SSITextH6Styled) `
|
|
54
60
|
color: ${fontColors.light};
|
|
55
61
|
`;
|
|
62
|
+
export const SSITextH7RegularStyled = styled.div `
|
|
63
|
+
${SSITextH7RegularCss}
|
|
64
|
+
`;
|
|
@@ -72,6 +72,12 @@ export const fontStyle = {
|
|
|
72
72
|
fontWeight: fontWeight[400],
|
|
73
73
|
lineHeight: lineHeight[100],
|
|
74
74
|
},
|
|
75
|
+
h7Regular: {
|
|
76
|
+
fontFamily: 'Poppins',
|
|
77
|
+
fontSize: fontSize[400],
|
|
78
|
+
fontWeight: fontWeight[400],
|
|
79
|
+
lineHeight: lineHeight[400],
|
|
80
|
+
},
|
|
75
81
|
h7SemiBold: {
|
|
76
82
|
fontFamily: 'Poppins',
|
|
77
83
|
fontSize: fontSize[400],
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare enum AssetFilePermission {
|
|
2
|
+
PUBLIC = "public",
|
|
3
|
+
PRIVATE = "private"
|
|
4
|
+
}
|
|
5
|
+
export type ValueSelection = {
|
|
6
|
+
label: string;
|
|
7
|
+
value: string;
|
|
8
|
+
};
|
|
9
|
+
export declare enum FileSelectionFieldType {
|
|
10
|
+
FILE = "file",
|
|
11
|
+
IMAGE = "image"
|
|
12
|
+
}
|
|
13
|
+
export type PassportPhoto = {
|
|
14
|
+
file: File;
|
|
15
|
+
base64: string;
|
|
16
|
+
};
|
|
17
|
+
export type PassportPhotoControlData = {
|
|
18
|
+
fileName: string;
|
|
19
|
+
mimeType: string;
|
|
20
|
+
base64: string;
|
|
21
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export var AssetFilePermission;
|
|
2
|
+
(function (AssetFilePermission) {
|
|
3
|
+
AssetFilePermission["PUBLIC"] = "public";
|
|
4
|
+
AssetFilePermission["PRIVATE"] = "private";
|
|
5
|
+
})(AssetFilePermission || (AssetFilePermission = {}));
|
|
6
|
+
export var FileSelectionFieldType;
|
|
7
|
+
(function (FileSelectionFieldType) {
|
|
8
|
+
FileSelectionFieldType["FILE"] = "file";
|
|
9
|
+
FileSelectionFieldType["IMAGE"] = "image";
|
|
10
|
+
})(FileSelectionFieldType || (FileSelectionFieldType = {}));
|
package/dist/types/index.d.ts
CHANGED
package/dist/types/index.js
CHANGED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { JsonFormsCore, JsonSchema, UISchemaElement } from '@jsonforms/core';
|
|
2
|
+
import { ErrorObject } from 'ajv';
|
|
3
|
+
export type CredentialFormInput = Pick<JsonFormsCore, 'data' | 'errors'>;
|
|
4
|
+
export type CredentialFormData = {
|
|
5
|
+
data?: any;
|
|
6
|
+
errors?: ErrorObject[];
|
|
7
|
+
evidence: Array<File>;
|
|
8
|
+
};
|
|
9
|
+
export type CredentialFormSelectionType = {
|
|
10
|
+
label: string;
|
|
11
|
+
schema?: JsonSchema;
|
|
12
|
+
uiSchema?: UISchemaElement;
|
|
13
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sphereon/ui-components.ssi-react",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.1.3-unstable.
|
|
4
|
+
"version": "0.1.3-unstable.144+18cddf4",
|
|
5
5
|
"description": "SSI UI components for React",
|
|
6
6
|
"repository": "git@github.com:Sphereon-Opensource/UI-Components.git",
|
|
7
7
|
"author": "Sphereon <dev@sphereon.com>",
|
|
@@ -13,7 +13,8 @@
|
|
|
13
13
|
"Self-sovereign identity (SSI)"
|
|
14
14
|
],
|
|
15
15
|
"scripts": {
|
|
16
|
-
"build": "tsc",
|
|
16
|
+
"build": "tsc && pnpm run copy-css",
|
|
17
|
+
"copy-css": "cpy src/**/*.css dist --parents",
|
|
17
18
|
"build:clean": "tsc --build --clean && tsc --build"
|
|
18
19
|
},
|
|
19
20
|
"source": "src/index.ts",
|
|
@@ -28,22 +29,33 @@
|
|
|
28
29
|
"access": "public"
|
|
29
30
|
},
|
|
30
31
|
"dependencies": {
|
|
31
|
-
"@
|
|
32
|
-
"@
|
|
33
|
-
"@
|
|
34
|
-
"@
|
|
32
|
+
"@emotion/react": "^11.11.4",
|
|
33
|
+
"@emotion/styled": "^11.11.0",
|
|
34
|
+
"@jsonforms/core": "^3.2.1",
|
|
35
|
+
"@jsonforms/material-renderers": "^3.2.1",
|
|
36
|
+
"@jsonforms/react": "^3.2.1",
|
|
37
|
+
"@jsonforms/vanilla-renderers": "^3.2.1",
|
|
38
|
+
"@mui/icons-material": "^5.15.11",
|
|
39
|
+
"@mui/material": "^5.15.12",
|
|
40
|
+
"@mui/styled-engine-sc": "^5.14.12",
|
|
41
|
+
"@mui/system": "^5.15.12",
|
|
42
|
+
"@mui/x-date-pickers": "^6.19.5",
|
|
43
|
+
"@sphereon/ui-components.core": "0.1.3-unstable.144+18cddf4",
|
|
35
44
|
"@tanstack/react-table": "^8.9.3",
|
|
36
45
|
"react-loader-spinner": "^5.4.5",
|
|
46
|
+
"react-select": "^5.8.0",
|
|
37
47
|
"react-toastify": "^9.1.3",
|
|
38
48
|
"styled-components": "^5.3.3"
|
|
39
49
|
},
|
|
40
50
|
"devDependencies": {
|
|
41
51
|
"@types/react": "~18.0.14",
|
|
42
52
|
"@types/styled-components": "^5.1.15",
|
|
53
|
+
"ajv": "^8.12.0",
|
|
54
|
+
"cpy-cli": "^5.0.0",
|
|
43
55
|
"typescript": "4.9.5"
|
|
44
56
|
},
|
|
45
57
|
"peerDependencies": {
|
|
46
58
|
"react": ">= 16.8.0"
|
|
47
59
|
},
|
|
48
|
-
"gitHead": "
|
|
60
|
+
"gitHead": "18cddf4c2d9265f91657a7c00d98674340ca5260"
|
|
49
61
|
}
|