@design.estate/dees-catalog 3.51.0 → 3.51.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_bundle/bundle.js +2374 -2188
- package/dist_ts_web/00_commitinfo_data.js +1 -1
- package/dist_ts_web/elements/00group-chart/dees-chart-area/component.d.ts +10 -0
- package/dist_ts_web/elements/00group-chart/dees-chart-area/component.js +35 -8
- package/dist_ts_web/elements/00group-chart/dees-chart-area/styles.js +41 -24
- package/dist_ts_web/elements/00group-chart/dees-chart-area/template.js +17 -4
- package/dist_ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.d.ts +1 -0
- package/dist_ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.js +16 -24
- package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.d.ts +1 -0
- package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.js +14 -28
- package/dist_ts_web/elements/00group-dataview/dees-dataview-statusobject/dees-dataview-statusobject.d.ts +1 -0
- package/dist_ts_web/elements/00group-dataview/dees-dataview-statusobject/dees-dataview-statusobject.js +52 -51
- package/dist_ts_web/elements/00group-dataview/dees-statsgrid/dees-statsgrid.d.ts +1 -0
- package/dist_ts_web/elements/00group-dataview/dees-statsgrid/dees-statsgrid.js +22 -29
- package/dist_ts_web/elements/00group-dataview/dees-table/dees-table.d.ts +1 -0
- package/dist_ts_web/elements/00group-dataview/dees-table/dees-table.js +6 -6
- package/dist_ts_web/elements/00group-dataview/dees-table/styles.js +51 -44
- package/dist_ts_web/elements/00group-input/dees-input-code/dees-input-code.d.ts +1 -0
- package/dist_ts_web/elements/00group-input/dees-input-code/dees-input-code.js +7 -14
- package/dist_ts_web/elements/00group-input/dees-input-richtext/component.d.ts +1 -0
- package/dist_ts_web/elements/00group-input/dees-input-richtext/component.js +2 -1
- package/dist_ts_web/elements/00group-input/dees-input-richtext/styles.js +12 -20
- package/dist_ts_web/elements/00group-input/dees-input-richtext/template.js +5 -5
- package/dist_ts_web/elements/00group-layout/dees-tile/dees-tile.d.ts +34 -0
- package/dist_ts_web/elements/00group-layout/dees-tile/dees-tile.demo.d.ts +2 -0
- package/dist_ts_web/elements/00group-layout/dees-tile/dees-tile.demo.js +67 -0
- package/dist_ts_web/elements/00group-layout/dees-tile/dees-tile.js +187 -0
- package/dist_ts_web/elements/00group-layout/dees-tile/index.d.ts +1 -0
- package/dist_ts_web/elements/00group-layout/dees-tile/index.js +2 -0
- package/dist_ts_web/elements/00group-layout/index.d.ts +1 -0
- package/dist_ts_web/elements/00group-layout/index.js +2 -1
- package/dist_ts_web/elements/00group-simple/dees-shopping-productcard/dees-shopping-productcard.d.ts +1 -0
- package/dist_ts_web/elements/00group-simple/dees-shopping-productcard/dees-shopping-productcard.js +82 -74
- package/dist_ts_web/elements/00group-workspace/dees-workspace-terminal-preview/dees-workspace-terminal-preview.d.ts +1 -0
- package/dist_ts_web/elements/00group-workspace/dees-workspace-terminal-preview/dees-workspace-terminal-preview.js +8 -15
- package/dist_watch/bundle.js +2374 -2188
- package/dist_watch/bundle.js.map +4 -4
- package/package.json +1 -1
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/00group-chart/dees-chart-area/component.ts +29 -6
- package/ts_web/elements/00group-chart/dees-chart-area/styles.ts +40 -23
- package/ts_web/elements/00group-chart/dees-chart-area/template.ts +16 -4
- package/ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.ts +15 -23
- package/ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.ts +13 -27
- package/ts_web/elements/00group-dataview/dees-dataview-statusobject/dees-dataview-statusobject.ts +51 -50
- package/ts_web/elements/00group-dataview/dees-statsgrid/dees-statsgrid.ts +21 -28
- package/ts_web/elements/00group-dataview/dees-table/dees-table.ts +5 -5
- package/ts_web/elements/00group-dataview/dees-table/styles.ts +50 -43
- package/ts_web/elements/00group-input/dees-input-code/dees-input-code.ts +6 -13
- package/ts_web/elements/00group-input/dees-input-richtext/component.ts +1 -0
- package/ts_web/elements/00group-input/dees-input-richtext/styles.ts +11 -19
- package/ts_web/elements/00group-input/dees-input-richtext/template.ts +5 -5
- package/ts_web/elements/00group-layout/dees-tile/dees-tile.demo.ts +67 -0
- package/ts_web/elements/00group-layout/dees-tile/dees-tile.ts +139 -0
- package/ts_web/elements/00group-layout/dees-tile/index.ts +1 -0
- package/ts_web/elements/00group-layout/index.ts +1 -0
- package/ts_web/elements/00group-simple/dees-shopping-productcard/dees-shopping-productcard.ts +92 -84
- package/ts_web/elements/00group-workspace/dees-workspace-terminal-preview/dees-workspace-terminal-preview.ts +7 -14
|
@@ -18,6 +18,7 @@ import '../../00group-utility/dees-icon/dees-icon.js';
|
|
|
18
18
|
import '../../00group-overlay/dees-contextmenu/dees-contextmenu.js';
|
|
19
19
|
import '../../00group-button/dees-button/dees-button.js';
|
|
20
20
|
import { themeDefaultStyles } from '../../00theme.js';
|
|
21
|
+
import '../../00group-layout/dees-tile/dees-tile.js';
|
|
21
22
|
|
|
22
23
|
declare global {
|
|
23
24
|
interface HTMLElementTagNameMap {
|
|
@@ -179,22 +180,12 @@ export class DeesStatsGrid extends DeesElement {
|
|
|
179
180
|
width: 100%;
|
|
180
181
|
}
|
|
181
182
|
|
|
182
|
-
/* Tile Base Styles */
|
|
183
|
-
.stats-tile {
|
|
184
|
-
background: ${cssManager.bdTheme('#ffffff', '#09090b')};
|
|
185
|
-
border: 1px solid ${cssManager.bdTheme('#e0e0e0', '#202020')};
|
|
186
|
-
border-radius: var(--border-radius);
|
|
187
|
-
padding: var(--tile-padding);
|
|
183
|
+
/* Tile Base Styles — frame provided by dees-tile, hover via ::part */
|
|
184
|
+
.stats-tile::part(outer) {
|
|
188
185
|
transition: all var(--transition-duration) ease;
|
|
189
|
-
cursor: default;
|
|
190
|
-
position: relative;
|
|
191
|
-
overflow: hidden;
|
|
192
|
-
display: flex;
|
|
193
|
-
flex-direction: column;
|
|
194
186
|
}
|
|
195
187
|
|
|
196
|
-
.stats-tile:hover {
|
|
197
|
-
background: ${cssManager.bdTheme('#fafafa', '#0d0d0d')};
|
|
188
|
+
.stats-tile:hover::part(outer) {
|
|
198
189
|
border-color: ${cssManager.bdTheme('#d0d0d0', '#2a2a2a')};
|
|
199
190
|
}
|
|
200
191
|
|
|
@@ -202,17 +193,18 @@ export class DeesStatsGrid extends DeesElement {
|
|
|
202
193
|
cursor: pointer;
|
|
203
194
|
}
|
|
204
195
|
|
|
205
|
-
.stats-tile.clickable:hover {
|
|
196
|
+
.stats-tile.clickable:hover::part(outer) {
|
|
206
197
|
transform: translateY(-1px);
|
|
207
198
|
box-shadow: 0 2px 6px ${cssManager.bdTheme('rgba(0,0,0,0.03)', 'rgba(0,0,0,0.15)')};
|
|
208
199
|
}
|
|
209
200
|
|
|
210
|
-
/* Tile Header */
|
|
201
|
+
/* Tile Header — slotted into dees-tile header */
|
|
211
202
|
.tile-header {
|
|
212
203
|
display: flex;
|
|
213
204
|
justify-content: space-between;
|
|
214
|
-
align-items:
|
|
215
|
-
|
|
205
|
+
align-items: center;
|
|
206
|
+
padding: 0 12px;
|
|
207
|
+
height: 28px;
|
|
216
208
|
flex-shrink: 0;
|
|
217
209
|
}
|
|
218
210
|
|
|
@@ -232,12 +224,12 @@ export class DeesStatsGrid extends DeesElement {
|
|
|
232
224
|
flex-shrink: 0;
|
|
233
225
|
}
|
|
234
226
|
|
|
235
|
-
/* Tile Content */
|
|
227
|
+
/* Tile Content — slotted into dees-tile content area */
|
|
236
228
|
.tile-content {
|
|
237
|
-
min-height: var(--content-min-height);
|
|
238
229
|
display: flex;
|
|
239
230
|
flex-direction: column;
|
|
240
|
-
|
|
231
|
+
padding: 12px;
|
|
232
|
+
min-height: var(--content-min-height);
|
|
241
233
|
}
|
|
242
234
|
|
|
243
235
|
.tile-value {
|
|
@@ -261,9 +253,10 @@ export class DeesStatsGrid extends DeesElement {
|
|
|
261
253
|
.tile-description {
|
|
262
254
|
font-size: var(--label-font-size);
|
|
263
255
|
color: ${cssManager.bdTheme('hsl(215.4 16.3% 56.9%)', 'hsl(215 20.2% 55.1%)')};
|
|
264
|
-
margin-top: var(--description-spacing);
|
|
265
256
|
letter-spacing: -0.01em;
|
|
266
|
-
|
|
257
|
+
padding: 0 12px;
|
|
258
|
+
height: 24px;
|
|
259
|
+
line-height: 24px;
|
|
267
260
|
}
|
|
268
261
|
|
|
269
262
|
/* Gauge Styles */
|
|
@@ -882,27 +875,27 @@ export class DeesStatsGrid extends DeesElement {
|
|
|
882
875
|
const columnSpan = tile.columnSpan && tile.columnSpan > 1 ? tile.columnSpan : undefined;
|
|
883
876
|
|
|
884
877
|
return html`
|
|
885
|
-
<
|
|
878
|
+
<dees-tile
|
|
886
879
|
class="stats-tile ${clickable ? 'clickable' : ''}"
|
|
887
880
|
style="${columnSpan ? `grid-column: span ${columnSpan}` : ''}"
|
|
888
881
|
@click=${clickable ? () => this.handleTileAction(tile.actions![0], tile) : undefined}
|
|
889
882
|
@contextmenu=${hasActions ? (e: MouseEvent) => this.showContextMenu(e, tile) : undefined}
|
|
890
883
|
>
|
|
891
|
-
<div class="tile-header">
|
|
884
|
+
<div slot="header" class="tile-header">
|
|
892
885
|
<h3 class="tile-title">${tile.title}</h3>
|
|
893
886
|
${tile.icon ? html`
|
|
894
887
|
<dees-icon class="tile-icon" .icon=${tile.icon} size="small"></dees-icon>
|
|
895
888
|
` : ''}
|
|
896
889
|
</div>
|
|
897
|
-
|
|
890
|
+
|
|
898
891
|
<div class="tile-content">
|
|
899
892
|
${this.renderTileContent(tile)}
|
|
900
893
|
</div>
|
|
901
|
-
|
|
894
|
+
|
|
902
895
|
${tile.description && tile.type !== 'trend' ? html`
|
|
903
|
-
<div class="tile-description">${tile.description}</div>
|
|
896
|
+
<div slot="footer" class="tile-description">${tile.description}</div>
|
|
904
897
|
` : ''}
|
|
905
|
-
</
|
|
898
|
+
</dees-tile>
|
|
906
899
|
`;
|
|
907
900
|
}
|
|
908
901
|
|
|
@@ -15,6 +15,7 @@ import {
|
|
|
15
15
|
} from './data.js';
|
|
16
16
|
import { compileLucenePredicate } from './lucene.js';
|
|
17
17
|
import { themeDefaultStyles } from '../../00theme.js';
|
|
18
|
+
import '../../00group-layout/dees-tile/dees-tile.js';
|
|
18
19
|
|
|
19
20
|
export type { Column, ITableAction, ITableActionDataArg, TDisplayFunction } from './types.js';
|
|
20
21
|
|
|
@@ -221,9 +222,8 @@ export class DeesTable<T> extends DeesElement {
|
|
|
221
222
|
);
|
|
222
223
|
(this as any)._lastViewData = viewData;
|
|
223
224
|
return html`
|
|
224
|
-
<
|
|
225
|
-
|
|
226
|
-
<div class="header">
|
|
225
|
+
<dees-tile>
|
|
226
|
+
<div slot="header" class="header">
|
|
227
227
|
<div class="headingContainer">
|
|
228
228
|
<div class="heading heading1">${this.label || this.heading1}</div>
|
|
229
229
|
<div class="heading heading2">${this.heading2}</div>
|
|
@@ -496,7 +496,7 @@ export class DeesTable<T> extends DeesElement {
|
|
|
496
496
|
</div>
|
|
497
497
|
`
|
|
498
498
|
: html` <div class="noDataSet">No data set!</div> `}
|
|
499
|
-
<div class="footer">
|
|
499
|
+
<div slot="footer" class="footer">
|
|
500
500
|
<div class="tableStatistics">
|
|
501
501
|
${this.data.length} ${this.dataName || 'data rows'} (total) |
|
|
502
502
|
${this.selectedDataRow ? '# ' + `${this.data.indexOf(this.selectedDataRow) + 1}` : `No`}
|
|
@@ -528,7 +528,7 @@ export class DeesTable<T> extends DeesElement {
|
|
|
528
528
|
})}
|
|
529
529
|
</div>
|
|
530
530
|
</div>
|
|
531
|
-
</
|
|
531
|
+
</dees-tile>
|
|
532
532
|
`;
|
|
533
533
|
}
|
|
534
534
|
|
|
@@ -12,17 +12,11 @@ export const tableStyles: CSSResult[] = [
|
|
|
12
12
|
width: 100%;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
dees-tile {
|
|
16
16
|
color: ${cssManager.bdTheme('hsl(0 0% 3.9%)', 'hsl(0 0% 98%)')};
|
|
17
17
|
font-family: ${cssGeistFontFamily};
|
|
18
18
|
font-weight: 400;
|
|
19
19
|
font-size: 14px;
|
|
20
|
-
display: block;
|
|
21
|
-
width: 100%;
|
|
22
|
-
background: ${cssManager.bdTheme('hsl(0 0% 100%)', 'hsl(0 0% 3.9%)')};
|
|
23
|
-
border: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')};
|
|
24
|
-
border-radius: 8px;
|
|
25
|
-
overflow: hidden;
|
|
26
20
|
cursor: default;
|
|
27
21
|
}
|
|
28
22
|
|
|
@@ -30,30 +24,31 @@ export const tableStyles: CSSResult[] = [
|
|
|
30
24
|
display: flex;
|
|
31
25
|
justify-content: space-between;
|
|
32
26
|
align-items: center;
|
|
33
|
-
padding: 16px
|
|
34
|
-
|
|
35
|
-
border-bottom: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')};
|
|
27
|
+
padding: 0 16px;
|
|
28
|
+
height: 40px;
|
|
36
29
|
}
|
|
37
30
|
|
|
38
31
|
.headingContainer {
|
|
39
32
|
flex: 1;
|
|
33
|
+
display: flex;
|
|
34
|
+
align-items: baseline;
|
|
40
35
|
}
|
|
41
36
|
|
|
42
37
|
.heading {
|
|
43
|
-
line-height: 1
|
|
38
|
+
line-height: 1;
|
|
44
39
|
}
|
|
45
40
|
|
|
46
41
|
.heading1 {
|
|
47
|
-
font-size:
|
|
48
|
-
font-weight:
|
|
49
|
-
color: ${cssManager.bdTheme('hsl(0 0%
|
|
50
|
-
letter-spacing: -0.
|
|
42
|
+
font-size: 14px;
|
|
43
|
+
font-weight: 500;
|
|
44
|
+
color: ${cssManager.bdTheme('hsl(0 0% 20%)', 'hsl(0 0% 63.9%)')};
|
|
45
|
+
letter-spacing: -0.01em;
|
|
51
46
|
}
|
|
52
|
-
|
|
47
|
+
|
|
53
48
|
.heading2 {
|
|
54
|
-
font-size:
|
|
49
|
+
font-size: 12px;
|
|
55
50
|
color: ${cssManager.bdTheme('hsl(215.4 16.3% 56.9%)', 'hsl(215 20.2% 55.1%)')};
|
|
56
|
-
margin-
|
|
51
|
+
margin-left: 8px;
|
|
57
52
|
}
|
|
58
53
|
|
|
59
54
|
.headingSeparation {
|
|
@@ -70,14 +65,14 @@ export const tableStyles: CSSResult[] = [
|
|
|
70
65
|
.headerAction {
|
|
71
66
|
display: flex;
|
|
72
67
|
align-items: center;
|
|
73
|
-
gap:
|
|
74
|
-
padding:
|
|
75
|
-
font-size:
|
|
68
|
+
gap: 4px;
|
|
69
|
+
padding: 4px 10px;
|
|
70
|
+
font-size: 12px;
|
|
76
71
|
font-weight: 500;
|
|
77
72
|
color: ${cssManager.bdTheme('hsl(0 0% 45.1%)', 'hsl(0 0% 63.9%)')};
|
|
78
73
|
background: transparent;
|
|
79
74
|
border: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')};
|
|
80
|
-
border-radius:
|
|
75
|
+
border-radius: 4px;
|
|
81
76
|
cursor: pointer;
|
|
82
77
|
transition: all 0.15s ease;
|
|
83
78
|
}
|
|
@@ -199,7 +194,7 @@ export const tableStyles: CSSResult[] = [
|
|
|
199
194
|
}
|
|
200
195
|
|
|
201
196
|
tbody tr:hover {
|
|
202
|
-
background: ${cssManager.bdTheme('hsl(
|
|
197
|
+
background: ${cssManager.bdTheme('hsl(222.2 47.4% 51.2% / 0.06)', 'hsl(217.2 91.2% 59.8% / 0.08)')};
|
|
203
198
|
}
|
|
204
199
|
|
|
205
200
|
/* Column hover effect for better traceability */
|
|
@@ -214,7 +209,7 @@ export const tableStyles: CSSResult[] = [
|
|
|
214
209
|
bottom: 0;
|
|
215
210
|
left: 0;
|
|
216
211
|
right: 0;
|
|
217
|
-
background: ${cssManager.bdTheme('hsl(
|
|
212
|
+
background: ${cssManager.bdTheme('hsl(222.2 47.4% 51.2% / 0.04)', 'hsl(217.2 91.2% 59.8% / 0.05)')};
|
|
218
213
|
opacity: 0;
|
|
219
214
|
pointer-events: none;
|
|
220
215
|
transition: opacity 0.15s ease;
|
|
@@ -238,15 +233,19 @@ export const tableStyles: CSSResult[] = [
|
|
|
238
233
|
border-top: none;
|
|
239
234
|
}
|
|
240
235
|
|
|
241
|
-
:host([show-grid]) th:first-child,
|
|
242
|
-
:host([show-grid]) td:first-child {
|
|
243
|
-
border-left: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')};
|
|
244
|
-
}
|
|
245
|
-
|
|
246
236
|
:host([show-grid]) tbody tr:first-child td {
|
|
247
237
|
border-top: none;
|
|
248
238
|
}
|
|
249
239
|
|
|
240
|
+
/* Remove edge borders that would double with tile frame */
|
|
241
|
+
:host([show-grid]) th:last-child,
|
|
242
|
+
:host([show-grid]) td:last-child {
|
|
243
|
+
border-right: none;
|
|
244
|
+
}
|
|
245
|
+
:host([show-grid]) tbody tr:last-child td {
|
|
246
|
+
border-bottom: none;
|
|
247
|
+
}
|
|
248
|
+
|
|
250
249
|
/* Sticky Actions column (right pinned) */
|
|
251
250
|
thead th.actionsCol,
|
|
252
251
|
tbody td.actionsCol {
|
|
@@ -261,7 +260,7 @@ export const tableStyles: CSSResult[] = [
|
|
|
261
260
|
}
|
|
262
261
|
|
|
263
262
|
tbody tr.selected {
|
|
264
|
-
background: ${cssManager.bdTheme('hsl(
|
|
263
|
+
background: ${cssManager.bdTheme('hsl(222.2 47.4% 51.2% / 0.1)', 'hsl(217.2 91.2% 59.8% / 0.12)')};
|
|
265
264
|
}
|
|
266
265
|
|
|
267
266
|
tbody tr.hasAttachment {
|
|
@@ -269,10 +268,11 @@ export const tableStyles: CSSResult[] = [
|
|
|
269
268
|
}
|
|
270
269
|
|
|
271
270
|
th {
|
|
272
|
-
height:
|
|
273
|
-
padding:
|
|
271
|
+
height: 36px;
|
|
272
|
+
padding: 8px 16px;
|
|
274
273
|
text-align: left;
|
|
275
274
|
font-weight: 500;
|
|
275
|
+
font-size: 12px;
|
|
276
276
|
color: ${cssManager.bdTheme('hsl(215.4 16.3% 46.9%)', 'hsl(215 20.2% 65.1%)')};
|
|
277
277
|
letter-spacing: -0.01em;
|
|
278
278
|
}
|
|
@@ -282,8 +282,9 @@ export const tableStyles: CSSResult[] = [
|
|
|
282
282
|
}
|
|
283
283
|
|
|
284
284
|
td {
|
|
285
|
-
padding:
|
|
285
|
+
padding: 8px 16px;
|
|
286
286
|
vertical-align: middle;
|
|
287
|
+
font-size: 13px;
|
|
287
288
|
color: ${cssManager.bdTheme('hsl(0 0% 3.9%)', 'hsl(0 0% 98%)')};
|
|
288
289
|
}
|
|
289
290
|
|
|
@@ -293,18 +294,23 @@ export const tableStyles: CSSResult[] = [
|
|
|
293
294
|
|
|
294
295
|
th:first-child,
|
|
295
296
|
td:first-child {
|
|
296
|
-
padding-left:
|
|
297
|
+
padding-left: 16px;
|
|
297
298
|
}
|
|
298
299
|
|
|
299
300
|
th:last-child,
|
|
300
301
|
td:last-child {
|
|
301
|
-
padding-right:
|
|
302
|
+
padding-right: 16px;
|
|
302
303
|
}
|
|
303
304
|
|
|
304
305
|
:host([show-vertical-lines]) th:last-child,
|
|
305
306
|
:host([show-vertical-lines]) td:last-child {
|
|
306
307
|
border-right: none;
|
|
307
308
|
}
|
|
309
|
+
|
|
310
|
+
/* Default bottom border on last row removed — tile frame handles it */
|
|
311
|
+
:host(:not([show-horizontal-lines])) tbody tr:last-child {
|
|
312
|
+
border-bottom: none;
|
|
313
|
+
}
|
|
308
314
|
|
|
309
315
|
.innerCellContainer {
|
|
310
316
|
position: relative;
|
|
@@ -389,12 +395,12 @@ export const tableStyles: CSSResult[] = [
|
|
|
389
395
|
display: flex;
|
|
390
396
|
align-items: center;
|
|
391
397
|
justify-content: space-between;
|
|
392
|
-
height:
|
|
393
|
-
padding: 0
|
|
394
|
-
font-size:
|
|
395
|
-
color: ${cssManager.bdTheme('hsl(
|
|
396
|
-
|
|
397
|
-
|
|
398
|
+
height: 32px;
|
|
399
|
+
padding: 0 16px;
|
|
400
|
+
font-size: 11px;
|
|
401
|
+
color: ${cssManager.bdTheme('hsl(0 0% 45%)', 'hsl(0 0% 55%)')};
|
|
402
|
+
width: 100%;
|
|
403
|
+
box-sizing: border-box;
|
|
398
404
|
}
|
|
399
405
|
|
|
400
406
|
.tableStatistics {
|
|
@@ -409,9 +415,10 @@ export const tableStyles: CSSResult[] = [
|
|
|
409
415
|
.footerActions .footerAction {
|
|
410
416
|
display: flex;
|
|
411
417
|
align-items: center;
|
|
412
|
-
gap:
|
|
413
|
-
padding:
|
|
418
|
+
gap: 4px;
|
|
419
|
+
padding: 2px 8px;
|
|
414
420
|
font-weight: 500;
|
|
421
|
+
font-size: 11px;
|
|
415
422
|
color: ${cssManager.bdTheme('hsl(215.4 16.3% 46.9%)', 'hsl(215 20.2% 65.1%)')};
|
|
416
423
|
border-radius: 6px;
|
|
417
424
|
cursor: pointer;
|
|
@@ -12,6 +12,7 @@ import { themeDefaultStyles } from '../../00theme.js';
|
|
|
12
12
|
import { DeesModal } from '../../00group-overlay/dees-modal/dees-modal.js';
|
|
13
13
|
import '../../00group-utility/dees-icon/dees-icon.js';
|
|
14
14
|
import '../../00group-layout/dees-label/dees-label.js';
|
|
15
|
+
import '../../00group-layout/dees-tile/dees-tile.js';
|
|
15
16
|
import '../../00group-workspace/dees-workspace-monaco/dees-workspace-monaco.js';
|
|
16
17
|
import { DeesWorkspaceMonaco } from '../../00group-workspace/dees-workspace-monaco/dees-workspace-monaco.js';
|
|
17
18
|
|
|
@@ -105,24 +106,16 @@ export class DeesInputCode extends DeesInputBase<string> {
|
|
|
105
106
|
min-height: 0;
|
|
106
107
|
}
|
|
107
108
|
|
|
108
|
-
|
|
109
|
-
display: flex;
|
|
110
|
-
flex-direction: column;
|
|
109
|
+
dees-tile {
|
|
111
110
|
flex: 1;
|
|
112
111
|
min-height: 0;
|
|
113
|
-
border: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')};
|
|
114
|
-
border-radius: 6px;
|
|
115
|
-
overflow: hidden;
|
|
116
|
-
background: ${cssManager.bdTheme('hsl(0 0% 100%)', 'hsl(0 0% 9%)')};
|
|
117
112
|
}
|
|
118
113
|
|
|
119
114
|
.toolbar {
|
|
120
115
|
display: flex;
|
|
121
116
|
align-items: center;
|
|
122
117
|
justify-content: space-between;
|
|
123
|
-
padding:
|
|
124
|
-
background: ${cssManager.bdTheme('hsl(0 0% 97%)', 'hsl(0 0% 7%)')};
|
|
125
|
-
border-bottom: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')};
|
|
118
|
+
padding: 4px 12px;
|
|
126
119
|
gap: 8px;
|
|
127
120
|
}
|
|
128
121
|
|
|
@@ -256,8 +249,8 @@ export class DeesInputCode extends DeesInputBase<string> {
|
|
|
256
249
|
</style>
|
|
257
250
|
<div class="input-wrapper">
|
|
258
251
|
<dees-label .label=${this.label} .description=${this.description} .required=${this.required}></dees-label>
|
|
259
|
-
<
|
|
260
|
-
<div class="toolbar">
|
|
252
|
+
<dees-tile>
|
|
253
|
+
<div slot="header" class="toolbar">
|
|
261
254
|
<div class="toolbar-left">
|
|
262
255
|
<div class="language-selector">
|
|
263
256
|
<button
|
|
@@ -322,7 +315,7 @@ export class DeesInputCode extends DeesInputBase<string> {
|
|
|
322
315
|
@content-change=${this.handleContentChange}
|
|
323
316
|
></dees-workspace-monaco>
|
|
324
317
|
</div>
|
|
325
|
-
</
|
|
318
|
+
</dees-tile>
|
|
326
319
|
</div>
|
|
327
320
|
`;
|
|
328
321
|
}
|
|
@@ -16,6 +16,7 @@ import {
|
|
|
16
16
|
|
|
17
17
|
import type { Editor } from '@tiptap/core';
|
|
18
18
|
import { DeesServiceLibLoader, type ITiptapBundle } from '../../../services/index.js';
|
|
19
|
+
import '../../00group-layout/dees-tile/dees-tile.js';
|
|
19
20
|
|
|
20
21
|
declare global {
|
|
21
22
|
interface HTMLElementTagNameMap {
|
|
@@ -23,22 +23,15 @@ export const richtextStyles = [
|
|
|
23
23
|
color: ${cssManager.bdTheme('hsl(0 0% 15%)', 'hsl(0 0% 93.9%)')};
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
flex-direction: column;
|
|
29
|
-
min-height: ${cssManager.bdTheme('200px', '200px')};
|
|
30
|
-
border: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')};
|
|
31
|
-
border-radius: 6px;
|
|
32
|
-
background: ${cssManager.bdTheme('hsl(0 0% 100%)', 'hsl(0 0% 9%)')};
|
|
33
|
-
overflow: hidden;
|
|
34
|
-
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
|
|
26
|
+
dees-tile {
|
|
27
|
+
min-height: 200px;
|
|
35
28
|
}
|
|
36
29
|
|
|
37
|
-
|
|
30
|
+
dees-tile:hover::part(outer) {
|
|
38
31
|
border-color: ${cssManager.bdTheme('hsl(0 0% 79.8%)', 'hsl(0 0% 20.9%)')};
|
|
39
32
|
}
|
|
40
33
|
|
|
41
|
-
|
|
34
|
+
dees-tile.focused::part(outer) {
|
|
42
35
|
border-color: ${cssManager.bdTheme('hsl(0 0% 9%)', 'hsl(0 0% 98%)')};
|
|
43
36
|
box-shadow: 0 0 0 2px ${cssManager.bdTheme('hsl(0 0% 9% / 0.05)', 'hsl(0 0% 98% / 0.05)')};
|
|
44
37
|
}
|
|
@@ -47,9 +40,7 @@ export const richtextStyles = [
|
|
|
47
40
|
display: flex;
|
|
48
41
|
flex-wrap: wrap;
|
|
49
42
|
gap: 4px;
|
|
50
|
-
padding:
|
|
51
|
-
background: ${cssManager.bdTheme('hsl(210 40% 96.1%)', 'hsl(0 0% 14.9%)')};
|
|
52
|
-
border-bottom: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')};
|
|
43
|
+
padding: 4px 12px;
|
|
53
44
|
align-items: center;
|
|
54
45
|
position: relative;
|
|
55
46
|
}
|
|
@@ -199,14 +190,15 @@ export const richtextStyles = [
|
|
|
199
190
|
}
|
|
200
191
|
|
|
201
192
|
.editor-footer {
|
|
202
|
-
padding:
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
color: ${cssManager.bdTheme('hsl(215.4 16.3% 46.9%)', 'hsl(215 20.2% 65.1%)')};
|
|
193
|
+
padding: 0 12px;
|
|
194
|
+
height: 28px;
|
|
195
|
+
font-size: 11px;
|
|
196
|
+
color: ${cssManager.bdTheme('hsl(0 0% 45%)', 'hsl(0 0% 55%)')};
|
|
207
197
|
display: flex;
|
|
208
198
|
justify-content: space-between;
|
|
209
199
|
align-items: center;
|
|
200
|
+
width: 100%;
|
|
201
|
+
box-sizing: border-box;
|
|
210
202
|
}
|
|
211
203
|
|
|
212
204
|
.word-count {
|
|
@@ -5,8 +5,8 @@ export const renderRichtext = (component: DeesInputRichtext): TemplateResult =>
|
|
|
5
5
|
return html`
|
|
6
6
|
<div class="input-wrapper">
|
|
7
7
|
${component.label ? html`<label class="label">${component.label}</label>` : ''}
|
|
8
|
-
<
|
|
9
|
-
<div class="editor-toolbar">
|
|
8
|
+
<dees-tile class="${component.editor?.isFocused ? 'focused' : ''}" style="--min-height: ${component.minHeight}px">
|
|
9
|
+
<div slot="header" class="editor-toolbar">
|
|
10
10
|
${component.renderToolbar()}
|
|
11
11
|
<div class="link-input ${component.showLinkInput ? 'show' : ''}">
|
|
12
12
|
<input type="url" placeholder="Enter URL..." @keydown=${component.handleLinkInputKeydown} />
|
|
@@ -20,14 +20,14 @@ export const renderRichtext = (component: DeesInputRichtext): TemplateResult =>
|
|
|
20
20
|
<div class="editor-content"></div>
|
|
21
21
|
${component.showWordCount
|
|
22
22
|
? html`
|
|
23
|
-
<div class="editor-footer">
|
|
23
|
+
<div slot="footer" class="editor-footer">
|
|
24
24
|
<span class="word-count">${component.wordCount} word${component.wordCount !== 1 ? 's' : ''}</span>
|
|
25
25
|
</div>
|
|
26
26
|
`
|
|
27
27
|
: ''}
|
|
28
|
-
</
|
|
28
|
+
</dees-tile>
|
|
29
29
|
${component.description ? html`<div class="description">${component.description}</div>` : ''}
|
|
30
30
|
</div>
|
|
31
31
|
`;
|
|
32
|
-
|
|
32
|
+
|
|
33
33
|
};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { html, css, cssManager } from '@design.estate/dees-element';
|
|
2
|
+
import './dees-tile.js';
|
|
3
|
+
|
|
4
|
+
export const demoFunc = () => {
|
|
5
|
+
return html`
|
|
6
|
+
<dees-demowrapper>
|
|
7
|
+
<style>
|
|
8
|
+
${css`
|
|
9
|
+
.demoBox {
|
|
10
|
+
background: ${cssManager.bdTheme('hsl(0 0% 95%)', 'hsl(0 0% 9%)')};
|
|
11
|
+
padding: 40px;
|
|
12
|
+
display: flex;
|
|
13
|
+
flex-direction: column;
|
|
14
|
+
gap: 24px;
|
|
15
|
+
}
|
|
16
|
+
.tile-demo-content {
|
|
17
|
+
position: absolute;
|
|
18
|
+
inset: 0;
|
|
19
|
+
display: flex;
|
|
20
|
+
align-items: center;
|
|
21
|
+
justify-content: center;
|
|
22
|
+
color: ${cssManager.bdTheme('hsl(0 0% 45%)', 'hsl(0 0% 55%)')};
|
|
23
|
+
font-size: 13px;
|
|
24
|
+
}
|
|
25
|
+
.footer-stats {
|
|
26
|
+
display: flex;
|
|
27
|
+
align-items: center;
|
|
28
|
+
gap: 24px;
|
|
29
|
+
font-size: 11px;
|
|
30
|
+
width: 100%;
|
|
31
|
+
}
|
|
32
|
+
.footer-stats .stat {
|
|
33
|
+
display: flex;
|
|
34
|
+
align-items: center;
|
|
35
|
+
gap: 6px;
|
|
36
|
+
}
|
|
37
|
+
.footer-stats .stat strong {
|
|
38
|
+
color: ${cssManager.bdTheme('hsl(0 0% 15%)', 'hsl(0 0% 90%)')};
|
|
39
|
+
}
|
|
40
|
+
`}
|
|
41
|
+
</style>
|
|
42
|
+
<div class="demoBox">
|
|
43
|
+
<dees-tile heading="Simple Tile" style="height: 200px;">
|
|
44
|
+
<div class="tile-demo-content">Content area with rounded corners</div>
|
|
45
|
+
</dees-tile>
|
|
46
|
+
|
|
47
|
+
<dees-tile heading="Tile with Footer" style="height: 200px;">
|
|
48
|
+
<div class="tile-demo-content">Content goes here</div>
|
|
49
|
+
<div slot="footer" class="footer-stats">
|
|
50
|
+
<span class="stat">latest <strong>42</strong></span>
|
|
51
|
+
<span class="stat">min <strong>12</strong></span>
|
|
52
|
+
<span class="stat">max <strong>87</strong></span>
|
|
53
|
+
<span class="stat">avg <strong>45.3</strong></span>
|
|
54
|
+
</div>
|
|
55
|
+
</dees-tile>
|
|
56
|
+
|
|
57
|
+
<dees-tile style="height: 200px;">
|
|
58
|
+
<div slot="header" style="display:flex;align-items:center;gap:12px;width:100%;">
|
|
59
|
+
<span style="font-weight:500;">Custom Header</span>
|
|
60
|
+
<input type="text" placeholder="Search..." style="flex:1;max-width:200px;padding:2px 8px;border:1px solid;border-radius:4px;font-size:12px;background:transparent;color:inherit;border-color:inherit;">
|
|
61
|
+
</div>
|
|
62
|
+
<div class="tile-demo-content">Custom header slot with search input</div>
|
|
63
|
+
</dees-tile>
|
|
64
|
+
</div>
|
|
65
|
+
</dees-demowrapper>
|
|
66
|
+
`;
|
|
67
|
+
};
|