@design.estate/wcctools 5.1.0 → 6.0.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/.smartconfig.json +7 -3
  2. package/changelog.md +15 -0
  3. package/cli.js +3 -0
  4. package/dist_shell/bundle.js +2970 -0
  5. package/dist_shell/bundle.js.map +1 -0
  6. package/dist_shell/bundle.js.third-party-notices.json +1722 -0
  7. package/dist_shell/bundle.js.third-party-notices.txt +4195 -0
  8. package/dist_shell/index.html +21 -0
  9. package/dist_ts/00_commitinfo_data.d.ts +8 -0
  10. package/dist_ts/00_commitinfo_data.js +9 -0
  11. package/dist_ts/classes.devapi.d.ts +11 -0
  12. package/dist_ts/classes.devapi.js +21 -0
  13. package/dist_ts/classes.devserver.d.ts +49 -0
  14. package/dist_ts/classes.devserver.js +142 -0
  15. package/dist_ts/cli.d.ts +6 -0
  16. package/dist_ts/cli.js +45 -0
  17. package/dist_ts/index.d.ts +3 -0
  18. package/dist_ts/index.js +4 -0
  19. package/dist_ts/paths.d.ts +4 -0
  20. package/dist_ts/paths.js +6 -0
  21. package/dist_ts/plugins.d.ts +15 -0
  22. package/dist_ts/plugins.js +21 -0
  23. package/dist_ts/shellcontent.d.ts +9 -0
  24. package/dist_ts/shellcontent.js +42 -0
  25. package/dist_ts_interfaces/bridge.d.ts +88 -0
  26. package/dist_ts_interfaces/bridge.js +2 -0
  27. package/dist_ts_interfaces/catalog.d.ts +32 -0
  28. package/dist_ts_interfaces/catalog.js +6 -0
  29. package/dist_ts_interfaces/index.d.ts +3 -0
  30. package/dist_ts_interfaces/index.js +4 -0
  31. package/dist_ts_interfaces/plugins.d.ts +2 -0
  32. package/dist_ts_interfaces/plugins.js +3 -0
  33. package/dist_ts_interfaces/requests.d.ts +15 -0
  34. package/dist_ts_interfaces/requests.js +2 -0
  35. package/dist_ts_shared/index.d.ts +1 -0
  36. package/dist_ts_shared/index.js +2 -0
  37. package/dist_ts_shared/plugins.d.ts +2 -0
  38. package/dist_ts_shared/plugins.js +3 -0
  39. package/dist_ts_shared/previewroute.d.ts +18 -0
  40. package/dist_ts_shared/previewroute.js +47 -0
  41. package/{dist_ts_web → dist_ts_shell}/elements/wcc-contextmenu.js +1 -1
  42. package/dist_ts_shell/elements/wcc-preview-frame.d.ts +23 -0
  43. package/dist_ts_shell/elements/wcc-preview-frame.js +197 -0
  44. package/dist_ts_shell/elements/wcc-properties.d.ts +49 -0
  45. package/{dist_ts_web → dist_ts_shell}/elements/wcc-properties.js +149 -216
  46. package/{dist_ts_web → dist_ts_shell}/elements/wcc-record-button.js +1 -1
  47. package/{dist_ts_web → dist_ts_shell}/elements/wcc-recording-panel.d.ts +2 -2
  48. package/{dist_ts_web → dist_ts_shell}/elements/wcc-recording-panel.js +12 -16
  49. package/dist_ts_shell/elements/wcc-shell.d.ts +87 -0
  50. package/dist_ts_shell/elements/wcc-shell.js +524 -0
  51. package/{dist_ts_web → dist_ts_shell}/elements/wcc-sidebar.d.ts +12 -10
  52. package/{dist_ts_web → dist_ts_shell}/elements/wcc-sidebar.js +137 -183
  53. package/dist_ts_shell/index.d.ts +4 -0
  54. package/dist_ts_shell/index.js +5 -0
  55. package/dist_ts_shell/plugins.d.ts +4 -0
  56. package/dist_ts_shell/plugins.js +5 -0
  57. package/dist_ts_shell/previewconnection.d.ts +30 -0
  58. package/dist_ts_shell/previewconnection.js +86 -0
  59. package/dist_ts_shell/services/recorder.service.js +353 -0
  60. package/dist_ts_web/00_commitinfo_data.js +2 -2
  61. package/dist_ts_web/catalog.d.ts +45 -0
  62. package/dist_ts_web/catalog.js +153 -0
  63. package/dist_ts_web/elementproperties.d.ts +15 -0
  64. package/dist_ts_web/elementproperties.js +89 -0
  65. package/dist_ts_web/elements/wcc-preview.d.ts +19 -0
  66. package/dist_ts_web/elements/wcc-preview.js +164 -0
  67. package/dist_ts_web/elements/wcc-standalone-notice.d.ts +14 -0
  68. package/dist_ts_web/elements/wcc-standalone-notice.js +110 -0
  69. package/dist_ts_web/elements/wcctools.helpers.d.ts +2 -6
  70. package/dist_ts_web/elements/wcctools.helpers.js +1 -7
  71. package/dist_ts_web/index.d.ts +2 -5
  72. package/dist_ts_web/index.js +38 -17
  73. package/dist_ts_web/previewbridge.d.ts +39 -0
  74. package/dist_ts_web/previewbridge.js +153 -0
  75. package/dist_ts_web/renderedtree.d.ts +5 -0
  76. package/dist_ts_web/renderedtree.js +37 -0
  77. package/dist_ts_web/wcctools.interfaces.d.ts +3 -6
  78. package/dist_ts_web/wcctools.interfaces.js +1 -1
  79. package/dist_ts_web/wcctools.plugins.d.ts +3 -1
  80. package/dist_ts_web/wcctools.plugins.js +4 -2
  81. package/package.json +16 -8
  82. package/readme.md +60 -28
  83. package/ts/00_commitinfo_data.ts +8 -0
  84. package/ts/classes.devapi.ts +25 -0
  85. package/ts/classes.devserver.ts +161 -0
  86. package/ts/cli.ts +46 -0
  87. package/ts/index.ts +3 -0
  88. package/ts/paths.ts +7 -0
  89. package/ts/plugins.ts +29 -0
  90. package/ts/shellcontent.ts +42 -0
  91. package/ts_web/00_commitinfo_data.ts +1 -1
  92. package/ts_web/catalog.ts +194 -0
  93. package/ts_web/elementproperties.ts +96 -0
  94. package/ts_web/elements/wcc-preview.ts +111 -0
  95. package/ts_web/elements/wcc-standalone-notice.ts +65 -0
  96. package/ts_web/elements/wcctools.helpers.ts +2 -10
  97. package/ts_web/index.ts +38 -19
  98. package/ts_web/previewbridge.ts +189 -0
  99. package/ts_web/readme.md +26 -85
  100. package/ts_web/renderedtree.ts +43 -0
  101. package/ts_web/wcctools.interfaces.ts +4 -7
  102. package/ts_web/wcctools.plugins.ts +6 -1
  103. package/dist_bundle/bundle.js +0 -92419
  104. package/dist_bundle/bundle.js.map +0 -1
  105. package/dist_ts_web/elements/wcc-dashboard.d.ts +0 -119
  106. package/dist_ts_web/elements/wcc-dashboard.js +0 -700
  107. package/dist_ts_web/elements/wcc-frame.d.ts +0 -22
  108. package/dist_ts_web/elements/wcc-frame.js +0 -256
  109. package/dist_ts_web/elements/wcc-properties.d.ts +0 -43
  110. package/dist_ts_web/pages/index.d.ts +0 -1
  111. package/dist_ts_web/pages/index.js +0 -2
  112. package/dist_ts_web/services/recorder.service.js +0 -353
  113. package/ts_web/elements/wcc-contextmenu.ts +0 -291
  114. package/ts_web/elements/wcc-dashboard.ts +0 -672
  115. package/ts_web/elements/wcc-frame.ts +0 -189
  116. package/ts_web/elements/wcc-properties.ts +0 -1089
  117. package/ts_web/elements/wcc-record-button.ts +0 -108
  118. package/ts_web/elements/wcc-recording-panel.ts +0 -1010
  119. package/ts_web/elements/wcc-sidebar.ts +0 -1470
  120. package/ts_web/pages/index.ts +0 -1
  121. package/ts_web/services/recorder.service.ts +0 -451
  122. package/ts_web/types/dom-mediacapture-stub/index.d.ts +0 -12
  123. package/ts_web/types/dom-mediacapture-stub/package.json +0 -6
  124. package/ts_web/types/dom-webcodecs-stub/index.d.ts +0 -2
  125. package/ts_web/types/dom-webcodecs-stub/package.json +0 -6
  126. /package/{dist_ts_web → dist_ts_shell}/elements/wcc-contextmenu.d.ts +0 -0
  127. /package/{dist_ts_web → dist_ts_shell}/elements/wcc-record-button.d.ts +0 -0
  128. /package/{dist_ts_web → dist_ts_shell}/services/recorder.service.d.ts +0 -0
