@design.estate/dees-wcctools 1.1.0 → 1.1.1
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 +61 -7
- package/dist_bundle/bundle.js.map +2 -2
- package/dist_ts_web/elements/wcc-dashboard.d.ts +2 -0
- package/dist_ts_web/elements/wcc-dashboard.js +21 -2
- package/dist_ts_web/elements/wcc-frame.d.ts +1 -0
- package/dist_ts_web/elements/wcc-frame.js +20 -5
- package/dist_ts_web/elements/wcc-properties.d.ts +2 -0
- package/dist_ts_web/elements/wcc-properties.js +17 -2
- package/dist_ts_web/elements/wcc-sidebar.d.ts +1 -0
- package/dist_ts_web/elements/wcc-sidebar.js +10 -2
- package/dist_watch/bundle.js +61 -7
- package/dist_watch/bundle.js.map +2 -2
- package/package.json +1 -1
- package/ts_web/elements/wcc-dashboard.ts +20 -1
- package/ts_web/elements/wcc-frame.ts +17 -4
- package/ts_web/elements/wcc-properties.ts +17 -1
- package/ts_web/elements/wcc-sidebar.ts +4 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@design.estate/dees-wcctools",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "A set of web component tools for creating element catalogues, enabling the structured development and documentation of custom elements and pages.",
|
|
6
6
|
"exports": {
|
|
@@ -29,6 +29,9 @@ export class WccDashboard extends DeesElement {
|
|
|
29
29
|
@property()
|
|
30
30
|
public selectedTheme: TTheme = 'dark';
|
|
31
31
|
|
|
32
|
+
@property()
|
|
33
|
+
public isFullscreen: boolean = false;
|
|
34
|
+
|
|
32
35
|
@property()
|
|
33
36
|
public pages: { [key: string]: () => TemplateResult } = {};
|
|
34
37
|
|
|
@@ -76,6 +79,7 @@ export class WccDashboard extends DeesElement {
|
|
|
76
79
|
<wcc-sidebar
|
|
77
80
|
.dashboardRef=${this}
|
|
78
81
|
.selectedItem=${this.selectedItem}
|
|
82
|
+
.isFullscreen=${this.isFullscreen}
|
|
79
83
|
@selectedType=${(eventArg) => {
|
|
80
84
|
this.selectedType = eventArg.detail;
|
|
81
85
|
}}
|
|
@@ -92,6 +96,7 @@ export class WccDashboard extends DeesElement {
|
|
|
92
96
|
.selectedItem=${this.selectedItem}
|
|
93
97
|
.selectedViewport=${this.selectedViewport}
|
|
94
98
|
.selectedTheme=${this.selectedTheme}
|
|
99
|
+
.isFullscreen=${this.isFullscreen}
|
|
95
100
|
@selectedViewport=${(eventArg) => {
|
|
96
101
|
this.selectedViewport = eventArg.detail;
|
|
97
102
|
this.scheduleUpdate();
|
|
@@ -106,8 +111,11 @@ export class WccDashboard extends DeesElement {
|
|
|
106
111
|
frame.requestUpdate();
|
|
107
112
|
}
|
|
108
113
|
}}
|
|
114
|
+
@toggleFullscreen=${() => {
|
|
115
|
+
this.toggleFullscreen();
|
|
116
|
+
}}
|
|
109
117
|
></wcc-properties>
|
|
110
|
-
<wcc-frame id="wccFrame" viewport=${this.selectedViewport}>
|
|
118
|
+
<wcc-frame id="wccFrame" viewport=${this.selectedViewport} .isFullscreen=${this.isFullscreen}>
|
|
111
119
|
</wcc-frame>
|
|
112
120
|
`;
|
|
113
121
|
}
|
|
@@ -122,9 +130,20 @@ export class WccDashboard extends DeesElement {
|
|
|
122
130
|
}
|
|
123
131
|
}
|
|
124
132
|
|
|
133
|
+
public toggleFullscreen() {
|
|
134
|
+
this.isFullscreen = !this.isFullscreen;
|
|
135
|
+
}
|
|
136
|
+
|
|
125
137
|
public async firstUpdated() {
|
|
126
138
|
this.domtools = await plugins.deesDomtools.DomTools.setupDomTools();
|
|
127
139
|
|
|
140
|
+
// Add ESC key handler for fullscreen mode
|
|
141
|
+
document.addEventListener('keydown', (event) => {
|
|
142
|
+
if (event.key === 'Escape' && this.isFullscreen) {
|
|
143
|
+
this.isFullscreen = false;
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
|
|
128
147
|
// Set up scroll listeners after DOM is ready
|
|
129
148
|
setTimeout(() => {
|
|
130
149
|
this.setupScrollListeners();
|
|
@@ -16,6 +16,9 @@ export class WccFrame extends DeesElement {
|
|
|
16
16
|
@property({ type: Boolean })
|
|
17
17
|
public advancedEditorOpen: boolean = false;
|
|
18
18
|
|
|
19
|
+
@property({ type: Boolean })
|
|
20
|
+
public isFullscreen: boolean = false;
|
|
21
|
+
|
|
19
22
|
public static styles = [
|
|
20
23
|
css`
|
|
21
24
|
:host {
|
|
@@ -43,9 +46,19 @@ export class WccFrame extends DeesElement {
|
|
|
43
46
|
return html`
|
|
44
47
|
<style>
|
|
45
48
|
:host {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
+
${this.isFullscreen ? `
|
|
50
|
+
border: none !important;
|
|
51
|
+
left: 0px !important;
|
|
52
|
+
right: 0px !important;
|
|
53
|
+
top: 0px !important;
|
|
54
|
+
bottom: 0px !important;
|
|
55
|
+
` : `
|
|
56
|
+
bottom: ${this.advancedEditorOpen ? '400px' : '100px'};
|
|
57
|
+
border: 10px solid #ffaeaf;
|
|
58
|
+
left: 200px;
|
|
59
|
+
`}
|
|
60
|
+
transition: all 0.3s ease;
|
|
61
|
+
${this.isFullscreen ? 'padding: 0px;' : (() => {
|
|
49
62
|
switch (this.viewport) {
|
|
50
63
|
case 'desktop':
|
|
51
64
|
return `
|
|
@@ -74,7 +87,7 @@ export class WccFrame extends DeesElement {
|
|
|
74
87
|
}
|
|
75
88
|
|
|
76
89
|
.viewport {
|
|
77
|
-
${this.viewport !== 'desktop'
|
|
90
|
+
${!this.isFullscreen && this.viewport !== 'desktop'
|
|
78
91
|
? html` border-right: 1px dotted #444; border-left: 1px dotted #444; `
|
|
79
92
|
: html``
|
|
80
93
|
}
|
|
@@ -31,6 +31,9 @@ export class WccProperties extends DeesElement {
|
|
|
31
31
|
@property()
|
|
32
32
|
public warning: string = null;
|
|
33
33
|
|
|
34
|
+
@property()
|
|
35
|
+
public isFullscreen: boolean = false;
|
|
36
|
+
|
|
34
37
|
@state()
|
|
35
38
|
propertyContent: TemplateResult[] = [];
|
|
36
39
|
|
|
@@ -80,6 +83,7 @@ export class WccProperties extends DeesElement {
|
|
|
80
83
|
overflow: hidden;
|
|
81
84
|
background: var(--background);
|
|
82
85
|
color: var(--foreground);
|
|
86
|
+
display: ${this.isFullscreen ? 'none' : 'block'};
|
|
83
87
|
}
|
|
84
88
|
.grid {
|
|
85
89
|
display: grid;
|
|
@@ -644,7 +648,11 @@ export class WccProperties extends DeesElement {
|
|
|
644
648
|
</div>
|
|
645
649
|
</div>
|
|
646
650
|
</div>
|
|
647
|
-
<div class="docs">
|
|
651
|
+
<div class="docs" @click=${() => this.toggleFullscreen()}>
|
|
652
|
+
<i class="material-symbols-outlined" style="font-size: 20px;">
|
|
653
|
+
${this.isFullscreen ? 'fullscreen_exit' : 'fullscreen'}
|
|
654
|
+
</i>
|
|
655
|
+
</div>
|
|
648
656
|
</div>
|
|
649
657
|
${this.warning ? html`<div class="warning">${this.warning}</div>` : null}
|
|
650
658
|
</div>
|
|
@@ -977,4 +985,12 @@ export class WccProperties extends DeesElement {
|
|
|
977
985
|
})
|
|
978
986
|
);
|
|
979
987
|
}
|
|
988
|
+
|
|
989
|
+
private toggleFullscreen() {
|
|
990
|
+
this.dispatchEvent(
|
|
991
|
+
new CustomEvent('toggleFullscreen', {
|
|
992
|
+
bubbles: true
|
|
993
|
+
})
|
|
994
|
+
);
|
|
995
|
+
}
|
|
980
996
|
}
|
|
@@ -15,6 +15,9 @@ export class WccSidebar extends DeesElement {
|
|
|
15
15
|
@property()
|
|
16
16
|
public dashboardRef: WccDashboard;
|
|
17
17
|
|
|
18
|
+
@property()
|
|
19
|
+
public isFullscreen: boolean = false;
|
|
20
|
+
|
|
18
21
|
public render(): TemplateResult {
|
|
19
22
|
return html`
|
|
20
23
|
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200" rel="stylesheet" />
|
|
@@ -36,7 +39,7 @@ export class WccSidebar extends DeesElement {
|
|
|
36
39
|
--ring: #3b82f6;
|
|
37
40
|
--radius: 4px;
|
|
38
41
|
|
|
39
|
-
display: block;
|
|
42
|
+
display: ${this.isFullscreen ? 'none' : 'block'};
|
|
40
43
|
border-right: 1px solid rgba(255, 255, 255, 0.08);
|
|
41
44
|
font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
|
|
42
45
|
font-size: 14px;
|