react-science 0.25.0 → 0.26.2
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/lib/app/explorer/MeasurementExplorer.js +29 -7
- package/lib/app/explorer/MeasurementExplorerWithState.js +2 -2
- package/lib/app/helpers/MeasurementPlot.js +28 -19
- package/lib/app/helpers/react-plot.js +1 -1
- package/lib/app/kinds/mass/MassPlotView.js +2 -2
- package/lib/app/kinds/mass/MeasurementMassPlot.js +49 -33
- package/lib/app/panels/measurement-info/MeasurementInfoPanel.js +13 -58
- package/lib/app-data/state/data/data.helpers.js +32 -8
- package/lib/components/forms/Checkbox.js +4 -5
- package/lib/components/forms/Input.js +3 -87
- package/lib/components/forms/TextArea.js +25 -0
- package/lib/components/forms/index.js +2 -0
- package/lib/components/forms/radio-group/ButtonRadioItem.js +76 -0
- package/lib/components/forms/radio-group/ClassicRadioItem.js +92 -0
- package/lib/components/forms/radio-group/RadioGroup.js +69 -0
- package/lib/components/forms/radio-group/index.js +17 -0
- package/lib/components/forms/styles.js +80 -0
- package/lib/components/forms/utils/SubText.js +20 -0
- package/lib/components/forms/utils/index.js +17 -0
- package/lib/components/header/PanelHeader.js +51 -0
- package/lib/components/header/index.js +1 -0
- package/lib/components/index.js +1 -0
- package/lib/components/info-panel/InfoPanel.js +94 -0
- package/lib/components/info-panel/index.js +17 -0
- package/lib/components/modal/ConfirmModal.js +3 -2
- package/lib/components/modal/Modal.js +3 -1
- package/lib/components/table/Table.js +2 -2
- package/lib/components/toolbar/PanelPreferencesToolbar.js +26 -0
- package/lib/components/toolbar/index.js +1 -0
- package/lib-esm/app/explorer/MeasurementExplorer.d.ts.map +1 -1
- package/lib-esm/app/explorer/MeasurementExplorer.js +30 -8
- package/lib-esm/app/explorer/MeasurementExplorer.js.map +1 -1
- package/lib-esm/app/explorer/MeasurementExplorerWithState.d.ts.map +1 -1
- package/lib-esm/app/explorer/MeasurementExplorerWithState.js +2 -2
- package/lib-esm/app/explorer/MeasurementExplorerWithState.js.map +1 -1
- package/lib-esm/app/helpers/MeasurementPlot.d.ts +3 -3
- package/lib-esm/app/helpers/MeasurementPlot.d.ts.map +1 -1
- package/lib-esm/app/helpers/MeasurementPlot.js +28 -19
- package/lib-esm/app/helpers/MeasurementPlot.js.map +1 -1
- package/lib-esm/app/helpers/react-plot.d.ts.map +1 -1
- package/lib-esm/app/helpers/react-plot.js +1 -1
- package/lib-esm/app/helpers/react-plot.js.map +1 -1
- package/lib-esm/app/kinds/mass/MassPlotView.d.ts.map +1 -1
- package/lib-esm/app/kinds/mass/MassPlotView.js +2 -2
- package/lib-esm/app/kinds/mass/MassPlotView.js.map +1 -1
- package/lib-esm/app/kinds/mass/MeasurementMassPlot.d.ts.map +1 -1
- package/lib-esm/app/kinds/mass/MeasurementMassPlot.js +49 -33
- package/lib-esm/app/kinds/mass/MeasurementMassPlot.js.map +1 -1
- package/lib-esm/app/panels/measurement-info/MeasurementInfoPanel.d.ts.map +1 -1
- package/lib-esm/app/panels/measurement-info/MeasurementInfoPanel.js +15 -60
- package/lib-esm/app/panels/measurement-info/MeasurementInfoPanel.js.map +1 -1
- package/lib-esm/app-data/state/data/data.helpers.d.ts +20 -12
- package/lib-esm/app-data/state/data/data.helpers.d.ts.map +1 -1
- package/lib-esm/app-data/state/data/data.helpers.js +30 -7
- package/lib-esm/app-data/state/data/data.helpers.js.map +1 -1
- package/lib-esm/components/forms/Checkbox.d.ts.map +1 -1
- package/lib-esm/components/forms/Checkbox.js +1 -2
- package/lib-esm/components/forms/Checkbox.js.map +1 -1
- package/lib-esm/components/forms/Input.d.ts +4 -2
- package/lib-esm/components/forms/Input.d.ts.map +1 -1
- package/lib-esm/components/forms/Input.js +3 -87
- package/lib-esm/components/forms/Input.js.map +1 -1
- package/lib-esm/components/forms/TextArea.d.ts +8 -0
- package/lib-esm/components/forms/TextArea.d.ts.map +1 -0
- package/lib-esm/components/forms/TextArea.js +19 -0
- package/lib-esm/components/forms/TextArea.js.map +1 -0
- package/lib-esm/components/forms/index.d.ts +2 -0
- package/lib-esm/components/forms/index.d.ts.map +1 -1
- package/lib-esm/components/forms/index.js +2 -0
- package/lib-esm/components/forms/index.js.map +1 -1
- package/lib-esm/components/forms/radio-group/ButtonRadioItem.d.ts +3 -0
- package/lib-esm/components/forms/radio-group/ButtonRadioItem.d.ts.map +1 -0
- package/lib-esm/components/forms/radio-group/ButtonRadioItem.js +50 -0
- package/lib-esm/components/forms/radio-group/ButtonRadioItem.js.map +1 -0
- package/lib-esm/components/forms/radio-group/ClassicRadioItem.d.ts +3 -0
- package/lib-esm/components/forms/radio-group/ClassicRadioItem.d.ts.map +1 -0
- package/lib-esm/components/forms/radio-group/ClassicRadioItem.js +66 -0
- package/lib-esm/components/forms/radio-group/ClassicRadioItem.js.map +1 -0
- package/lib-esm/components/forms/radio-group/RadioGroup.d.ts +18 -0
- package/lib-esm/components/forms/radio-group/RadioGroup.d.ts.map +1 -0
- package/lib-esm/components/forms/radio-group/RadioGroup.js +43 -0
- package/lib-esm/components/forms/radio-group/RadioGroup.js.map +1 -0
- package/lib-esm/components/forms/radio-group/index.d.ts +2 -0
- package/lib-esm/components/forms/radio-group/index.d.ts.map +1 -0
- package/lib-esm/components/forms/radio-group/index.js +2 -0
- package/lib-esm/components/forms/radio-group/index.js.map +1 -0
- package/lib-esm/components/forms/styles.d.ts +26 -0
- package/lib-esm/components/forms/styles.d.ts.map +1 -0
- package/lib-esm/components/forms/styles.js +75 -0
- package/lib-esm/components/forms/styles.js.map +1 -0
- package/lib-esm/components/forms/utils/SubText.d.ts +7 -0
- package/lib-esm/components/forms/utils/SubText.d.ts.map +1 -0
- package/lib-esm/components/forms/utils/SubText.js +17 -0
- package/lib-esm/components/forms/utils/SubText.js.map +1 -0
- package/lib-esm/components/forms/utils/index.d.ts +2 -0
- package/lib-esm/components/forms/utils/index.d.ts.map +1 -0
- package/lib-esm/components/forms/utils/index.js +2 -0
- package/lib-esm/components/forms/utils/index.js.map +1 -0
- package/lib-esm/components/header/PanelHeader.d.ts +10 -0
- package/lib-esm/components/header/PanelHeader.d.ts.map +1 -0
- package/lib-esm/components/header/PanelHeader.js +48 -0
- package/lib-esm/components/header/PanelHeader.js.map +1 -0
- package/lib-esm/components/header/index.d.ts +1 -0
- package/lib-esm/components/header/index.d.ts.map +1 -1
- package/lib-esm/components/header/index.js +1 -0
- package/lib-esm/components/header/index.js.map +1 -1
- package/lib-esm/components/index.d.ts +1 -0
- package/lib-esm/components/index.d.ts.map +1 -1
- package/lib-esm/components/index.js +1 -0
- package/lib-esm/components/index.js.map +1 -1
- package/lib-esm/components/info-panel/InfoPanel.d.ts +15 -0
- package/lib-esm/components/info-panel/InfoPanel.d.ts.map +1 -0
- package/lib-esm/components/info-panel/InfoPanel.js +91 -0
- package/lib-esm/components/info-panel/InfoPanel.js.map +1 -0
- package/lib-esm/components/info-panel/index.d.ts +2 -0
- package/lib-esm/components/info-panel/index.d.ts.map +1 -0
- package/lib-esm/components/info-panel/index.js +2 -0
- package/lib-esm/components/info-panel/index.js.map +1 -0
- package/lib-esm/components/modal/ConfirmModal.d.ts.map +1 -1
- package/lib-esm/components/modal/ConfirmModal.js +3 -2
- package/lib-esm/components/modal/ConfirmModal.js.map +1 -1
- package/lib-esm/components/modal/Modal.d.ts.map +1 -1
- package/lib-esm/components/modal/Modal.js +3 -1
- package/lib-esm/components/modal/Modal.js.map +1 -1
- package/lib-esm/components/table/Table.d.ts +2 -3
- package/lib-esm/components/table/Table.d.ts.map +1 -1
- package/lib-esm/components/table/Table.js +2 -2
- package/lib-esm/components/table/Table.js.map +1 -1
- package/lib-esm/components/toolbar/PanelPreferencesToolbar.d.ts +7 -0
- package/lib-esm/components/toolbar/PanelPreferencesToolbar.d.ts.map +1 -0
- package/lib-esm/components/toolbar/PanelPreferencesToolbar.js +23 -0
- package/lib-esm/components/toolbar/PanelPreferencesToolbar.js.map +1 -0
- package/lib-esm/components/toolbar/index.d.ts +1 -0
- package/lib-esm/components/toolbar/index.d.ts.map +1 -1
- package/lib-esm/components/toolbar/index.js +1 -0
- package/lib-esm/components/toolbar/index.js.map +1 -1
- package/package.json +16 -14
- package/src/app/explorer/MeasurementExplorer.tsx +34 -12
- package/src/app/explorer/MeasurementExplorerWithState.tsx +2 -2
- package/src/app/helpers/MeasurementPlot.tsx +44 -33
- package/src/app/helpers/react-plot.tsx +6 -4
- package/src/app/kinds/mass/MassPlotView.tsx +2 -2
- package/src/app/kinds/mass/MeasurementMassPlot.tsx +57 -37
- package/src/app/panels/measurement-info/MeasurementInfoPanel.tsx +14 -84
- package/src/app-data/state/data/data.helpers.ts +49 -16
- package/src/components/forms/Checkbox.tsx +2 -3
- package/src/components/forms/Input.tsx +14 -125
- package/src/components/forms/TextArea.tsx +45 -0
- package/src/components/forms/index.ts +2 -0
- package/src/components/forms/radio-group/ButtonRadioItem.tsx +77 -0
- package/src/components/forms/radio-group/ClassicRadioItem.tsx +95 -0
- package/src/components/forms/radio-group/RadioGroup.tsx +83 -0
- package/src/components/forms/radio-group/index.ts +1 -0
- package/src/components/forms/styles.ts +96 -0
- package/src/components/forms/utils/SubText.tsx +31 -0
- package/src/components/forms/utils/index.ts +1 -0
- package/src/components/header/PanelHeader.tsx +75 -0
- package/src/components/header/index.ts +1 -0
- package/src/components/index.ts +1 -0
- package/src/components/info-panel/InfoPanel.tsx +150 -0
- package/src/components/info-panel/index.ts +1 -0
- package/src/components/modal/ConfirmModal.tsx +3 -2
- package/src/components/modal/Modal.tsx +3 -1
- package/src/components/table/Table.tsx +3 -5
- package/src/components/toolbar/PanelPreferencesToolbar.tsx +46 -0
- package/src/components/toolbar/index.ts +1 -0
|
@@ -24,15 +24,22 @@ export function getCurrentMeasurement(state) {
|
|
|
24
24
|
const selectedMeasurement = getSelectedMeasurement(state.view);
|
|
25
25
|
if (!selectedMeasurement)
|
|
26
26
|
return null;
|
|
27
|
-
|
|
27
|
+
const measurements = [];
|
|
28
|
+
for (const id of selectedMeasurement.ids) {
|
|
29
|
+
const measurement = getMeasurement(state.data.measurements, selectedMeasurement.kind, id);
|
|
30
|
+
if (!measurement)
|
|
31
|
+
return null;
|
|
32
|
+
measurements.push(measurement);
|
|
33
|
+
}
|
|
34
|
+
return measurements;
|
|
28
35
|
}
|
|
29
36
|
export function getCurrentMeasurementData(state) {
|
|
30
37
|
const selectedMeasurement = getCurrentMeasurement(state);
|
|
31
38
|
if (!selectedMeasurement)
|
|
32
39
|
return null;
|
|
33
|
-
const
|
|
34
|
-
const display = state.view.measurements[
|
|
35
|
-
return { data: selectedMeasurement, display,
|
|
40
|
+
const kindAndIds = getMeasurementKindAndIds(state.data, selectedMeasurement);
|
|
41
|
+
const display = selectedMeasurement.map(({ id }) => state.view.measurements[id]);
|
|
42
|
+
return { data: selectedMeasurement, display, kindAndIds };
|
|
36
43
|
}
|
|
37
44
|
export function getFirstSelectedMeasurementData(state) {
|
|
38
45
|
const { data, view: { selectedMeasurements, selectedKind, measurements: measurementsView, }, } = state;
|
|
@@ -54,16 +61,32 @@ export function getMeasurementKindAndId(data, measurementId) {
|
|
|
54
61
|
}
|
|
55
62
|
throw new Error(`Measurement kind for ${measurementId} not found`);
|
|
56
63
|
}
|
|
64
|
+
export function getMeasurementKindAndIds(data, measurementId) {
|
|
65
|
+
let found = false;
|
|
66
|
+
for (const kind of measurementKinds) {
|
|
67
|
+
for (const { id } of measurementId) {
|
|
68
|
+
const measurement = getMeasurement(data.measurements, kind, id);
|
|
69
|
+
if (measurement)
|
|
70
|
+
found = true;
|
|
71
|
+
if (found && !measurement) {
|
|
72
|
+
throw new Error(`Measurement kind for ${measurementId.join(', ')} not found`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (found)
|
|
76
|
+
return { kind, ids: measurementId };
|
|
77
|
+
}
|
|
78
|
+
throw new Error(`Measurement kind for ${measurementId.join(', ')} not found`);
|
|
79
|
+
}
|
|
57
80
|
export function getSelectedMeasurement(view) {
|
|
58
81
|
const { selectedKind, selectedMeasurements } = view;
|
|
59
82
|
if (!selectedKind)
|
|
60
83
|
return null;
|
|
61
84
|
const kind = selectedKind;
|
|
62
85
|
const currentMeasurements = selectedMeasurements[kind];
|
|
63
|
-
if (!currentMeasurements || currentMeasurements.length
|
|
86
|
+
if (!currentMeasurements || currentMeasurements.length === 0)
|
|
64
87
|
return null;
|
|
65
|
-
const
|
|
66
|
-
return { kind,
|
|
88
|
+
const ids = currentMeasurements;
|
|
89
|
+
return { kind, ids };
|
|
67
90
|
}
|
|
68
91
|
export function getSelectedMeasurementOrFail(view) {
|
|
69
92
|
const selected = getSelectedMeasurement(view);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.helpers.js","sourceRoot":"","sources":["../../../../src/app-data/state/data/data.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"data.helpers.js","sourceRoot":"","sources":["../../../../src/app-data/state/data/data.helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/forms/Checkbox.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/forms/Checkbox.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKlC,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,eAAe,CAAC;AAErD,UAAU,aAAa;IACrB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;CAC5C;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,oDA2D5C"}
|
|
@@ -3,8 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
|
3
3
|
import { css } from '@emotion/react';
|
|
4
4
|
import * as RadixCheckbox from '@radix-ui/react-checkbox';
|
|
5
5
|
import { RxCheck, RxMinus } from 'react-icons/rx/index';
|
|
6
|
-
|
|
7
|
-
const disabledColor = '#b8b8b8';
|
|
6
|
+
import { disabledColor, enabledColor } from './styles';
|
|
8
7
|
export function Checkbox(props) {
|
|
9
8
|
const { checked = 'indeterminate', disabled = false, label, onChange, } = props;
|
|
10
9
|
return (_jsxs("label", { style: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.js","sourceRoot":"","sources":["../../../src/components/forms/Checkbox.tsx"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAK,aAAa,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"Checkbox.js","sourceRoot":"","sources":["../../../src/components/forms/Checkbox.tsx"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAK,aAAa,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAWvD,MAAM,UAAU,QAAQ,CAAC,KAAoB;IAC3C,MAAM,EACJ,OAAO,GAAG,eAAe,EACzB,QAAQ,GAAG,KAAK,EAChB,KAAK,EACL,QAAQ,GACT,GAAG,KAAK,CAAC;IAEV,OAAO,CACL,iBACE,KAAK,EAAE;YACL,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,QAAQ;YACpB,QAAQ,EAAE,SAAS;SACpB,aAED,KAAC,aAAa,CAAC,IAAI,IACjB,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,QAAQ,EACzB,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,GAAG,CAAC;oBACP,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE,MAAM;oBACd,eAAe,EAAE,QAAQ;wBACvB,CAAC,CAAC,qBAAqB;wBACvB,CAAC,CAAC,OAAO;4BACT,CAAC,CAAC,YAAY;4BACd,CAAC,CAAC,OAAO;oBACX,WAAW,EAAE,KAAK;oBAClB,WAAW,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa;oBAChE,YAAY,EAAE,KAAK;oBACnB,OAAO,EAAE,MAAM;oBACf,UAAU,EAAE,QAAQ;oBACpB,cAAc,EAAE,QAAQ;oBACxB,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;iBAC7C,CAAC,YAEF,KAAC,aAAa,CAAC,SAAS,IACtB,GAAG,EAAE,GAAG,CAAC;wBACP,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO;qBAC1C,CAAC,YAED,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAClB,KAAC,OAAO,KAAG,CACZ,CAAC,CAAC,CAAC,OAAO,KAAK,eAAe,CAAC,CAAC,CAAC,CAChC,KAAC,OAAO,KAAG,CACZ,CAAC,CAAC,CAAC,IAAI,GACgB,GACP,EACrB,eACE,KAAK,EAAE;oBACL,aAAa,EAAE,KAAK;oBACpB,UAAU,EAAE,MAAM;iBACnB,YAEA,KAAK,GACD,IACD,CACT,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { InputHTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
import { InputVariant } from './styles';
|
|
3
|
+
import { SubTextProps } from './utils';
|
|
2
4
|
interface RenderAddon {
|
|
3
5
|
addon: ReactNode;
|
|
4
6
|
inline?: boolean;
|
|
5
7
|
}
|
|
6
|
-
export interface InputProps extends InputHTMLAttributes<HTMLInputElement
|
|
7
|
-
variant?:
|
|
8
|
+
export interface InputProps extends InputHTMLAttributes<HTMLInputElement>, SubTextProps {
|
|
9
|
+
variant?: InputVariant;
|
|
8
10
|
leadingAddon?: RenderAddon;
|
|
9
11
|
trailingAddon?: RenderAddon;
|
|
10
12
|
help?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/components/forms/Input.tsx"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/components/forms/Input.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvD,OAAO,EAIL,YAAY,EACb,MAAM,UAAU,CAAC;AAClB,OAAO,EAAW,YAAY,EAAE,MAAM,SAAS,CAAC;AAoDhD,UAAU,WAAW;IACnB,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UACf,SAAQ,mBAAmB,CAAC,gBAAgB,CAAC,EAC3C,YAAY;IACd,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,2CA8DtC"}
|
|
@@ -2,72 +2,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import styled from '@emotion/styled';
|
|
3
3
|
import { FullSpinner } from '../index';
|
|
4
4
|
import { useFieldsContext } from './context/FieldsContext';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
? props.hasTrailing
|
|
8
|
-
? '2px 9px 4px 9px'
|
|
9
|
-
: '2px 9px'
|
|
10
|
-
: props.hasTrailing
|
|
11
|
-
? '1px 7px 1px 7px'
|
|
12
|
-
: '1px 7px'};
|
|
13
|
-
|
|
14
|
-
font-size: ${(props) => (props.variant === 'small' ? '1em' : '1.125em')};
|
|
15
|
-
line-height: '17px';
|
|
16
|
-
|
|
17
|
-
background-color: white;
|
|
18
|
-
border-width: 1px;
|
|
19
|
-
align-items: center;
|
|
20
|
-
flex-direction: row;
|
|
21
|
-
flex: 1 1 0%;
|
|
22
|
-
display: flex;
|
|
23
|
-
position: relative;
|
|
24
|
-
|
|
25
|
-
border-top-right-radius: ${(props) => props.hasLeading && !props.hasTrailing && '0.375rem'};
|
|
26
|
-
|
|
27
|
-
border-bottom-right-radius: ${(props) => props.hasLeading && !props.hasTrailing && '0.375rem'};
|
|
28
|
-
|
|
29
|
-
border-top-left-radius: ${(props) => props.hasTrailing && !props.hasLeading && '0.375rem'};
|
|
30
|
-
|
|
31
|
-
border-bottom-left-radius: ${(props) => props.hasTrailing && !props.hasLeading && '0.375rem'};
|
|
32
|
-
|
|
33
|
-
border-radius: ${(props) => !props.hasLeading && !props.hasTrailing && '0.375rem'};
|
|
34
|
-
|
|
35
|
-
border-color: var(--custom-border-color);
|
|
36
|
-
`;
|
|
37
|
-
function getStyleColor(hasError, hasValid) {
|
|
38
|
-
if (hasError) {
|
|
39
|
-
return {
|
|
40
|
-
default: '#ffa39e',
|
|
41
|
-
hover: '#f95d55',
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
if (hasValid) {
|
|
45
|
-
return {
|
|
46
|
-
default: '#6adc24',
|
|
47
|
-
hover: '#62cb21',
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
return {
|
|
51
|
-
default: 'rgb(217, 217, 217)',
|
|
52
|
-
hover: '#4096ff',
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
const GroupStyled = styled.div `
|
|
56
|
-
display: flex;
|
|
57
|
-
border-radius: 0.375rem;
|
|
58
|
-
margin-top: 0.25rem;
|
|
59
|
-
|
|
60
|
-
.addon {
|
|
61
|
-
color: ${({ hasError }) => hasError && '#f95d55'};
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
--custom-border-color: ${({ hasError, hasValid }) => getStyleColor(hasError, hasValid).default};
|
|
65
|
-
|
|
66
|
-
:hover,
|
|
67
|
-
:focus-within {
|
|
68
|
-
--custom-border-color: ${({ hasError, hasValid }) => getStyleColor(hasError, hasValid).hover};
|
|
69
|
-
}
|
|
70
|
-
`;
|
|
5
|
+
import { InputContainer, GroupStyled, LabelStyled, } from './styles';
|
|
6
|
+
import { SubText } from './utils';
|
|
71
7
|
const InputStyled = styled.input `
|
|
72
8
|
padding: 0;
|
|
73
9
|
flex: 1 1 0%;
|
|
@@ -113,32 +49,12 @@ const TrailingInlineAddonStyled = styled.div `
|
|
|
113
49
|
align-items: center;
|
|
114
50
|
padding-left: 0.5rem;
|
|
115
51
|
`;
|
|
116
|
-
const RootInput = styled.div `
|
|
117
|
-
display: flex;
|
|
118
|
-
flex-direction: column;
|
|
119
|
-
gap: 2px;
|
|
120
|
-
`;
|
|
121
52
|
export function Input(props) {
|
|
122
53
|
const { variant: variantProps, trailingAddon, leadingAddon, help, error, valid, loading, ...otherProps } = props;
|
|
123
54
|
const { name, variant: contextVariant } = useFieldsContext();
|
|
124
55
|
const hasLeading = (leadingAddon && !leadingAddon.inline) || false;
|
|
125
56
|
const hasTrailing = (trailingAddon && !trailingAddon.inline) || false;
|
|
126
57
|
const variant = variantProps || contextVariant;
|
|
127
|
-
return (_jsxs(
|
|
128
|
-
}
|
|
129
|
-
function SubText(props) {
|
|
130
|
-
const { error, help, valid: validProps } = props;
|
|
131
|
-
const valid = typeof validProps === 'string' ? validProps : undefined;
|
|
132
|
-
const text = error || valid || help;
|
|
133
|
-
return _jsx("p", { style: { color: getColor(error, validProps) }, children: text });
|
|
134
|
-
}
|
|
135
|
-
function getColor(error, valid) {
|
|
136
|
-
if (error) {
|
|
137
|
-
return '#f95d55';
|
|
138
|
-
}
|
|
139
|
-
if (valid && typeof valid !== 'boolean') {
|
|
140
|
-
return '#62cb21';
|
|
141
|
-
}
|
|
142
|
-
return 'gray';
|
|
58
|
+
return (_jsxs(InputContainer, { children: [_jsxs(GroupStyled, { hasError: !!error, hasValid: !!valid, children: [leadingAddon && !leadingAddon.inline && (_jsx(LeadingAddonStyled, { children: leadingAddon.addon })), _jsxs(LabelStyled, { variant: variant, hasLeading: hasLeading, hasTrailing: hasTrailing, children: [leadingAddon?.inline && (_jsx(LeadingInlineAddonStyled, { className: "addon", children: leadingAddon.addon })), _jsx(InputStyled, { id: name, name: name, ...otherProps }), trailingAddon?.inline && (_jsx(TrailingInlineAddonStyled, { className: "addon", children: trailingAddon.addon })), loading && (_jsx(TrailingInlineAddonStyled, { style: { height: variant === 'default' ? 20 : 10 }, children: _jsx(FullSpinner, { height: variant === 'default' ? 20 : 10, width: variant === 'default' ? 20 : 10 }) }))] }), trailingAddon && !trailingAddon.inline && (_jsx(TrailingAddonStyled, { children: trailingAddon.addon }))] }), _jsx(SubText, { error: error, help: help, valid: valid })] }));
|
|
143
59
|
}
|
|
144
60
|
//# sourceMappingURL=Input.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/forms/Input.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAGrC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/forms/Input.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAGrC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,cAAc,EACd,WAAW,EACX,WAAW,GAEZ,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,OAAO,EAAgB,MAAM,SAAS,CAAC;AAEhD,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAA;;;;;;CAM/B,CAAC;AAEF,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;CAapC,CAAC;AAEF,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;CAarC,CAAC;AAEF,MAAM,wBAAwB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;CAI1C,CAAC;AAEF,MAAM,yBAAyB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;CAI3C,CAAC;AAmBF,MAAM,UAAU,KAAK,CAAC,KAAiB;IACrC,MAAM,EACJ,OAAO,EAAE,YAAY,EACrB,aAAa,EACb,YAAY,EACZ,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,EACP,GAAG,UAAU,EACd,GAAG,KAAK,CAAC;IAEV,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAE7D,MAAM,UAAU,GAAG,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC;IACnE,MAAM,WAAW,GAAG,CAAC,aAAa,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC;IACtE,MAAM,OAAO,GAAG,YAAY,IAAI,cAAc,CAAC;IAE/C,OAAO,CACL,MAAC,cAAc,eACb,MAAC,WAAW,IAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,aAC9C,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,CACvC,KAAC,kBAAkB,cAAE,YAAY,CAAC,KAAK,GAAsB,CAC9D,EAED,MAAC,WAAW,IACV,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,aAEvB,YAAY,EAAE,MAAM,IAAI,CACvB,KAAC,wBAAwB,IAAC,SAAS,EAAC,OAAO,YACxC,YAAY,CAAC,KAAK,GACM,CAC5B,EACD,KAAC,WAAW,IAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,KAAM,UAAU,GAAI,EACpD,aAAa,EAAE,MAAM,IAAI,CACxB,KAAC,yBAAyB,IAAC,SAAS,EAAC,OAAO,YACzC,aAAa,CAAC,KAAK,GACM,CAC7B,EAEA,OAAO,IAAI,CACV,KAAC,yBAAyB,IACxB,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,YAElD,KAAC,WAAW,IACV,MAAM,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EACvC,KAAK,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GACtC,GACwB,CAC7B,IACW,EAEb,aAAa,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,CACzC,KAAC,mBAAmB,cAAE,aAAa,CAAC,KAAK,GAAuB,CACjE,IACW,EAEd,KAAC,OAAO,IAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAI,IACpC,CAClB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { TextareaHTMLAttributes } from 'react';
|
|
2
|
+
import { InputVariant } from './styles';
|
|
3
|
+
import { SubTextProps } from './utils';
|
|
4
|
+
export interface TextAreaProps extends TextareaHTMLAttributes<HTMLTextAreaElement>, SubTextProps {
|
|
5
|
+
variant?: InputVariant;
|
|
6
|
+
}
|
|
7
|
+
export declare function TextArea(props: TextAreaProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
//# sourceMappingURL=TextArea.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextArea.d.ts","sourceRoot":"","sources":["../../../src/components/forms/TextArea.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,OAAO,CAAC;AAG/C,OAAO,EAIL,YAAY,EACb,MAAM,UAAU,CAAC;AAClB,OAAO,EAAW,YAAY,EAAE,MAAM,SAAS,CAAC;AAUhD,MAAM,WAAW,aACf,SAAQ,sBAAsB,CAAC,mBAAmB,CAAC,EACjD,YAAY;IACd,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,2CAkB5C"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import styled from '@emotion/styled';
|
|
3
|
+
import { useFieldsContext } from './context/FieldsContext';
|
|
4
|
+
import { InputContainer, GroupStyled, LabelStyled, } from './styles';
|
|
5
|
+
import { SubText } from './utils';
|
|
6
|
+
const TextAreaStyled = styled.textarea `
|
|
7
|
+
padding: 0;
|
|
8
|
+
flex: 1 1 0%;
|
|
9
|
+
border: none;
|
|
10
|
+
position: relative;
|
|
11
|
+
outline: none;
|
|
12
|
+
`;
|
|
13
|
+
export function TextArea(props) {
|
|
14
|
+
const { variant: variantProps, help, error, valid, ...otherProps } = props;
|
|
15
|
+
const { name, variant: contextVariant } = useFieldsContext();
|
|
16
|
+
const variant = variantProps || contextVariant;
|
|
17
|
+
return (_jsxs(InputContainer, { children: [_jsx(GroupStyled, { hasError: !!error, hasValid: !!valid, children: _jsx(LabelStyled, { variant: variant, children: _jsx(TextAreaStyled, { id: name, name: name, ...otherProps }) }) }), _jsx(SubText, { error: error, help: help, valid: valid })] }));
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=TextArea.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextArea.js","sourceRoot":"","sources":["../../../src/components/forms/TextArea.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAGrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,cAAc,EACd,WAAW,EACX,WAAW,GAEZ,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,OAAO,EAAgB,MAAM,SAAS,CAAC;AAEhD,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAA;;;;;;CAMrC,CAAC;AAQF,MAAM,UAAU,QAAQ,CAAC,KAAoB;IAC3C,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;IAE3E,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAE7D,MAAM,OAAO,GAAG,YAAY,IAAI,cAAc,CAAC;IAE/C,OAAO,CACL,MAAC,cAAc,eACb,KAAC,WAAW,IAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,YAC/C,KAAC,WAAW,IAAC,OAAO,EAAE,OAAO,YAC3B,KAAC,cAAc,IAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,KAAM,UAAU,GAAI,GAC5C,GACF,EAEd,KAAC,OAAO,IAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAI,IACpC,CAClB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/forms/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/forms/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/forms/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/forms/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { RadioOption, RadioGroupProps } from './RadioGroup';
|
|
2
|
+
export declare function ButtonRadioItem(prop: RadioOption & Pick<RadioGroupProps, 'onSelect' | 'variant' | 'name'>): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
3
|
+
//# sourceMappingURL=ButtonRadioItem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ButtonRadioItem.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/radio-group/ButtonRadioItem.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AA6C5D,wBAAgB,eAAe,CAC7B,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC,oDAwB3E"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
+
/** @jsxImportSource @emotion/react */
|
|
3
|
+
import { css } from '@emotion/react';
|
|
4
|
+
import * as RadioGroup from '@radix-ui/react-radio-group';
|
|
5
|
+
import { enabledColor } from '../styles';
|
|
6
|
+
const buttonStyles = {
|
|
7
|
+
container: css({
|
|
8
|
+
border: '1px solid rgba(0, 0, 0, 0.25)',
|
|
9
|
+
borderRightWidth: 0,
|
|
10
|
+
position: 'relative',
|
|
11
|
+
}),
|
|
12
|
+
item: (disabled, variant) => css({
|
|
13
|
+
opacity: disabled ? 0.25 : 1,
|
|
14
|
+
padding: variant === 'default' ? '0px 15px' : '0px 7px',
|
|
15
|
+
width: '100%',
|
|
16
|
+
height: '100%',
|
|
17
|
+
cursor: 'pointer',
|
|
18
|
+
':hover': {
|
|
19
|
+
'& > label': {
|
|
20
|
+
color: disabled ? '' : enabledColor,
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
}),
|
|
24
|
+
indicator: css({
|
|
25
|
+
position: 'absolute',
|
|
26
|
+
top: -1,
|
|
27
|
+
left: -1,
|
|
28
|
+
right: -1,
|
|
29
|
+
bottom: -1,
|
|
30
|
+
zIndex: 10,
|
|
31
|
+
border: '1px solid',
|
|
32
|
+
borderColor: enabledColor,
|
|
33
|
+
'& ~ label': {
|
|
34
|
+
color: enabledColor,
|
|
35
|
+
},
|
|
36
|
+
}),
|
|
37
|
+
label: (variant) => css({
|
|
38
|
+
cursor: 'pointer',
|
|
39
|
+
fontSize: variant === 'small' ? '1em' : '1.125em',
|
|
40
|
+
lineHeight: variant === 'default' ? '30px' : '22px',
|
|
41
|
+
}),
|
|
42
|
+
};
|
|
43
|
+
export function ButtonRadioItem(prop) {
|
|
44
|
+
const { value, label, disabled = false, onSelect, variant, name } = prop;
|
|
45
|
+
return (_jsx("div", { css: buttonStyles.container, children: _jsxs(RadioGroup.Item, { css: buttonStyles.item(disabled, variant), value: value, id: `${value}${name}`, onClick: () => {
|
|
46
|
+
if (!disabled)
|
|
47
|
+
onSelect?.(prop);
|
|
48
|
+
}, children: [_jsx(RadioGroup.Indicator, { css: buttonStyles.indicator }), _jsx("label", { css: buttonStyles.label(variant), htmlFor: `${value}${name}`, style: {}, children: label })] }) }));
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=ButtonRadioItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ButtonRadioItem.js","sourceRoot":"","sources":["../../../../src/components/forms/radio-group/ButtonRadioItem.tsx"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAgB,MAAM,WAAW,CAAC;AAIvD,MAAM,YAAY,GAAG;IACnB,SAAS,EAAE,GAAG,CAAC;QACb,MAAM,EAAE,+BAA+B;QACvC,gBAAgB,EAAE,CAAC;QACnB,QAAQ,EAAE,UAAU;KACrB,CAAC;IACF,IAAI,EAAE,CAAC,QAAiB,EAAE,OAAsB,EAAE,EAAE,CAClD,GAAG,CAAC;QACF,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,OAAO,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;QACvD,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE;YACR,WAAW,EAAE;gBACX,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY;aACpC;SACF;KACF,CAAC;IAEJ,SAAS,EAAE,GAAG,CAAC;QACb,QAAQ,EAAE,UAAU;QACpB,GAAG,EAAE,CAAC,CAAC;QACP,IAAI,EAAE,CAAC,CAAC;QACR,KAAK,EAAE,CAAC,CAAC;QACT,MAAM,EAAE,CAAC,CAAC;QACV,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,WAAW;QACnB,WAAW,EAAE,YAAY;QAEzB,WAAW,EAAE;YACX,KAAK,EAAE,YAAY;SACpB;KACF,CAAC;IAEF,KAAK,EAAE,CAAC,OAAsB,EAAE,EAAE,CAChC,GAAG,CAAC;QACF,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;QACjD,UAAU,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;KACpD,CAAC;CACL,CAAC;AAEF,MAAM,UAAU,eAAe,CAC7B,IAA0E;IAE1E,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,GAAG,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IACzE,OAAO,CACL,cAAK,GAAG,EAAE,YAAY,CAAC,SAAS,YAC9B,MAAC,UAAU,CAAC,IAAI,IACd,GAAG,EAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,EACzC,KAAK,EAAE,KAAK,EACZ,EAAE,EAAE,GAAG,KAAK,GAAG,IAAI,EAAE,EACrB,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,QAAQ;oBAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC,aAED,KAAC,UAAU,CAAC,SAAS,IAAC,GAAG,EAAE,YAAY,CAAC,SAAS,GAAI,EACrD,gBACE,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,EAChC,OAAO,EAAE,GAAG,KAAK,GAAG,IAAI,EAAE,EAC1B,KAAK,EAAE,EAAE,YAER,KAAK,GACA,IACQ,GACd,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { RadioOption, RadioGroupProps } from './RadioGroup';
|
|
2
|
+
export declare function ClassicRadioItem(props: RadioOption & Pick<RadioGroupProps, 'onSelect' | 'variant' | 'name'>): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
3
|
+
//# sourceMappingURL=ClassicRadioItem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClassicRadioItem.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/radio-group/ClassicRadioItem.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AA2D5D,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC,oDA4B5E"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
+
/** @jsxImportSource @emotion/react */
|
|
3
|
+
import { css } from '@emotion/react';
|
|
4
|
+
import * as RadioGroup from '@radix-ui/react-radio-group';
|
|
5
|
+
import { disabledColor, enabledColor } from '../styles';
|
|
6
|
+
const classicStyles = {
|
|
7
|
+
container: (disabled) => css({
|
|
8
|
+
display: 'flex',
|
|
9
|
+
alignItems: 'center',
|
|
10
|
+
flexDirection: 'row-reverse',
|
|
11
|
+
opacity: disabled ? 0.25 : 1,
|
|
12
|
+
overflow: 'hidden',
|
|
13
|
+
border: 'none',
|
|
14
|
+
}),
|
|
15
|
+
item: (disabled, variant) => css({
|
|
16
|
+
position: 'relative',
|
|
17
|
+
width: variant === 'default' ? 16 : 14,
|
|
18
|
+
height: variant === 'default' ? 16 : 14,
|
|
19
|
+
borderRadius: '50%',
|
|
20
|
+
border: '1px solid grey',
|
|
21
|
+
backgroundColor: disabled ? disabledColor : 'white',
|
|
22
|
+
':hover': {
|
|
23
|
+
borderColor: disabled ? 'grey' : enabledColor,
|
|
24
|
+
},
|
|
25
|
+
}),
|
|
26
|
+
indicator: css({
|
|
27
|
+
position: 'absolute',
|
|
28
|
+
top: -1,
|
|
29
|
+
left: -1,
|
|
30
|
+
right: -1,
|
|
31
|
+
bottom: -1,
|
|
32
|
+
zIndex: 10,
|
|
33
|
+
display: 'flex',
|
|
34
|
+
alignItems: 'center',
|
|
35
|
+
justifyContent: 'center',
|
|
36
|
+
backgroundColor: enabledColor,
|
|
37
|
+
borderRadius: '50%',
|
|
38
|
+
}),
|
|
39
|
+
circle: css({
|
|
40
|
+
width: '40%',
|
|
41
|
+
height: '40%',
|
|
42
|
+
borderRadius: '50%',
|
|
43
|
+
backgroundColor: 'white',
|
|
44
|
+
}),
|
|
45
|
+
label: (disabled) => css({
|
|
46
|
+
cursor: 'pointer',
|
|
47
|
+
lineHeight: 1,
|
|
48
|
+
paddingLeft: 5,
|
|
49
|
+
fontSize: '12px',
|
|
50
|
+
':hover': {
|
|
51
|
+
'& ~ button': {
|
|
52
|
+
borderColor: disabled ? 'grey' : enabledColor,
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
}),
|
|
56
|
+
};
|
|
57
|
+
export function ClassicRadioItem(props) {
|
|
58
|
+
const { value, label, disabled = false, onSelect, variant, name } = props;
|
|
59
|
+
return (_jsxs("div", { css: classicStyles.container(disabled), children: [_jsx("label", { css: classicStyles.label(disabled), style: {
|
|
60
|
+
fontSize: variant === 'small' ? '1em' : '1.125em',
|
|
61
|
+
}, htmlFor: `${value}${name}`, children: label }), _jsx(RadioGroup.Item, { css: classicStyles.item(disabled, variant), value: value, id: `${value}${name}`, onClick: () => {
|
|
62
|
+
if (!disabled)
|
|
63
|
+
onSelect?.(props);
|
|
64
|
+
}, children: _jsx(RadioGroup.Indicator, { css: classicStyles.indicator, children: _jsx("div", { css: classicStyles.circle }) }) })] }));
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=ClassicRadioItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClassicRadioItem.js","sourceRoot":"","sources":["../../../../src/components/forms/radio-group/ClassicRadioItem.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { InputVariant } from '../styles';
|
|
3
|
+
export interface RadioOption {
|
|
4
|
+
value: string;
|
|
5
|
+
label: ReactNode;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface RadioGroupProps {
|
|
9
|
+
selected?: RadioOption;
|
|
10
|
+
type?: 'classic' | 'button';
|
|
11
|
+
options?: RadioOption[];
|
|
12
|
+
onSelect?: (option: RadioOption) => void;
|
|
13
|
+
name?: string;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
variant?: InputVariant;
|
|
16
|
+
}
|
|
17
|
+
export declare function RadioGroup(props: RadioGroupProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
18
|
+
//# sourceMappingURL=RadioGroup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RadioGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/radio-group/RadioGroup.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAKzC,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AACD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC5B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB;AAkBD,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,oDAyChD"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { jsx as _jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
/** @jsxImportSource @emotion/react */
|
|
3
|
+
import { css } from '@emotion/react';
|
|
4
|
+
import * as RadioGroupRadix from '@radix-ui/react-radio-group';
|
|
5
|
+
import { ButtonRadioItem } from './ButtonRadioItem';
|
|
6
|
+
import { ClassicRadioItem } from './ClassicRadioItem';
|
|
7
|
+
const rootStyles = {
|
|
8
|
+
basic: css({
|
|
9
|
+
display: 'flex',
|
|
10
|
+
flexDirection: 'row',
|
|
11
|
+
width: 'fit-content',
|
|
12
|
+
}),
|
|
13
|
+
button: (variant) => css({
|
|
14
|
+
' & > *:first-of-type, & > *:first-of-type span': {
|
|
15
|
+
borderRadius: variant === 'default' ? '6px 0 0 6px' : '4px 0 0 4px',
|
|
16
|
+
},
|
|
17
|
+
' & > *:last-of-type, & > *:last-of-type span': {
|
|
18
|
+
borderRightWidth: 1,
|
|
19
|
+
borderRadius: variant === 'default' ? '0 6px 6px 0' : '0 4px 4px 0',
|
|
20
|
+
},
|
|
21
|
+
}),
|
|
22
|
+
};
|
|
23
|
+
export function RadioGroup(props) {
|
|
24
|
+
const { selected, type = 'classic', disabled: groupDisabled = false, options = [], onSelect, name = '', variant = 'default', } = props;
|
|
25
|
+
return (_jsx(RadioGroupRadix.Root, { css: [
|
|
26
|
+
rootStyles.basic,
|
|
27
|
+
type === 'classic' ? null : rootStyles.button(variant),
|
|
28
|
+
], style: {
|
|
29
|
+
gap: type === 'classic' ? (variant === 'default' ? 10 : 5) : 0,
|
|
30
|
+
}, value: selected?.value, name: name, disabled: groupDisabled, children: options?.map(({ value, label, disabled }) => {
|
|
31
|
+
const childProps = {
|
|
32
|
+
key: value,
|
|
33
|
+
value,
|
|
34
|
+
label,
|
|
35
|
+
disabled: groupDisabled || disabled,
|
|
36
|
+
onSelect,
|
|
37
|
+
variant,
|
|
38
|
+
name,
|
|
39
|
+
};
|
|
40
|
+
return type === 'classic' ? (_jsx(ClassicRadioItem, { ...childProps })) : (_jsx(ButtonRadioItem, { ...childProps }));
|
|
41
|
+
}) }));
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=RadioGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RadioGroup.js","sourceRoot":"","sources":["../../../../src/components/forms/radio-group/RadioGroup.tsx"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC;AAK/D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAgBtD,MAAM,UAAU,GAAG;IACjB,KAAK,EAAE,GAAG,CAAC;QACT,OAAO,EAAE,MAAM;QACf,aAAa,EAAE,KAAK;QACpB,KAAK,EAAE,aAAa;KACrB,CAAC;IACF,MAAM,EAAE,CAAC,OAAqB,EAAE,EAAE,CAChC,GAAG,CAAC;QACF,gDAAgD,EAAE;YAChD,YAAY,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa;SACpE;QACD,8CAA8C,EAAE;YAC9C,gBAAgB,EAAE,CAAC;YACnB,YAAY,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa;SACpE;KACF,CAAC;CACL,CAAC;AACF,MAAM,UAAU,UAAU,CAAC,KAAsB;IAC/C,MAAM,EACJ,QAAQ,EACR,IAAI,GAAG,SAAS,EAChB,QAAQ,EAAE,aAAa,GAAG,KAAK,EAC/B,OAAO,GAAG,EAAE,EACZ,QAAQ,EACR,IAAI,GAAG,EAAE,EACT,OAAO,GAAG,SAAS,GACpB,GAAG,KAAK,CAAC;IACV,OAAO,CACL,KAAC,eAAe,CAAC,IAAI,IACnB,GAAG,EAAE;YACH,UAAU,CAAC,KAAK;YAChB,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;SACvD,EACD,KAAK,EAAE;YACL,GAAG,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC/D,EACD,KAAK,EAAE,QAAQ,EAAE,KAAK,EACtB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,aAAa,YAEtB,OAAO,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;YAC3C,MAAM,UAAU,GAAG;gBACjB,GAAG,EAAE,KAAK;gBACV,KAAK;gBACL,KAAK;gBACL,QAAQ,EAAE,aAAa,IAAI,QAAQ;gBACnC,QAAQ;gBACR,OAAO;gBACP,IAAI;aACL,CAAC;YACF,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAC1B,KAAC,gBAAgB,OAAK,UAAU,GAAI,CACrC,CAAC,CAAC,CAAC,CACF,KAAC,eAAe,OAAK,UAAU,GAAI,CACpC,CAAC;QACJ,CAAC,CAAC,GACmB,CACxB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/forms/radio-group/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/forms/radio-group/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export type InputVariant = 'default' | 'small';
|
|
3
|
+
interface StyledProps {
|
|
4
|
+
variant: InputVariant;
|
|
5
|
+
hasLeading?: boolean;
|
|
6
|
+
hasTrailing?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare const enabledColor = "#1677ff";
|
|
9
|
+
export declare const disabledColor = "#b8b8b8";
|
|
10
|
+
export declare const LabelStyled: import("@emotion/styled").StyledComponent<{
|
|
11
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
12
|
+
as?: import("react").ElementType<any> | undefined;
|
|
13
|
+
} & StyledProps, import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, {}>;
|
|
14
|
+
export declare const GroupStyled: import("@emotion/styled").StyledComponent<{
|
|
15
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
16
|
+
as?: import("react").ElementType<any> | undefined;
|
|
17
|
+
} & {
|
|
18
|
+
hasError: boolean;
|
|
19
|
+
hasValid: boolean;
|
|
20
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
21
|
+
export declare const InputContainer: import("@emotion/styled").StyledComponent<{
|
|
22
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
23
|
+
as?: import("react").ElementType<any> | undefined;
|
|
24
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/components/forms/styles.ts"],"names":[],"mappings":";AAEA,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC;AAE/C,UAAU,WAAW;IACnB,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AACD,eAAO,MAAM,YAAY,YAAY,CAAC;AACtC,eAAO,MAAM,aAAa,YAAY,CAAC;AAEvC,eAAO,MAAM,WAAW;;;gIAqCvB,CAAC;AAuBF,eAAO,MAAM,WAAW;;;;cAA0B,OAAO;cAAY,OAAO;yGAiB3E,CAAC;AAEF,eAAO,MAAM,cAAc;;;yGAI1B,CAAC"}
|