@datarecce/ui 0.1.1 → 0.1.6

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.
@@ -0,0 +1,106 @@
1
+ /* Schema diff color palette */
2
+ :root {
3
+ --schema-color-added: rgb(204 255 216);
4
+ --schema-color-added-hover: rgb(193 246 205);
5
+ --schema-color-added-active: rgb(166 242 184);
6
+ --schema-color-removed: rgb(255 215 213);
7
+ --schema-color-removed-hover: rgb(246 195 193);
8
+ --schema-color-removed-active: rgb(242 170 166);
9
+ }
10
+
11
+ /* Row backgrounds must be applied to cells because rows use display:contents */
12
+ .row-added {
13
+ background-color: var(--schema-color-added);
14
+ }
15
+
16
+ .row-added:hover,
17
+ .row-added[aria-selected="true"],
18
+ .row-added.ag-row-selected {
19
+ background-color: var(--schema-color-added-hover);
20
+ }
21
+
22
+ .row-added[aria-selected="true"]:hover,
23
+ .row-added.ag-row-selected:hover {
24
+ background-color: var(--schema-color-added-active);
25
+ }
26
+
27
+ .row-removed {
28
+ background-color: var(--schema-color-removed);
29
+ }
30
+
31
+ .row-removed:hover,
32
+ .row-removed[aria-selected="true"],
33
+ .row-removed.ag-row-selected {
34
+ background-color: var(--schema-color-removed-hover);
35
+ }
36
+
37
+ .row-removed[aria-selected="true"]:hover,
38
+ .row-removed.ag-row-selected:hover {
39
+ background-color: var(--schema-color-removed-active);
40
+ }
41
+
42
+ .row-normal {
43
+ background-color: white;
44
+ }
45
+
46
+ .row-normal:hover,
47
+ .row-normal[aria-selected="true"],
48
+ .row-normal.ag-row-selected {
49
+ background-color: rgb(241 241 241);
50
+ }
51
+
52
+ .row-normal[aria-selected="true"]:hover,
53
+ .row-normal.ag-row-selected:hover {
54
+ background-color: rgb(230 230 230);
55
+ }
56
+
57
+ .row-selectable {
58
+ cursor: pointer;
59
+ }
60
+
61
+ /* for general column */
62
+
63
+ .schema-column[aria-selected="true"] {
64
+ outline: none;
65
+ outline-offset: 0;
66
+ }
67
+
68
+ .schema-column-index {
69
+ text-align: right;
70
+ filter: brightness(0.95);
71
+ }
72
+
73
+ /* for reorder-index and type-change column */
74
+
75
+ /* Type change badges for merged type column */
76
+ .type-badge {
77
+ display: inline-block;
78
+ padding: 2px 6px;
79
+ border-radius: 4px;
80
+ font-size: 0.75rem;
81
+ line-height: 1.2;
82
+ }
83
+
84
+ .type-badge-removed {
85
+ background-color: var(--schema-color-removed);
86
+ margin-right: 4px;
87
+ }
88
+
89
+ .type-badge-added {
90
+ background-color: var(--schema-color-added);
91
+ }
92
+
93
+ .column-index-reordered {
94
+ background-color: rgb(255 173 21);
95
+ }
96
+
97
+ .row-normal:hover .column-index-reordered,
98
+ .row-normal[aria-selected="true"] .column-index-reordered,
99
+ .row-normal.ag-row-selected .column-index-reordered {
100
+ background-color: rgb(249 164 6);
101
+ }
102
+
103
+ .row-normal[aria-selected="true"]:hover .column-index-reordered,
104
+ .row-normal.ag-row-selected:hover .column-index-reordered {
105
+ background-color: rgb(224 147 6);
106
+ }
@@ -0,0 +1,21 @@
1
+ /* AG Grid custom styles for query views */
2
+
3
+ /* Header hover behavior for pin/key icons */
4
+ .grid-header:hover .pin-icon {
5
+ display: block;
6
+ }
7
+
8
+ .grid-header:hover .key-icon {
9
+ display: block;
10
+ }
11
+
12
+ /* Context menu visibility on row hover */
13
+ .ag-row:hover .row-context-menu {
14
+ visibility: visible;
15
+ width: auto;
16
+ }
17
+
18
+ /* Cell overflow for context menu */
19
+ .cell-show-context-menu {
20
+ overflow: visible;
21
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@datarecce/ui",
3
- "version": "0.1.1",
3
+ "version": "0.1.6",
4
4
  "description": "Recce UI Components Library - Reusable React components for data validation and review",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -48,8 +48,9 @@
48
48
  "scripts": {
49
49
  "dev": "tsup --watch",
50
50
  "build": "tsup",
51
- "type:check": "tsc --noEmit",
51
+ "type:check": "tsc --noEmit 2>&1 | grep -E '^src/' || echo 'Type check passed (OSS errors filtered)'",
52
52
  "type:check:strict": "tsc --noEmit",
53
+ "type:check:all": "tsc --noEmit",
53
54
  "lint": "eslint src --ext ts,tsx",
54
55
  "test": "vitest",
55
56
  "test:watch": "vitest watch",
@@ -72,11 +73,11 @@
72
73
  "license": "Apache-2.0",
73
74
  "repository": {
74
75
  "type": "git",
75
- "url": "https://github.com/DataRecce/recce-ui.git"
76
+ "url": "git+https://github.com/DataRecce/recce-ui.git"
76
77
  },
77
78
  "peerDependencies": {
78
- "@chakra-ui/react": "^3.0.0",
79
79
  "@emotion/react": "^11.0.0",
80
+ "@mui/material": "^7.0.0",
80
81
  "@tanstack/react-query": "^5.0.0",
81
82
  "@xyflow/react": "^12.0.0",
82
83
  "axios": "^1.0.0",
@@ -86,27 +87,37 @@
86
87
  "_comment": "Dependencies are synced with recce-source/js/package.json. peerDependencies use broad ranges for library compatibility.",
87
88
  "dependencies": {
88
89
  "@amplitude/unified": "1.0.0-beta.9",
89
- "@chakra-ui/styled-system": "^2.12.0",
90
+ "@codemirror/lang-sql": "^6.10.0",
91
+ "@codemirror/lang-yaml": "^6.1.2",
92
+ "@codemirror/merge": "^6.11.2",
93
+ "@codemirror/state": "^6.5.2",
94
+ "@codemirror/view": "^6.39.4",
90
95
  "@dagrejs/dagre": "^1.1.8",
96
+ "@emotion/styled": "^11.14.1",
91
97
  "@hello-pangea/dnd": "^18.0.1",
92
98
  "@jeromefitz/date-fns-tz": "3.0.0-canary.8",
93
- "@monaco-editor/react": "^4.7.0",
94
- "@sentry/react": "^10.30.0",
95
- "chakra-react-select": "^6.1.1",
99
+ "@mui/material": "^7.3.6",
100
+ "@mui/system": "^7.3.6",
101
+ "@sentry/react": "^10.32.1",
102
+ "@types/js-cookie": "^3.0.6",
103
+ "@uiw/codemirror-theme-github": "^4.25.4",
104
+ "@uiw/react-codemirror": "^4.25.4",
105
+ "ag-grid-community": "^35.0.0",
106
+ "ag-grid-react": "^35.0.0",
96
107
  "chart.js": "^4.5.1",
108
+ "codemirror": "^6.0.2",
97
109
  "common-tags": "^1.8.2",
98
110
  "date-fns": "^4.1.0",
99
111
  "file-saver": "^2.0.5",
100
112
  "html-to-image": "^1.11.13",
101
- "html2canvas-pro": "^1.5.13",
113
+ "html2canvas-pro": "^1.6.1",
102
114
  "js-cookie": "^3.0.5",
103
115
  "lodash": "^4.17.21",
104
- "monaco-editor": "^0.55.1",
105
116
  "next-themes": "^0.4.6",
106
117
  "react-chartjs-2": "^5.3.1",
107
- "react-data-grid": "7.0.0-beta.58",
108
118
  "react-icons": "^5.5.0",
109
119
  "react-markdown": "^10.1.0",
120
+ "react-select": "^5.10.2",
110
121
  "react-split": "^2.0.14",
111
122
  "react-syntax-highlighter": "^16.1.0",
112
123
  "remark-gfm": "^4.0.1",
@@ -121,11 +132,11 @@
121
132
  "@types/file-saver": "^2.0.7",
122
133
  "@types/js-cookie": "^3.0.6",
123
134
  "@types/lodash": "^4.17.21",
124
- "@types/node": "^24.10.2",
135
+ "@types/node": "^25.0.3",
125
136
  "@types/react": "19.2.7",
126
137
  "@types/react-dom": "19.2.3",
127
138
  "@types/react-syntax-highlighter": "^15.5.13",
128
- "next": "^16.0.0",
139
+ "next": "^16.1.0",
129
140
  "tsup": "^8.3.5",
130
141
  "typescript": "^5.9.3"
131
142
  },
@@ -1,4 +0,0 @@
1
- <svg width="104" height="105" viewBox="0 0 104 105" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <rect x="0.0712891" y="0.237671" width="103.858" height="103.858" rx="51.9288" fill="#FD683E" fill-opacity="0.1" style="fill:#FD683E;fill:color(display-p3 0.9922 0.4078 0.2431);fill-opacity:0.1;"/>
3
- <path d="M65.9715 53.6425C65.5123 57.9561 63.0682 61.9984 59.0238 64.3334C52.3044 68.2128 43.7124 65.9106 39.8329 59.1912L39.4197 58.4755M38.028 50.6905C38.4871 46.3769 40.9313 42.3346 44.9756 39.9996C51.695 36.1202 60.2871 38.4224 64.1665 45.1418L64.5797 45.8575M37.9404 62.1924L39.1504 57.6769L43.6659 58.8868M60.3345 45.4462L64.85 46.6562L66.0599 42.1406" stroke="#FD683E" style="stroke:#FD683E;stroke:color(display-p3 0.9922 0.4078 0.2431);stroke-opacity:1;" stroke-width="3.30558" stroke-linecap="round" stroke-linejoin="round"/>
4
- </svg>
@@ -1,67 +0,0 @@
1
- .index-column {
2
- color: rgb(128, 128, 128);
3
- text-align: right;
4
- }
5
-
6
- .rdg-cell {
7
- border-width: 0 1px 1px 0;
8
- border-style: solid;
9
- border-color: var(--rdg-border-color);
10
- background-color: var(--rdg-background-color);
11
- }
12
-
13
- .rdg-cell[role="columnheader"] {
14
- /* neutral-100 themes.ts */
15
- background-color: #f5f5f5;
16
- }
17
-
18
- .rdg-cell.rdg-cell-frozen[role="gridcell"] {
19
- /* neutral-100 themes.ts */
20
- background-color: #f5f5f5;
21
- }
22
-
23
- .diff-header-added,
24
- .diff-header-added.rdg-cell.rdg-cell-frozen[role="gridcell"] {
25
- /* green-700 theme.ts */
26
- background-color: #15803d;
27
- color: white;
28
- }
29
-
30
- .diff-header-removed,
31
- .diff-header-removed.rdg-cell.rdg-cell-frozen[role="gridcell"] {
32
- /* rose-500 theme.ts */
33
- background-color: #f43f5e;
34
- color: white;
35
- }
36
-
37
- .diff-cell-added.rdg-cell {
38
- background-color: #cefece;
39
- color: black;
40
- }
41
-
42
- .diff-cell-removed.rdg-cell {
43
- background-color: #ffc5c5;
44
- color: black;
45
- }
46
-
47
- .diff-cell-modified.rdg-cell {
48
- background-color: #ffc5c5;
49
- color: black;
50
- }
51
-
52
- .cell-show-context-menu {
53
- overflow: visible;
54
- }
55
-
56
- .grid-header:hover .pin-icon {
57
- display: block;
58
- }
59
-
60
- .grid-header:hover .key-icon {
61
- display: block;
62
- }
63
-
64
- .rdg-row:hover .row-context-menu {
65
- visibility: visible;
66
- width: auto;
67
- }