@@ -33,26 +33,24 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
33
33
  return useValue ? value : void 0;
34
34
  };
35
35
  import { DeesElement, property, html, customElement, state } from '@design.estate/dees-element';
36
- import { WccDashboard } from './wcc-dashboard.js';
37
- import { determinePropertyType, findElementInstance } from './wcctools.helpers.js';
36
+ import * as plugins from '../plugins.js';
38
37
  import './wcc-record-button.js';
39
38
  import './wcc-recording-panel.js';
40
- let environment = 'native';
41
- export const setEnvironment = (envArg) => {
42
- environment = envArg;
43
- };
44
39
  let WccProperties = (() => {
45
40
  let _classDecorators = [customElement('wcc-properties')];
46
41
  let _classDescriptor;
47
42
  let _classExtraInitializers = [];
48
43
  let _classThis;
49
44
  let _classSuper = DeesElement;
50
- let _dashboardRef_decorators;
51
- let _dashboardRef_initializers = [];
52
- let _dashboardRef_extraInitializers = [];
53
- let _selectedItem_decorators;
54
- let _selectedItem_initializers = [];
55
- let _selectedItem_extraInitializers = [];
45
+ let _bridge_decorators;
46
+ let _bridge_initializers = [];
47
+ let _bridge_extraInitializers = [];
48
+ let _renderCount_decorators;
49
+ let _renderCount_initializers = [];
50
+ let _renderCount_extraInitializers = [];
51
+ let _captureTarget_decorators;
52
+ let _captureTarget_initializers = [];
53
+ let _captureTarget_extraInitializers = [];
56
54
  let _selectedViewport_decorators;
57
55
  let _selectedViewport_initializers = [];
58
56
  let _selectedViewport_extraInitializers = [];
@@ -90,14 +88,13 @@ let WccProperties = (() => {
90
88
  static { _classThis = this; }
91
89
  static {
92
90
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
93
- _dashboardRef_decorators = [property({
94
- type: WccDashboard
95
- })];
96
- _selectedItem_decorators = [property()];
91
+ _bridge_decorators = [property({ attribute: false })];
92
+ _renderCount_decorators = [property({ type: Number })];
93
+ _captureTarget_decorators = [property({ attribute: false })];
97
94
  _selectedViewport_decorators = [property()];
98
95
  _selectedTheme_decorators = [property()];
99
96
  _warning_decorators = [property()];
100
- _isNative_decorators = [property()];
97
+ _isNative_decorators = [property({ type: Boolean })];
101
98
  _sidebarWidth_decorators = [property({ type: Number })];
102
99
  _propertyContent_decorators = [state()];
103
100
  _editingProperties_decorators = [state()];
@@ -105,8 +102,9 @@ let WccProperties = (() => {
105
102
  _isRecording_decorators = [state()];
106
103
  _recordingDuration_decorators = [state()];
107
104
  _isHidden_decorators = [state()];
108
- __esDecorate(this, null, _dashboardRef_decorators, { kind: "accessor", name: "dashboardRef", static: false, private: false, access: { has: obj => "dashboardRef" in obj, get: obj => obj.dashboardRef, set: (obj, value) => { obj.dashboardRef = value; } }, metadata: _metadata }, _dashboardRef_initializers, _dashboardRef_extraInitializers);
109
- __esDecorate(this, null, _selectedItem_decorators, { kind: "accessor", name: "selectedItem", static: false, private: false, access: { has: obj => "selectedItem" in obj, get: obj => obj.selectedItem, set: (obj, value) => { obj.selectedItem = value; } }, metadata: _metadata }, _selectedItem_initializers, _selectedItem_extraInitializers);
105
+ __esDecorate(this, null, _bridge_decorators, { kind: "accessor", name: "bridge", static: false, private: false, access: { has: obj => "bridge" in obj, get: obj => obj.bridge, set: (obj, value) => { obj.bridge = value; } }, metadata: _metadata }, _bridge_initializers, _bridge_extraInitializers);
106
+ __esDecorate(this, null, _renderCount_decorators, { kind: "accessor", name: "renderCount", static: false, private: false, access: { has: obj => "renderCount" in obj, get: obj => obj.renderCount, set: (obj, value) => { obj.renderCount = value; } }, metadata: _metadata }, _renderCount_initializers, _renderCount_extraInitializers);
107
+ __esDecorate(this, null, _captureTarget_decorators, { kind: "accessor", name: "captureTarget", static: false, private: false, access: { has: obj => "captureTarget" in obj, get: obj => obj.captureTarget, set: (obj, value) => { obj.captureTarget = value; } }, metadata: _metadata }, _captureTarget_initializers, _captureTarget_extraInitializers);
110
108
  __esDecorate(this, null, _selectedViewport_decorators, { kind: "accessor", name: "selectedViewport", static: false, private: false, access: { has: obj => "selectedViewport" in obj, get: obj => obj.selectedViewport, set: (obj, value) => { obj.selectedViewport = value; } }, metadata: _metadata }, _selectedViewport_initializers, _selectedViewport_extraInitializers);
111
109
  __esDecorate(this, null, _selectedTheme_decorators, { kind: "accessor", name: "selectedTheme", static: false, private: false, access: { has: obj => "selectedTheme" in obj, get: obj => obj.selectedTheme, set: (obj, value) => { obj.selectedTheme = value; } }, metadata: _metadata }, _selectedTheme_initializers, _selectedTheme_extraInitializers);
112
110
  __esDecorate(this, null, _warning_decorators, { kind: "accessor", name: "warning", static: false, private: false, access: { has: obj => "warning" in obj, get: obj => obj.warning, set: (obj, value) => { obj.warning = value; } }, metadata: _metadata }, _warning_initializers, _warning_extraInitializers);
@@ -123,13 +121,19 @@ let WccProperties = (() => {
123
121
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
124
122
  __runInitializers(_classThis, _classExtraInitializers);
125
123
  }
126
- #dashboardRef_accessor_storage = __runInitializers(this, _dashboardRef_initializers, void 0);
127
- get dashboardRef() { return this.#dashboardRef_accessor_storage; }
128
- set dashboardRef(value) { this.#dashboardRef_accessor_storage = value; }
129
- #selectedItem_accessor_storage = (__runInitializers(this, _dashboardRef_extraInitializers), __runInitializers(this, _selectedItem_initializers, void 0));
130
- get selectedItem() { return this.#selectedItem_accessor_storage; }
131
- set selectedItem(value) { this.#selectedItem_accessor_storage = value; }
132
- #selectedViewport_accessor_storage = (__runInitializers(this, _selectedItem_extraInitializers), __runInitializers(this, _selectedViewport_initializers, 'native'));
124
+ #bridge_accessor_storage = __runInitializers(this, _bridge_initializers, null);
125
+ /** The connected preview's bridge; null while the preview loads. */
126
+ get bridge() { return this.#bridge_accessor_storage; }
127
+ set bridge(value) { this.#bridge_accessor_storage = value; }
128
+ #renderCount_accessor_storage = (__runInitializers(this, _bridge_extraInitializers), __runInitializers(this, _renderCount_initializers, 0));
129
+ /** Changes whenever the preview rendered something new, so the panel reads the properties again. */
130
+ get renderCount() { return this.#renderCount_accessor_storage; }
131
+ set renderCount(value) { this.#renderCount_accessor_storage = value; }
132
+ #captureTarget_accessor_storage = (__runInitializers(this, _renderCount_extraInitializers), __runInitializers(this, _captureTarget_initializers, null));
133
+ /** The element the recorder crops a viewport recording to. */
134
+ get captureTarget() { return this.#captureTarget_accessor_storage; }
135
+ set captureTarget(value) { this.#captureTarget_accessor_storage = value; }
136
+ #selectedViewport_accessor_storage = (__runInitializers(this, _captureTarget_extraInitializers), __runInitializers(this, _selectedViewport_initializers, 'desktop'));
133
137
  get selectedViewport() { return this.#selectedViewport_accessor_storage; }
134
138
  set selectedViewport(value) { this.#selectedViewport_accessor_storage = value; }
135
139
  #selectedTheme_accessor_storage = (__runInitializers(this, _selectedViewport_extraInitializers), __runInitializers(this, _selectedTheme_initializers, 'dark'));
@@ -165,6 +169,14 @@ let WccProperties = (() => {
165
169
  get isHidden() { return this.#isHidden_accessor_storage; }
166
170
  set isHidden(value) { this.#isHidden_accessor_storage = value; }
167
171
  editorHeight = (__runInitializers(this, _isHidden_extraInitializers), 300);
172
+ propertiesGeneration = 0;
173
+ hideTimeout;
174
+ async disconnectedCallback() {
175
+ const disconnected = super.disconnectedCallback();
176
+ clearTimeout(this.hideTimeout);
177
+ this.isHidden = this.isNative;
178
+ return disconnected;
179
+ }
168
180
  render() {
169
181
  return html `
170
182
  <style>
@@ -662,7 +674,7 @@ let WccProperties = (() => {
662
674
  height: 100px;
663
675
  }
664
676
 
665
- @container wccDashboard (max-width: 600px) {
677
+ @container wccShell (max-width: 600px) {
666
678
  :host {
667
679
  left: 0;
668
680
  height: ${this.editingProperties.length > 0 ? 160 + this.editorHeight : 160}px;
@@ -869,7 +881,7 @@ let WccProperties = (() => {
869
881
  <!-- Recording Panel (options + preview) -->
870
882
  ${this.showRecordingPanel ? html `
871
883
  <wcc-recording-panel
872
- .dashboardRef=${this.dashboardRef}
884
+ .captureTarget=${this.captureTarget}
873
885
  @recording-start=${() => { this.isRecording = true; }}
874
886
  @recording-stop=${() => { this.isRecording = false; }}
875
887
  @duration-update=${(e) => { this.recordingDuration = e.detail.duration; }}
@@ -878,262 +890,183 @@ let WccProperties = (() => {
878
890
  ` : null}
879
891
  `;
880
892
  }
893
+ /** Read the rendered element's properties from the preview and build their editors. */
881
894
  async createProperties() {
882
- // Clear any previous warnings
883
- this.warning = null;
884
- if (!this.selectedItem) {
895
+ const generation = ++this.propertiesGeneration;
896
+ const bridge = this.bridge;
897
+ if (!bridge) {
885
898
  this.propertyContent = [];
899
+ this.warning = 'Waiting for the preview to load.';
886
900
  return;
887
901
  }
888
- const getEnumValues = (propertyArg) => {
889
- const enumValues = [];
890
- Object.keys(propertyArg.type).forEach((valueArg) => {
891
- enumValues.push(valueArg);
892
- });
893
- return enumValues;
894
- };
895
- if (this.selectedItem && this.selectedItem.demo) {
896
- const anonItem = this.selectedItem;
897
- if (!anonItem) {
898
- this.warning = 'no element selected';
899
- return;
900
- }
901
- const wccFrame = await this.dashboardRef.wccFrame;
902
- // Wait for render to complete and any demo wrappers to run
903
- await new Promise(resolve => setTimeout(resolve, 200));
904
- // Try to find the element with recursive search
905
- const viewport = await wccFrame.getViewportElement();
906
- let firstFoundInstantiatedElement = findElementInstance(viewport, this.selectedItem);
907
- // Retry logic if element not found
908
- let retries = 0;
909
- while (!firstFoundInstantiatedElement && retries < 5) {
910
- await new Promise(resolve => setTimeout(resolve, 200));
911
- try {
912
- firstFoundInstantiatedElement = findElementInstance(viewport, this.selectedItem);
913
- }
914
- catch (error) {
915
- console.error('Error during element search retry:', error);
916
- }
917
- retries++;
918
- }
919
- if (!firstFoundInstantiatedElement) {
920
- this.warning = `no first instantiated element found for >>${anonItem.name}<< after ${retries} retries`;
921
- this.propertyContent = [];
922
- return;
923
- }
924
- const classProperties = anonItem.elementProperties;
925
- if (!classProperties) {
926
- this.warning = `selected element >>${anonItem.name}<< does not expose element properties`;
927
- return;
928
- }
929
- this.warning = null;
930
- const propertyArray = [];
931
- for (const [key, property] of classProperties) {
932
- if (typeof key !== 'string' || key.startsWith('#') || key === 'goBright' || key === 'domtools') {
933
- continue;
934
- }
935
- const propertyTypeString = determinePropertyType(property);
936
- if (!propertyTypeString) {
937
- continue;
938
- }
939
- propertyArray.push(html `
940
- <div class="property">
941
- <div class="property-label">${key} (${propertyTypeString})</div>
942
- ${(() => {
943
- switch (propertyTypeString) {
944
- case 'Boolean':
945
- return html `<input
946
- aria-label=${key}
947
- type="checkbox"
948
- ?checked=${firstFoundInstantiatedElement[key]}
949
- @input="${(eventArg) => {
950
- firstFoundInstantiatedElement[key] = eventArg.target.checked;
951
- }}"
952
- />`;
953
- case 'String':
954
- return html `<input
955
- aria-label=${key}
956
- type="text"
957
- .value=${firstFoundInstantiatedElement[key] || ''}
958
- @input="${(eventArg) => {
959
- firstFoundInstantiatedElement[key] = eventArg.target.value;
960
- }}"
961
- />`;
962
- case 'Number':
963
- return html `<input
964
- aria-label=${key}
965
- type="number"
966
- .value=${firstFoundInstantiatedElement[key] ?? ''}
967
- @input="${(eventArg) => {
968
- firstFoundInstantiatedElement[key] = parseFloat(eventArg.target.value) || 0;
969
- }}"
970
- />`;
971
- case 'Enum':
972
- const enumValues = getEnumValues(property);
973
- return html `<select
974
- aria-label=${key}
975
- .value=${firstFoundInstantiatedElement[key] || ''}
976
- @change="${(eventArg) => {
977
- firstFoundInstantiatedElement[key] = eventArg.target.value;
978
- }}"
979
- >
980
- ${enumValues.map((valueArg) => {
981
- return html `
982
- <option
983
- value="${valueArg}"
984
- >
985
- ${valueArg}
986
- </option>
987
- `;
988
- })}
989
- </select>`;
990
- case 'Object':
991
- case 'Array':
992
- return html `<button
993
- type="button"
994
- aria-label=${`Edit ${key}`}
995
- class="editor-button"
996
- style="width: 100%; margin-top: 0.25rem;"
997
- @click="${() => this.openAdvancedEditor(key, firstFoundInstantiatedElement[key], firstFoundInstantiatedElement)}"
998
- >
999
- Edit ${propertyTypeString}
1000
- </button>`;
1001
- default:
1002
- return html `<div style="color: #666; font-size: 0.7rem;">Unsupported type</div>`;
1003
- }
1004
- })()}
1005
- </div>
1006
- `);
1007
- }
1008
- this.propertyContent = propertyArray;
902
+ const listing = await bridge.getProperties();
903
+ if (generation !== this.propertiesGeneration) {
904
+ return;
1009
905
  }
1010
- else {
906
+ if (listing.kind === 'unavailable') {
1011
907
  this.propertyContent = [];
1012
- this.warning = `You selected a page.`;
1013
- return null;
908
+ this.warning = listing.reason;
909
+ return;
1014
910
  }
911
+ this.warning = null;
912
+ this.propertyContent = listing.properties.map((descriptor) => this.renderPropertyEditor(bridge, descriptor));
913
+ }
914
+ renderPropertyEditor(bridgeArg, descriptorArg) {
915
+ const { name, kind } = descriptorArg;
916
+ const setValue = (valueArg) => {
917
+ const result = bridgeArg.setProperty(name, valueArg);
918
+ this.warning = 'error' in result ? result.error : null;
919
+ };
920
+ const editor = (() => {
921
+ switch (kind) {
922
+ case 'Boolean':
923
+ return html `<input
924
+ aria-label=${name}
925
+ type="checkbox"
926
+ ?checked=${descriptorArg.value === true}
927
+ @input="${(eventArg) => setValue(eventArg.target.checked)}"
928
+ />`;
929
+ case 'String':
930
+ return html `<input
931
+ aria-label=${name}
932
+ type="text"
933
+ .value=${descriptorArg.value == null ? '' : String(descriptorArg.value)}
934
+ @input="${(eventArg) => setValue(eventArg.target.value)}"
935
+ />`;
936
+ case 'Number':
937
+ return html `<input
938
+ aria-label=${name}
939
+ type="number"
940
+ .value=${descriptorArg.value == null ? '' : String(descriptorArg.value)}
941
+ @input="${(eventArg) => setValue(parseFloat(eventArg.target.value) || 0)}"
942
+ />`;
943
+ case 'Enum':
944
+ return html `<select
945
+ aria-label=${name}
946
+ .value=${descriptorArg.value == null ? '' : String(descriptorArg.value)}
947
+ @change="${(eventArg) => setValue(eventArg.target.value)}"
948
+ >
949
+ ${(descriptorArg.enumValues ?? []).map((valueArg) => html `<option value="${valueArg}">${valueArg}</option>`)}
950
+ </select>`;
951
+ case 'Object':
952
+ case 'Array':
953
+ return descriptorArg.json === undefined
954
+ ? html `<div style="color: #666; font-size: 0.7rem;">Not representable as JSON</div>`
955
+ : html `<button
956
+ type="button"
957
+ aria-label=${`Edit ${name}`}
958
+ class="editor-button"
959
+ style="width: 100%; margin-top: 0.25rem;"
960
+ @click="${() => this.openAdvancedEditor(name, descriptorArg.json)}"
961
+ >
962
+ Edit ${kind}
963
+ </button>`;
964
+ }
965
+ })();
966
+ return html `
967
+ <div class="property">
968
+ <div class="property-label">${name} (${kind})</div>
969
+ ${editor}
970
+ </div>
971
+ `;
1015
972
  }
1016
973
  selectTheme(themeArg) {
1017
974
  this.selectedTheme = themeArg;
1018
975
  this.dispatchEvent(new CustomEvent('selectedTheme', {
1019
976
  detail: themeArg,
1020
977
  }));
1021
- this.dashboardRef.buildUrl();
1022
978
  }
1023
979
  updated(changedProperties) {
1024
980
  super.updated(changedProperties);
1025
981
  // Handle delayed hide for native mode transition
1026
982
  if (changedProperties.has('isNative')) {
1027
- if (this.isNative) {
983
+ clearTimeout(this.hideTimeout);
984
+ if (this.isNative && this.isConnected) {
1028
985
  // Delay hiding until frame animation completes
1029
- setTimeout(() => {
986
+ this.hideTimeout = setTimeout(() => {
1030
987
  this.isHidden = true;
1031
988
  }, 300);
1032
989
  }
1033
990
  else {
1034
991
  // Show immediately when exiting native mode
1035
- this.isHidden = false;
992
+ this.isHidden = this.isNative;
1036
993
  }
1037
994
  }
1038
- // Only recreate properties when selectedItem changes
1039
- if (changedProperties.has('selectedItem')) {
1040
- this.createProperties().catch(error => {
1041
- console.error('Error creating properties:', error);
995
+ // Read the properties again for a new preview or a new render
996
+ if (changedProperties.has('bridge') || changedProperties.has('renderCount')) {
997
+ if (changedProperties.has('bridge')) {
998
+ this.closeAllEditors();
999
+ }
1000
+ this.createProperties().catch((error) => {
1001
+ console.error('wcctools: reading the preview properties failed', error);
1042
1002
  this.propertyContent = [];
1043
1003
  });
1044
1004
  }
1045
1005
  }
1046
1006
  selectViewport(viewport) {
1047
1007
  this.selectedViewport = viewport;
1048
- setEnvironment(viewport);
1049
1008
  this.dispatchEvent(new CustomEvent('selectedViewport', {
1050
1009
  detail: viewport,
1051
1010
  }));
1052
- this.dashboardRef.buildUrl();
1053
1011
  }
1054
- openAdvancedEditor(propertyName, value, element) {
1012
+ openAdvancedEditor(propertyName, jsonArg) {
1055
1013
  // Check if this property is already being edited
1056
- const existingEditor = this.editingProperties.find(p => p.name === propertyName && p.element === element);
1057
- if (existingEditor) {
1058
- return; // Property is already open for editing
1014
+ if (this.editingProperties.some((editor) => editor.name === propertyName)) {
1015
+ return;
1059
1016
  }
1060
1017
  const newEditor = {
1061
1018
  id: `${propertyName}-${Date.now()}`,
1062
1019
  name: propertyName,
1063
- value: value,
1064
- element: element,
1065
- editorValue: JSON.stringify(value, null, 2),
1066
- editorError: ''
1020
+ editorValue: jsonArg,
1021
+ editorError: '',
1067
1022
  };
1068
1023
  this.editingProperties = [...this.editingProperties, newEditor];
1069
1024
  // Notify parent to resize frame if this is the first editor
1070
1025
  if (this.editingProperties.length === 1) {
1071
- this.dispatchEvent(new CustomEvent('editorStateChanged', {
1072
- detail: { isOpen: true },
1073
- bubbles: true
1074
- }));
1026
+ this.dispatchEditorState(true);
1075
1027
  }
1076
1028
  }
1077
1029
  handleEditorSave(editorId) {
1078
1030
  const editor = this.editingProperties.find(p => p.id === editorId);
1079
- if (!editor)
1031
+ if (!editor || !this.bridge)
1032
+ return;
1033
+ const result = this.bridge.setPropertyJson(editor.name, editor.editorValue);
1034
+ if ('error' in result) {
1035
+ editor.editorError = result.error;
1036
+ this.requestUpdate();
1080
1037
  return;
1081
- try {
1082
- const parsedValue = JSON.parse(editor.editorValue);
1083
- editor.element[editor.name] = parsedValue;
1084
- // Remove this editor from the list
1085
- this.editingProperties = this.editingProperties.filter(p => p.id !== editorId);
1086
- // If no more editors, notify parent to resize frame
1087
- if (this.editingProperties.length === 0) {
1088
- this.dispatchEvent(new CustomEvent('editorStateChanged', {
1089
- detail: { isOpen: false },
1090
- bubbles: true
1091
- }));
1092
- }
1093
- // Refresh properties display
1094
- this.createProperties();
1095
- }
1096
- catch (error) {
1097
- // Update error for this specific editor
1098
- const editorIndex = this.editingProperties.findIndex(p => p.id === editorId);
1099
- if (editorIndex !== -1) {
1100
- this.editingProperties[editorIndex].editorError = `Invalid JSON: ${error.message}`;
1101
- this.requestUpdate();
1102
- }
1103
1038
  }
1039
+ this.handleEditorCancel(editorId);
1040
+ // Refresh properties display
1041
+ this.createProperties();
1104
1042
  }
1105
1043
  handleEditorCancel(editorId) {
1106
1044
  // Remove this editor from the list
1107
1045
  this.editingProperties = this.editingProperties.filter(p => p.id !== editorId);
1108
1046
  // If no more editors, notify parent to resize frame
1109
1047
  if (this.editingProperties.length === 0) {
1110
- this.dispatchEvent(new CustomEvent('editorStateChanged', {
1111
- detail: { isOpen: false },
1112
- bubbles: true
1113
- }));
1048
+ this.dispatchEditorState(false);
1114
1049
  }
1115
1050
  }
1116
1051
  closeAllEditors() {
1052
+ if (this.editingProperties.length === 0) {
1053
+ return;
1054
+ }
1117
1055
  this.editingProperties = [];
1118
1056
  // Notify parent to resize frame back
1119
- this.dispatchEvent(new CustomEvent('editorStateChanged', {
1120
- detail: { isOpen: false },
1121
- bubbles: true
1122
- }));
1057
+ this.dispatchEditorState(false);
1123
1058
  }
1124
- toggleNative() {
1125
- this.dispatchEvent(new CustomEvent('toggleNative', {
1059
+ dispatchEditorState(isOpenArg) {
1060
+ this.dispatchEvent(new CustomEvent('editorStateChanged', {
1061
+ detail: { isOpen: isOpenArg },
1126
1062
  bubbles: true
1127
1063
  }));
1128
1064
  }
1129
1065
  // ==================== Recording Methods ====================
1130
1066
  handleRecordButtonClick() {
1131
1067
  if (this.isRecording) {
1132
- // Stop recording by calling the panel's stopRecording method
1133
- const panel = this.shadowRoot?.querySelector('wcc-recording-panel');
1134
- if (panel && panel.stopRecording) {
1135
- panel.stopRecording();
1136
- }
1068
+ // Stop recording through the panel
1069
+ this.shadowRoot?.querySelector('wcc-recording-panel')?.stopRecording();
1137
1070
  }
1138
1071
  else {
1139
1072
  // Toggle the recording panel
@@ -1144,4 +1077,4 @@ let WccProperties = (() => {
1144
1077
  return WccProperties = _classThis;
1145
1078
  })();
1146
1079
  export { WccProperties };
1147
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2NjLXByb3BlcnRpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvd2NjLXByb3BlcnRpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQXVCLEtBQUssRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEVBQTZDLE1BQU0sdUJBQXVCLENBQUM7QUFDOUgsT0FBTyx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLDBCQUEwQixDQUFDO0FBT2xDLElBQUksV0FBVyxHQUFpQixRQUFRLENBQUM7QUFFekMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUU7SUFDdkMsV0FBVyxHQUFHLE1BQU0sQ0FBQztBQUN2QixDQUFDLENBQUM7SUFHVyxhQUFhOzRCQUR6QixhQUFhLENBQUMsZ0JBQWdCLENBQUM7Ozs7c0JBQ0csV0FBVzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs2QkFBbkIsU0FBUSxXQUFXOzs7O3dDQUMzQyxRQUFRLENBQUM7b0JBQ1IsSUFBSSxFQUFFLFlBQVk7aUJBQ25CLENBQUM7d0NBR0QsUUFBUSxFQUFFOzRDQUdWLFFBQVEsRUFBRTt5Q0FHVixRQUFRLEVBQUU7bUNBR1YsUUFBUSxFQUFFO29DQUdWLFFBQVEsRUFBRTt3Q0FHVixRQUFRLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUM7MkNBRzFCLEtBQUssRUFBRTs2Q0FHUCxLQUFLLEVBQUU7OENBV1AsS0FBSyxFQUFFO3VDQUdQLEtBQUssRUFBRTs2Q0FHUCxLQUFLLEVBQUU7b0NBSVAsS0FB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
1080
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2NjLXByb3BlcnRpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90c19zaGVsbC9lbGVtZW50cy93Y2MtcHJvcGVydGllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBdUIsS0FBSyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckgsT0FBTyxLQUFLLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFHekMsT0FBTyx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLDBCQUEwQixDQUFDO0lBV3JCLGFBQWE7NEJBRHpCLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQzs7OztzQkFDRyxXQUFXOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzZCQUFuQixTQUFRLFdBQVc7Ozs7a0NBRTNDLFFBQVEsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQzt1Q0FJOUIsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDO3lDQUkxQixRQUFRLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7NENBRzlCLFFBQVEsRUFBRTt5Q0FHVixRQUFRLEVBQUU7bUNBR1YsUUFBUSxFQUFFO29DQUdWLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQzt3Q0FHM0IsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDOzJDQUcxQixLQUFLLEVBQUU7NkNBR1AsS0FBSyxFQUFFOzhDQUlQLEtBQUssRUFBRTt1Q0FHUCxLQUFLLEVBQUU7NkNBR1AsS0FBSyxFQUFFO29DQUlQLEtBQUssRUFBRTtZQTFDUix1S0FBUyxNQUFNLDZCQUFOLE1BQU0sdUZBQXFEO1lBSXBFLHNMQUFTLFdBQVcsNkJBQVgsV0FBVyxpR0FB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
@@ -162,4 +162,4 @@ let WccRecordButton = (() => {
162
162
  return WccRecordButton = _classThis;
163
163
  })();
164
164
  export { WccRecordButton };
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2NjLXJlY29yZC1idXR0b24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvd2NjLXJlY29yZC1idXR0b24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUF1QixNQUFNLDZCQUE2QixDQUFDO0lBR3RHLGVBQWU7NEJBRDNCLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQzs7OztzQkFDRSxXQUFXOzs7Ozs7OytCQUFuQixTQUFRLFdBQVc7Ozs7aUNBQzdDLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQztvQ0FHMUIsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBRjNCLG9LQUFTLEtBQUssNkJBQUwsS0FBSyxxRkFBZ0M7WUFHOUMsNktBQVMsUUFBUSw2QkFBUixRQUFRLDJGQUFhO1lBTGhDLDZLQXdHQzs7OztRQXRHQyx1RUFBdUMsTUFBTSxFQUFDO1FBQTlDLElBQVMsS0FBSywyQ0FBZ0M7UUFBOUMsSUFBUyxLQUFLLGlEQUFnQztRQUc5QyxpSUFBNEIsQ0FBQyxHQUFDO1FBQTlCLElBQVMsUUFBUSw4Q0FBYTtRQUE5QixJQUFTLFFBQVEsb0RBQWE7UUFFdkIsTUFBTSxDQUFDLE1BQU0sR0FBRztZQUNyQixHQUFHLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0FpREY7U0FDRixDQUFDO1FBRU0sY0FBYyxDQUFDLE9BQWU7WUFDcEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDdEMsTUFBTSxJQUFJLEdBQUcsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUMxQixPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNuRixDQUFDO1FBRU0sTUFBTTtZQUNYLE9BQU8sSUFBSSxDQUFBOzs7VUFHTCxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFBOzBDQUNELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztTQUNuRSxDQUFDLENBQUMsQ0FBQyxJQUFJOztLQUVYLENBQUM7UUFDSixDQUFDO1FBRUQsS0FBSyxDQUFDLGlCQUFpQjtZQUNyQixNQUFNLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25ELENBQUM7UUFFRCxLQUFLLENBQUMsb0JBQW9CO1lBQ3hCLE1BQU0sS0FBSyxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdEQsQ0FBQztRQUVPLFdBQVcsMERBQUcsR0FBUyxFQUFFO1lBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxXQUFXLENBQUMsY0FBYyxFQUFFO2dCQUNqRCxPQUFPLEVBQUUsSUFBSTtnQkFDYixRQUFRLEVBQUUsSUFBSTthQUNmLENBQUMsQ0FBQyxDQUFDO1FBQ04sQ0FBQyxFQUFDO1FBRUYsT0FBTyxDQUFDLGlCQUF1QztZQUM3QyxLQUFLLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDakMsSUFBSSxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDbkMsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsRUFBRSxDQUFDO29CQUMvQixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDbEMsQ0FBQztxQkFBTSxDQUFDO29CQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNyQyxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7O1lBdkdVLHVEQUFlOzs7OztTQUFmLGVBQWUifQ==
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2NjLXJlY29yZC1idXR0b24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90c19zaGVsbC9lbGVtZW50cy93Y2MtcmVjb3JkLWJ1dHRvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQXVCLE1BQU0sNkJBQTZCLENBQUM7SUFHdEcsZUFBZTs0QkFEM0IsYUFBYSxDQUFDLG1CQUFtQixDQUFDOzs7O3NCQUNFLFdBQVc7Ozs7Ozs7K0JBQW5CLFNBQVEsV0FBVzs7OztpQ0FDN0MsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDO29DQUcxQixRQUFRLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFGM0Isb0tBQVMsS0FBSyw2QkFBTCxLQUFLLHFGQUFnQztZQUc5Qyw2S0FBUyxRQUFRLDZCQUFSLFFBQVEsMkZBQWE7WUFMaEMsNktBd0dDOzs7O1FBdEdDLHVFQUF1QyxNQUFNLEVBQUM7UUFBOUMsSUFBUyxLQUFLLDJDQUFnQztRQUE5QyxJQUFTLEtBQUssaURBQWdDO1FBRzlDLGlJQUE0QixDQUFDLEdBQUM7UUFBOUIsSUFBUyxRQUFRLDhDQUFhO1FBQTlCLElBQVMsUUFBUSxvREFBYTtRQUV2QixNQUFNLENBQUMsTUFBTSxHQUFHO1lBQ3JCLEdBQUcsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQWlERjtTQUNGLENBQUM7UUFFTSxjQUFjLENBQUMsT0FBZTtZQUNwQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUMsQ0FBQztZQUN0QyxNQUFNLElBQUksR0FBRyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQzFCLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ25GLENBQUM7UUFFTSxNQUFNO1lBQ1gsT0FBTyxJQUFJLENBQUE7OztVQUdMLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7MENBQ0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1NBQ25FLENBQUMsQ0FBQyxDQUFDLElBQUk7O0tBRVgsQ0FBQztRQUNKLENBQUM7UUFFRCxLQUFLLENBQUMsaUJBQWlCO1lBQ3JCLE1BQU0sS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkQsQ0FBQztRQUVELEtBQUssQ0FBQyxvQkFBb0I7WUFDeEIsTUFBTSxLQUFLLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN0RCxDQUFDO1FBRU8sV0FBVywwREFBRyxHQUFTLEVBQUU7WUFDL0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxjQUFjLEVBQUU7Z0JBQ2pELE9BQU8sRUFBRSxJQUFJO2dCQUNiLFFBQVEsRUFBRSxJQUFJO2FBQ2YsQ0FBQyxDQUFDLENBQUM7UUFDTixDQUFDLEVBQUM7UUFFRixPQUFPLENBQUMsaUJBQXVDO1lBQzdDLEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUNqQyxJQUFJLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dCQUNuQyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFLENBQUM7b0JBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNsQyxDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBQ3JDLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQzs7WUF2R1UsdURBQWU7Ozs7O1NBQWYsZUFBZSJ9
@@ -1,8 +1,8 @@
1
1
  import { DeesElement, type TemplateResult } from '@design.estate/dees-element';
2
2
  import { type TOutputFormat } from '../services/recorder.service.js';
3
- import type { WccDashboard } from './wcc-dashboard.js';
4
3
  export declare class WccRecordingPanel extends DeesElement {
5
- accessor dashboardRef: WccDashboard;
4
+ /** The element a viewport recording is cropped to: the shell's preview frame. */
5
+ accessor captureTarget: HTMLElement | null;
6
6
  accessor panelState: 'options' | 'recording' | 'preview';
7
7
  accessor recordingMode: 'viewport' | 'screen';
8
8
  accessor outputFormat: TOutputFormat;