@crispy-seed/data-table 0.5.0 → 0.7.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.
@@ -0,0 +1,227 @@
1
+ .seed-record-preview__root {
2
+ display: flex;
3
+ flex-direction: column;
4
+ height: 100%;
5
+ overflow: hidden;
6
+ background: var(--seed-color-bg-layer-default);
7
+ font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
8
+ }
9
+ .seed-record-preview__toolbar {
10
+ display: flex;
11
+ align-items: center;
12
+ height: 49px;
13
+ flex-shrink: 0;
14
+ padding: 8px 10px;
15
+ border-bottom: 1px solid var(--seed-color-stroke-neutral-muted);
16
+ }
17
+ .seed-record-preview__toolbarSpacer {
18
+ flex: 1;
19
+ }
20
+ .seed-record-preview__pager {
21
+ display: flex;
22
+ align-items: center;
23
+ gap: 6px;
24
+ margin-inline-start: 12px;
25
+ }
26
+ .seed-record-preview__counter {
27
+ margin-inline-start: 12px;
28
+ font-size: 12px;
29
+ font-weight: 500;
30
+ color: var(--seed-color-fg-neutral-subtle);
31
+ white-space: nowrap;
32
+ overflow: hidden;
33
+ text-overflow: ellipsis;
34
+ }
35
+ .seed-record-preview__iconbtn {
36
+ display: inline-flex;
37
+ align-items: center;
38
+ justify-content: center;
39
+ width: 28px;
40
+ height: 28px;
41
+ flex-shrink: 0;
42
+ padding: 0;
43
+ border: none;
44
+ border-radius: 6px;
45
+ background: transparent;
46
+ color: var(--seed-color-fg-neutral-subtle);
47
+ font-family: inherit;
48
+ cursor: pointer;
49
+ transition: background-color .12s;
50
+ }
51
+ .seed-record-preview__iconbtn:hover {
52
+ background: var(--seed-color-bg-layer-fill);
53
+ color: var(--seed-color-fg-neutral);
54
+ }
55
+ .seed-record-preview__navbtn {
56
+ display: inline-flex;
57
+ align-items: center;
58
+ justify-content: center;
59
+ width: 28px;
60
+ height: 28px;
61
+ flex-shrink: 0;
62
+ padding: 0;
63
+ border: none;
64
+ border-radius: 6px;
65
+ background: var(--seed-color-bg-layer-default);
66
+ box-shadow: inset 0 0 0 1px rgba(0,0,0,0.06), 0 0 2px rgba(28,40,64,0.18), 0 1px 3px rgba(0,0,0,0.04);
67
+ color: var(--seed-color-fg-neutral);
68
+ font-family: inherit;
69
+ cursor: pointer;
70
+ }
71
+ .seed-record-preview__navbtn:hover:not(:disabled) {
72
+ background: var(--seed-color-bg-layer-fill);
73
+ }
74
+ .seed-record-preview__navbtn:disabled {
75
+ opacity: 0.4;
76
+ cursor: not-allowed;
77
+ }
78
+ .seed-record-preview__header {
79
+ display: flex;
80
+ align-items: center;
81
+ gap: 8px;
82
+ height: 52px;
83
+ flex-shrink: 0;
84
+ padding: 0 12px;
85
+ }
86
+ .seed-record-preview__fav {
87
+ width: 22px;
88
+ height: 22px;
89
+ border-radius: 4px;
90
+ flex-shrink: 0;
91
+ object-fit: cover;
92
+ background: var(--seed-color-bg-layer-fill);
93
+ }
94
+ .seed-record-preview__title {
95
+ flex: 1;
96
+ min-width: 0;
97
+ font-size: 16px;
98
+ font-weight: 600;
99
+ letter-spacing: -0.2px;
100
+ color: var(--seed-color-fg-neutral);
101
+ overflow: hidden;
102
+ text-overflow: ellipsis;
103
+ white-space: nowrap;
104
+ }
105
+ .seed-record-preview__body {
106
+ flex: 1;
107
+ min-height: 0;
108
+ overflow-y: auto;
109
+ padding: 8px 12px;
110
+ }
111
+ .seed-record-preview__section {
112
+ padding: 8px 4px 0;
113
+ }
114
+ .seed-record-preview__sectionHead {
115
+ display: flex;
116
+ align-items: center;
117
+ justify-content: space-between;
118
+ gap: 8px;
119
+ height: 20px;
120
+ margin-bottom: 8px;
121
+ }
122
+ .seed-record-preview__sectionLabel {
123
+ font-size: 14px;
124
+ font-weight: 500;
125
+ color: var(--seed-color-fg-neutral-subtle);
126
+ }
127
+ .seed-record-preview__sectionAction {
128
+ border: none;
129
+ background: none;
130
+ padding: 0;
131
+ font-family: inherit;
132
+ font-size: 10px;
133
+ font-weight: 400;
134
+ color: color-mix(in srgb, var(--seed-color-fg-neutral) 55%, transparent);
135
+ cursor: pointer;
136
+ }
137
+ .seed-record-preview__sectionAction:hover {
138
+ color: var(--seed-color-fg-neutral);
139
+ }
140
+ .seed-record-preview__highlights {
141
+ display: grid;
142
+ grid-template-columns: 1fr 1fr;
143
+ gap: 8px;
144
+ }
145
+ .seed-record-preview__highlight {
146
+ display: flex;
147
+ flex-direction: column;
148
+ gap: 6px;
149
+ min-width: 0;
150
+ }
151
+ .seed-record-preview__highlightLabel {
152
+ display: flex;
153
+ align-items: center;
154
+ gap: 4px;
155
+ font-size: 12px;
156
+ font-weight: 500;
157
+ color: var(--seed-color-fg-neutral-subtle);
158
+ }
159
+ .seed-record-preview__highlightLabel span {
160
+ overflow: hidden;
161
+ text-overflow: ellipsis;
162
+ white-space: nowrap;
163
+ }
164
+ .seed-record-preview__highlightLabel svg {
165
+ flex-shrink: 0;
166
+ color: var(--seed-color-fg-neutral-subtle);
167
+ }
168
+ .seed-record-preview__highlightValue {
169
+ font-size: 14px;
170
+ font-weight: 500;
171
+ color: var(--seed-color-fg-neutral);
172
+ overflow: hidden;
173
+ text-overflow: ellipsis;
174
+ }
175
+ .seed-record-preview__activity {
176
+ font-size: 14px;
177
+ }
178
+ .seed-record-preview__sections {
179
+ display: flex;
180
+ flex-direction: column;
181
+ padding-top: 8px;
182
+ }
183
+ .seed-record-preview__sectionTrigger {
184
+ display: flex;
185
+ align-items: center;
186
+ gap: 4px;
187
+ width: 100%;
188
+ height: 20px;
189
+ padding: 0 8px 0 12px;
190
+ border: none;
191
+ background: none;
192
+ font-family: inherit;
193
+ text-align: start;
194
+ cursor: pointer;
195
+ }
196
+ .seed-record-preview__sectionTrigger[data-inert] {
197
+ cursor: default;
198
+ }
199
+ .seed-record-preview__sectionRowLabel {
200
+ font-size: 14px;
201
+ font-weight: 500;
202
+ color: var(--seed-color-fg-neutral);
203
+ }
204
+ .seed-record-preview__sectionRowCount {
205
+ font-size: 14px;
206
+ color: var(--seed-color-fg-neutral-subtle);
207
+ }
208
+ .seed-record-preview__sectionChevron {
209
+ margin-inline-start: auto;
210
+ flex-shrink: 0;
211
+ color: var(--seed-color-fg-neutral-subtle);
212
+ transition: transform .15s ease;
213
+ }
214
+ .seed-record-preview__sectionChevron[data-open] {
215
+ transform: rotate(180deg);
216
+ }
217
+ .seed-record-preview__sectionContent {
218
+ padding: 8px 8px 8px 12px;
219
+ }
220
+ .seed-record-preview__footer {
221
+ flex-shrink: 0;
222
+ display: flex;
223
+ align-items: center;
224
+ gap: 8px;
225
+ padding: 8px 12px;
226
+ border-top: 1px solid var(--seed-color-stroke-neutral-muted);
227
+ }
@@ -0,0 +1,263 @@
1
+ @layer seed-components {
2
+ .seed-record-preview__root {
3
+ background: var(--seed-color-bg-layer-default);
4
+ flex-direction: column;
5
+ height: 100%;
6
+ font-family: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
7
+ display: flex;
8
+ overflow: hidden;
9
+ }
10
+
11
+ .seed-record-preview__toolbar {
12
+ border-bottom: 1px solid var(--seed-color-stroke-neutral-muted);
13
+ flex-shrink: 0;
14
+ align-items: center;
15
+ height: 49px;
16
+ padding: 8px 10px;
17
+ display: flex;
18
+ }
19
+
20
+ .seed-record-preview__toolbarSpacer {
21
+ flex: 1;
22
+ }
23
+
24
+ .seed-record-preview__pager {
25
+ align-items: center;
26
+ gap: 6px;
27
+ margin-inline-start: 12px;
28
+ display: flex;
29
+ }
30
+
31
+ .seed-record-preview__counter {
32
+ color: var(--seed-color-fg-neutral-subtle);
33
+ white-space: nowrap;
34
+ text-overflow: ellipsis;
35
+ margin-inline-start: 12px;
36
+ font-size: 12px;
37
+ font-weight: 500;
38
+ overflow: hidden;
39
+ }
40
+
41
+ .seed-record-preview__iconbtn {
42
+ width: 28px;
43
+ height: 28px;
44
+ color: var(--seed-color-fg-neutral-subtle);
45
+ cursor: pointer;
46
+ background: none;
47
+ border: none;
48
+ border-radius: 6px;
49
+ flex-shrink: 0;
50
+ justify-content: center;
51
+ align-items: center;
52
+ padding: 0;
53
+ font-family: inherit;
54
+ transition: background-color .12s;
55
+ display: inline-flex;
56
+ }
57
+
58
+ .seed-record-preview__iconbtn:hover {
59
+ background: var(--seed-color-bg-layer-fill);
60
+ color: var(--seed-color-fg-neutral);
61
+ }
62
+
63
+ .seed-record-preview__navbtn {
64
+ background: var(--seed-color-bg-layer-default);
65
+ width: 28px;
66
+ height: 28px;
67
+ color: var(--seed-color-fg-neutral);
68
+ cursor: pointer;
69
+ border: none;
70
+ border-radius: 6px;
71
+ flex-shrink: 0;
72
+ justify-content: center;
73
+ align-items: center;
74
+ padding: 0;
75
+ font-family: inherit;
76
+ display: inline-flex;
77
+ box-shadow: inset 0 0 0 1px #0000000f, 0 0 2px #1c28402e, 0 1px 3px #0000000a;
78
+ }
79
+
80
+ .seed-record-preview__navbtn:hover:not(:disabled) {
81
+ background: var(--seed-color-bg-layer-fill);
82
+ }
83
+
84
+ .seed-record-preview__navbtn:disabled {
85
+ opacity: .4;
86
+ cursor: not-allowed;
87
+ }
88
+
89
+ .seed-record-preview__header {
90
+ flex-shrink: 0;
91
+ align-items: center;
92
+ gap: 8px;
93
+ height: 52px;
94
+ padding: 0 12px;
95
+ display: flex;
96
+ }
97
+
98
+ .seed-record-preview__fav {
99
+ object-fit: cover;
100
+ background: var(--seed-color-bg-layer-fill);
101
+ border-radius: 4px;
102
+ flex-shrink: 0;
103
+ width: 22px;
104
+ height: 22px;
105
+ }
106
+
107
+ .seed-record-preview__title {
108
+ letter-spacing: -.2px;
109
+ min-width: 0;
110
+ color: var(--seed-color-fg-neutral);
111
+ text-overflow: ellipsis;
112
+ white-space: nowrap;
113
+ flex: 1;
114
+ font-size: 16px;
115
+ font-weight: 600;
116
+ overflow: hidden;
117
+ }
118
+
119
+ .seed-record-preview__body {
120
+ flex: 1;
121
+ min-height: 0;
122
+ padding: 8px 12px;
123
+ overflow-y: auto;
124
+ }
125
+
126
+ .seed-record-preview__section {
127
+ padding: 8px 4px 0;
128
+ }
129
+
130
+ .seed-record-preview__sectionHead {
131
+ justify-content: space-between;
132
+ align-items: center;
133
+ gap: 8px;
134
+ height: 20px;
135
+ margin-bottom: 8px;
136
+ display: flex;
137
+ }
138
+
139
+ .seed-record-preview__sectionLabel {
140
+ color: var(--seed-color-fg-neutral-subtle);
141
+ font-size: 14px;
142
+ font-weight: 500;
143
+ }
144
+
145
+ .seed-record-preview__sectionAction {
146
+ color: color-mix(in srgb, var(--seed-color-fg-neutral) 55%, transparent);
147
+ cursor: pointer;
148
+ background: none;
149
+ border: none;
150
+ padding: 0;
151
+ font-family: inherit;
152
+ font-size: 10px;
153
+ font-weight: 400;
154
+ }
155
+
156
+ .seed-record-preview__sectionAction:hover {
157
+ color: var(--seed-color-fg-neutral);
158
+ }
159
+
160
+ .seed-record-preview__highlights {
161
+ grid-template-columns: 1fr 1fr;
162
+ gap: 8px;
163
+ display: grid;
164
+ }
165
+
166
+ .seed-record-preview__highlight {
167
+ flex-direction: column;
168
+ gap: 6px;
169
+ min-width: 0;
170
+ display: flex;
171
+ }
172
+
173
+ .seed-record-preview__highlightLabel {
174
+ color: var(--seed-color-fg-neutral-subtle);
175
+ align-items: center;
176
+ gap: 4px;
177
+ font-size: 12px;
178
+ font-weight: 500;
179
+ display: flex;
180
+ }
181
+
182
+ .seed-record-preview__highlightLabel span {
183
+ text-overflow: ellipsis;
184
+ white-space: nowrap;
185
+ overflow: hidden;
186
+ }
187
+
188
+ .seed-record-preview__highlightLabel svg {
189
+ color: var(--seed-color-fg-neutral-subtle);
190
+ flex-shrink: 0;
191
+ }
192
+
193
+ .seed-record-preview__highlightValue {
194
+ color: var(--seed-color-fg-neutral);
195
+ text-overflow: ellipsis;
196
+ font-size: 14px;
197
+ font-weight: 500;
198
+ overflow: hidden;
199
+ }
200
+
201
+ .seed-record-preview__activity {
202
+ font-size: 14px;
203
+ }
204
+
205
+ .seed-record-preview__sections {
206
+ flex-direction: column;
207
+ padding-top: 8px;
208
+ display: flex;
209
+ }
210
+
211
+ .seed-record-preview__sectionTrigger {
212
+ text-align: start;
213
+ cursor: pointer;
214
+ background: none;
215
+ border: none;
216
+ align-items: center;
217
+ gap: 4px;
218
+ width: 100%;
219
+ height: 20px;
220
+ padding: 0 8px 0 12px;
221
+ font-family: inherit;
222
+ display: flex;
223
+ }
224
+
225
+ .seed-record-preview__sectionTrigger[data-inert] {
226
+ cursor: default;
227
+ }
228
+
229
+ .seed-record-preview__sectionRowLabel {
230
+ color: var(--seed-color-fg-neutral);
231
+ font-size: 14px;
232
+ font-weight: 500;
233
+ }
234
+
235
+ .seed-record-preview__sectionRowCount {
236
+ color: var(--seed-color-fg-neutral-subtle);
237
+ font-size: 14px;
238
+ }
239
+
240
+ .seed-record-preview__sectionChevron {
241
+ color: var(--seed-color-fg-neutral-subtle);
242
+ flex-shrink: 0;
243
+ margin-inline-start: auto;
244
+ transition: transform .15s;
245
+ }
246
+
247
+ .seed-record-preview__sectionChevron[data-open] {
248
+ transform: rotate(180deg);
249
+ }
250
+
251
+ .seed-record-preview__sectionContent {
252
+ padding: 8px 8px 8px 12px;
253
+ }
254
+
255
+ .seed-record-preview__footer {
256
+ border-top: 1px solid var(--seed-color-stroke-neutral-muted);
257
+ flex-shrink: 0;
258
+ align-items: center;
259
+ gap: 8px;
260
+ padding: 8px 12px;
261
+ display: flex;
262
+ }
263
+ }
@@ -0,0 +1,132 @@
1
+ .seed-resizable-panel__root {
2
+ position: relative;
3
+ display: flex;
4
+ height: 100%;
5
+ }
6
+ .seed-resizable-panel__spacer {
7
+ flex: 0 0 auto;
8
+ height: 100%;
9
+ transition: width 0.14s;
10
+ }
11
+ .seed-resizable-panel__panel {
12
+ position: absolute;
13
+ top: 0;
14
+ bottom: 0;
15
+ box-sizing: border-box;
16
+ overflow: hidden;
17
+ background: var(--seed-color-bg-layer-default);
18
+ }
19
+ .seed-resizable-panel__panel[data-side='left'] {
20
+ left: 0;
21
+ }
22
+ .seed-resizable-panel__panel[data-side='right'] {
23
+ right: 0;
24
+ }
25
+ .seed-resizable-panel__panel[data-floating='false'] {
26
+ border-radius: 0;
27
+ box-shadow: none;
28
+ }
29
+ .seed-resizable-panel__panel[data-floating='false'][data-side='left'] {
30
+ border-inline-end: 1px solid var(--seed-color-stroke-neutral-muted);
31
+ }
32
+ .seed-resizable-panel__panel[data-floating='false'][data-side='right'] {
33
+ border-inline-start: 1px solid var(--seed-color-stroke-neutral-muted);
34
+ }
35
+ .seed-resizable-panel__panel[data-floating='true'] {
36
+ position: fixed;
37
+ top: 8px;
38
+ bottom: 8px;
39
+ border-inline-end: none;
40
+ border-inline-start: none;
41
+ border-radius: 10px;
42
+ box-shadow: inset 0 0 0 1px rgba(0,0,0,0), 0 0 0 1px rgba(28,40,64,0.04), 0 4px 8px -4px rgba(28,40,64,0.12), 0 4px 12px -2px rgba(24,41,75,0.16);
43
+ transform: none;
44
+ transition: transform 0.14s, padding 0.14s;
45
+ }
46
+ .seed-resizable-panel__panel[data-floating='true'][data-side='left'] {
47
+ padding: 8px 0 8px 8px;
48
+ }
49
+ @starting-style {
50
+ .seed-resizable-panel__panel[data-floating='true'][data-side='left'] {
51
+ transform: translateX(calc(-100% - 8px));
52
+ }
53
+ }
54
+ .seed-resizable-panel__panel[data-floating='true'][data-side='right'] {
55
+ padding: 8px 8px 8px 0;
56
+ }
57
+ @starting-style {
58
+ .seed-resizable-panel__panel[data-floating='true'][data-side='right'] {
59
+ transform: translateX(calc(100% + 8px));
60
+ }
61
+ }
62
+ .seed-resizable-panel__inner {
63
+ height: 100%;
64
+ opacity: 1;
65
+ }
66
+ [data-floating='true'] > .seed-resizable-panel__inner {
67
+ transition: opacity 0.14s;
68
+ }
69
+ @starting-style {
70
+ [data-floating='true'] > .seed-resizable-panel__inner {
71
+ opacity: 0;
72
+ }
73
+ }
74
+ .seed-resizable-panel__handle {
75
+ position: absolute;
76
+ top: 0;
77
+ width: 10px;
78
+ height: 100%;
79
+ z-index: 2;
80
+ cursor: col-resize;
81
+ background: transparent;
82
+ touch-action: none;
83
+ }
84
+ .seed-resizable-panel__handle[data-side='left'] {
85
+ right: 0;
86
+ }
87
+ .seed-resizable-panel__handle[data-side='right'] {
88
+ left: 0;
89
+ }
90
+ .seed-resizable-panel__handle::before {
91
+ content: "";
92
+ position: absolute;
93
+ top: 0;
94
+ width: 1px;
95
+ height: 100%;
96
+ background: var(--seed-color-stroke-neutral-muted);
97
+ transition: background-color 0.16s, height 0.16s;
98
+ }
99
+ .seed-resizable-panel__handle[data-side='left']::before {
100
+ right: 0;
101
+ }
102
+ .seed-resizable-panel__handle[data-side='right']::before {
103
+ left: 0;
104
+ }
105
+ .seed-resizable-panel__handle:hover::before, .seed-resizable-panel__handle[data-dragging]::before {
106
+ width: 2px;
107
+ background: #0298d9;
108
+ }
109
+ .seed-resizable-panel__handle.crisp-seed-resizable-panel-handle--column {
110
+ display: flex;
111
+ align-items: center;
112
+ justify-content: center;
113
+ width: 7px;
114
+ left: -3px;
115
+ right: -3px;
116
+ z-index: 1;
117
+ cursor: col-resize;
118
+ }
119
+ .seed-resizable-panel__handle.crisp-seed-resizable-panel-handle--column::before {
120
+ content: none;
121
+ }
122
+ .seed-resizable-panel__handleInner {
123
+ width: 3px;
124
+ height: 100%;
125
+ border-radius: 3px;
126
+ background: #0298d9;
127
+ opacity: 0;
128
+ transition: opacity 0.1s 0.1s;
129
+ }
130
+ .seed-resizable-panel__handle:hover .seed-resizable-panel__handleInner, .seed-resizable-panel__handle[data-dragging] .seed-resizable-panel__handleInner {
131
+ opacity: 1;
132
+ }