@coveord/plasma-mantine 55.7.2-next.21 → 55.7.2-next.23
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/.turbo/turbo-build.log +3 -3
- package/.turbo/turbo-test.log +53 -51
- package/__mocks__/@monaco-editor/react.tsx +1 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/cjs/components/checkbox/CheckboxIcon.d.ts +7 -0
- package/dist/cjs/components/checkbox/CheckboxIcon.d.ts.map +1 -0
- package/dist/cjs/components/checkbox/CheckboxIcon.js +29 -0
- package/dist/cjs/components/checkbox/CheckboxIcon.js.map +1 -0
- package/dist/cjs/components/checkbox/index.d.ts +2 -0
- package/dist/cjs/components/checkbox/index.d.ts.map +1 -0
- package/dist/cjs/components/checkbox/index.js +8 -0
- package/dist/cjs/components/checkbox/index.js.map +1 -0
- package/dist/cjs/components/code-editor/CodeEditor.d.ts.map +1 -1
- package/dist/cjs/components/code-editor/CodeEditor.js +19 -21
- package/dist/cjs/components/code-editor/CodeEditor.js.map +1 -1
- package/dist/cjs/components/code-editor/CodeEditor.module.css +10 -6
- package/dist/cjs/components/collection/CollectionItem.d.ts.map +1 -1
- package/dist/cjs/components/collection/CollectionItem.js +9 -4
- package/dist/cjs/components/collection/CollectionItem.js.map +1 -1
- package/dist/cjs/components/index.d.ts +2 -0
- package/dist/cjs/components/index.d.ts.map +1 -1
- package/dist/cjs/components/index.js +2 -0
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/components/loader/CircleLoader.d.ts +3 -0
- package/dist/cjs/components/loader/CircleLoader.d.ts.map +1 -0
- package/dist/cjs/components/loader/CircleLoader.js +32 -0
- package/dist/cjs/components/loader/CircleLoader.js.map +1 -0
- package/dist/cjs/components/loader/CircleLoader.module.css +29 -0
- package/dist/cjs/components/loader/index.d.ts +2 -0
- package/dist/cjs/components/loader/index.d.ts.map +1 -0
- package/dist/cjs/components/loader/index.js +8 -0
- package/dist/cjs/components/loader/index.js.map +1 -0
- package/dist/cjs/components/read-only/ReadOnlyInputStyles.js +2 -2
- package/dist/cjs/components/read-only/ReadOnlyInputStyles.js.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayout.module.css +1 -1
- package/dist/cjs/styles/Badge.module.css +2 -0
- package/dist/cjs/styles/Checkbox.module.css +41 -5
- package/dist/cjs/styles/CheckboxIndicator.module.css +8 -1
- package/dist/cjs/styles/Input.module.css +8 -2
- package/dist/cjs/styles/Pagination.module.css +10 -1
- package/dist/cjs/styles/Radio.module.css +30 -2
- package/dist/cjs/styles/ReadOnlyInput.module.css +7 -3
- package/dist/cjs/styles/Select.module.css +46 -0
- package/dist/cjs/theme/Theme.d.ts.map +1 -1
- package/dist/cjs/theme/Theme.js +16 -19
- package/dist/cjs/theme/Theme.js.map +1 -1
- package/dist/cjs/theme/plasmaCSSVariablesResolver.d.ts.map +1 -1
- package/dist/cjs/theme/plasmaCSSVariablesResolver.js +6 -1
- package/dist/cjs/theme/plasmaCSSVariablesResolver.js.map +1 -1
- package/dist/esm/components/checkbox/CheckboxIcon.d.ts +7 -0
- package/dist/esm/components/checkbox/CheckboxIcon.d.ts.map +1 -0
- package/dist/esm/components/checkbox/CheckboxIcon.js +16 -0
- package/dist/esm/components/checkbox/CheckboxIcon.js.map +1 -0
- package/dist/esm/components/checkbox/index.d.ts +2 -0
- package/dist/esm/components/checkbox/index.d.ts.map +1 -0
- package/dist/esm/components/checkbox/index.js +3 -0
- package/dist/esm/components/checkbox/index.js.map +1 -0
- package/dist/esm/components/code-editor/CodeEditor.d.ts.map +1 -1
- package/dist/esm/components/code-editor/CodeEditor.js +18 -19
- package/dist/esm/components/code-editor/CodeEditor.js.map +1 -1
- package/dist/esm/components/code-editor/CodeEditor.module.css +10 -6
- package/dist/esm/components/collection/CollectionItem.d.ts.map +1 -1
- package/dist/esm/components/collection/CollectionItem.js +5 -2
- package/dist/esm/components/collection/CollectionItem.js.map +1 -1
- package/dist/esm/components/index.d.ts +2 -0
- package/dist/esm/components/index.d.ts.map +1 -1
- package/dist/esm/components/index.js +2 -0
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/components/loader/CircleLoader.d.ts +3 -0
- package/dist/esm/components/loader/CircleLoader.d.ts.map +1 -0
- package/dist/esm/components/loader/CircleLoader.js +13 -0
- package/dist/esm/components/loader/CircleLoader.js.map +1 -0
- package/dist/esm/components/loader/CircleLoader.module.css +29 -0
- package/dist/esm/components/loader/index.d.ts +2 -0
- package/dist/esm/components/loader/index.d.ts.map +1 -0
- package/dist/esm/components/loader/index.js +3 -0
- package/dist/esm/components/loader/index.js.map +1 -0
- package/dist/esm/components/read-only/ReadOnlyInputStyles.js +2 -2
- package/dist/esm/components/read-only/ReadOnlyInputStyles.js.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayout.module.css +1 -1
- package/dist/esm/styles/Badge.module.css +2 -0
- package/dist/esm/styles/Checkbox.module.css +41 -5
- package/dist/esm/styles/CheckboxIndicator.module.css +8 -1
- package/dist/esm/styles/Input.module.css +8 -2
- package/dist/esm/styles/Pagination.module.css +10 -1
- package/dist/esm/styles/Radio.module.css +30 -2
- package/dist/esm/styles/ReadOnlyInput.module.css +7 -3
- package/dist/esm/styles/Select.module.css +46 -0
- package/dist/esm/theme/Theme.d.ts.map +1 -1
- package/dist/esm/theme/Theme.js +17 -20
- package/dist/esm/theme/Theme.js.map +1 -1
- package/dist/esm/theme/plasmaCSSVariablesResolver.d.ts.map +1 -1
- package/dist/esm/theme/plasmaCSSVariablesResolver.js +6 -1
- package/dist/esm/theme/plasmaCSSVariablesResolver.js.map +1 -1
- package/package.json +3 -3
- package/src/components/checkbox/CheckboxIcon.tsx +14 -0
- package/src/components/checkbox/index.ts +1 -0
- package/src/components/code-editor/CodeEditor.module.css +10 -6
- package/src/components/code-editor/CodeEditor.tsx +23 -26
- package/src/components/collection/CollectionItem.tsx +9 -3
- package/src/components/collection/__tests__/Collection.spec.tsx +140 -44
- package/src/components/index.ts +2 -0
- package/src/components/loader/CircleLoader.module.css +29 -0
- package/src/components/loader/CircleLoader.tsx +8 -0
- package/src/components/loader/index.ts +1 -0
- package/src/components/read-only/ReadOnlyInputStyles.ts +2 -2
- package/src/components/table/layouts/row-layout/RowLayout.module.css +1 -1
- package/src/styles/Badge.module.css +2 -0
- package/src/styles/Checkbox.module.css +41 -5
- package/src/styles/CheckboxIndicator.module.css +8 -1
- package/src/styles/Input.module.css +8 -2
- package/src/styles/Pagination.module.css +10 -1
- package/src/styles/Radio.module.css +30 -2
- package/src/styles/ReadOnlyInput.module.css +7 -3
- package/src/styles/Select.module.css +46 -0
- package/src/theme/Theme.tsx +9 -14
- package/src/theme/plasmaCSSVariablesResolver.ts +11 -1
|
@@ -1,5 +1,14 @@
|
|
|
1
|
+
.root {
|
|
2
|
+
--pagination-active-bg: var(--mantine-primary-color-light);
|
|
3
|
+
--pagination-active-color: var(--mantine-primary-color-filled);
|
|
4
|
+
}
|
|
5
|
+
|
|
1
6
|
.control {
|
|
2
7
|
@mixin where-light {
|
|
3
|
-
border-color: var(--
|
|
8
|
+
border-color: var(--mantine-color-default-border);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
&[data-active] {
|
|
12
|
+
border: none;
|
|
4
13
|
}
|
|
5
14
|
}
|
|
@@ -1,10 +1,38 @@
|
|
|
1
1
|
.labelWrapper {
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: flex-start;
|
|
4
|
+
|
|
5
|
+
@mixin light {
|
|
6
|
+
color: var(--coveo-color-title);
|
|
7
|
+
|
|
8
|
+
&[data-disabled] {
|
|
9
|
+
.label,
|
|
10
|
+
.description {
|
|
11
|
+
color: var(--coveo-color-text-disabled);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
4
15
|
}
|
|
5
16
|
|
|
6
17
|
.radio {
|
|
7
|
-
@mixin
|
|
8
|
-
|
|
18
|
+
@mixin light {
|
|
19
|
+
&:not([data-disabled]) {
|
|
20
|
+
border-color: var(--coveo-color-input-border);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
&:disabled {
|
|
24
|
+
background-color: var(--coveo-color-bg-disabled);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/* mantine hardcodes disabled styles so we need to write custom styles */
|
|
28
|
+
&[readonly] {
|
|
29
|
+
border-color: var(--mantine-color-default-border);
|
|
30
|
+
background-color: var(--coveo-color-bg-readonly);
|
|
31
|
+
color: var(--coveo-color-text-readonly);
|
|
32
|
+
|
|
33
|
+
& + .icon {
|
|
34
|
+
color: var(--coveo-color-text-readonly);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
9
37
|
}
|
|
10
38
|
}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
.input {
|
|
2
2
|
cursor: text;
|
|
3
3
|
|
|
4
|
-
--input-bd:
|
|
5
|
-
--input-bg: var(--mantine-color-
|
|
4
|
+
--input-bd: var(--mantine-color-default-border);
|
|
5
|
+
--input-bg: var(--mantine-color-gray-1);
|
|
6
6
|
--input-color: var(--mantine-color-text);
|
|
7
|
-
--input-placeholder-color: var(--mantine-color-
|
|
7
|
+
--input-placeholder-color: var(--mantine-color-placeholder);
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
.section {
|
|
11
11
|
--input-section-color: var(--mantine-color-text);
|
|
12
|
+
|
|
13
|
+
> svg {
|
|
14
|
+
color: var(--mantine-color-gray-3);
|
|
15
|
+
}
|
|
12
16
|
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
.option {
|
|
2
|
+
@mixin light {
|
|
3
|
+
color: var(--coveo-color-title);
|
|
4
|
+
border-radius: var(--mantine-radius-sm);
|
|
5
|
+
|
|
6
|
+
@mixin hover {
|
|
7
|
+
&:not([data-combobox-disabled], [data-checked], [data-combobox-selected]) {
|
|
8
|
+
background-color: var(--mantine-color-default-hover);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
&[data-combobox-disabled] {
|
|
13
|
+
opacity: 1;
|
|
14
|
+
color: var(--coveo-color-text-disabled);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
&[data-combobox-active='true'] {
|
|
18
|
+
background-color: var(--mantine-primary-color-light);
|
|
19
|
+
color: var(--mantine-primary-color-filled);
|
|
20
|
+
|
|
21
|
+
+ svg {
|
|
22
|
+
opacity: 1;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
&[data-combobox-selected] {
|
|
27
|
+
background-color: var(--mantine-primary-color-filled);
|
|
28
|
+
color: white;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.groupLabel {
|
|
34
|
+
@mixin light {
|
|
35
|
+
color: var(--mantine-color-placeholder);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.input {
|
|
40
|
+
@mixin light {
|
|
41
|
+
&[data-disabled] {
|
|
42
|
+
--input-disabled-bg: var(--coveo-color-bg-disabled);
|
|
43
|
+
--input-bd: var(--mantine-color-default-border);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Theme.d.ts","sourceRoot":"","sources":["../../../src/theme/Theme.tsx"],"names":[],"mappings":"AAUA,OAAO,EAmBH,oBAAoB,EAkBvB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"Theme.d.ts","sourceRoot":"","sources":["../../../src/theme/Theme.tsx"],"names":[],"mappings":"AAUA,OAAO,EAmBH,oBAAoB,EAkBvB,MAAM,eAAe,CAAC;AA8BvB,eAAO,MAAM,WAAW,EAAE,oBAoUxB,CAAC"}
|
package/dist/cjs/theme/Theme.js
CHANGED
|
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "plasmaTheme", {
|
|
|
10
10
|
});
|
|
11
11
|
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
12
12
|
var _object_spread = require("@swc/helpers/_/_object_spread");
|
|
13
|
+
var _object_spread_props = require("@swc/helpers/_/_object_spread_props");
|
|
13
14
|
var _jsxruntime = require("react/jsx-runtime");
|
|
14
15
|
var _plasmareacticons = require("@coveord/plasma-react-icons");
|
|
15
16
|
var _plasmatokens = require("@coveord/plasma-tokens");
|
|
@@ -34,6 +35,7 @@ var _ReadOnlyInputmodulecss = /*#__PURE__*/ _interop_require_default._(require("
|
|
|
34
35
|
var _ReadOnlyStatemodulecss = /*#__PURE__*/ _interop_require_default._(require("../styles/ReadOnlyState.module.css"));
|
|
35
36
|
var _ScrollAreamodulecss = /*#__PURE__*/ _interop_require_default._(require("../styles/ScrollArea.module.css"));
|
|
36
37
|
var _SegmentedControlmodulecss = /*#__PURE__*/ _interop_require_default._(require("../styles/SegmentedControl.module.css"));
|
|
38
|
+
var _Selectmodulecss = /*#__PURE__*/ _interop_require_default._(require("../styles/Select.module.css"));
|
|
37
39
|
var _Skeletonmodulecss = /*#__PURE__*/ _interop_require_default._(require("../styles/Skeleton.module.css"));
|
|
38
40
|
var _Steppermodulecss = /*#__PURE__*/ _interop_require_default._(require("../styles/Stepper.module.css"));
|
|
39
41
|
var _Tablemodulecss = /*#__PURE__*/ _interop_require_default._(require("../styles/Table.module.css"));
|
|
@@ -148,7 +150,8 @@ var plasmaTheme = (0, _core.createTheme)({
|
|
|
148
150
|
Badge: _core.Badge.extend({
|
|
149
151
|
classNames: _Badgemodulecss.default,
|
|
150
152
|
defaultProps: {
|
|
151
|
-
variant: 'light'
|
|
153
|
+
variant: 'light',
|
|
154
|
+
tt: 'none'
|
|
152
155
|
}
|
|
153
156
|
}),
|
|
154
157
|
Breadcrumbs: _core.Breadcrumbs.extend({
|
|
@@ -169,31 +172,20 @@ var plasmaTheme = (0, _core.createTheme)({
|
|
|
169
172
|
}),
|
|
170
173
|
Checkbox: _core.Checkbox.extend({
|
|
171
174
|
defaultProps: {
|
|
172
|
-
radius: 'sm'
|
|
175
|
+
radius: 'sm',
|
|
176
|
+
icon: _components.CheckboxIcon
|
|
173
177
|
},
|
|
174
178
|
classNames: function(theme, props) {
|
|
175
179
|
if (props.readOnly && !props.disabled) {
|
|
176
180
|
return (0, _core.deepMerge)(_Checkboxmodulecss.default, _ReadOnlyStatemodulecss.default);
|
|
177
181
|
}
|
|
178
182
|
return _Checkboxmodulecss.default;
|
|
179
|
-
},
|
|
180
|
-
vars: function(theme, props) {
|
|
181
|
-
if (props.readOnly && !props.disabled) {
|
|
182
|
-
return {
|
|
183
|
-
root: {
|
|
184
|
-
'--checkbox-icon-color': theme.colors.gray[7],
|
|
185
|
-
'--checkbox-color': theme.colors.gray[2]
|
|
186
|
-
}
|
|
187
|
-
};
|
|
188
|
-
}
|
|
189
|
-
return {
|
|
190
|
-
root: {}
|
|
191
|
-
};
|
|
192
183
|
}
|
|
193
184
|
}),
|
|
194
185
|
CheckboxIndicator: _core.Checkbox.Indicator.extend({
|
|
195
186
|
defaultProps: {
|
|
196
|
-
radius: 'sm'
|
|
187
|
+
radius: 'sm',
|
|
188
|
+
icon: _components.CheckboxIcon
|
|
197
189
|
},
|
|
198
190
|
classNames: _CheckboxIndicatormodulecss.default
|
|
199
191
|
}),
|
|
@@ -277,7 +269,10 @@ var plasmaTheme = (0, _core.createTheme)({
|
|
|
277
269
|
}),
|
|
278
270
|
Loader: _core.Loader.extend({
|
|
279
271
|
defaultProps: {
|
|
280
|
-
|
|
272
|
+
loaders: _object_spread_props._(_object_spread._({}, _core.Loader.defaultLoaders), {
|
|
273
|
+
circle: _components.CircleLoader
|
|
274
|
+
}),
|
|
275
|
+
type: 'circle',
|
|
281
276
|
role: 'presentation'
|
|
282
277
|
}
|
|
283
278
|
}),
|
|
@@ -368,8 +363,10 @@ var plasmaTheme = (0, _core.createTheme)({
|
|
|
368
363
|
}),
|
|
369
364
|
Select: _core.Select.extend({
|
|
370
365
|
defaultProps: {
|
|
371
|
-
allowDeselect: false
|
|
372
|
-
|
|
366
|
+
allowDeselect: false,
|
|
367
|
+
withCheckIcon: false
|
|
368
|
+
},
|
|
369
|
+
classNames: _Selectmodulecss.default
|
|
373
370
|
}),
|
|
374
371
|
Skeleton: _core.Skeleton.extend({
|
|
375
372
|
classNames: _Skeletonmodulecss.default
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/theme/Theme.tsx"],"sourcesContent":["import {\n ArrowHeadLeftSize16Px,\n ArrowHeadRightSize16Px,\n CheckSize16Px,\n CrossSize16Px,\n FilterSize16Px,\n IconSlash,\n InfoSize24Px,\n} from '@coveord/plasma-react-icons';\nimport {color} from '@coveord/plasma-tokens';\nimport {\n ActionIcon,\n Alert,\n AppShell,\n Badge,\n Breadcrumbs,\n Button,\n Checkbox,\n CloseButton,\n ColorSwatch,\n Combobox,\n ComboboxSearch,\n createTheme,\n deepMerge,\n Divider,\n Input,\n InputWrapper,\n List,\n Loader,\n MantineThemeOverride,\n Modal,\n MultiSelect,\n NavLink,\n Notification,\n Pagination,\n Popover,\n Radio,\n ScrollArea,\n SegmentedControl,\n Select,\n Skeleton,\n Stepper,\n Switch,\n Table,\n Tabs,\n Text,\n Tooltip,\n} from '@mantine/core';\nimport {InfoToken} from '../components';\nimport ActionIconClasses from '../styles/ActionIcon.module.css';\nimport AlertClasses from '../styles/Alert.module.css';\nimport BadgeClasses from '../styles/Badge.module.css';\nimport BreadcrumbsClasses from '../styles/Breadcrumbs.module.css';\nimport ButtonClasses from '../styles/Button.module.css';\nimport CheckboxClasses from '../styles/Checkbox.module.css';\nimport CheckboxIndicatorClasses from '../styles/CheckboxIndicator.module.css';\nimport ComboboxClasses from '../styles/Combobox.module.css';\nimport InputClasses from '../styles/Input.module.css';\nimport InputWrapperClasses from '../styles/InputWrapper.module.css';\nimport ListClasses from '../styles/List.module.css';\nimport ModalClasses from '../styles/Modal.module.css';\nimport NavLinkClasses from '../styles/NavLink.module.css';\nimport PaginationClasses from '../styles/Pagination.module.css';\nimport RadioClasses from '../styles/Radio.module.css';\nimport ReadOnlyInputClasses from '../styles/ReadOnlyInput.module.css';\nimport ReadOnlyStateClasses from '../styles/ReadOnlyState.module.css';\nimport ScrollAreaClasses from '../styles/ScrollArea.module.css';\nimport SegmentedControlClasses from '../styles/SegmentedControl.module.css';\nimport SkeletonClasses from '../styles/Skeleton.module.css';\nimport StepperClasses from '../styles/Stepper.module.css';\nimport TableClasses from '../styles/Table.module.css';\nimport TabsClasses from '../styles/Tabs.module.css';\nimport TextClasses from '../styles/Text.module.css';\nimport TooltipClasses from '../styles/Tooltip.module.css';\nimport {PlasmaColors} from './PlasmaColors';\n\nexport const plasmaTheme: MantineThemeOverride = createTheme({\n // These are overrides over https://github.com/mantinedev/mantine/blob/master/packages/%40mantine/core/src/core/MantineProvider/default-theme.ts\n fontFamily: 'canada-type-gibson, sans-serif',\n black: color.primary.gray[9],\n defaultRadius: 'md',\n lineHeights: {md: '1.5'},\n spacing: {\n xxs: '4px',\n xs: '8px',\n sm: '16px',\n md: '24px',\n lg: '32px',\n xl: '40px',\n },\n radius: {\n none: '0px',\n xs: '2px',\n sm: '4px',\n md: '8px',\n lg: '16px',\n xl: '24px',\n xxl: '32px',\n },\n primaryColor: 'blue',\n headings: {\n fontFamily: 'canada-type-gibson, sans-serif',\n fontWeight: '500',\n sizes: {\n h1: {fontSize: '40px', lineHeight: '1.2', fontWeight: '500'},\n h2: {fontSize: '32px', lineHeight: '1.25', fontWeight: '500'},\n h3: {fontSize: '24px', lineHeight: '1.33', fontWeight: '500'},\n h4: {fontSize: '18px', lineHeight: '1.2', fontWeight: '400'},\n h5: {fontSize: '16px', lineHeight: '1.25', fontWeight: '500'},\n h6: {fontSize: '12px', lineHeight: '1.33', fontWeight: '500'},\n },\n },\n fontSizes: {\n xs: '12px',\n sm: '14px',\n md: '16px',\n lg: '18px',\n xl: '20px',\n },\n shadows: {\n xs: '0px 1px 0px rgba(4, 8, 31, 0.08)',\n sm: '0px 2px 4px rgba(4, 8, 31, 0.12)',\n md: '0px 4px 8px rgba(4, 8, 31, 0.08)',\n lg: '0px 8px 16px rgba(7, 12, 41, 0.06)',\n xl: '0px 16px 24px rgba(4, 8, 31, 0.06)',\n },\n primaryShade: 5,\n colors: PlasmaColors,\n components: {\n ActionIcon: ActionIcon.extend({\n defaultProps: {\n size: 24,\n radius: 'sm',\n },\n classNames: ActionIconClasses,\n }),\n AppShell: AppShell.extend({\n vars: (theme) =>\n ({\n root: {'--app-shell-border-color': theme.colors.gray[2]},\n }) as any,\n }),\n Alert: Alert.extend({\n defaultProps: {\n icon: <InfoToken variant=\"advice\" />,\n p: 'sm',\n },\n classNames: AlertClasses,\n }),\n Badge: Badge.extend({\n classNames: BadgeClasses,\n defaultProps: {\n variant: 'light',\n },\n }),\n Breadcrumbs: Breadcrumbs.extend({\n classNames: BreadcrumbsClasses,\n defaultProps: {\n separator: <IconSlash size={16} color=\"var(--mantine-color-dimmed)\" />,\n separatorMargin: 'xxs',\n },\n }),\n Button: Button.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: ButtonClasses,\n }),\n Checkbox: Checkbox.extend({\n defaultProps: {\n radius: 'sm',\n },\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return deepMerge(CheckboxClasses, ReadOnlyStateClasses);\n }\n return CheckboxClasses;\n },\n vars: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return {\n root: {\n '--checkbox-icon-color': theme.colors.gray[7],\n '--checkbox-color': theme.colors.gray[2],\n },\n };\n }\n return {root: {}};\n },\n }),\n CheckboxIndicator: Checkbox.Indicator.extend({\n defaultProps: {\n radius: 'sm',\n },\n classNames: CheckboxIndicatorClasses,\n }),\n CloseButton: CloseButton.extend({\n defaultProps: {\n icon: <CrossSize16Px height={16} aria-label=\"close\" />,\n },\n }),\n ColorSwatch: ColorSwatch.extend({\n defaultProps: {\n size: 8,\n withShadow: false,\n },\n }),\n Combobox: Combobox.extend({\n classNames: ComboboxClasses,\n }),\n ComboboxSearch: ComboboxSearch.extend({\n defaultProps: {\n placeholder: 'Search',\n rightSection: <FilterSize16Px height={16} color=\"gray.5\" />,\n },\n }),\n Divider: Divider.extend({\n defaultProps: {\n color: 'var(--mantine-color-default-border)',\n },\n }),\n Input: Input.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: (_theme, props) => {\n const anyProps = props as any;\n if (anyProps.readOnly && !props.disabled && !['Select'].includes(anyProps.__staticSelector)) {\n return deepMerge(InputClasses, ReadOnlyInputClasses);\n }\n return InputClasses;\n },\n vars: (theme, props) => ({\n wrapper: {\n '--input-margin-top':\n props.wrapperProps?.label || props.wrapperProps?.description ? theme.spacing.xxs : undefined,\n },\n }),\n }),\n InputWrapper: InputWrapper.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: InputWrapperClasses,\n vars: (theme, props) => {\n const anyProps = props as any;\n if (anyProps.disabled || (anyProps.readOnly && !['Select'].includes(anyProps.__staticSelector))) {\n return {\n label: {'--input-asterisk-color': theme.colors.red[2]},\n error: {},\n description: {},\n };\n }\n return {\n label: {},\n error: {},\n description: {},\n };\n },\n }),\n Loader: Loader.extend({\n defaultProps: {\n type: 'dots',\n role: 'presentation',\n },\n }),\n List: List.extend({\n classNames: ListClasses,\n }),\n Modal: Modal.extend({\n classNames: ModalClasses,\n vars: () => {\n const sizes = {\n '--modal-size-xs': '432px',\n '--modal-size-sm': '664px',\n '--modal-size-md': '896px',\n '--modal-size-lg': '1120px',\n '--modal-size-xl': '88%',\n } as any;\n return {\n root: {\n ...sizes,\n },\n };\n },\n }),\n ModalOverlay: Modal.Overlay.extend({\n defaultProps: {\n color: PlasmaColors.indigo[8],\n backgroundOpacity: 0.7,\n blur: 2,\n },\n }),\n ModalRoot: Modal.Root.extend({\n defaultProps: {\n padding: 'lg',\n },\n }),\n MultiSelect: MultiSelect.extend({defaultProps: {hidePickedOptions: true}}),\n NavLink: NavLink.extend({classNames: NavLinkClasses}),\n Notification: Notification.extend({\n defaultProps: {\n icon: <InfoSize24Px height={24} />,\n },\n }),\n Pagination: Pagination.extend({\n classNames: PaginationClasses,\n defaultProps: {\n nextIcon: ArrowHeadRightSize16Px,\n previousIcon: ArrowHeadLeftSize16Px,\n },\n }),\n Popover: Popover.extend({\n defaultProps: {\n shadow: 'md',\n withArrow: true,\n },\n }),\n Radio: Radio.extend({\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return deepMerge(RadioClasses, ReadOnlyStateClasses);\n }\n return RadioClasses;\n },\n vars: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return {\n root: {\n '--radio-icon-color': theme.colors.gray[7],\n '--radio-color': theme.colors.gray[2],\n },\n };\n }\n return {root: {}};\n },\n }),\n ScrollArea: ScrollArea.extend({\n classNames: ScrollAreaClasses,\n }),\n SegmentedControl: SegmentedControl.extend({\n classNames: SegmentedControlClasses,\n }),\n Select: Select.extend({\n defaultProps: {allowDeselect: false},\n }),\n Skeleton: Skeleton.extend({\n classNames: SkeletonClasses,\n }),\n Stepper: Stepper.extend({\n defaultProps: {\n size: 'xs',\n completedIcon: <CheckSize16Px />,\n },\n classNames: StepperClasses,\n }),\n Switch: Switch.extend({\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return ReadOnlyStateClasses;\n }\n return {};\n },\n vars: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return {\n root: {},\n track: {\n '--switch-bg': theme.colors.gray[2],\n '--switch-bd': 'transparent',\n },\n thumb: {\n '--switch-thumb-bd': 'transparent',\n },\n };\n }\n return {root: {}, track: {}, thumb: {}};\n },\n }),\n Table: Table.extend({\n classNames: TableClasses,\n vars: () => ({\n table: {\n '--table-border-color': 'var(--mantine-color-default-border)',\n },\n }),\n }),\n Tabs: Tabs.extend({\n classNames: TabsClasses,\n }),\n Text: Text.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: TextClasses,\n }),\n Tooltip: Tooltip.extend({\n defaultProps: {\n maw: 300,\n multiline: true,\n withArrow: true,\n zIndex: 10000,\n },\n classNames: TooltipClasses,\n }),\n },\n});\n"],"names":["plasmaTheme","createTheme","fontFamily","black","color","primary","gray","defaultRadius","lineHeights","md","spacing","xxs","xs","sm","lg","xl","radius","none","xxl","primaryColor","headings","fontWeight","sizes","h1","fontSize","lineHeight","h2","h3","h4","h5","h6","fontSizes","shadows","primaryShade","colors","PlasmaColors","components","ActionIcon","extend","defaultProps","size","classNames","ActionIconClasses","AppShell","vars","theme","root","Alert","icon","InfoToken","variant","p","AlertClasses","Badge","BadgeClasses","Breadcrumbs","BreadcrumbsClasses","separator","IconSlash","separatorMargin","Button","ButtonClasses","Checkbox","props","readOnly","disabled","deepMerge","CheckboxClasses","ReadOnlyStateClasses","CheckboxIndicator","Indicator","CheckboxIndicatorClasses","CloseButton","CrossSize16Px","height","aria-label","ColorSwatch","withShadow","Combobox","ComboboxClasses","ComboboxSearch","placeholder","rightSection","FilterSize16Px","Divider","Input","_theme","anyProps","includes","__staticSelector","InputClasses","ReadOnlyInputClasses","wrapper","wrapperProps","label","description","undefined","InputWrapper","InputWrapperClasses","red","error","Loader","type","role","List","ListClasses","Modal","ModalClasses","ModalOverlay","Overlay","indigo","backgroundOpacity","blur","ModalRoot","Root","padding","MultiSelect","hidePickedOptions","NavLink","NavLinkClasses","Notification","InfoSize24Px","Pagination","PaginationClasses","nextIcon","ArrowHeadRightSize16Px","previousIcon","ArrowHeadLeftSize16Px","Popover","shadow","withArrow","Radio","RadioClasses","ScrollArea","ScrollAreaClasses","SegmentedControl","SegmentedControlClasses","Select","allowDeselect","Skeleton","SkeletonClasses","Stepper","completedIcon","CheckSize16Px","StepperClasses","Switch","track","thumb","Table","TableClasses","table","Tabs","TabsClasses","Text","TextClasses","Tooltip","maw","multiline","zIndex","TooltipClasses"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/theme/Theme.tsx"],"sourcesContent":["import {\n ArrowHeadLeftSize16Px,\n ArrowHeadRightSize16Px,\n CheckSize16Px,\n CrossSize16Px,\n FilterSize16Px,\n IconSlash,\n InfoSize24Px,\n} from '@coveord/plasma-react-icons';\nimport {color} from '@coveord/plasma-tokens';\nimport {\n ActionIcon,\n Alert,\n AppShell,\n Badge,\n Breadcrumbs,\n Button,\n Checkbox,\n CloseButton,\n ColorSwatch,\n Combobox,\n ComboboxSearch,\n createTheme,\n deepMerge,\n Divider,\n Input,\n InputWrapper,\n List,\n Loader,\n MantineThemeOverride,\n Modal,\n MultiSelect,\n NavLink,\n Notification,\n Pagination,\n Popover,\n Radio,\n ScrollArea,\n SegmentedControl,\n Select,\n Skeleton,\n Stepper,\n Switch,\n Table,\n Tabs,\n Text,\n Tooltip,\n} from '@mantine/core';\nimport {CheckboxIcon, CircleLoader, InfoToken} from '../components';\nimport ActionIconClasses from '../styles/ActionIcon.module.css';\nimport AlertClasses from '../styles/Alert.module.css';\nimport BadgeClasses from '../styles/Badge.module.css';\nimport BreadcrumbsClasses from '../styles/Breadcrumbs.module.css';\nimport ButtonClasses from '../styles/Button.module.css';\nimport CheckboxClasses from '../styles/Checkbox.module.css';\nimport CheckboxIndicatorClasses from '../styles/CheckboxIndicator.module.css';\nimport ComboboxClasses from '../styles/Combobox.module.css';\nimport InputClasses from '../styles/Input.module.css';\nimport InputWrapperClasses from '../styles/InputWrapper.module.css';\nimport ListClasses from '../styles/List.module.css';\nimport ModalClasses from '../styles/Modal.module.css';\nimport NavLinkClasses from '../styles/NavLink.module.css';\nimport PaginationClasses from '../styles/Pagination.module.css';\nimport RadioClasses from '../styles/Radio.module.css';\nimport ReadOnlyInputClasses from '../styles/ReadOnlyInput.module.css';\nimport ReadOnlyStateClasses from '../styles/ReadOnlyState.module.css';\nimport ScrollAreaClasses from '../styles/ScrollArea.module.css';\nimport SegmentedControlClasses from '../styles/SegmentedControl.module.css';\nimport SelectClasses from '../styles/Select.module.css';\nimport SkeletonClasses from '../styles/Skeleton.module.css';\nimport StepperClasses from '../styles/Stepper.module.css';\nimport TableClasses from '../styles/Table.module.css';\nimport TabsClasses from '../styles/Tabs.module.css';\nimport TextClasses from '../styles/Text.module.css';\nimport TooltipClasses from '../styles/Tooltip.module.css';\nimport {PlasmaColors} from './PlasmaColors';\n\nexport const plasmaTheme: MantineThemeOverride = createTheme({\n // These are overrides over https://github.com/mantinedev/mantine/blob/master/packages/%40mantine/core/src/core/MantineProvider/default-theme.ts\n fontFamily: 'canada-type-gibson, sans-serif',\n black: color.primary.gray[9],\n defaultRadius: 'md',\n lineHeights: {md: '1.5'},\n spacing: {\n xxs: '4px',\n xs: '8px',\n sm: '16px',\n md: '24px',\n lg: '32px',\n xl: '40px',\n },\n radius: {\n none: '0px',\n xs: '2px',\n sm: '4px',\n md: '8px',\n lg: '16px',\n xl: '24px',\n xxl: '32px',\n },\n primaryColor: 'blue',\n headings: {\n fontFamily: 'canada-type-gibson, sans-serif',\n fontWeight: '500',\n sizes: {\n h1: {fontSize: '40px', lineHeight: '1.2', fontWeight: '500'},\n h2: {fontSize: '32px', lineHeight: '1.25', fontWeight: '500'},\n h3: {fontSize: '24px', lineHeight: '1.33', fontWeight: '500'},\n h4: {fontSize: '18px', lineHeight: '1.2', fontWeight: '400'},\n h5: {fontSize: '16px', lineHeight: '1.25', fontWeight: '500'},\n h6: {fontSize: '12px', lineHeight: '1.33', fontWeight: '500'},\n },\n },\n fontSizes: {\n xs: '12px',\n sm: '14px',\n md: '16px',\n lg: '18px',\n xl: '20px',\n },\n shadows: {\n xs: '0px 1px 0px rgba(4, 8, 31, 0.08)',\n sm: '0px 2px 4px rgba(4, 8, 31, 0.12)',\n md: '0px 4px 8px rgba(4, 8, 31, 0.08)',\n lg: '0px 8px 16px rgba(7, 12, 41, 0.06)',\n xl: '0px 16px 24px rgba(4, 8, 31, 0.06)',\n },\n primaryShade: 5,\n colors: PlasmaColors,\n components: {\n ActionIcon: ActionIcon.extend({\n defaultProps: {\n size: 24,\n radius: 'sm',\n },\n classNames: ActionIconClasses,\n }),\n AppShell: AppShell.extend({\n vars: (theme) =>\n ({\n root: {'--app-shell-border-color': theme.colors.gray[2]},\n }) as any,\n }),\n Alert: Alert.extend({\n defaultProps: {\n icon: <InfoToken variant=\"advice\" />,\n p: 'sm',\n },\n classNames: AlertClasses,\n }),\n Badge: Badge.extend({\n classNames: BadgeClasses,\n defaultProps: {\n variant: 'light',\n tt: 'none',\n },\n }),\n Breadcrumbs: Breadcrumbs.extend({\n classNames: BreadcrumbsClasses,\n defaultProps: {\n separator: <IconSlash size={16} color=\"var(--mantine-color-dimmed)\" />,\n separatorMargin: 'xxs',\n },\n }),\n Button: Button.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: ButtonClasses,\n }),\n Checkbox: Checkbox.extend({\n defaultProps: {\n radius: 'sm',\n icon: CheckboxIcon,\n },\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return deepMerge(CheckboxClasses, ReadOnlyStateClasses);\n }\n return CheckboxClasses;\n },\n }),\n CheckboxIndicator: Checkbox.Indicator.extend({\n defaultProps: {\n radius: 'sm',\n icon: CheckboxIcon,\n },\n classNames: CheckboxIndicatorClasses,\n }),\n CloseButton: CloseButton.extend({\n defaultProps: {\n icon: <CrossSize16Px height={16} aria-label=\"close\" />,\n },\n }),\n ColorSwatch: ColorSwatch.extend({\n defaultProps: {\n size: 8,\n withShadow: false,\n },\n }),\n Combobox: Combobox.extend({\n classNames: ComboboxClasses,\n }),\n ComboboxSearch: ComboboxSearch.extend({\n defaultProps: {\n placeholder: 'Search',\n rightSection: <FilterSize16Px height={16} color=\"gray.5\" />,\n },\n }),\n Divider: Divider.extend({\n defaultProps: {\n color: 'var(--mantine-color-default-border)',\n },\n }),\n Input: Input.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: (_theme, props) => {\n const anyProps = props as any;\n if (anyProps.readOnly && !props.disabled && !['Select'].includes(anyProps.__staticSelector)) {\n return deepMerge(InputClasses, ReadOnlyInputClasses);\n }\n return InputClasses;\n },\n vars: (theme, props) => ({\n wrapper: {\n '--input-margin-top':\n props.wrapperProps?.label || props.wrapperProps?.description ? theme.spacing.xxs : undefined,\n },\n }),\n }),\n InputWrapper: InputWrapper.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: InputWrapperClasses,\n vars: (theme, props) => {\n const anyProps = props as any;\n if (anyProps.disabled || (anyProps.readOnly && !['Select'].includes(anyProps.__staticSelector))) {\n return {\n label: {'--input-asterisk-color': theme.colors.red[2]},\n error: {},\n description: {},\n };\n }\n return {\n label: {},\n error: {},\n description: {},\n };\n },\n }),\n Loader: Loader.extend({\n defaultProps: {\n loaders: {...Loader.defaultLoaders, circle: CircleLoader},\n type: 'circle',\n role: 'presentation',\n },\n }),\n List: List.extend({\n classNames: ListClasses,\n }),\n Modal: Modal.extend({\n classNames: ModalClasses,\n vars: () => {\n const sizes = {\n '--modal-size-xs': '432px',\n '--modal-size-sm': '664px',\n '--modal-size-md': '896px',\n '--modal-size-lg': '1120px',\n '--modal-size-xl': '88%',\n } as any;\n return {\n root: {\n ...sizes,\n },\n };\n },\n }),\n ModalOverlay: Modal.Overlay.extend({\n defaultProps: {\n color: PlasmaColors.indigo[8],\n backgroundOpacity: 0.7,\n blur: 2,\n },\n }),\n ModalRoot: Modal.Root.extend({\n defaultProps: {\n padding: 'lg',\n },\n }),\n MultiSelect: MultiSelect.extend({defaultProps: {hidePickedOptions: true}}),\n NavLink: NavLink.extend({classNames: NavLinkClasses}),\n Notification: Notification.extend({\n defaultProps: {\n icon: <InfoSize24Px height={24} />,\n },\n }),\n Pagination: Pagination.extend({\n classNames: PaginationClasses,\n defaultProps: {\n nextIcon: ArrowHeadRightSize16Px,\n previousIcon: ArrowHeadLeftSize16Px,\n },\n }),\n Popover: Popover.extend({\n defaultProps: {\n shadow: 'md',\n withArrow: true,\n },\n }),\n Radio: Radio.extend({\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return deepMerge(RadioClasses, ReadOnlyStateClasses);\n }\n return RadioClasses;\n },\n vars: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return {\n root: {\n '--radio-icon-color': theme.colors.gray[7],\n '--radio-color': theme.colors.gray[2],\n },\n };\n }\n return {root: {}};\n },\n }),\n ScrollArea: ScrollArea.extend({\n classNames: ScrollAreaClasses,\n }),\n SegmentedControl: SegmentedControl.extend({\n classNames: SegmentedControlClasses,\n }),\n Select: Select.extend({\n defaultProps: {allowDeselect: false, withCheckIcon: false},\n classNames: SelectClasses,\n }),\n Skeleton: Skeleton.extend({\n classNames: SkeletonClasses,\n }),\n Stepper: Stepper.extend({\n defaultProps: {\n size: 'xs',\n completedIcon: <CheckSize16Px />,\n },\n classNames: StepperClasses,\n }),\n Switch: Switch.extend({\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return ReadOnlyStateClasses;\n }\n return {};\n },\n vars: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return {\n root: {},\n track: {\n '--switch-bg': theme.colors.gray[2],\n '--switch-bd': 'transparent',\n },\n thumb: {\n '--switch-thumb-bd': 'transparent',\n },\n };\n }\n return {root: {}, track: {}, thumb: {}};\n },\n }),\n Table: Table.extend({\n classNames: TableClasses,\n vars: () => ({\n table: {\n '--table-border-color': 'var(--mantine-color-default-border)',\n },\n }),\n }),\n Tabs: Tabs.extend({\n classNames: TabsClasses,\n }),\n Text: Text.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: TextClasses,\n }),\n Tooltip: Tooltip.extend({\n defaultProps: {\n maw: 300,\n multiline: true,\n withArrow: true,\n zIndex: 10000,\n },\n classNames: TooltipClasses,\n }),\n },\n});\n"],"names":["plasmaTheme","createTheme","fontFamily","black","color","primary","gray","defaultRadius","lineHeights","md","spacing","xxs","xs","sm","lg","xl","radius","none","xxl","primaryColor","headings","fontWeight","sizes","h1","fontSize","lineHeight","h2","h3","h4","h5","h6","fontSizes","shadows","primaryShade","colors","PlasmaColors","components","ActionIcon","extend","defaultProps","size","classNames","ActionIconClasses","AppShell","vars","theme","root","Alert","icon","InfoToken","variant","p","AlertClasses","Badge","BadgeClasses","tt","Breadcrumbs","BreadcrumbsClasses","separator","IconSlash","separatorMargin","Button","ButtonClasses","Checkbox","CheckboxIcon","props","readOnly","disabled","deepMerge","CheckboxClasses","ReadOnlyStateClasses","CheckboxIndicator","Indicator","CheckboxIndicatorClasses","CloseButton","CrossSize16Px","height","aria-label","ColorSwatch","withShadow","Combobox","ComboboxClasses","ComboboxSearch","placeholder","rightSection","FilterSize16Px","Divider","Input","_theme","anyProps","includes","__staticSelector","InputClasses","ReadOnlyInputClasses","wrapper","wrapperProps","label","description","undefined","InputWrapper","InputWrapperClasses","red","error","Loader","loaders","defaultLoaders","circle","CircleLoader","type","role","List","ListClasses","Modal","ModalClasses","ModalOverlay","Overlay","indigo","backgroundOpacity","blur","ModalRoot","Root","padding","MultiSelect","hidePickedOptions","NavLink","NavLinkClasses","Notification","InfoSize24Px","Pagination","PaginationClasses","nextIcon","ArrowHeadRightSize16Px","previousIcon","ArrowHeadLeftSize16Px","Popover","shadow","withArrow","Radio","RadioClasses","ScrollArea","ScrollAreaClasses","SegmentedControl","SegmentedControlClasses","Select","allowDeselect","withCheckIcon","SelectClasses","Skeleton","SkeletonClasses","Stepper","completedIcon","CheckSize16Px","StepperClasses","Switch","track","thumb","Table","TableClasses","table","Tabs","TabsClasses","Text","TextClasses","Tooltip","maw","multiline","zIndex","TooltipClasses"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plasmaCSSVariablesResolver.d.ts","sourceRoot":"","sources":["../../../src/theme/plasmaCSSVariablesResolver.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"plasmaCSSVariablesResolver.d.ts","sourceRoot":"","sources":["../../../src/theme/plasmaCSSVariablesResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,oBAAoB,EAAC,MAAM,eAAe,CAAC;AAEpF,eAAO,MAAM,0BAA0B,EAAE,oBAiCxC,CAAC"}
|
|
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "plasmaCSSVariablesResolver", {
|
|
|
8
8
|
return plasmaCSSVariablesResolver;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
+
var _core = require("@mantine/core");
|
|
11
12
|
var plasmaCSSVariablesResolver = function(theme) {
|
|
12
13
|
var result = {
|
|
13
14
|
variables: {},
|
|
@@ -17,6 +18,9 @@ var plasmaCSSVariablesResolver = function(theme) {
|
|
|
17
18
|
'--coveo-color-input-border': theme.colors.gray[3],
|
|
18
19
|
'--coveo-color-title': theme.colors.gray[8],
|
|
19
20
|
'--coveo-color-text-disabled': theme.colors.gray[3],
|
|
21
|
+
'--coveo-color-bg-disabled': (0, _core.alpha)(theme.colors.gray[4], 0.1),
|
|
22
|
+
'--coveo-color-text-readonly': 'var(--mantine-color-text)',
|
|
23
|
+
'--coveo-color-bg-readonly': theme.colors.gray[1],
|
|
20
24
|
// mantine overrides
|
|
21
25
|
'--mantine-color-default-border': theme.colors.gray[2],
|
|
22
26
|
'--mantine-color-error': theme.colors.red[5],
|
|
@@ -26,7 +30,8 @@ var plasmaCSSVariablesResolver = function(theme) {
|
|
|
26
30
|
'--mantine-color-gray-light': theme.colors.gray[0],
|
|
27
31
|
'--mantine-color-gray-light-hover': theme.colors.gray[1],
|
|
28
32
|
'--mantine-color-warning-filled': theme.colors.yellow[4],
|
|
29
|
-
'--mantine-color-placeholder': theme.colors.gray[4]
|
|
33
|
+
'--mantine-color-placeholder': theme.colors.gray[4],
|
|
34
|
+
'--mantine-color-default-hover': theme.colors.gray[1]
|
|
30
35
|
}
|
|
31
36
|
};
|
|
32
37
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/theme/plasmaCSSVariablesResolver.ts"],"sourcesContent":["import {ConvertCSSVariablesInput, CSSVariablesResolver} from '@mantine/core';\n\nexport const plasmaCSSVariablesResolver: CSSVariablesResolver = (theme) => {\n const result: ConvertCSSVariablesInput = {\n variables: {},\n dark: {},\n light: {\n // custom colors\n '--coveo-color-input-border': theme.colors.gray[3],\n '--coveo-color-title': theme.colors.gray[8],\n '--coveo-color-text-disabled': theme.colors.gray[3],\n\n // mantine overrides\n '--mantine-color-default-border': theme.colors.gray[2],\n '--mantine-color-error': theme.colors.red[5],\n '--mantine-color-text': theme.colors.gray[6],\n '--mantine-color-dimmed': theme.colors.gray[5],\n '--mantine-color-gray-filled': theme.colors.gray[4],\n '--mantine-color-gray-light': theme.colors.gray[0],\n '--mantine-color-gray-light-hover': theme.colors.gray[1],\n '--mantine-color-warning-filled': theme.colors.yellow[4],\n '--mantine-color-placeholder': theme.colors.gray[4],\n },\n };\n return result;\n};\n"],"names":["plasmaCSSVariablesResolver","theme","result","variables","dark","light","colors","gray","red","yellow"],"mappings":";;;;+BAEaA;;;eAAAA;;;
|
|
1
|
+
{"version":3,"sources":["../../../src/theme/plasmaCSSVariablesResolver.ts"],"sourcesContent":["import {alpha, ConvertCSSVariablesInput, CSSVariablesResolver} from '@mantine/core';\n\nexport const plasmaCSSVariablesResolver: CSSVariablesResolver = (theme) => {\n const result: ConvertCSSVariablesInput = {\n variables: {},\n dark: {},\n light: {\n // custom colors\n '--coveo-color-input-border': theme.colors.gray[3],\n '--coveo-color-title': theme.colors.gray[8],\n '--coveo-color-text-disabled': theme.colors.gray[3],\n '--coveo-color-bg-disabled': alpha(theme.colors.gray[4], 0.1),\n '--coveo-color-text-readonly': 'var(--mantine-color-text)',\n '--coveo-color-bg-readonly': theme.colors.gray[1],\n\n // mantine overrides\n '--mantine-color-default-border': theme.colors.gray[2],\n '--mantine-color-error': theme.colors.red[5],\n '--mantine-color-text': theme.colors.gray[6],\n '--mantine-color-dimmed': theme.colors.gray[5],\n '--mantine-color-gray-filled': theme.colors.gray[4],\n '--mantine-color-gray-light': theme.colors.gray[0],\n '--mantine-color-gray-light-hover': theme.colors.gray[1],\n '--mantine-color-warning-filled': theme.colors.yellow[4],\n '--mantine-color-placeholder': theme.colors.gray[4],\n '--mantine-color-default-hover': theme.colors.gray[1],\n /**\n * ADUI-10725 https://coveord.atlassian.net/browse/ADUI-10725\n * '--mantine-color-disabled'\n * '--mantine-color-disabled-color'\n * '--mantine-color-disabled-border'\n */\n },\n };\n return result;\n};\n"],"names":["plasmaCSSVariablesResolver","theme","result","variables","dark","light","colors","gray","alpha","red","yellow"],"mappings":";;;;+BAEaA;;;eAAAA;;;oBAFuD;AAE7D,IAAMA,6BAAmD,SAACC;IAC7D,IAAMC,SAAmC;QACrCC,WAAW,CAAC;QACZC,MAAM,CAAC;QACPC,OAAO;YACH,gBAAgB;YAChB,8BAA8BJ,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YAClD,uBAAuBN,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YAC3C,+BAA+BN,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YACnD,6BAA6BC,IAAAA,WAAK,EAACP,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE,EAAE;YACzD,+BAA+B;YAC/B,6BAA6BN,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YAEjD,oBAAoB;YACpB,kCAAkCN,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YACtD,yBAAyBN,MAAMK,MAAM,CAACG,GAAG,CAAC,EAAE;YAC5C,wBAAwBR,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YAC5C,0BAA0BN,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YAC9C,+BAA+BN,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YACnD,8BAA8BN,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YAClD,oCAAoCN,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YACxD,kCAAkCN,MAAMK,MAAM,CAACI,MAAM,CAAC,EAAE;YACxD,+BAA+BT,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;YACnD,iCAAiCN,MAAMK,MAAM,CAACC,IAAI,CAAC,EAAE;QAOzD;IACJ;IACA,OAAOL;AACX"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ComponentPropsWithoutRef, FunctionComponent } from 'react';
|
|
2
|
+
interface CheckboxIconProps extends ComponentPropsWithoutRef<'svg'> {
|
|
3
|
+
indeterminate: boolean | undefined;
|
|
4
|
+
}
|
|
5
|
+
export declare const CheckboxIcon: FunctionComponent<CheckboxIconProps>;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=CheckboxIcon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckboxIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/checkbox/CheckboxIcon.tsx"],"names":[],"mappings":"AACA,OAAO,EAAC,wBAAwB,EAAE,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAElE,UAAU,iBAAkB,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IAC/D,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC;CACtC;AAED,eAAO,MAAM,YAAY,EAAE,iBAAiB,CAAC,iBAAiB,CAM7D,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { IconCheck, IconMinus } from '@coveord/plasma-react-icons';
|
|
3
|
+
export const CheckboxIcon = ({ indeterminate, ...others })=>{
|
|
4
|
+
if (indeterminate) {
|
|
5
|
+
return /*#__PURE__*/ _jsx(IconMinus, {
|
|
6
|
+
stroke: 3,
|
|
7
|
+
...others
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
return /*#__PURE__*/ _jsx(IconCheck, {
|
|
11
|
+
stroke: 3,
|
|
12
|
+
...others
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
//# sourceMappingURL=CheckboxIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/checkbox/CheckboxIcon.tsx"],"sourcesContent":["import {IconCheck, IconMinus} from '@coveord/plasma-react-icons';\nimport {ComponentPropsWithoutRef, FunctionComponent} from 'react';\n\ninterface CheckboxIconProps extends ComponentPropsWithoutRef<'svg'> {\n indeterminate: boolean | undefined;\n}\n\nexport const CheckboxIcon: FunctionComponent<CheckboxIconProps> = ({indeterminate, ...others}: CheckboxIconProps) => {\n if (indeterminate) {\n return <IconMinus stroke={3} {...others} />;\n }\n\n return <IconCheck stroke={3} {...others} />;\n};\n"],"names":["IconCheck","IconMinus","CheckboxIcon","indeterminate","others","stroke"],"mappings":";AAAA,SAAQA,SAAS,EAAEC,SAAS,QAAO,8BAA8B;AAOjE,OAAO,MAAMC,eAAqD,CAAC,EAACC,aAAa,EAAE,GAAGC,QAA0B;IAC5G,IAAID,eAAe;QACf,qBAAO,KAACF;YAAUI,QAAQ;YAAI,GAAGD,MAAM;;IAC3C;IAEA,qBAAO,KAACJ;QAAUK,QAAQ;QAAI,GAAGD,MAAM;;AAC3C,EAAE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/checkbox/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/checkbox/index.ts"],"sourcesContent":["export * from './CheckboxIcon';\n"],"names":[],"mappings":"AAAA,cAAc,iBAAiB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeEditor.d.ts","sourceRoot":"","sources":["../../../../src/components/code-editor/CodeEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKH,iBAAiB,EAIjB,UAAU,EAKb,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAiB,MAAM,IAAI,YAAY,EAAC,MAAM,eAAe,CAAC;AACrE,OAAO,EAAC,iBAAiB,EAA8B,MAAM,OAAO,CAAC;AAQrE,UAAU,eACN,SAAQ,IAAI,CACJ,iBAAiB,EACjB,gBAAgB,GAAG,mBAAmB,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CACzF,EACD,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,KAAK,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;IACrF,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,QAAQ,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,kDAAkD;IAClD,QAAQ,CAAC,IAAI,IAAI,CAAC;IAClB,+CAA+C;IAC/C,MAAM,CAAC,IAAI,IAAI,CAAC;IAChB,qDAAqD;IACrD,OAAO,CAAC,IAAI,IAAI,CAAC;IACjB,oEAAoE;IACpE,YAAY,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;IACjF;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAC/B;;;;OAIG;IACH,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,oCAAoC,EAAE,SAAS,CAAC,CAAC;CAChF;AASD,eAAO,MAAM,UAAU,EAAE,iBAAiB,CAAC,eAAe,
|
|
1
|
+
{"version":3,"file":"CodeEditor.d.ts","sourceRoot":"","sources":["../../../../src/components/code-editor/CodeEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKH,iBAAiB,EAIjB,UAAU,EAKb,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAiB,MAAM,IAAI,YAAY,EAAC,MAAM,eAAe,CAAC;AACrE,OAAO,EAAC,iBAAiB,EAA8B,MAAM,OAAO,CAAC;AAQrE,UAAU,eACN,SAAQ,IAAI,CACJ,iBAAiB,EACjB,gBAAgB,GAAG,mBAAmB,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CACzF,EACD,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,KAAK,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;IACrF,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,QAAQ,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,kDAAkD;IAClD,QAAQ,CAAC,IAAI,IAAI,CAAC;IAClB,+CAA+C;IAC/C,MAAM,CAAC,IAAI,IAAI,CAAC;IAChB,qDAAqD;IACrD,OAAO,CAAC,IAAI,IAAI,CAAC;IACjB,oEAAoE;IACpE,YAAY,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;IACjF;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAC/B;;;;OAIG;IACH,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,oCAAoC,EAAE,SAAS,CAAC,CAAC;CAChF;AASD,eAAO,MAAM,UAAU,EAAE,iBAAiB,CAAC,eAAe,CA4LzD,CAAC"}
|
|
@@ -42,20 +42,12 @@ export const CodeEditor = (props)=>{
|
|
|
42
42
|
}
|
|
43
43
|
};
|
|
44
44
|
const registerThemes = (monaco)=>{
|
|
45
|
-
monaco.editor.defineTheme('light
|
|
45
|
+
monaco.editor.defineTheme('light', {
|
|
46
46
|
base: 'vs',
|
|
47
47
|
inherit: true,
|
|
48
48
|
rules: [],
|
|
49
49
|
colors: {
|
|
50
|
-
'editor.background': theme.colors.gray[
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
|
-
monaco.editor.defineTheme('vs-dark-disabled', {
|
|
54
|
-
base: 'vs-dark',
|
|
55
|
-
inherit: true,
|
|
56
|
-
rules: [],
|
|
57
|
-
colors: {
|
|
58
|
-
'editor.background': theme.colors.navy[7]
|
|
50
|
+
'editor.background': theme.colors.gray[0]
|
|
59
51
|
}
|
|
60
52
|
});
|
|
61
53
|
};
|
|
@@ -92,13 +84,13 @@ export const CodeEditor = (props)=>{
|
|
|
92
84
|
children: description
|
|
93
85
|
}) : null;
|
|
94
86
|
const _error = error ? /*#__PURE__*/ _jsx(Input.Error, {
|
|
95
|
-
mt: "xs",
|
|
96
87
|
...errorProps,
|
|
97
88
|
children: error
|
|
98
89
|
}) : /*#__PURE__*/ _jsx(Space, {
|
|
99
90
|
h: "xs"
|
|
100
91
|
});
|
|
101
|
-
const _header = _label || _description ? /*#__PURE__*/ _jsxs(
|
|
92
|
+
const _header = _label || _description ? /*#__PURE__*/ _jsxs(Stack, {
|
|
93
|
+
gap: "xxs",
|
|
102
94
|
children: [
|
|
103
95
|
_label,
|
|
104
96
|
_description
|
|
@@ -106,7 +98,7 @@ export const CodeEditor = (props)=>{
|
|
|
106
98
|
}) : null;
|
|
107
99
|
const _buttons = /*#__PURE__*/ _jsxs(Group, {
|
|
108
100
|
justify: "right",
|
|
109
|
-
gap:
|
|
101
|
+
gap: "xs",
|
|
110
102
|
children: [
|
|
111
103
|
/*#__PURE__*/ _jsx(Search, {
|
|
112
104
|
handleSearch: handleSearch
|
|
@@ -149,13 +141,15 @@ export const CodeEditor = (props)=>{
|
|
|
149
141
|
},
|
|
150
142
|
value: _value,
|
|
151
143
|
onChange: handleChange,
|
|
152
|
-
|
|
144
|
+
beforeMount: (monaco)=>{
|
|
145
|
+
registerLanguages(monaco);
|
|
146
|
+
registerThemes(monaco);
|
|
147
|
+
},
|
|
148
|
+
onMount: (editor)=>{
|
|
153
149
|
editorRef.current = editor;
|
|
154
150
|
if (editorHandle) {
|
|
155
151
|
editorHandle.current = editor;
|
|
156
152
|
}
|
|
157
|
-
registerLanguages(monaco);
|
|
158
|
-
registerThemes(monaco);
|
|
159
153
|
editor.onDidFocusEditorText(()=>onFocus?.());
|
|
160
154
|
editor.onDidBlurEditorText(async ()=>{
|
|
161
155
|
// monaco editor has a timeout of 500ms populating errors, we want to ensure that checking errors happen after that
|
|
@@ -173,14 +167,19 @@ export const CodeEditor = (props)=>{
|
|
|
173
167
|
});
|
|
174
168
|
return /*#__PURE__*/ _jsxs(Stack, {
|
|
175
169
|
justify: "flex-start",
|
|
176
|
-
gap:
|
|
170
|
+
gap: "sm",
|
|
177
171
|
h: Math.max(parentHeight, minHeight),
|
|
178
172
|
mah: maxHeight,
|
|
179
173
|
ref: ref,
|
|
180
174
|
...others,
|
|
181
175
|
children: [
|
|
182
|
-
|
|
183
|
-
|
|
176
|
+
/*#__PURE__*/ _jsxs(Group, {
|
|
177
|
+
justify: "space-between",
|
|
178
|
+
children: [
|
|
179
|
+
_header,
|
|
180
|
+
_buttons
|
|
181
|
+
]
|
|
182
|
+
}),
|
|
184
183
|
_editor,
|
|
185
184
|
_error
|
|
186
185
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/code-editor/CodeEditor.tsx"],"sourcesContent":["import {\n Box,\n Center,\n Group,\n Input,\n InputWrapperProps,\n Loader,\n Space,\n Stack,\n StackProps,\n px,\n useMantineColorScheme,\n useMantineTheme,\n useProps,\n} from '@mantine/core';\nimport {useUncontrolled} from '@mantine/hooks';\nimport Editor, {Monaco, loader} from '@monaco-editor/react';\nimport {MarkerSeverity, editor as monacoEditor} from 'monaco-editor';\nimport {FunctionComponent, useEffect, useRef, useState} from 'react';\n\nimport cx from 'clsx';\nimport {useParentHeight} from '../../hooks';\nimport {CopyToClipboard} from '../copyToClipboard';\nimport CodeEditorClasses from './CodeEditor.module.css';\nimport {XML} from './languages/xml';\nimport {Search} from './search';\ninterface CodeEditorProps\n extends Omit<\n InputWrapperProps,\n 'inputContainer' | 'inputWrapperOrder' | 'classNames' | 'styles' | 'vars' | 'onChange'\n >,\n Omit<StackProps, 'onChange'> {\n /**\n * The language syntax of the editor\n *\n * @default 'plaintext'\n */\n language?: 'plaintext' | 'json' | 'markdown' | 'python' | 'xml' | (string & unknown);\n /** Default value for uncontrolled input */\n defaultValue?: string;\n /** Value for controlled input */\n value?: string;\n /** onChange value for controlled input */\n onChange?(value: string): void;\n /** Called whenever the search icon is clicked */\n onSearch?(): void;\n /** Called whenever the copy icon is clicked */\n onCopy?(): void;\n /** Called whenever the code editor gets the focus */\n onFocus?(): void;\n /** Ref object that provides access to the editor's functionality */\n editorHandle?: React.MutableRefObject<monacoEditor.IStandaloneCodeEditor | null>;\n /**\n * The minimal height of the CodeEditor (label and description included)\n *\n * By default the CodeEditor is adjusted to fill its parent height.\n * In the case where the parent height is too short, it will use this value as minimum.\n *\n * @default 300\n */\n minHeight?: number;\n /**\n * The maximal height of the CodeEditor (label and description included)\n *\n * By default the CodeEditor is adjusted to fill its parent height.\n * In the case where the parent height would be too high for your liking, you can use this prop to set a maximum.\n */\n maxHeight?: number;\n disabled?: boolean;\n /**\n * Defines how the monaco editor files will be loaded.\n * Note that using `'local'` requires [some additional configuration](https://github.com/suren-atoyan/monaco-react#use-monaco-editor-as-an-npm-package).\n *\n * @default 'local'\n */\n monacoLoader?: 'cdn' | 'local';\n /**\n * Options to pass to the monaco editor.\n * Currently only supporting [`tabSize`](https://microsoft.github.io/monaco-editor/typedoc/interfaces/editor.IStandaloneEditorConstructionOptions.html#tabSize).\n *\n */\n options?: Pick<monacoEditor.IStandaloneEditorConstructionOptions, 'tabSize'>;\n}\n\nconst defaultProps: Partial<CodeEditorProps> = {\n language: 'plaintext',\n monacoLoader: 'local',\n defaultValue: '',\n minHeight: 300,\n};\n\nexport const CodeEditor: FunctionComponent<CodeEditorProps> = (props) => {\n const {\n language,\n defaultValue,\n onChange,\n onCopy,\n onSearch,\n onFocus,\n value,\n label,\n required,\n labelProps,\n error,\n errorProps,\n description,\n descriptionProps,\n minHeight,\n maxHeight,\n disabled,\n monacoLoader,\n options: {tabSize} = {tabSize: 2},\n editorHandle,\n ...others\n } = useProps('CodeEditor', defaultProps, props);\n const [loaded, setLoaded] = useState(false);\n const [_value, handleChange] = useUncontrolled<string>({\n value,\n defaultValue,\n onChange,\n finalValue: '',\n });\n const [parentHeight, ref] = useParentHeight();\n const editorRef = useRef(null);\n\n const loadLocalMonaco = async () => {\n const monacoInstance = await import('monaco-editor');\n loader.config({monaco: monacoInstance});\n setLoaded(true);\n };\n\n const registerLanguages = (monaco: Monaco) => {\n if (monaco && language === 'xml') {\n XML.register(monaco);\n }\n };\n\n const registerThemes = (monaco: Monaco) => {\n monaco.editor.defineTheme('light-disabled', {\n base: 'vs',\n inherit: true,\n rules: [],\n colors: {\n 'editor.background': theme.colors.gray[2],\n },\n });\n monaco.editor.defineTheme('vs-dark-disabled', {\n base: 'vs-dark',\n inherit: true,\n rules: [],\n colors: {\n 'editor.background': theme.colors.navy[7],\n },\n });\n };\n\n const handleSearch = () => {\n if (editorRef.current) {\n editorRef.current.focus();\n editorRef.current.trigger('editor', 'actions.find', '');\n onSearch?.();\n }\n };\n\n const [hasMonacoError, setHasMonacoError] = useState(false);\n const hasMonacoErrorRef = useRef(false);\n\n hasMonacoErrorRef.current = hasMonacoError;\n\n const renderErrorOutline = !!error || hasMonacoError;\n const theme = useMantineTheme();\n const {colorScheme} = useMantineColorScheme();\n\n useEffect(() => {\n if (monacoLoader === 'local') {\n loadLocalMonaco();\n } else {\n setLoaded(true);\n }\n }, []);\n\n const handleValidate = (markers: monacoEditor.IMarker[]) => {\n setHasMonacoError(markers.some((marker) => marker.severity === MarkerSeverity.Error));\n };\n\n const _label = label ? (\n <Input.Label required={required} {...labelProps}>\n {label}\n </Input.Label>\n ) : null;\n\n const _description = description ? (\n <Input.Description {...descriptionProps}>{description}</Input.Description>\n ) : null;\n\n const _error = error ? (\n <Input.Error mt=\"xs\" {...errorProps}>\n {error}\n </Input.Error>\n ) : (\n <Space h=\"xs\" />\n );\n\n const _header =\n _label || _description ? (\n <Box>\n {_label}\n {_description}\n </Box>\n ) : null;\n\n const _buttons = (\n <Group justify=\"right\" gap={0}>\n <Search handleSearch={handleSearch} />\n <CopyToClipboard value={_value} onCopy={() => onCopy?.()} />\n </Group>\n );\n let editorTheme = colorScheme === 'light' ? 'light' : 'vs-dark';\n if (disabled) {\n editorTheme += '-disabled';\n }\n\n const _editor = loaded ? (\n <Box\n p=\"md\"\n pl=\"xs\"\n className={cx(\n CodeEditorClasses.editor,\n {[CodeEditorClasses.valid]: !renderErrorOutline},\n {[CodeEditorClasses.error]: renderErrorOutline},\n {[CodeEditorClasses.disabled]: disabled},\n )}\n data-testid=\"editor-wrapper\"\n >\n <Editor\n onValidate={handleValidate}\n defaultLanguage={language}\n theme={editorTheme}\n options={{\n minimap: {enabled: false},\n wordWrap: 'on',\n scrollBeyondLastLine: false,\n formatOnPaste: true,\n fontSize: px(theme.fontSizes.xs) as number,\n readOnly: disabled,\n tabSize,\n }}\n value={_value}\n onChange={handleChange}\n onMount={(editor, monaco) => {\n editorRef.current = editor;\n if (editorHandle) {\n editorHandle.current = editor;\n }\n registerLanguages(monaco);\n registerThemes(monaco);\n editor.onDidFocusEditorText(() => onFocus?.());\n editor.onDidBlurEditorText(async () => {\n // monaco editor has a timeout of 500ms populating errors, we want to ensure that checking errors happen after that\n setTimeout(async () => {\n if (!hasMonacoErrorRef.current) {\n await editor?.getAction('editor.action.formatDocument')?.run();\n }\n }, 550);\n });\n }}\n />\n </Box>\n ) : (\n <Center className={CodeEditorClasses.editor}>\n <Loader />\n </Center>\n );\n\n return (\n <Stack justify=\"flex-start\" gap={0} h={Math.max(parentHeight, minHeight)} mah={maxHeight} ref={ref} {...others}>\n {_header}\n {_buttons}\n {_editor}\n {_error}\n </Stack>\n );\n};\n"],"names":["Box","Center","Group","Input","Loader","Space","Stack","px","useMantineColorScheme","useMantineTheme","useProps","useUncontrolled","Editor","loader","MarkerSeverity","useEffect","useRef","useState","cx","useParentHeight","CopyToClipboard","CodeEditorClasses","XML","Search","defaultProps","language","monacoLoader","defaultValue","minHeight","CodeEditor","props","onChange","onCopy","onSearch","onFocus","value","label","required","labelProps","error","errorProps","description","descriptionProps","maxHeight","disabled","options","tabSize","editorHandle","others","loaded","setLoaded","_value","handleChange","finalValue","parentHeight","ref","editorRef","loadLocalMonaco","monacoInstance","config","monaco","registerLanguages","register","registerThemes","editor","defineTheme","base","inherit","rules","colors","theme","gray","navy","handleSearch","current","focus","trigger","hasMonacoError","setHasMonacoError","hasMonacoErrorRef","renderErrorOutline","colorScheme","handleValidate","markers","some","marker","severity","Error","_label","Label","_description","Description","_error","mt","h","_header","_buttons","justify","gap","editorTheme","_editor","p","pl","className","valid","data-testid","onValidate","defaultLanguage","minimap","enabled","wordWrap","scrollBeyondLastLine","formatOnPaste","fontSize","fontSizes","xs","readOnly","onMount","onDidFocusEditorText","onDidBlurEditorText","setTimeout","getAction","run","Math","max","mah"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/code-editor/CodeEditor.tsx"],"sourcesContent":["import {\n Box,\n Center,\n Group,\n Input,\n InputWrapperProps,\n Loader,\n Space,\n Stack,\n StackProps,\n px,\n useMantineColorScheme,\n useMantineTheme,\n useProps,\n} from '@mantine/core';\nimport {useUncontrolled} from '@mantine/hooks';\nimport Editor, {Monaco, loader} from '@monaco-editor/react';\nimport {MarkerSeverity, editor as monacoEditor} from 'monaco-editor';\nimport {FunctionComponent, useEffect, useRef, useState} from 'react';\n\nimport cx from 'clsx';\nimport {useParentHeight} from '../../hooks';\nimport {CopyToClipboard} from '../copyToClipboard';\nimport CodeEditorClasses from './CodeEditor.module.css';\nimport {XML} from './languages/xml';\nimport {Search} from './search';\ninterface CodeEditorProps\n extends Omit<\n InputWrapperProps,\n 'inputContainer' | 'inputWrapperOrder' | 'classNames' | 'styles' | 'vars' | 'onChange'\n >,\n Omit<StackProps, 'onChange'> {\n /**\n * The language syntax of the editor\n *\n * @default 'plaintext'\n */\n language?: 'plaintext' | 'json' | 'markdown' | 'python' | 'xml' | (string & unknown);\n /** Default value for uncontrolled input */\n defaultValue?: string;\n /** Value for controlled input */\n value?: string;\n /** onChange value for controlled input */\n onChange?(value: string): void;\n /** Called whenever the search icon is clicked */\n onSearch?(): void;\n /** Called whenever the copy icon is clicked */\n onCopy?(): void;\n /** Called whenever the code editor gets the focus */\n onFocus?(): void;\n /** Ref object that provides access to the editor's functionality */\n editorHandle?: React.MutableRefObject<monacoEditor.IStandaloneCodeEditor | null>;\n /**\n * The minimal height of the CodeEditor (label and description included)\n *\n * By default the CodeEditor is adjusted to fill its parent height.\n * In the case where the parent height is too short, it will use this value as minimum.\n *\n * @default 300\n */\n minHeight?: number;\n /**\n * The maximal height of the CodeEditor (label and description included)\n *\n * By default the CodeEditor is adjusted to fill its parent height.\n * In the case where the parent height would be too high for your liking, you can use this prop to set a maximum.\n */\n maxHeight?: number;\n disabled?: boolean;\n /**\n * Defines how the monaco editor files will be loaded.\n * Note that using `'local'` requires [some additional configuration](https://github.com/suren-atoyan/monaco-react#use-monaco-editor-as-an-npm-package).\n *\n * @default 'local'\n */\n monacoLoader?: 'cdn' | 'local';\n /**\n * Options to pass to the monaco editor.\n * Currently only supporting [`tabSize`](https://microsoft.github.io/monaco-editor/typedoc/interfaces/editor.IStandaloneEditorConstructionOptions.html#tabSize).\n *\n */\n options?: Pick<monacoEditor.IStandaloneEditorConstructionOptions, 'tabSize'>;\n}\n\nconst defaultProps: Partial<CodeEditorProps> = {\n language: 'plaintext',\n monacoLoader: 'local',\n defaultValue: '',\n minHeight: 300,\n};\n\nexport const CodeEditor: FunctionComponent<CodeEditorProps> = (props) => {\n const {\n language,\n defaultValue,\n onChange,\n onCopy,\n onSearch,\n onFocus,\n value,\n label,\n required,\n labelProps,\n error,\n errorProps,\n description,\n descriptionProps,\n minHeight,\n maxHeight,\n disabled,\n monacoLoader,\n options: {tabSize} = {tabSize: 2},\n editorHandle,\n ...others\n } = useProps('CodeEditor', defaultProps, props);\n const [loaded, setLoaded] = useState(false);\n const [_value, handleChange] = useUncontrolled<string>({\n value,\n defaultValue,\n onChange,\n finalValue: '',\n });\n const [parentHeight, ref] = useParentHeight();\n const editorRef = useRef(null);\n\n const loadLocalMonaco = async () => {\n const monacoInstance = await import('monaco-editor');\n loader.config({monaco: monacoInstance});\n setLoaded(true);\n };\n\n const registerLanguages = (monaco: Monaco) => {\n if (monaco && language === 'xml') {\n XML.register(monaco);\n }\n };\n\n const registerThemes = (monaco: Monaco) => {\n monaco.editor.defineTheme('light', {\n base: 'vs',\n inherit: true,\n rules: [],\n colors: {\n 'editor.background': theme.colors.gray[0],\n },\n });\n };\n\n const handleSearch = () => {\n if (editorRef.current) {\n editorRef.current.focus();\n editorRef.current.trigger('editor', 'actions.find', '');\n onSearch?.();\n }\n };\n\n const [hasMonacoError, setHasMonacoError] = useState(false);\n const hasMonacoErrorRef = useRef(false);\n\n hasMonacoErrorRef.current = hasMonacoError;\n\n const renderErrorOutline = !!error || hasMonacoError;\n const theme = useMantineTheme();\n const {colorScheme} = useMantineColorScheme();\n\n useEffect(() => {\n if (monacoLoader === 'local') {\n loadLocalMonaco();\n } else {\n setLoaded(true);\n }\n }, []);\n\n const handleValidate = (markers: monacoEditor.IMarker[]) => {\n setHasMonacoError(markers.some((marker) => marker.severity === MarkerSeverity.Error));\n };\n\n const _label = label ? (\n <Input.Label required={required} {...labelProps}>\n {label}\n </Input.Label>\n ) : null;\n\n const _description = description ? (\n <Input.Description {...descriptionProps}>{description}</Input.Description>\n ) : null;\n\n const _error = error ? <Input.Error {...errorProps}>{error}</Input.Error> : <Space h=\"xs\" />;\n\n const _header =\n _label || _description ? (\n <Stack gap=\"xxs\">\n {_label}\n {_description}\n </Stack>\n ) : null;\n\n const _buttons = (\n <Group justify=\"right\" gap=\"xs\">\n <Search handleSearch={handleSearch} />\n <CopyToClipboard value={_value} onCopy={() => onCopy?.()} />\n </Group>\n );\n let editorTheme = colorScheme === 'light' ? 'light' : 'vs-dark';\n if (disabled) {\n editorTheme += '-disabled';\n }\n\n const _editor = loaded ? (\n <Box\n p=\"md\"\n pl=\"xs\"\n className={cx(\n CodeEditorClasses.editor,\n {[CodeEditorClasses.valid]: !renderErrorOutline},\n {[CodeEditorClasses.error]: renderErrorOutline},\n {[CodeEditorClasses.disabled]: disabled},\n )}\n data-testid=\"editor-wrapper\"\n >\n <Editor\n onValidate={handleValidate}\n defaultLanguage={language}\n theme={editorTheme}\n options={{\n minimap: {enabled: false},\n wordWrap: 'on',\n scrollBeyondLastLine: false,\n formatOnPaste: true,\n fontSize: px(theme.fontSizes.xs) as number,\n readOnly: disabled,\n tabSize,\n }}\n value={_value}\n onChange={handleChange}\n beforeMount={(monaco) => {\n registerLanguages(monaco);\n registerThemes(monaco);\n }}\n onMount={(editor) => {\n editorRef.current = editor;\n if (editorHandle) {\n editorHandle.current = editor;\n }\n editor.onDidFocusEditorText(() => onFocus?.());\n editor.onDidBlurEditorText(async () => {\n // monaco editor has a timeout of 500ms populating errors, we want to ensure that checking errors happen after that\n setTimeout(async () => {\n if (!hasMonacoErrorRef.current) {\n await editor?.getAction('editor.action.formatDocument')?.run();\n }\n }, 550);\n });\n }}\n />\n </Box>\n ) : (\n <Center className={CodeEditorClasses.editor}>\n <Loader />\n </Center>\n );\n\n return (\n <Stack\n justify=\"flex-start\"\n gap=\"sm\"\n h={Math.max(parentHeight, minHeight)}\n mah={maxHeight}\n ref={ref}\n {...others}\n >\n <Group justify=\"space-between\">\n {_header}\n {_buttons}\n </Group>\n {_editor}\n {_error}\n </Stack>\n );\n};\n"],"names":["Box","Center","Group","Input","Loader","Space","Stack","px","useMantineColorScheme","useMantineTheme","useProps","useUncontrolled","Editor","loader","MarkerSeverity","useEffect","useRef","useState","cx","useParentHeight","CopyToClipboard","CodeEditorClasses","XML","Search","defaultProps","language","monacoLoader","defaultValue","minHeight","CodeEditor","props","onChange","onCopy","onSearch","onFocus","value","label","required","labelProps","error","errorProps","description","descriptionProps","maxHeight","disabled","options","tabSize","editorHandle","others","loaded","setLoaded","_value","handleChange","finalValue","parentHeight","ref","editorRef","loadLocalMonaco","monacoInstance","config","monaco","registerLanguages","register","registerThemes","editor","defineTheme","base","inherit","rules","colors","theme","gray","handleSearch","current","focus","trigger","hasMonacoError","setHasMonacoError","hasMonacoErrorRef","renderErrorOutline","colorScheme","handleValidate","markers","some","marker","severity","Error","_label","Label","_description","Description","_error","h","_header","gap","_buttons","justify","editorTheme","_editor","p","pl","className","valid","data-testid","onValidate","defaultLanguage","minimap","enabled","wordWrap","scrollBeyondLastLine","formatOnPaste","fontSize","fontSizes","xs","readOnly","beforeMount","onMount","onDidFocusEditorText","onDidBlurEditorText","setTimeout","getAction","run","Math","max","mah"],"mappings":"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"}
|