react-science 0.28.1 → 0.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/lib-esm/app/hooks/file-loading.d.ts +2 -1
  2. package/lib-esm/app/hooks/file-loading.d.ts.map +1 -1
  3. package/lib-esm/app/hooks/file-loading.js.map +1 -1
  4. package/lib-esm/app/panels/SignalProcessingPanel.d.ts.map +1 -1
  5. package/lib-esm/app/panels/SignalProcessingPanel.js +3 -3
  6. package/lib-esm/app/panels/SignalProcessingPanel.js.map +1 -1
  7. package/lib-esm/components/button/Button.d.ts +8 -14
  8. package/lib-esm/components/button/Button.d.ts.map +1 -1
  9. package/lib-esm/components/button/Button.js +7 -31
  10. package/lib-esm/components/button/Button.js.map +1 -1
  11. package/lib-esm/components/drop-zone/DropZone.d.ts +6 -2
  12. package/lib-esm/components/drop-zone/DropZone.d.ts.map +1 -1
  13. package/lib-esm/components/drop-zone/DropZone.js +9 -15
  14. package/lib-esm/components/drop-zone/DropZone.js.map +1 -1
  15. package/lib-esm/components/forms/index.d.ts +0 -5
  16. package/lib-esm/components/forms/index.d.ts.map +1 -1
  17. package/lib-esm/components/forms/index.js +0 -5
  18. package/lib-esm/components/forms/index.js.map +1 -1
  19. package/lib-esm/components/forms/radio-group/RadioGroup.d.ts +1 -0
  20. package/lib-esm/components/forms/radio-group/RadioGroup.d.ts.map +1 -1
  21. package/lib-esm/components/forms/radio-group/RadioGroup.js +2 -2
  22. package/lib-esm/components/forms/radio-group/RadioGroup.js.map +1 -1
  23. package/lib-esm/components/forms/styles.d.ts +0 -22
  24. package/lib-esm/components/forms/styles.d.ts.map +1 -1
  25. package/lib-esm/components/forms/styles.js +0 -72
  26. package/lib-esm/components/forms/styles.js.map +1 -1
  27. package/lib-esm/components/header/PanelHeader.d.ts.map +1 -1
  28. package/lib-esm/components/header/PanelHeader.js +1 -2
  29. package/lib-esm/components/header/PanelHeader.js.map +1 -1
  30. package/lib-esm/components/index.d.ts +0 -2
  31. package/lib-esm/components/index.d.ts.map +1 -1
  32. package/lib-esm/components/index.js +0 -2
  33. package/lib-esm/components/index.js.map +1 -1
  34. package/lib-esm/components/info-panel/InfoPanel.d.ts.map +1 -1
  35. package/lib-esm/components/info-panel/InfoPanel.js +5 -4
  36. package/lib-esm/components/info-panel/InfoPanel.js.map +1 -1
  37. package/lib-esm/components/modal/ConfirmModal.d.ts.map +1 -1
  38. package/lib-esm/components/modal/ConfirmModal.js +1 -7
  39. package/lib-esm/components/modal/ConfirmModal.js.map +1 -1
  40. package/lib-esm/components/modal/Modal.d.ts.map +1 -1
  41. package/lib-esm/components/modal/Modal.js +2 -2
  42. package/lib-esm/components/modal/Modal.js.map +1 -1
  43. package/lib-esm/components/toolbar/PanelPreferencesToolbar.d.ts.map +1 -1
  44. package/lib-esm/components/toolbar/PanelPreferencesToolbar.js +1 -2
  45. package/lib-esm/components/toolbar/PanelPreferencesToolbar.js.map +1 -1
  46. package/lib-esm/components/toolbar/Toolbar.d.ts.map +1 -1
  47. package/lib-esm/components/toolbar/Toolbar.js +16 -12
  48. package/lib-esm/components/toolbar/Toolbar.js.map +1 -1
  49. package/package.json +25 -23
  50. package/src/app/hooks/file-loading.ts +4 -2
  51. package/src/app/panels/SignalProcessingPanel.tsx +3 -6
  52. package/src/components/button/Button.tsx +29 -59
  53. package/src/components/drop-zone/DropZone.tsx +42 -25
  54. package/src/components/forms/index.ts +0 -5
  55. package/src/components/forms/radio-group/RadioGroup.tsx +3 -0
  56. package/src/components/forms/styles.ts +0 -92
  57. package/src/components/header/PanelHeader.tsx +1 -8
  58. package/src/components/index.ts +0 -2
  59. package/src/components/info-panel/InfoPanel.tsx +6 -3
  60. package/src/components/modal/ConfirmModal.tsx +2 -16
  61. package/src/components/modal/Modal.tsx +10 -2
  62. package/src/components/toolbar/PanelPreferencesToolbar.tsx +2 -15
  63. package/src/components/toolbar/Toolbar.tsx +25 -29
  64. package/lib-esm/components/dropdown-menu/DropdownMenu.d.ts +0 -28
  65. package/lib-esm/components/dropdown-menu/DropdownMenu.d.ts.map +0 -1
  66. package/lib-esm/components/dropdown-menu/DropdownMenu.js +0 -41
  67. package/lib-esm/components/dropdown-menu/DropdownMenu.js.map +0 -1
  68. package/lib-esm/components/dropdown-menu/MenuItems.d.ts +0 -19
  69. package/lib-esm/components/dropdown-menu/MenuItems.d.ts.map +0 -1
  70. package/lib-esm/components/dropdown-menu/MenuItems.js +0 -77
  71. package/lib-esm/components/dropdown-menu/MenuItems.js.map +0 -1
  72. package/lib-esm/components/dropdown-menu/index.d.ts +0 -3
  73. package/lib-esm/components/dropdown-menu/index.d.ts.map +0 -1
  74. package/lib-esm/components/dropdown-menu/index.js +0 -2
  75. package/lib-esm/components/dropdown-menu/index.js.map +0 -1
  76. package/lib-esm/components/dropdown-menu/useContextMenuPlacement.d.ts +0 -18
  77. package/lib-esm/components/dropdown-menu/useContextMenuPlacement.d.ts.map +0 -1
  78. package/lib-esm/components/dropdown-menu/useContextMenuPlacement.js +0 -49
  79. package/lib-esm/components/dropdown-menu/useContextMenuPlacement.js.map +0 -1
  80. package/lib-esm/components/forms/Checkbox.d.ts +0 -11
  81. package/lib-esm/components/forms/Checkbox.d.ts.map +0 -1
  82. package/lib-esm/components/forms/Checkbox.js +0 -35
  83. package/lib-esm/components/forms/Checkbox.js.map +0 -1
  84. package/lib-esm/components/forms/Input.d.ts +0 -19
  85. package/lib-esm/components/forms/Input.d.ts.map +0 -1
  86. package/lib-esm/components/forms/Input.js +0 -60
  87. package/lib-esm/components/forms/Input.js.map +0 -1
  88. package/lib-esm/components/forms/Select.d.ts +0 -21
  89. package/lib-esm/components/forms/Select.d.ts.map +0 -1
  90. package/lib-esm/components/forms/Select.js +0 -90
  91. package/lib-esm/components/forms/Select.js.map +0 -1
  92. package/lib-esm/components/forms/TextArea.d.ts +0 -8
  93. package/lib-esm/components/forms/TextArea.d.ts.map +0 -1
  94. package/lib-esm/components/forms/TextArea.js +0 -19
  95. package/lib-esm/components/forms/TextArea.js.map +0 -1
  96. package/lib-esm/components/forms/context/FieldsContext.d.ts +0 -16
  97. package/lib-esm/components/forms/context/FieldsContext.d.ts.map +0 -1
  98. package/lib-esm/components/forms/context/FieldsContext.js +0 -47
  99. package/lib-esm/components/forms/context/FieldsContext.js.map +0 -1
  100. package/lib-esm/components/forms/context/index.d.ts +0 -2
  101. package/lib-esm/components/forms/context/index.d.ts.map +0 -1
  102. package/lib-esm/components/forms/context/index.js +0 -2
  103. package/lib-esm/components/forms/context/index.js.map +0 -1
  104. package/lib-esm/components/modal/ModalCloseButton.d.ts +0 -4
  105. package/lib-esm/components/modal/ModalCloseButton.d.ts.map +0 -1
  106. package/lib-esm/components/modal/ModalCloseButton.js +0 -11
  107. package/lib-esm/components/modal/ModalCloseButton.js.map +0 -1
  108. package/lib-esm/components/spinner/FullSpinner.d.ts +0 -7
  109. package/lib-esm/components/spinner/FullSpinner.d.ts.map +0 -1
  110. package/lib-esm/components/spinner/FullSpinner.js +0 -24
  111. package/lib-esm/components/spinner/FullSpinner.js.map +0 -1
  112. package/lib-esm/components/spinner/index.d.ts +0 -2
  113. package/lib-esm/components/spinner/index.d.ts.map +0 -1
  114. package/lib-esm/components/spinner/index.js +0 -2
  115. package/lib-esm/components/spinner/index.js.map +0 -1
  116. package/src/components/dropdown-menu/DropdownMenu.tsx +0 -160
  117. package/src/components/dropdown-menu/MenuItems.tsx +0 -146
  118. package/src/components/dropdown-menu/index.ts +0 -2
  119. package/src/components/dropdown-menu/useContextMenuPlacement.ts +0 -76
  120. package/src/components/forms/Checkbox.tsx +0 -77
  121. package/src/components/forms/Input.tsx +0 -144
  122. package/src/components/forms/Select.tsx +0 -197
  123. package/src/components/forms/TextArea.tsx +0 -45
  124. package/src/components/forms/context/FieldsContext.tsx +0 -82
  125. package/src/components/forms/context/index.ts +0 -1
  126. package/src/components/modal/ModalCloseButton.tsx +0 -21
  127. package/src/components/spinner/FullSpinner.tsx +0 -57
  128. package/src/components/spinner/index.ts +0 -1
@@ -1,82 +0,0 @@
1
- import styled from '@emotion/styled';
2
- import { createContext, ReactNode, useContext, useMemo } from 'react';
3
-
4
- interface FieldContext {
5
- name?: string;
6
- variant: 'default' | 'small';
7
- }
8
-
9
- interface FieldProps {
10
- name: string;
11
- label: string;
12
- children: ReactNode;
13
- variant?: 'default' | 'small';
14
- required?: boolean;
15
- }
16
-
17
- const context = createContext<FieldContext | null>(null);
18
-
19
- const FieldContextRoot = styled.div`
20
- display: flex;
21
- flex-flow: row;
22
- min-width: 0;
23
- margin: 0;
24
- padding: 0;
25
- gap: 5px;
26
- `;
27
-
28
- const Label = styled.label<{ variant: FieldProps['variant'] }>`
29
- position: relative;
30
- display: inline-flex;
31
- max-width: 100%;
32
- line-height: ${(props) => (props.variant === 'small' ? '28px' : '32px')};
33
- font-size: ${(props) => (props.variant === 'small' ? '1em' : '1.125em')};
34
- white-space: nowrap;
35
- text-align: end;
36
- `;
37
-
38
- const LabelContainer = styled.div`
39
- flex-grow: 0;
40
- display: inline-block;
41
- overflow: hidden;
42
- text-align: end;
43
- vertical-align: middle;
44
- white-space: nowrap;
45
- `;
46
-
47
- const FieldContextRequired = styled.span`
48
- color: red;
49
- `;
50
-
51
- export function useFieldsContext(): FieldContext {
52
- const ctx = useContext(context);
53
-
54
- if (!ctx) {
55
- return { name: undefined, variant: 'default' };
56
- }
57
-
58
- return ctx;
59
- }
60
-
61
- export function Field(props: FieldProps) {
62
- const { label, name, children, required, variant } = props;
63
-
64
- const memoized = useMemo(() => {
65
- return { name, variant: variant || 'default' };
66
- }, [name, variant]);
67
-
68
- return (
69
- <context.Provider value={memoized}>
70
- <FieldContextRoot>
71
- <LabelContainer>
72
- <Label htmlFor={name} variant={memoized.variant}>
73
- {label} {required && <FieldContextRequired>*</FieldContextRequired>}
74
- :{' '}
75
- </Label>
76
- </LabelContainer>
77
-
78
- {children}
79
- </FieldContextRoot>
80
- </context.Provider>
81
- );
82
- }
@@ -1 +0,0 @@
1
- export * from './FieldsContext';
@@ -1,21 +0,0 @@
1
- /** @jsxImportSource @emotion/react */
2
- import { css } from '@emotion/react';
3
- import { FaTimes } from 'react-icons/fa';
4
-
5
- export default function ModalCloseButton(props: { onClick?: () => void }) {
6
- return (
7
- <div style={{ position: 'absolute', top: 4, right: 4 }}>
8
- <button
9
- type="button"
10
- style={{ padding: '10px 6px 10px 6px' }}
11
- onClick={props.onClick}
12
- css={css({
13
- color: 'rgba(239, 68, 68)',
14
- ':hover': { color: 'rgba(185, 28, 28)' },
15
- })}
16
- >
17
- <FaTimes />
18
- </button>
19
- </div>
20
- );
21
- }
@@ -1,57 +0,0 @@
1
- import { keyframes } from '@emotion/react';
2
- import styled from '@emotion/styled';
3
-
4
- const spin = keyframes`
5
- 100% {
6
- transform: rotate(360deg);
7
- }
8
- `;
9
-
10
- interface FullSpinnerProps {
11
- width?: number;
12
- height?: number;
13
- }
14
-
15
- const Spinner = styled.svg<FullSpinnerProps>`
16
- height: ${({ height }) => `${height || 40}px`};
17
- width: ${({ width }) => `${width || 40}px`};
18
- animation: ${spin} 0.8s linear infinite;
19
- `;
20
-
21
- export function FullSpinner(props: FullSpinnerProps) {
22
- // First div is used when using nextjs/dynamic even after component is loaded
23
- return (
24
- <div style={{ height: '100%' }}>
25
- <div
26
- style={{
27
- display: 'flex',
28
- height: '100%',
29
- width: '100%',
30
- alignItems: 'center',
31
- justifyContent: 'center',
32
- }}
33
- >
34
- <Spinner
35
- {...props}
36
- xmlns="http://www.w3.org/2000/svg"
37
- fill="none"
38
- viewBox="0 0 24 24"
39
- >
40
- <circle
41
- style={{ opacity: 0.25 }}
42
- cx="12"
43
- cy="12"
44
- r="10"
45
- stroke="currentColor"
46
- strokeWidth="4"
47
- />
48
- <path
49
- style={{ opacity: 0.75 }}
50
- fill="currentColor"
51
- d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
52
- />
53
- </Spinner>
54
- </div>
55
- </div>
56
- );
57
- }
@@ -1 +0,0 @@
1
- export * from './FullSpinner';