@qverse-ui/lit-components 1.0.4 → 1.0.5
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/components/common/lit-switch-dollhouse-view/index.d.ts +20 -11
- package/dist/components/common/lit-switch-dollhouse-view/index.d.ts.map +1 -1
- package/dist/components/common/lit-switch-dollhouse-view/index.js +43 -42
- package/dist/components/common/lit-switch-dollhouse-view/index.js.map +1 -1
- package/dist/components/common/lit-switch-dollhouse-view/interaction.d.ts +5 -5
- package/dist/components/common/lit-switch-dollhouse-view/interaction.d.ts.map +1 -1
- package/dist/components/common/lit-switch-dollhouse-view/interaction.js +22 -22
- package/dist/components/common/lit-switch-dollhouse-view/interaction.js.map +1 -1
- package/dist/components/common/lit-switch-dollhouse-view/styles.d.ts.map +1 -1
- package/dist/components/common/lit-switch-dollhouse-view/styles.js +2 -6
- package/dist/components/common/lit-switch-dollhouse-view/styles.js.map +1 -1
- package/dist/components/common/lit-switch-floorplan-view/index.d.ts +5 -11
- package/dist/components/common/lit-switch-floorplan-view/index.d.ts.map +1 -1
- package/dist/components/common/lit-switch-floorplan-view/index.js +19 -30
- package/dist/components/common/lit-switch-floorplan-view/index.js.map +1 -1
- package/dist/components/common/lit-switch-floorplan-view/interaction.d.ts +5 -5
- package/dist/components/common/lit-switch-floorplan-view/interaction.d.ts.map +1 -1
- package/dist/components/common/lit-switch-floorplan-view/interaction.js +22 -22
- package/dist/components/common/lit-switch-floorplan-view/interaction.js.map +1 -1
- package/dist/components/common/lit-switch-floorplan-view/styles.d.ts.map +1 -1
- package/dist/components/common/lit-switch-floorplan-view/styles.js +2 -6
- package/dist/components/common/lit-switch-floorplan-view/styles.js.map +1 -1
- package/dist/components/common/lit-switch-panorama-view/index.d.ts +23 -11
- package/dist/components/common/lit-switch-panorama-view/index.d.ts.map +1 -1
- package/dist/components/common/lit-switch-panorama-view/index.js +43 -42
- package/dist/components/common/lit-switch-panorama-view/index.js.map +1 -1
- package/dist/components/common/lit-switch-panorama-view/interaction.d.ts +5 -5
- package/dist/components/common/lit-switch-panorama-view/interaction.d.ts.map +1 -1
- package/dist/components/common/lit-switch-panorama-view/interaction.js +22 -22
- package/dist/components/common/lit-switch-panorama-view/interaction.js.map +1 -1
- package/dist/components/common/lit-switch-panorama-view/styles.d.ts.map +1 -1
- package/dist/components/common/lit-switch-panorama-view/styles.js +2 -6
- package/dist/components/common/lit-switch-panorama-view/styles.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,43 +5,52 @@ export declare class LitSwitchDollhouseView extends LitElement {
|
|
|
5
5
|
/** qspace SDK 实例;仅 JS 属性绑定,不映射 HTML attribute(对象无法序列化) */
|
|
6
6
|
qspace: any;
|
|
7
7
|
/**
|
|
8
|
-
|
|
9
|
-
*
|
|
8
|
+
|
|
9
|
+
* 是否可点击;由 core.loaded / mode.change 自动同步,宿主亦可覆盖
|
|
10
|
+
|
|
11
|
+
* HTML: enabled / Vue: :enabled
|
|
12
|
+
|
|
10
13
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
private _switching;
|
|
14
|
-
/** 切换完成后禁用当前按钮,避免重复切换 */
|
|
15
|
-
private _isCurrentView;
|
|
16
|
-
setSwitching(value: boolean): void;
|
|
17
|
-
isSwitching(): boolean;
|
|
18
|
-
setCurrentView(value: boolean): void;
|
|
19
|
-
isCurrentView(): boolean;
|
|
14
|
+
enabled: boolean;
|
|
15
|
+
setEnabled(value: boolean): void;
|
|
20
16
|
static styles: import("lit").CSSResult;
|
|
21
17
|
private _onClick;
|
|
18
|
+
private _onCoreLoaded;
|
|
22
19
|
private _onViewModeChange;
|
|
23
20
|
/**
|
|
21
|
+
|
|
24
22
|
* 渲染模板
|
|
23
|
+
|
|
25
24
|
*/
|
|
26
25
|
render(): import("lit-html").TemplateResult;
|
|
27
26
|
/**
|
|
27
|
+
|
|
28
28
|
* 组件连接生命周期
|
|
29
|
+
|
|
29
30
|
*/
|
|
30
31
|
connectedCallback(): void;
|
|
31
32
|
/**
|
|
33
|
+
|
|
32
34
|
* 组件断开生命周期
|
|
35
|
+
|
|
33
36
|
*/
|
|
34
37
|
disconnectedCallback(): void;
|
|
35
38
|
/**
|
|
39
|
+
|
|
36
40
|
* 第一次更新
|
|
41
|
+
|
|
37
42
|
*/
|
|
38
43
|
firstUpdated(changed: Map<string, unknown>): void;
|
|
39
44
|
/**
|
|
45
|
+
|
|
40
46
|
* 组件更新
|
|
47
|
+
|
|
41
48
|
*/
|
|
42
49
|
updated(changed: Map<string, unknown>): void;
|
|
43
50
|
/**
|
|
51
|
+
|
|
44
52
|
* 将要更新
|
|
53
|
+
|
|
45
54
|
*/
|
|
46
55
|
protected willUpdate(_changedProperties: PropertyValues): void;
|
|
47
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-dollhouse-view/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-dollhouse-view/index.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAA;AAMhD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAYpC,gDAAgD;AAEhD,qBAEa,sBAAuB,SAAQ,UAAU;IAIpD,0DAA0D;IAI1D,MAAM,EAAE,GAAG,CAAO;IAIlB;;;;;;OAMG;IAcH,OAAO,UAAQ;IAIf,UAAU,CAAC,KAAK,EAAE,OAAO;IAgBzB,MAAM,CAAC,MAAM,0BAAS;IAItB,OAAO,CAAC,QAAQ,CAQf;IAID,OAAO,CAAC,aAAa,CAQpB;IAID,OAAO,CAAC,iBAAiB,CAQxB;IAID;;;;OAIG;IAEH,MAAM;IAYN;;;;OAIG;IAEH,iBAAiB;IA4BjB;;;;OAIG;IAEH,oBAAoB;IA4BpB;;;;OAIG;IAEH,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAY1C;;;;OAIG;IAEH,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAYrC;;;;OAIG;IAEH,SAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,cAAc,GAAG,IAAI;CAQ/D;AAID,OAAO,CAAC,MAAM,CAAC;IAIb,UAAU,qBAAqB;QAI7B,CAAC,GAAG,CAAC,EAAE,sBAAsB,CAAA;KAI9B;CAIF"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { LitElement } from "lit";
|
|
2
|
-
import { property
|
|
2
|
+
import { property } from "lit/decorators.js";
|
|
3
3
|
import { safeCustomElement } from "../../../utils/define-lit-element.js";
|
|
4
4
|
import { TAG } from "./constants.js";
|
|
5
|
-
import { handleDollhouseClick, handelViewModeChange } from "./interaction.js";
|
|
5
|
+
import { handleDollhouseClick, handelCoreLoaded, handelViewModeChange } from "./interaction.js";
|
|
6
6
|
import { booleanAttr } from "./properties.js";
|
|
7
7
|
import { styles } from "./styles.js";
|
|
8
8
|
import { renderDollhouseView } from "./template.js";
|
|
@@ -20,67 +20,74 @@ let LitSwitchDollhouseView = class extends LitElement {
|
|
|
20
20
|
constructor() {
|
|
21
21
|
super(...arguments);
|
|
22
22
|
this.qspace = null;
|
|
23
|
-
this.
|
|
24
|
-
this._switching = false;
|
|
25
|
-
this._isCurrentView = false;
|
|
23
|
+
this.enabled = false;
|
|
26
24
|
this._onClick = (e) => {
|
|
27
25
|
handleDollhouseClick(this, e);
|
|
28
26
|
};
|
|
27
|
+
this._onCoreLoaded = () => {
|
|
28
|
+
handelCoreLoaded(this);
|
|
29
|
+
};
|
|
29
30
|
this._onViewModeChange = (mode) => {
|
|
30
31
|
handelViewModeChange(this, mode);
|
|
31
32
|
};
|
|
32
33
|
}
|
|
33
|
-
|
|
34
|
-
this.
|
|
35
|
-
this.toggleAttribute("
|
|
36
|
-
}
|
|
37
|
-
isSwitching() {
|
|
38
|
-
return this._switching;
|
|
39
|
-
}
|
|
40
|
-
setCurrentView(value) {
|
|
41
|
-
this._isCurrentView = value;
|
|
42
|
-
this.toggleAttribute("current-view", value);
|
|
43
|
-
}
|
|
44
|
-
isCurrentView() {
|
|
45
|
-
return this._isCurrentView;
|
|
34
|
+
setEnabled(value) {
|
|
35
|
+
this.enabled = value;
|
|
36
|
+
this.toggleAttribute("enabled", value);
|
|
46
37
|
}
|
|
47
38
|
/**
|
|
48
|
-
|
|
49
|
-
|
|
39
|
+
|
|
40
|
+
* 渲染模板
|
|
41
|
+
|
|
42
|
+
*/
|
|
50
43
|
render() {
|
|
51
44
|
return renderDollhouseView(this._onClick);
|
|
52
45
|
}
|
|
53
46
|
/**
|
|
54
|
-
|
|
55
|
-
|
|
47
|
+
|
|
48
|
+
* 组件连接生命周期
|
|
49
|
+
|
|
50
|
+
*/
|
|
56
51
|
connectedCallback() {
|
|
57
|
-
this.qspace.view.addEventListener("mode.change", this._onViewModeChange);
|
|
58
52
|
super.connectedCallback();
|
|
53
|
+
if (this.qspace) {
|
|
54
|
+
this.qspace.core.addEventListener("loaded", this._onCoreLoaded);
|
|
55
|
+
this.qspace.view.addEventListener("mode.change", this._onViewModeChange);
|
|
56
|
+
}
|
|
59
57
|
}
|
|
60
58
|
/**
|
|
61
|
-
|
|
62
|
-
|
|
59
|
+
|
|
60
|
+
* 组件断开生命周期
|
|
61
|
+
|
|
62
|
+
*/
|
|
63
63
|
disconnectedCallback() {
|
|
64
|
-
this.
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
if (this.qspace) {
|
|
65
|
+
this.qspace.core.removeEventListener("loaded", this._onCoreLoaded);
|
|
66
|
+
this.qspace.view.removeEventListener("mode.change", this._onViewModeChange);
|
|
67
|
+
}
|
|
67
68
|
super.disconnectedCallback();
|
|
68
69
|
}
|
|
69
70
|
/**
|
|
70
|
-
|
|
71
|
-
|
|
71
|
+
|
|
72
|
+
* 第一次更新
|
|
73
|
+
|
|
74
|
+
*/
|
|
72
75
|
firstUpdated(changed) {
|
|
73
76
|
super.firstUpdated(changed);
|
|
74
77
|
}
|
|
75
78
|
/**
|
|
76
|
-
|
|
77
|
-
|
|
79
|
+
|
|
80
|
+
* 组件更新
|
|
81
|
+
|
|
82
|
+
*/
|
|
78
83
|
updated(changed) {
|
|
79
84
|
super.updated(changed);
|
|
80
85
|
}
|
|
81
86
|
/**
|
|
82
|
-
|
|
83
|
-
|
|
87
|
+
|
|
88
|
+
* 将要更新
|
|
89
|
+
|
|
90
|
+
*/
|
|
84
91
|
willUpdate(_changedProperties) {
|
|
85
92
|
}
|
|
86
93
|
};
|
|
@@ -91,17 +98,11 @@ __decorateClass([
|
|
|
91
98
|
__decorateClass([
|
|
92
99
|
property({
|
|
93
100
|
type: Boolean,
|
|
94
|
-
attribute: "
|
|
101
|
+
attribute: "enabled",
|
|
95
102
|
reflect: true,
|
|
96
103
|
converter: booleanAttr
|
|
97
104
|
})
|
|
98
|
-
], LitSwitchDollhouseView.prototype, "
|
|
99
|
-
__decorateClass([
|
|
100
|
-
state()
|
|
101
|
-
], LitSwitchDollhouseView.prototype, "_switching", 2);
|
|
102
|
-
__decorateClass([
|
|
103
|
-
state()
|
|
104
|
-
], LitSwitchDollhouseView.prototype, "_isCurrentView", 2);
|
|
105
|
+
], LitSwitchDollhouseView.prototype, "enabled", 2);
|
|
105
106
|
LitSwitchDollhouseView = __decorateClass([
|
|
106
107
|
safeCustomElement(TAG)
|
|
107
108
|
], LitSwitchDollhouseView);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/common/lit-switch-dollhouse-view/index.ts"],"sourcesContent":["/*\r\n * @Author: ncz\r\n * @Date: 2026-05-30\r\n * @Description: lit-switch-dollhouse-view 组件注册与属性声明\r\n */\r\n\r\nimport { LitElement, PropertyValues } from 'lit'\r\nimport { property
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/common/lit-switch-dollhouse-view/index.ts"],"sourcesContent":["/*\r\r\n * @Author: ncz\r\r\n * @Date: 2026-05-30\r\r\n * @Description: lit-switch-dollhouse-view 组件注册与属性声明\r\r\n */\r\r\n\r\r\nimport { LitElement, PropertyValues } from 'lit'\r\r\nimport { property } from 'lit/decorators.js'\r\r\nimport { safeCustomElement } from '../../../utils/define-lit-element.js'\r\r\nimport { TAG } from './constants.js'\r\r\nimport { handleDollhouseClick, handelViewModeChange, handelCoreLoaded } from './interaction.js'\r\r\nimport { booleanAttr } from './properties.js'\r\r\nimport { styles } from './styles.js'\r\r\nimport { renderDollhouseView } from './template.js'\r\r\n\r\r\n/** 切换到 dollhouse 视图;qspace 须由宿主通过 :qspace 传入 */\r\r\n@safeCustomElement(TAG)\r\r\nexport class LitSwitchDollhouseView extends LitElement {\r\r\n\r\r\n /** qspace SDK 实例;仅 JS 属性绑定,不映射 HTML attribute(对象无法序列化) */\r\r\n @property({ attribute: false })\r\r\n qspace: any = null\r\r\n\r\r\n /**\r\r\n * 是否可点击;由 core.loaded / mode.change 自动同步,宿主亦可覆盖\r\r\n * HTML: enabled / Vue: :enabled\r\r\n */\r\r\n @property({\r\r\n type: Boolean,\r\r\n attribute: 'enabled',\r\r\n reflect: true,\r\r\n converter: booleanAttr,\r\r\n })\r\r\n enabled = false\r\r\n\r\r\n setEnabled(value: boolean) {\r\r\n\r\r\n this.enabled = value\r\r\n\r\r\n this.toggleAttribute('enabled', value)\r\r\n\r\r\n }\r\r\n\r\r\n static styles = styles\r\r\n\r\r\n private _onClick = (e: Event) => {\r\r\n\r\r\n handleDollhouseClick(this, e)\r\r\n\r\r\n }\r\r\n\r\r\n private _onCoreLoaded = () => {\r\r\n\r\r\n handelCoreLoaded(this);\r\r\n\r\r\n }\r\r\n\r\r\n private _onViewModeChange = (mode: string) => {\r\r\n\r\r\n handelViewModeChange(this, mode);\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 渲染模板\r\r\n */\r\r\n render() {\r\r\n\r\r\n return renderDollhouseView(this._onClick)\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 组件连接生命周期\r\r\n */\r\r\n connectedCallback() {\r\r\n\r\r\n super.connectedCallback()\r\r\n\r\r\n if (this.qspace) {\r\r\n\r\r\n this.qspace.core.addEventListener('loaded', this._onCoreLoaded);\r\r\n\r\r\n this.qspace.view.addEventListener('mode.change', this._onViewModeChange);\r\r\n\r\r\n }\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 组件断开生命周期\r\r\n */\r\r\n disconnectedCallback() {\r\r\n\r\r\n if (this.qspace) {\r\r\n\r\r\n this.qspace.core.removeEventListener('loaded', this._onCoreLoaded);\r\r\n\r\r\n this.qspace.view.removeEventListener('mode.change', this._onViewModeChange);\r\r\n\r\r\n }\r\r\n\r\r\n super.disconnectedCallback()\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 第一次更新\r\r\n */\r\r\n firstUpdated(changed: Map<string, unknown>) {\r\r\n\r\r\n super.firstUpdated(changed)\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 组件更新\r\r\n */\r\r\n updated(changed: Map<string, unknown>) {\r\r\n\r\r\n super.updated(changed)\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 将要更新\r\r\n */\r\r\n protected willUpdate(_changedProperties: PropertyValues): void {\r\r\n\r\r\n }\r\r\n\r\r\n}\r\r\n\r\r\ndeclare global {\r\r\n\r\r\n interface HTMLElementTagNameMap {\r\r\n\r\r\n [TAG]: LitSwitchDollhouseView\r\r\n\r\r\n }\r\r\n\r\r\n}\r\r\n\r"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAkCO,IAAM,yBAAN,cAAqC,WAAW;AAAA,EAAhD,cAAA;AAAA,UAAA,GAAA,SAAA;AAQL,SAAA,SAAc;AAwBd,SAAA,UAAU;AAwBV,SAAQ,WAAW,CAAC,MAAa;AAI/B,2BAAqB,MAAM,CAAC;AAAA,IAI9B;AAIA,SAAQ,gBAAgB,MAAM;AAI5B,uBAAiB,IAAI;AAAA,IAIvB;AAIA,SAAQ,oBAAoB,CAAC,SAAiB;AAI5C,2BAAqB,MAAM,IAAI;AAAA,IAIjC;AAAA,EAAA;AAAA,EApDA,WAAW,OAAgB;AAIzB,SAAK,UAAU;AAIf,SAAK,gBAAgB,WAAW,KAAK;AAAA,EAIvC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkDA,SAAS;AAIP,WAAO,oBAAoB,KAAK,QAAQ;AAAA,EAI1C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,oBAAoB;AAIlB,UAAM,kBAAA;AAIN,QAAI,KAAK,QAAQ;AAIf,WAAK,OAAO,KAAK,iBAAiB,UAAU,KAAK,aAAa;AAI9D,WAAK,OAAO,KAAK,iBAAiB,eAAe,KAAK,iBAAiB;AAAA,IAIzE;AAAA,EAIF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,uBAAuB;AAIrB,QAAI,KAAK,QAAQ;AAIf,WAAK,OAAO,KAAK,oBAAoB,UAAU,KAAK,aAAa;AAIjE,WAAK,OAAO,KAAK,oBAAoB,eAAe,KAAK,iBAAiB;AAAA,IAI5E;AAIA,UAAM,qBAAA;AAAA,EAIR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,aAAa,SAA+B;AAI1C,UAAM,aAAa,OAAO;AAAA,EAI5B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,QAAQ,SAA+B;AAIrC,UAAM,QAAQ,OAAO;AAAA,EAIvB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUU,WAAW,oBAA0C;AAAA,EAI/D;AAIF;AApOa,uBAoDJ,SAAS;AA5ChB,gBAAA;AAAA,EAFC,SAAS,EAAE,WAAW,MAAA,CAAO;AAAA,GANnB,uBAQX,WAAA,UAAA,CAAA;AAwBA,gBAAA;AAAA,EAZC,SAAS;AAAA,IAER,MAAM;AAAA,IAEN,WAAW;AAAA,IAEX,SAAS;AAAA,IAET,WAAW;AAAA,EAAA,CAEZ;AAAA,GA9BU,uBAgCX,WAAA,WAAA,CAAA;AAhCW,yBAAN,gBAAA;AAAA,EAFN,kBAAkB,GAAG;AAAA,GAET,sBAAA;"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export type DollhouseViewHost = HTMLElement & {
|
|
2
2
|
qspace: any;
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
isSwitching: () => boolean;
|
|
6
|
-
setCurrentView: (value: boolean) => void;
|
|
7
|
-
isCurrentView: () => boolean;
|
|
3
|
+
enabled: boolean;
|
|
4
|
+
setEnabled: (value: boolean) => void;
|
|
8
5
|
};
|
|
6
|
+
/** 根据 qspace.view.mode 同步 enabled:当前视图或过渡中不可点 */
|
|
7
|
+
export declare function syncEnabledFromMode(host: DollhouseViewHost, mode: string | undefined): void;
|
|
9
8
|
export declare function handleDollhouseClick(host: DollhouseViewHost, e: Event): void;
|
|
9
|
+
export declare function handelCoreLoaded(host: DollhouseViewHost): void;
|
|
10
10
|
export declare function handelViewModeChange(host: DollhouseViewHost, mode: string): void;
|
|
11
11
|
//# sourceMappingURL=interaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-dollhouse-view/interaction.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAE5C,MAAM,EAAE,GAAG,CAAA;IACX,
|
|
1
|
+
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-dollhouse-view/interaction.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAE5C,MAAM,EAAE,GAAG,CAAA;IACX,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CAErC,CAAA;AAED,iDAAiD;AACjD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,QAmBpF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,EAAE,CAAC,EAAE,KAAK,QA2BrE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,QAIvD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,QAIzE"}
|
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
import { ViewMode } from "../../../enum/view.mode.js";
|
|
2
2
|
import { dispatchClick, dispatchComplete } from "./events.js";
|
|
3
3
|
import { turnToDollhouseView } from "./logic.js";
|
|
4
|
+
function syncEnabledFromMode(host, mode) {
|
|
5
|
+
switch (mode) {
|
|
6
|
+
case ViewMode.Transitioning:
|
|
7
|
+
case ViewMode.Dollhouse:
|
|
8
|
+
host.setEnabled(false);
|
|
9
|
+
break;
|
|
10
|
+
case ViewMode.Floorplan:
|
|
11
|
+
case ViewMode.Panorama:
|
|
12
|
+
host.setEnabled(true);
|
|
13
|
+
break;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
4
16
|
function handleDollhouseClick(host, e) {
|
|
5
|
-
if (!host.
|
|
17
|
+
if (!host.enabled) {
|
|
6
18
|
e.preventDefault();
|
|
7
19
|
e.stopPropagation();
|
|
8
20
|
return;
|
|
@@ -11,34 +23,22 @@ function handleDollhouseClick(host, e) {
|
|
|
11
23
|
if (!host.qspace) {
|
|
12
24
|
return;
|
|
13
25
|
}
|
|
14
|
-
host.
|
|
26
|
+
host.setEnabled(false);
|
|
15
27
|
turnToDollhouseView(host.qspace, () => {
|
|
16
28
|
dispatchComplete(host, e);
|
|
17
|
-
host.setSwitching(false);
|
|
18
|
-
host.setCurrentView(true);
|
|
19
29
|
});
|
|
20
30
|
}
|
|
31
|
+
function handelCoreLoaded(host) {
|
|
32
|
+
var _a, _b;
|
|
33
|
+
syncEnabledFromMode(host, (_b = (_a = host.qspace) == null ? void 0 : _a.view) == null ? void 0 : _b.mode);
|
|
34
|
+
}
|
|
21
35
|
function handelViewModeChange(host, mode) {
|
|
22
|
-
|
|
23
|
-
case ViewMode.Transitioning:
|
|
24
|
-
host.setSwitching(true);
|
|
25
|
-
break;
|
|
26
|
-
case ViewMode.Dollhouse:
|
|
27
|
-
host.setSwitching(false);
|
|
28
|
-
host.setCurrentView(true);
|
|
29
|
-
break;
|
|
30
|
-
case ViewMode.Floorplan:
|
|
31
|
-
host.setSwitching(false);
|
|
32
|
-
host.setCurrentView(false);
|
|
33
|
-
break;
|
|
34
|
-
case ViewMode.Panorama:
|
|
35
|
-
host.setSwitching(false);
|
|
36
|
-
host.setCurrentView(false);
|
|
37
|
-
break;
|
|
38
|
-
}
|
|
36
|
+
syncEnabledFromMode(host, mode);
|
|
39
37
|
}
|
|
40
38
|
export {
|
|
39
|
+
handelCoreLoaded,
|
|
41
40
|
handelViewModeChange,
|
|
42
|
-
handleDollhouseClick
|
|
41
|
+
handleDollhouseClick,
|
|
42
|
+
syncEnabledFromMode
|
|
43
43
|
};
|
|
44
44
|
//# sourceMappingURL=interaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.js","sources":["../../../../src/components/common/lit-switch-dollhouse-view/interaction.ts"],"sourcesContent":["/*\n * @Author: ncz\n * @Date: 2026-05-30\n * @Description: lit-switch-dollhouse-view 点击交互流程\n */\n\nimport { ViewMode } from '@/enum/view.mode'\nimport { dispatchClick, dispatchComplete } from './events.js'\nimport { turnToDollhouseView } from './logic.js'\n\nexport type DollhouseViewHost = HTMLElement & {\n\n qspace: any\n
|
|
1
|
+
{"version":3,"file":"interaction.js","sources":["../../../../src/components/common/lit-switch-dollhouse-view/interaction.ts"],"sourcesContent":["/*\n * @Author: ncz\n * @Date: 2026-05-30\n * @Description: lit-switch-dollhouse-view 点击交互流程\n */\n\nimport { ViewMode } from '@/enum/view.mode'\nimport { dispatchClick, dispatchComplete } from './events.js'\nimport { turnToDollhouseView } from './logic.js'\n\nexport type DollhouseViewHost = HTMLElement & {\n\n qspace: any\n enabled: boolean\n setEnabled: (value: boolean) => void\n\n}\n\n/** 根据 qspace.view.mode 同步 enabled:当前视图或过渡中不可点 */\nexport function syncEnabledFromMode(host: DollhouseViewHost, mode: string | undefined) {\n\n switch (mode) {\n\n case ViewMode.Transitioning:\n case ViewMode.Dollhouse:\n host.setEnabled(false)\n break\n\n case ViewMode.Floorplan:\n case ViewMode.Panorama:\n host.setEnabled(true)\n break\n\n default:\n break\n\n }\n\n}\n\nexport function handleDollhouseClick(host: DollhouseViewHost, e: Event) {\n\n if (!host.enabled) {\n\n e.preventDefault()\n e.stopPropagation()\n\n return\n\n }\n\n dispatchClick(host, e)\n\n if (!host.qspace) {\n\n return\n\n }\n\n host.setEnabled(false)\n\n turnToDollhouseView(host.qspace, () => {\n\n dispatchComplete(host, e)\n\n })\n\n}\n\nexport function handelCoreLoaded(host: DollhouseViewHost) {\n\n syncEnabledFromMode(host, host.qspace?.view?.mode)\n\n}\n\nexport function handelViewModeChange(host: DollhouseViewHost, mode: string) {\n\n syncEnabledFromMode(host, mode)\n\n}\n"],"names":[],"mappings":";;;AAmBO,SAAS,oBAAoB,MAAyB,MAA0B;AAErF,UAAQ,MAAA;AAAA,IAEN,KAAK,SAAS;AAAA,IACd,KAAK,SAAS;AACZ,WAAK,WAAW,KAAK;AACrB;AAAA,IAEF,KAAK,SAAS;AAAA,IACd,KAAK,SAAS;AACZ,WAAK,WAAW,IAAI;AACpB;AAAA,EAGA;AAIN;AAEO,SAAS,qBAAqB,MAAyB,GAAU;AAEtE,MAAI,CAAC,KAAK,SAAS;AAEjB,MAAE,eAAA;AACF,MAAE,gBAAA;AAEF;AAAA,EAEF;AAEA,gBAAc,MAAM,CAAC;AAErB,MAAI,CAAC,KAAK,QAAQ;AAEhB;AAAA,EAEF;AAEA,OAAK,WAAW,KAAK;AAErB,sBAAoB,KAAK,QAAQ,MAAM;AAErC,qBAAiB,MAAM,CAAC;AAAA,EAE1B,CAAC;AAEH;AAEO,SAAS,iBAAiB,MAAyB;;AAExD,sBAAoB,OAAM,gBAAK,WAAL,mBAAa,SAAb,mBAAmB,IAAI;AAEnD;AAEO,SAAS,qBAAqB,MAAyB,MAAc;AAE1E,sBAAoB,MAAM,IAAI;AAEhC;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-dollhouse-view/styles.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-dollhouse-view/styles.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,MAAM,yBA4BlB,CAAA"}
|
|
@@ -20,16 +20,12 @@ const styles = css`
|
|
|
20
20
|
background-image: var(--lit-mode-dollhouse-icon, url(${unsafeCSS(iconUrl)}));
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
:host(:not([
|
|
24
|
-
:host([switching]),
|
|
25
|
-
:host([current-view]) {
|
|
23
|
+
:host(:not([enabled])) {
|
|
26
24
|
pointer-events: none;
|
|
27
25
|
opacity: 0.5;
|
|
28
26
|
}
|
|
29
27
|
|
|
30
|
-
:host(:not([
|
|
31
|
-
:host([switching]) .mode-item,
|
|
32
|
-
:host([current-view]) .mode-item {
|
|
28
|
+
:host(:not([enabled])) .mode-item {
|
|
33
29
|
cursor: not-allowed;
|
|
34
30
|
}
|
|
35
31
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sources":["../../../../src/components/common/lit-switch-dollhouse-view/styles.ts"],"sourcesContent":["/*\r\n * @Author: ncz\r\n * @Date: 2026-05-30\r\n * @Description: lit-switch-dollhouse-view 样式\r\n */\r\n\r\nimport { css, unsafeCSS } from 'lit'\r\nimport iconUrl from './assets/icon.png?url'\r\n\r\nexport const styles = css`\r\n :host {\r\n display: inline-block;\r\n }\r\n\r\n .mode-item {\r\n box-sizing: border-box;\r\n width: 26px;\r\n height: 26px;\r\n background-repeat: no-repeat;\r\n background-size: 26px 26px;\r\n background-position: center;\r\n cursor: pointer;\r\n }\r\n\r\n .mode-item.dollhouse {\r\n background-color: rgba(255, 0, 0, 0.4);\r\n background-image: var(--lit-mode-dollhouse-icon, url(${unsafeCSS(iconUrl)}));\r\n }\r\n\r\n :host(:not([
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../../src/components/common/lit-switch-dollhouse-view/styles.ts"],"sourcesContent":["/*\r\n * @Author: ncz\r\n * @Date: 2026-05-30\r\n * @Description: lit-switch-dollhouse-view 样式\r\n */\r\n\r\nimport { css, unsafeCSS } from 'lit'\r\nimport iconUrl from './assets/icon.png?url'\r\n\r\nexport const styles = css`\r\n :host {\r\n display: inline-block;\r\n }\r\n\r\n .mode-item {\r\n box-sizing: border-box;\r\n width: 26px;\r\n height: 26px;\r\n background-repeat: no-repeat;\r\n background-size: 26px 26px;\r\n background-position: center;\r\n cursor: pointer;\r\n }\r\n\r\n .mode-item.dollhouse {\r\n background-color: rgba(255, 0, 0, 0.4);\r\n background-image: var(--lit-mode-dollhouse-icon, url(${unsafeCSS(iconUrl)}));\r\n }\r\n\r\n :host(:not([enabled])) {\r\n pointer-events: none;\r\n opacity: 0.5;\r\n }\r\n\r\n :host(:not([enabled])) .mode-item {\r\n cursor: not-allowed;\r\n }\r\n`\r\n"],"names":[],"mappings":";;AASO,MAAM,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2DAiBqC,UAAU,OAAO,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
|
|
@@ -5,20 +5,14 @@ export declare class LitSwitchFloorplanView extends LitElement {
|
|
|
5
5
|
/** qspace SDK 实例;仅 JS 属性绑定,不映射 HTML attribute(对象无法序列化) */
|
|
6
6
|
qspace: any;
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
* HTML:
|
|
8
|
+
* 是否可点击;由 core.loaded / mode.change 自动同步,宿主亦可覆盖
|
|
9
|
+
* HTML: enabled / Vue: :enabled
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
private _switching;
|
|
14
|
-
/** 切换完成后禁用当前按钮,避免重复切换 */
|
|
15
|
-
private _isCurrentView;
|
|
16
|
-
setSwitching(value: boolean): void;
|
|
17
|
-
isSwitching(): boolean;
|
|
18
|
-
setCurrentView(value: boolean): void;
|
|
19
|
-
isCurrentView(): boolean;
|
|
11
|
+
enabled: boolean;
|
|
12
|
+
setEnabled(value: boolean): void;
|
|
20
13
|
static styles: import("lit").CSSResult;
|
|
21
14
|
private _onClick;
|
|
15
|
+
private _onCoreLoaded;
|
|
22
16
|
private _onViewModeChange;
|
|
23
17
|
/**
|
|
24
18
|
* 渲染模板
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-floorplan-view/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAA;AAGhD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAMpC,gDAAgD;AAChD,qBACa,sBAAuB,SAAQ,UAAU;IAEpD,0DAA0D;IAE1D,MAAM,EAAE,GAAG,CAAO;IAElB;;;OAGG;IAOH,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-floorplan-view/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAA;AAGhD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAMpC,gDAAgD;AAChD,qBACa,sBAAuB,SAAQ,UAAU;IAEpD,0DAA0D;IAE1D,MAAM,EAAE,GAAG,CAAO;IAElB;;;OAGG;IAOH,OAAO,UAAQ;IAEf,UAAU,CAAC,KAAK,EAAE,OAAO;IAQzB,MAAM,CAAC,MAAM,0BAAS;IAEtB,OAAO,CAAC,QAAQ,CAIf;IAED,OAAO,CAAC,aAAa,CAIpB;IAED,OAAO,CAAC,iBAAiB,CAIxB;IAED;;OAEG;IACH,MAAM;IAMN;;OAEG;IACH,iBAAiB;IAcjB;;OAEG;IACH,oBAAoB;IAcpB;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAM1C;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAMrC;;OAEG;IACH,SAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,cAAc,GAAG,IAAI;CAI/D;AAED,OAAO,CAAC,MAAM,CAAC;IAEb,UAAU,qBAAqB;QAE7B,CAAC,GAAG,CAAC,EAAE,sBAAsB,CAAA;KAE9B;CAEF"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { LitElement } from "lit";
|
|
2
|
-
import { property
|
|
2
|
+
import { property } from "lit/decorators.js";
|
|
3
3
|
import { safeCustomElement } from "../../../utils/define-lit-element.js";
|
|
4
4
|
import { TAG } from "./constants.js";
|
|
5
|
-
import { handleFloorplanClick, handelViewModeChange } from "./interaction.js";
|
|
5
|
+
import { handleFloorplanClick, handelCoreLoaded, handelViewModeChange } from "./interaction.js";
|
|
6
6
|
import { booleanAttr } from "./properties.js";
|
|
7
7
|
import { styles } from "./styles.js";
|
|
8
8
|
import { renderFloorplanView } from "./template.js";
|
|
@@ -20,29 +20,20 @@ let LitSwitchFloorplanView = class extends LitElement {
|
|
|
20
20
|
constructor() {
|
|
21
21
|
super(...arguments);
|
|
22
22
|
this.qspace = null;
|
|
23
|
-
this.
|
|
24
|
-
this._switching = false;
|
|
25
|
-
this._isCurrentView = false;
|
|
23
|
+
this.enabled = false;
|
|
26
24
|
this._onClick = (e) => {
|
|
27
25
|
handleFloorplanClick(this, e);
|
|
28
26
|
};
|
|
27
|
+
this._onCoreLoaded = () => {
|
|
28
|
+
handelCoreLoaded(this);
|
|
29
|
+
};
|
|
29
30
|
this._onViewModeChange = (mode) => {
|
|
30
31
|
handelViewModeChange(this, mode);
|
|
31
32
|
};
|
|
32
33
|
}
|
|
33
|
-
|
|
34
|
-
this.
|
|
35
|
-
this.toggleAttribute("
|
|
36
|
-
}
|
|
37
|
-
isSwitching() {
|
|
38
|
-
return this._switching;
|
|
39
|
-
}
|
|
40
|
-
setCurrentView(value) {
|
|
41
|
-
this._isCurrentView = value;
|
|
42
|
-
this.toggleAttribute("current-view", value);
|
|
43
|
-
}
|
|
44
|
-
isCurrentView() {
|
|
45
|
-
return this._isCurrentView;
|
|
34
|
+
setEnabled(value) {
|
|
35
|
+
this.enabled = value;
|
|
36
|
+
this.toggleAttribute("enabled", value);
|
|
46
37
|
}
|
|
47
38
|
/**
|
|
48
39
|
* 渲染模板
|
|
@@ -54,16 +45,20 @@ let LitSwitchFloorplanView = class extends LitElement {
|
|
|
54
45
|
* 组件连接生命周期
|
|
55
46
|
*/
|
|
56
47
|
connectedCallback() {
|
|
57
|
-
this.qspace.view.addEventListener("mode.change", this._onViewModeChange);
|
|
58
48
|
super.connectedCallback();
|
|
49
|
+
if (this.qspace) {
|
|
50
|
+
this.qspace.core.addEventListener("loaded", this._onCoreLoaded);
|
|
51
|
+
this.qspace.view.addEventListener("mode.change", this._onViewModeChange);
|
|
52
|
+
}
|
|
59
53
|
}
|
|
60
54
|
/**
|
|
61
55
|
* 组件断开生命周期
|
|
62
56
|
*/
|
|
63
57
|
disconnectedCallback() {
|
|
64
|
-
this.
|
|
65
|
-
|
|
66
|
-
|
|
58
|
+
if (this.qspace) {
|
|
59
|
+
this.qspace.core.removeEventListener("loaded", this._onCoreLoaded);
|
|
60
|
+
this.qspace.view.removeEventListener("mode.change", this._onViewModeChange);
|
|
61
|
+
}
|
|
67
62
|
super.disconnectedCallback();
|
|
68
63
|
}
|
|
69
64
|
/**
|
|
@@ -91,17 +86,11 @@ __decorateClass([
|
|
|
91
86
|
__decorateClass([
|
|
92
87
|
property({
|
|
93
88
|
type: Boolean,
|
|
94
|
-
attribute: "
|
|
89
|
+
attribute: "enabled",
|
|
95
90
|
reflect: true,
|
|
96
91
|
converter: booleanAttr
|
|
97
92
|
})
|
|
98
|
-
], LitSwitchFloorplanView.prototype, "
|
|
99
|
-
__decorateClass([
|
|
100
|
-
state()
|
|
101
|
-
], LitSwitchFloorplanView.prototype, "_switching", 2);
|
|
102
|
-
__decorateClass([
|
|
103
|
-
state()
|
|
104
|
-
], LitSwitchFloorplanView.prototype, "_isCurrentView", 2);
|
|
93
|
+
], LitSwitchFloorplanView.prototype, "enabled", 2);
|
|
105
94
|
LitSwitchFloorplanView = __decorateClass([
|
|
106
95
|
safeCustomElement(TAG)
|
|
107
96
|
], LitSwitchFloorplanView);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/common/lit-switch-floorplan-view/index.ts"],"sourcesContent":["/*\n * @Author: ncz\n * @Date: 2026-05-30\n * @Description: lit-switch-floorplan-view 组件注册与属性声明\n */\n\nimport { LitElement, PropertyValues } from 'lit'\nimport { property
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/common/lit-switch-floorplan-view/index.ts"],"sourcesContent":["/*\n * @Author: ncz\n * @Date: 2026-05-30\n * @Description: lit-switch-floorplan-view 组件注册与属性声明\n */\n\nimport { LitElement, PropertyValues } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { safeCustomElement } from '../../../utils/define-lit-element.js'\nimport { TAG } from './constants.js'\nimport { handleFloorplanClick, handelViewModeChange, handelCoreLoaded } from './interaction.js'\nimport { booleanAttr } from './properties.js'\nimport { styles } from './styles.js'\nimport { renderFloorplanView } from './template.js'\n\n/** 切换到 floorplan 视图;qspace 须由宿主通过 :qspace 传入 */\n@safeCustomElement(TAG)\nexport class LitSwitchFloorplanView extends LitElement {\n\n /** qspace SDK 实例;仅 JS 属性绑定,不映射 HTML attribute(对象无法序列化) */\n @property({ attribute: false })\n qspace: any = null\n\n /**\n * 是否可点击;由 core.loaded / mode.change 自动同步,宿主亦可覆盖\n * HTML: enabled / Vue: :enabled\n */\n @property({\n type: Boolean,\n attribute: 'enabled',\n reflect: true,\n converter: booleanAttr,\n })\n enabled = false\n\n setEnabled(value: boolean) {\n\n this.enabled = value\n\n this.toggleAttribute('enabled', value)\n\n }\n\n static styles = styles\n\n private _onClick = (e: Event) => {\n\n handleFloorplanClick(this, e)\n\n }\n\n private _onCoreLoaded = () => {\n\n handelCoreLoaded(this);\n\n }\n\n private _onViewModeChange = (mode: string) => {\n\n handelViewModeChange(this, mode);\n\n }\n\n /**\n * 渲染模板\n */\n render() {\n\n return renderFloorplanView(this._onClick)\n\n }\n\n /**\n * 组件连接生命周期\n */\n connectedCallback() {\n\n super.connectedCallback()\n\n if (this.qspace) {\n\n this.qspace.core.addEventListener('loaded', this._onCoreLoaded);\n\n this.qspace.view.addEventListener('mode.change', this._onViewModeChange);\n\n }\n\n }\n\n /**\n * 组件断开生命周期\n */\n disconnectedCallback() {\n\n if (this.qspace) {\n\n this.qspace.core.removeEventListener('loaded', this._onCoreLoaded);\n\n this.qspace.view.removeEventListener('mode.change', this._onViewModeChange);\n\n }\n\n super.disconnectedCallback()\n\n }\n\n /**\n * 第一次更新\n */\n firstUpdated(changed: Map<string, unknown>) {\n\n super.firstUpdated(changed)\n\n }\n\n /**\n * 组件更新\n */\n updated(changed: Map<string, unknown>) {\n\n super.updated(changed)\n\n }\n\n /**\n * 将要更新\n */\n protected willUpdate(_changedProperties: PropertyValues): void {\n\n }\n\n}\n\ndeclare global {\n\n interface HTMLElementTagNameMap {\n\n [TAG]: LitSwitchFloorplanView\n\n }\n\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAiBO,IAAM,yBAAN,cAAqC,WAAW;AAAA,EAAhD,cAAA;AAAA,UAAA,GAAA,SAAA;AAIL,SAAA,SAAc;AAYd,SAAA,UAAU;AAYV,SAAQ,WAAW,CAAC,MAAa;AAE/B,2BAAqB,MAAM,CAAC;AAAA,IAE9B;AAEA,SAAQ,gBAAgB,MAAM;AAE5B,uBAAiB,IAAI;AAAA,IAEvB;AAEA,SAAQ,oBAAoB,CAAC,SAAiB;AAE5C,2BAAqB,MAAM,IAAI;AAAA,IAEjC;AAAA,EAAA;AAAA,EA1BA,WAAW,OAAgB;AAEzB,SAAK,UAAU;AAEf,SAAK,gBAAgB,WAAW,KAAK;AAAA,EAEvC;AAAA;AAAA;AAAA;AAAA,EAyBA,SAAS;AAEP,WAAO,oBAAoB,KAAK,QAAQ;AAAA,EAE1C;AAAA;AAAA;AAAA;AAAA,EAKA,oBAAoB;AAElB,UAAM,kBAAA;AAEN,QAAI,KAAK,QAAQ;AAEf,WAAK,OAAO,KAAK,iBAAiB,UAAU,KAAK,aAAa;AAE9D,WAAK,OAAO,KAAK,iBAAiB,eAAe,KAAK,iBAAiB;AAAA,IAEzE;AAAA,EAEF;AAAA;AAAA;AAAA;AAAA,EAKA,uBAAuB;AAErB,QAAI,KAAK,QAAQ;AAEf,WAAK,OAAO,KAAK,oBAAoB,UAAU,KAAK,aAAa;AAEjE,WAAK,OAAO,KAAK,oBAAoB,eAAe,KAAK,iBAAiB;AAAA,IAE5E;AAEA,UAAM,qBAAA;AAAA,EAER;AAAA;AAAA;AAAA;AAAA,EAKA,aAAa,SAA+B;AAE1C,UAAM,aAAa,OAAO;AAAA,EAE5B;AAAA;AAAA;AAAA;AAAA,EAKA,QAAQ,SAA+B;AAErC,UAAM,QAAQ,OAAO;AAAA,EAEvB;AAAA;AAAA;AAAA;AAAA,EAKU,WAAW,oBAA0C;AAAA,EAE/D;AAEF;AAlHa,uBA0BJ,SAAS;AAtBhB,gBAAA;AAAA,EADC,SAAS,EAAE,WAAW,MAAA,CAAO;AAAA,GAHnB,uBAIX,WAAA,UAAA,CAAA;AAYA,gBAAA;AAAA,EANC,SAAS;AAAA,IACR,MAAM;AAAA,IACN,WAAW;AAAA,IACX,SAAS;AAAA,IACT,WAAW;AAAA,EAAA,CACZ;AAAA,GAfU,uBAgBX,WAAA,WAAA,CAAA;AAhBW,yBAAN,gBAAA;AAAA,EADN,kBAAkB,GAAG;AAAA,GACT,sBAAA;"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export type FloorplanViewHost = HTMLElement & {
|
|
2
2
|
qspace: any;
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
isSwitching: () => boolean;
|
|
6
|
-
setCurrentView: (value: boolean) => void;
|
|
7
|
-
isCurrentView: () => boolean;
|
|
3
|
+
enabled: boolean;
|
|
4
|
+
setEnabled: (value: boolean) => void;
|
|
8
5
|
};
|
|
6
|
+
/** 根据 qspace.view.mode 同步 enabled:当前视图或过渡中不可点 */
|
|
7
|
+
export declare function syncEnabledFromMode(host: FloorplanViewHost, mode: string | undefined): void;
|
|
9
8
|
export declare function handleFloorplanClick(host: FloorplanViewHost, e: Event): void;
|
|
9
|
+
export declare function handelCoreLoaded(host: FloorplanViewHost): void;
|
|
10
10
|
export declare function handelViewModeChange(host: FloorplanViewHost, mode: string): void;
|
|
11
11
|
//# sourceMappingURL=interaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-floorplan-view/interaction.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAE5C,MAAM,EAAE,GAAG,CAAA;IACX,
|
|
1
|
+
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-floorplan-view/interaction.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAE5C,MAAM,EAAE,GAAG,CAAA;IACX,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CAErC,CAAA;AAED,iDAAiD;AACjD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,QAmBpF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,EAAE,CAAC,EAAE,KAAK,QA2BrE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,QAIvD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,QAIzE"}
|
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
import { ViewMode } from "../../../enum/view.mode.js";
|
|
2
2
|
import { dispatchClick, dispatchComplete } from "./events.js";
|
|
3
3
|
import { turnToFloorplanView } from "./logic.js";
|
|
4
|
+
function syncEnabledFromMode(host, mode) {
|
|
5
|
+
switch (mode) {
|
|
6
|
+
case ViewMode.Transitioning:
|
|
7
|
+
case ViewMode.Floorplan:
|
|
8
|
+
host.setEnabled(false);
|
|
9
|
+
break;
|
|
10
|
+
case ViewMode.Dollhouse:
|
|
11
|
+
case ViewMode.Panorama:
|
|
12
|
+
host.setEnabled(true);
|
|
13
|
+
break;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
4
16
|
function handleFloorplanClick(host, e) {
|
|
5
|
-
if (!host.
|
|
17
|
+
if (!host.enabled) {
|
|
6
18
|
e.preventDefault();
|
|
7
19
|
e.stopPropagation();
|
|
8
20
|
return;
|
|
@@ -11,34 +23,22 @@ function handleFloorplanClick(host, e) {
|
|
|
11
23
|
if (!host.qspace) {
|
|
12
24
|
return;
|
|
13
25
|
}
|
|
14
|
-
host.
|
|
26
|
+
host.setEnabled(false);
|
|
15
27
|
turnToFloorplanView(host.qspace, () => {
|
|
16
28
|
dispatchComplete(host, e);
|
|
17
|
-
host.setSwitching(false);
|
|
18
|
-
host.setCurrentView(true);
|
|
19
29
|
});
|
|
20
30
|
}
|
|
31
|
+
function handelCoreLoaded(host) {
|
|
32
|
+
var _a, _b;
|
|
33
|
+
syncEnabledFromMode(host, (_b = (_a = host.qspace) == null ? void 0 : _a.view) == null ? void 0 : _b.mode);
|
|
34
|
+
}
|
|
21
35
|
function handelViewModeChange(host, mode) {
|
|
22
|
-
|
|
23
|
-
case ViewMode.Transitioning:
|
|
24
|
-
host.setSwitching(true);
|
|
25
|
-
break;
|
|
26
|
-
case ViewMode.Floorplan:
|
|
27
|
-
host.setSwitching(false);
|
|
28
|
-
host.setCurrentView(true);
|
|
29
|
-
break;
|
|
30
|
-
case ViewMode.Dollhouse:
|
|
31
|
-
host.setSwitching(false);
|
|
32
|
-
host.setCurrentView(false);
|
|
33
|
-
break;
|
|
34
|
-
case ViewMode.Panorama:
|
|
35
|
-
host.setSwitching(false);
|
|
36
|
-
host.setCurrentView(false);
|
|
37
|
-
break;
|
|
38
|
-
}
|
|
36
|
+
syncEnabledFromMode(host, mode);
|
|
39
37
|
}
|
|
40
38
|
export {
|
|
39
|
+
handelCoreLoaded,
|
|
41
40
|
handelViewModeChange,
|
|
42
|
-
handleFloorplanClick
|
|
41
|
+
handleFloorplanClick,
|
|
42
|
+
syncEnabledFromMode
|
|
43
43
|
};
|
|
44
44
|
//# sourceMappingURL=interaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.js","sources":["../../../../src/components/common/lit-switch-floorplan-view/interaction.ts"],"sourcesContent":["/*\n * @Author: ncz\n * @Date: 2026-05-30\n * @Description: lit-switch-floorplan-view 点击交互流程\n */\n\nimport { ViewMode } from '@/enum/view.mode'\nimport { dispatchClick, dispatchComplete } from './events.js'\nimport { turnToFloorplanView } from './logic.js'\n\nexport type FloorplanViewHost = HTMLElement & {\n\n qspace: any\n
|
|
1
|
+
{"version":3,"file":"interaction.js","sources":["../../../../src/components/common/lit-switch-floorplan-view/interaction.ts"],"sourcesContent":["/*\n * @Author: ncz\n * @Date: 2026-05-30\n * @Description: lit-switch-floorplan-view 点击交互流程\n */\n\nimport { ViewMode } from '@/enum/view.mode'\nimport { dispatchClick, dispatchComplete } from './events.js'\nimport { turnToFloorplanView } from './logic.js'\n\nexport type FloorplanViewHost = HTMLElement & {\n\n qspace: any\n enabled: boolean\n setEnabled: (value: boolean) => void\n\n}\n\n/** 根据 qspace.view.mode 同步 enabled:当前视图或过渡中不可点 */\nexport function syncEnabledFromMode(host: FloorplanViewHost, mode: string | undefined) {\n\n switch (mode) {\n\n case ViewMode.Transitioning:\n case ViewMode.Floorplan:\n host.setEnabled(false)\n break\n\n case ViewMode.Dollhouse:\n case ViewMode.Panorama:\n host.setEnabled(true)\n break\n\n default:\n break\n\n }\n\n}\n\nexport function handleFloorplanClick(host: FloorplanViewHost, e: Event) {\n\n if (!host.enabled) {\n\n e.preventDefault()\n e.stopPropagation()\n\n return\n\n }\n\n dispatchClick(host, e)\n\n if (!host.qspace) {\n\n return\n\n }\n\n host.setEnabled(false)\n\n turnToFloorplanView(host.qspace, () => {\n\n dispatchComplete(host, e)\n\n })\n\n}\n\nexport function handelCoreLoaded(host: FloorplanViewHost) {\n\n syncEnabledFromMode(host, host.qspace?.view?.mode)\n\n}\n\nexport function handelViewModeChange(host: FloorplanViewHost, mode: string) {\n\n syncEnabledFromMode(host, mode)\n\n}\n"],"names":[],"mappings":";;;AAmBO,SAAS,oBAAoB,MAAyB,MAA0B;AAErF,UAAQ,MAAA;AAAA,IAEN,KAAK,SAAS;AAAA,IACd,KAAK,SAAS;AACZ,WAAK,WAAW,KAAK;AACrB;AAAA,IAEF,KAAK,SAAS;AAAA,IACd,KAAK,SAAS;AACZ,WAAK,WAAW,IAAI;AACpB;AAAA,EAGA;AAIN;AAEO,SAAS,qBAAqB,MAAyB,GAAU;AAEtE,MAAI,CAAC,KAAK,SAAS;AAEjB,MAAE,eAAA;AACF,MAAE,gBAAA;AAEF;AAAA,EAEF;AAEA,gBAAc,MAAM,CAAC;AAErB,MAAI,CAAC,KAAK,QAAQ;AAEhB;AAAA,EAEF;AAEA,OAAK,WAAW,KAAK;AAErB,sBAAoB,KAAK,QAAQ,MAAM;AAErC,qBAAiB,MAAM,CAAC;AAAA,EAE1B,CAAC;AAEH;AAEO,SAAS,iBAAiB,MAAyB;;AAExD,sBAAoB,OAAM,gBAAK,WAAL,mBAAa,SAAb,mBAAmB,IAAI;AAEnD;AAEO,SAAS,qBAAqB,MAAyB,MAAc;AAE1E,sBAAoB,MAAM,IAAI;AAEhC;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-floorplan-view/styles.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-floorplan-view/styles.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,MAAM,yBA4BlB,CAAA"}
|
|
@@ -20,16 +20,12 @@ const styles = css`
|
|
|
20
20
|
background-image: var(--lit-mode-floorplan-icon, url(${unsafeCSS(iconUrl)}));
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
:host(:not([
|
|
24
|
-
:host([switching]),
|
|
25
|
-
:host([current-view]) {
|
|
23
|
+
:host(:not([enabled])) {
|
|
26
24
|
pointer-events: none;
|
|
27
25
|
opacity: 0.5;
|
|
28
26
|
}
|
|
29
27
|
|
|
30
|
-
:host(:not([
|
|
31
|
-
:host([switching]) .mode-item,
|
|
32
|
-
:host([current-view]) .mode-item {
|
|
28
|
+
:host(:not([enabled])) .mode-item {
|
|
33
29
|
cursor: not-allowed;
|
|
34
30
|
}
|
|
35
31
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sources":["../../../../src/components/common/lit-switch-floorplan-view/styles.ts"],"sourcesContent":["/*\r\n * @Author: ncz\r\n * @Date: 2026-05-30\r\n * @Description: lit-switch-floorplan-view 样式\r\n */\r\n\r\nimport { css, unsafeCSS } from 'lit'\r\nimport iconUrl from './assets/icon.png?url'\r\n\r\nexport const styles = css`\r\n :host {\r\n display: inline-block;\r\n }\r\n\r\n .mode-item {\r\n box-sizing: border-box;\r\n width: 26px;\r\n height: 26px;\r\n background-repeat: no-repeat;\r\n background-size: 26px 26px;\r\n background-position: center;\r\n cursor: pointer;\r\n }\r\n\r\n .mode-item.floorplan {\r\n background-color: rgba(255, 0, 0, 0.4);\r\n background-image: var(--lit-mode-floorplan-icon, url(${unsafeCSS(iconUrl)}));\r\n }\r\n\r\n :host(:not([
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../../src/components/common/lit-switch-floorplan-view/styles.ts"],"sourcesContent":["/*\r\n * @Author: ncz\r\n * @Date: 2026-05-30\r\n * @Description: lit-switch-floorplan-view 样式\r\n */\r\n\r\nimport { css, unsafeCSS } from 'lit'\r\nimport iconUrl from './assets/icon.png?url'\r\n\r\nexport const styles = css`\r\n :host {\r\n display: inline-block;\r\n }\r\n\r\n .mode-item {\r\n box-sizing: border-box;\r\n width: 26px;\r\n height: 26px;\r\n background-repeat: no-repeat;\r\n background-size: 26px 26px;\r\n background-position: center;\r\n cursor: pointer;\r\n }\r\n\r\n .mode-item.floorplan {\r\n background-color: rgba(255, 0, 0, 0.4);\r\n background-image: var(--lit-mode-floorplan-icon, url(${unsafeCSS(iconUrl)}));\r\n }\r\n\r\n :host(:not([enabled])) {\r\n pointer-events: none;\r\n opacity: 0.5;\r\n }\r\n\r\n :host(:not([enabled])) .mode-item {\r\n cursor: not-allowed;\r\n }\r\n`\r\n"],"names":[],"mappings":";;AASO,MAAM,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2DAiBqC,UAAU,OAAO,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
|
|
@@ -6,48 +6,60 @@ export declare class LitSwitchPanoramaView extends LitElement {
|
|
|
6
6
|
/** qspace SDK 实例;仅 JS 属性绑定,不映射 HTML attribute(对象无法序列化) */
|
|
7
7
|
qspace: any;
|
|
8
8
|
/**
|
|
9
|
-
|
|
10
|
-
*
|
|
9
|
+
|
|
10
|
+
* 是否可点击;由 core.loaded / mode.change 自动同步,宿主亦可覆盖
|
|
11
|
+
|
|
12
|
+
* HTML: enabled / Vue: :enabled
|
|
13
|
+
|
|
11
14
|
*/
|
|
12
|
-
|
|
15
|
+
enabled: boolean;
|
|
13
16
|
/**
|
|
17
|
+
|
|
14
18
|
* 切换全景视图参数;仅 JS 属性绑定
|
|
19
|
+
|
|
15
20
|
* Vue: :option="{ locationId, quaternion }"
|
|
21
|
+
|
|
16
22
|
*/
|
|
17
23
|
option: PanoramaSwitchOption | null;
|
|
18
|
-
|
|
19
|
-
private _switching;
|
|
20
|
-
/** 切换完成后禁用当前按钮,避免重复切换 */
|
|
21
|
-
private _isCurrentView;
|
|
22
|
-
setSwitching(value: boolean): void;
|
|
23
|
-
isSwitching(): boolean;
|
|
24
|
-
setCurrentView(value: boolean): void;
|
|
25
|
-
isCurrentView(): boolean;
|
|
24
|
+
setEnabled(value: boolean): void;
|
|
26
25
|
static styles: import("lit").CSSResult;
|
|
27
26
|
private _onClick;
|
|
27
|
+
private _onCoreLoaded;
|
|
28
28
|
private _onViewModeChange;
|
|
29
29
|
/**
|
|
30
|
+
|
|
30
31
|
* 渲染模板
|
|
32
|
+
|
|
31
33
|
*/
|
|
32
34
|
render(): import("lit-html").TemplateResult;
|
|
33
35
|
/**
|
|
36
|
+
|
|
34
37
|
* 组件连接生命周期
|
|
38
|
+
|
|
35
39
|
*/
|
|
36
40
|
connectedCallback(): void;
|
|
37
41
|
/**
|
|
42
|
+
|
|
38
43
|
* 组件断开生命周期
|
|
44
|
+
|
|
39
45
|
*/
|
|
40
46
|
disconnectedCallback(): void;
|
|
41
47
|
/**
|
|
48
|
+
|
|
42
49
|
* 第一次更新
|
|
50
|
+
|
|
43
51
|
*/
|
|
44
52
|
firstUpdated(changed: Map<string, unknown>): void;
|
|
45
53
|
/**
|
|
54
|
+
|
|
46
55
|
* 组件更新
|
|
56
|
+
|
|
47
57
|
*/
|
|
48
58
|
updated(changed: Map<string, unknown>): void;
|
|
49
59
|
/**
|
|
60
|
+
|
|
50
61
|
* 将要更新
|
|
62
|
+
|
|
51
63
|
*/
|
|
52
64
|
protected willUpdate(_changedProperties: PropertyValues): void;
|
|
53
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-panorama-view/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-panorama-view/index.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAA;AAMhD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAIpC,OAAO,EAAe,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAQxE,+CAA+C;AAE/C,qBAEa,qBAAsB,SAAQ,UAAU;IAInD,0DAA0D;IAI1D,MAAM,EAAE,GAAG,CAAO;IAIlB;;;;;;OAMG;IAcH,OAAO,UAAQ;IAIf;;;;;;OAMG;IAIH,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAAO;IAI1C,UAAU,CAAC,KAAK,EAAE,OAAO;IAgBzB,MAAM,CAAC,MAAM,0BAAS;IAItB,OAAO,CAAC,QAAQ,CAQf;IAID,OAAO,CAAC,aAAa,CAQpB;IAID,OAAO,CAAC,iBAAiB,CAQxB;IAID;;;;OAIG;IAEH,MAAM;IAYN;;;;OAIG;IAEH,iBAAiB;IA4BjB;;;;OAIG;IAEH,oBAAoB;IA4BpB;;;;OAIG;IAEH,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAY1C;;;;OAIG;IAEH,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAYrC;;;;OAIG;IAEH,SAAS,CAAC,UAAU,CAAC,kBAAkB,EAAE,cAAc,GAAG,IAAI;CAQ/D;AAID,OAAO,CAAC,MAAM,CAAC;IAIb,UAAU,qBAAqB;QAI7B,CAAC,GAAG,CAAC,EAAE,qBAAqB,CAAA;KAI7B;CAIF"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { LitElement } from "lit";
|
|
2
|
-
import { property
|
|
2
|
+
import { property } from "lit/decorators.js";
|
|
3
3
|
import { safeCustomElement } from "../../../utils/define-lit-element.js";
|
|
4
4
|
import { TAG } from "./constants.js";
|
|
5
|
-
import { handlePanoramaClick, handelViewModeChange } from "./interaction.js";
|
|
5
|
+
import { handlePanoramaClick, handelCoreLoaded, handelViewModeChange } from "./interaction.js";
|
|
6
6
|
import { booleanAttr } from "./properties.js";
|
|
7
7
|
import { styles } from "./styles.js";
|
|
8
8
|
import { renderPanoramaView } from "./template.js";
|
|
@@ -20,68 +20,75 @@ let LitSwitchPanoramaView = class extends LitElement {
|
|
|
20
20
|
constructor() {
|
|
21
21
|
super(...arguments);
|
|
22
22
|
this.qspace = null;
|
|
23
|
-
this.
|
|
23
|
+
this.enabled = false;
|
|
24
24
|
this.option = null;
|
|
25
|
-
this._switching = false;
|
|
26
|
-
this._isCurrentView = false;
|
|
27
25
|
this._onClick = (e) => {
|
|
28
26
|
handlePanoramaClick(this, e);
|
|
29
27
|
};
|
|
28
|
+
this._onCoreLoaded = () => {
|
|
29
|
+
handelCoreLoaded(this);
|
|
30
|
+
};
|
|
30
31
|
this._onViewModeChange = (mode) => {
|
|
31
32
|
handelViewModeChange(this, mode);
|
|
32
33
|
};
|
|
33
34
|
}
|
|
34
|
-
|
|
35
|
-
this.
|
|
36
|
-
this.toggleAttribute("
|
|
37
|
-
}
|
|
38
|
-
isSwitching() {
|
|
39
|
-
return this._switching;
|
|
40
|
-
}
|
|
41
|
-
setCurrentView(value) {
|
|
42
|
-
this._isCurrentView = value;
|
|
43
|
-
this.toggleAttribute("current-view", value);
|
|
44
|
-
}
|
|
45
|
-
isCurrentView() {
|
|
46
|
-
return this._isCurrentView;
|
|
35
|
+
setEnabled(value) {
|
|
36
|
+
this.enabled = value;
|
|
37
|
+
this.toggleAttribute("enabled", value);
|
|
47
38
|
}
|
|
48
39
|
/**
|
|
49
|
-
|
|
50
|
-
|
|
40
|
+
|
|
41
|
+
* 渲染模板
|
|
42
|
+
|
|
43
|
+
*/
|
|
51
44
|
render() {
|
|
52
45
|
return renderPanoramaView(this._onClick);
|
|
53
46
|
}
|
|
54
47
|
/**
|
|
55
|
-
|
|
56
|
-
|
|
48
|
+
|
|
49
|
+
* 组件连接生命周期
|
|
50
|
+
|
|
51
|
+
*/
|
|
57
52
|
connectedCallback() {
|
|
58
|
-
this.qspace.view.addEventListener("mode.change", this._onViewModeChange);
|
|
59
53
|
super.connectedCallback();
|
|
54
|
+
if (this.qspace) {
|
|
55
|
+
this.qspace.core.addEventListener("loaded", this._onCoreLoaded);
|
|
56
|
+
this.qspace.view.addEventListener("mode.change", this._onViewModeChange);
|
|
57
|
+
}
|
|
60
58
|
}
|
|
61
59
|
/**
|
|
62
|
-
|
|
63
|
-
|
|
60
|
+
|
|
61
|
+
* 组件断开生命周期
|
|
62
|
+
|
|
63
|
+
*/
|
|
64
64
|
disconnectedCallback() {
|
|
65
|
-
this.
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
if (this.qspace) {
|
|
66
|
+
this.qspace.core.removeEventListener("loaded", this._onCoreLoaded);
|
|
67
|
+
this.qspace.view.removeEventListener("mode.change", this._onViewModeChange);
|
|
68
|
+
}
|
|
68
69
|
super.disconnectedCallback();
|
|
69
70
|
}
|
|
70
71
|
/**
|
|
71
|
-
|
|
72
|
-
|
|
72
|
+
|
|
73
|
+
* 第一次更新
|
|
74
|
+
|
|
75
|
+
*/
|
|
73
76
|
firstUpdated(changed) {
|
|
74
77
|
super.firstUpdated(changed);
|
|
75
78
|
}
|
|
76
79
|
/**
|
|
77
|
-
|
|
78
|
-
|
|
80
|
+
|
|
81
|
+
* 组件更新
|
|
82
|
+
|
|
83
|
+
*/
|
|
79
84
|
updated(changed) {
|
|
80
85
|
super.updated(changed);
|
|
81
86
|
}
|
|
82
87
|
/**
|
|
83
|
-
|
|
84
|
-
|
|
88
|
+
|
|
89
|
+
* 将要更新
|
|
90
|
+
|
|
91
|
+
*/
|
|
85
92
|
willUpdate(_changedProperties) {
|
|
86
93
|
}
|
|
87
94
|
};
|
|
@@ -92,20 +99,14 @@ __decorateClass([
|
|
|
92
99
|
__decorateClass([
|
|
93
100
|
property({
|
|
94
101
|
type: Boolean,
|
|
95
|
-
attribute: "
|
|
102
|
+
attribute: "enabled",
|
|
96
103
|
reflect: true,
|
|
97
104
|
converter: booleanAttr
|
|
98
105
|
})
|
|
99
|
-
], LitSwitchPanoramaView.prototype, "
|
|
106
|
+
], LitSwitchPanoramaView.prototype, "enabled", 2);
|
|
100
107
|
__decorateClass([
|
|
101
108
|
property({ attribute: false })
|
|
102
109
|
], LitSwitchPanoramaView.prototype, "option", 2);
|
|
103
|
-
__decorateClass([
|
|
104
|
-
state()
|
|
105
|
-
], LitSwitchPanoramaView.prototype, "_switching", 2);
|
|
106
|
-
__decorateClass([
|
|
107
|
-
state()
|
|
108
|
-
], LitSwitchPanoramaView.prototype, "_isCurrentView", 2);
|
|
109
110
|
LitSwitchPanoramaView = __decorateClass([
|
|
110
111
|
safeCustomElement(TAG)
|
|
111
112
|
], LitSwitchPanoramaView);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/common/lit-switch-panorama-view/index.ts"],"sourcesContent":["/*\r\n * @Author: ncz\r\n * @Date: 2026-05-30\r\n * @Description: lit-switch-panorama-view 组件注册与属性声明\r\n */\r\n\r\nimport { LitElement, PropertyValues } from 'lit'\r\nimport { property
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/common/lit-switch-panorama-view/index.ts"],"sourcesContent":["/*\r\r\n * @Author: ncz\r\r\n * @Date: 2026-05-30\r\r\n * @Description: lit-switch-panorama-view 组件注册与属性声明\r\r\n */\r\r\n\r\r\nimport { LitElement, PropertyValues } from 'lit'\r\r\nimport { property } from 'lit/decorators.js'\r\r\nimport { safeCustomElement } from '../../../utils/define-lit-element.js'\r\r\nimport { TAG } from './constants.js'\r\r\nimport { handlePanoramaClick, handelViewModeChange, handelCoreLoaded } from './interaction.js'\r\r\nimport { booleanAttr, type PanoramaSwitchOption } from './properties.js'\r\r\nimport { styles } from './styles.js'\r\r\nimport { renderPanoramaView } from './template.js'\r\r\n\r\r\n/** 切换到 panorama 视图;qspace 须由宿主通过 :qspace 传入 */\r\r\n@safeCustomElement(TAG)\r\r\nexport class LitSwitchPanoramaView extends LitElement {\r\r\n\r\r\n /** qspace SDK 实例;仅 JS 属性绑定,不映射 HTML attribute(对象无法序列化) */\r\r\n @property({ attribute: false })\r\r\n qspace: any = null\r\r\n\r\r\n /**\r\r\n * 是否可点击;由 core.loaded / mode.change 自动同步,宿主亦可覆盖\r\r\n * HTML: enabled / Vue: :enabled\r\r\n */\r\r\n @property({\r\r\n type: Boolean,\r\r\n attribute: 'enabled',\r\r\n reflect: true,\r\r\n converter: booleanAttr,\r\r\n })\r\r\n enabled = false\r\r\n\r\r\n /**\r\r\n * 切换全景视图参数;仅 JS 属性绑定\r\r\n * Vue: :option=\"{ locationId, quaternion }\"\r\r\n */\r\r\n @property({ attribute: false })\r\r\n option: PanoramaSwitchOption | null = null\r\r\n\r\r\n setEnabled(value: boolean) {\r\r\n\r\r\n this.enabled = value\r\r\n\r\r\n this.toggleAttribute('enabled', value)\r\r\n\r\r\n }\r\r\n\r\r\n static styles = styles\r\r\n\r\r\n private _onClick = (e: Event) => {\r\r\n\r\r\n handlePanoramaClick(this, e)\r\r\n\r\r\n }\r\r\n\r\r\n private _onCoreLoaded = () => {\r\r\n\r\r\n handelCoreLoaded(this);\r\r\n\r\r\n }\r\r\n\r\r\n private _onViewModeChange = (mode: string) => {\r\r\n\r\r\n handelViewModeChange(this, mode);\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 渲染模板\r\r\n */\r\r\n render() {\r\r\n\r\r\n return renderPanoramaView(this._onClick)\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 组件连接生命周期\r\r\n */\r\r\n connectedCallback() {\r\r\n\r\r\n super.connectedCallback()\r\r\n\r\r\n if (this.qspace) {\r\r\n\r\r\n this.qspace.core.addEventListener('loaded', this._onCoreLoaded);\r\r\n\r\r\n this.qspace.view.addEventListener('mode.change', this._onViewModeChange);\r\r\n\r\r\n }\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 组件断开生命周期\r\r\n */\r\r\n disconnectedCallback() {\r\r\n\r\r\n if (this.qspace) {\r\r\n\r\r\n this.qspace.core.removeEventListener('loaded', this._onCoreLoaded);\r\r\n\r\r\n this.qspace.view.removeEventListener('mode.change', this._onViewModeChange);\r\r\n\r\r\n }\r\r\n\r\r\n super.disconnectedCallback()\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 第一次更新\r\r\n */\r\r\n firstUpdated(changed: Map<string, unknown>) {\r\r\n\r\r\n super.firstUpdated(changed)\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 组件更新\r\r\n */\r\r\n updated(changed: Map<string, unknown>) {\r\r\n\r\r\n super.updated(changed)\r\r\n\r\r\n }\r\r\n\r\r\n /**\r\r\n * 将要更新\r\r\n */\r\r\n protected willUpdate(_changedProperties: PropertyValues): void {\r\r\n\r\r\n }\r\r\n\r\r\n}\r\r\n\r\r\ndeclare global {\r\r\n\r\r\n interface HTMLElementTagNameMap {\r\r\n\r\r\n [TAG]: LitSwitchPanoramaView\r\r\n\r\r\n }\r\r\n\r\r\n}\r\r\n\r"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAkCO,IAAM,wBAAN,cAAoC,WAAW;AAAA,EAA/C,cAAA;AAAA,UAAA,GAAA,SAAA;AAQL,SAAA,SAAc;AAwBd,SAAA,UAAU;AAcV,SAAA,SAAsC;AAwBtC,SAAQ,WAAW,CAAC,MAAa;AAI/B,0BAAoB,MAAM,CAAC;AAAA,IAI7B;AAIA,SAAQ,gBAAgB,MAAM;AAI5B,uBAAiB,IAAI;AAAA,IAIvB;AAIA,SAAQ,oBAAoB,CAAC,SAAiB;AAI5C,2BAAqB,MAAM,IAAI;AAAA,IAIjC;AAAA,EAAA;AAAA,EApDA,WAAW,OAAgB;AAIzB,SAAK,UAAU;AAIf,SAAK,gBAAgB,WAAW,KAAK;AAAA,EAIvC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkDA,SAAS;AAIP,WAAO,mBAAmB,KAAK,QAAQ;AAAA,EAIzC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,oBAAoB;AAIlB,UAAM,kBAAA;AAIN,QAAI,KAAK,QAAQ;AAIf,WAAK,OAAO,KAAK,iBAAiB,UAAU,KAAK,aAAa;AAI9D,WAAK,OAAO,KAAK,iBAAiB,eAAe,KAAK,iBAAiB;AAAA,IAIzE;AAAA,EAIF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,uBAAuB;AAIrB,QAAI,KAAK,QAAQ;AAIf,WAAK,OAAO,KAAK,oBAAoB,UAAU,KAAK,aAAa;AAIjE,WAAK,OAAO,KAAK,oBAAoB,eAAe,KAAK,iBAAiB;AAAA,IAI5E;AAIA,UAAM,qBAAA;AAAA,EAIR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,aAAa,SAA+B;AAI1C,UAAM,aAAa,OAAO;AAAA,EAI5B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,QAAQ,SAA+B;AAIrC,UAAM,QAAQ,OAAO;AAAA,EAIvB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUU,WAAW,oBAA0C;AAAA,EAI/D;AAIF;AAlPa,sBAkEJ,SAAS;AA1DhB,gBAAA;AAAA,EAFC,SAAS,EAAE,WAAW,MAAA,CAAO;AAAA,GANnB,sBAQX,WAAA,UAAA,CAAA;AAwBA,gBAAA;AAAA,EAZC,SAAS;AAAA,IAER,MAAM;AAAA,IAEN,WAAW;AAAA,IAEX,SAAS;AAAA,IAET,WAAW;AAAA,EAAA,CAEZ;AAAA,GA9BU,sBAgCX,WAAA,WAAA,CAAA;AAcA,gBAAA;AAAA,EAFC,SAAS,EAAE,WAAW,MAAA,CAAO;AAAA,GA5CnB,sBA8CX,WAAA,UAAA,CAAA;AA9CW,wBAAN,gBAAA;AAAA,EAFN,kBAAkB,GAAG;AAAA,GAET,qBAAA;"}
|
|
@@ -2,13 +2,13 @@ import type { PanoramaSwitchOption } from './properties.js';
|
|
|
2
2
|
export type PanoramaViewHost = HTMLElement & {
|
|
3
3
|
qspace: any;
|
|
4
4
|
option: PanoramaSwitchOption | null;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
isSwitching: () => boolean;
|
|
8
|
-
setCurrentView: (value: boolean) => void;
|
|
9
|
-
isCurrentView: () => boolean;
|
|
5
|
+
enabled: boolean;
|
|
6
|
+
setEnabled: (value: boolean) => void;
|
|
10
7
|
};
|
|
8
|
+
/** 根据 qspace.view.mode 同步 enabled:当前视图或过渡中不可点 */
|
|
9
|
+
export declare function syncEnabledFromMode(host: PanoramaViewHost, mode: string | undefined): void;
|
|
11
10
|
/** 点击交互:校验 → 派发 click → 执行 qspace 切换 → 派发 complete */
|
|
12
11
|
export declare function handlePanoramaClick(host: PanoramaViewHost, e: Event): void;
|
|
12
|
+
export declare function handelCoreLoaded(host: PanoramaViewHost): void;
|
|
13
13
|
export declare function handelViewModeChange(host: PanoramaViewHost, mode: string): void;
|
|
14
14
|
//# sourceMappingURL=interaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-panorama-view/interaction.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAE3D,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG;IAE3C,MAAM,EAAE,GAAG,CAAA;IACX,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAAA;IACnC,
|
|
1
|
+
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-panorama-view/interaction.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAE3D,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG;IAE3C,MAAM,EAAE,GAAG,CAAA;IACX,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAAA;IACnC,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CAErC,CAAA;AAED,iDAAiD;AACjD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,QAmBnF;AAED,sDAAsD;AACtD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,EAAE,CAAC,EAAE,KAAK,QA2BnE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,QAItD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,QAIxE"}
|
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
import { ViewMode } from "../../../enum/view.mode.js";
|
|
2
2
|
import { dispatchClick, dispatchComplete } from "./events.js";
|
|
3
3
|
import { turnToPanoramaView } from "./logic.js";
|
|
4
|
+
function syncEnabledFromMode(host, mode) {
|
|
5
|
+
switch (mode) {
|
|
6
|
+
case ViewMode.Transitioning:
|
|
7
|
+
case ViewMode.Panorama:
|
|
8
|
+
host.setEnabled(false);
|
|
9
|
+
break;
|
|
10
|
+
case ViewMode.Dollhouse:
|
|
11
|
+
case ViewMode.Floorplan:
|
|
12
|
+
host.setEnabled(true);
|
|
13
|
+
break;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
4
16
|
function handlePanoramaClick(host, e) {
|
|
5
|
-
if (!host.
|
|
17
|
+
if (!host.enabled) {
|
|
6
18
|
e.preventDefault();
|
|
7
19
|
e.stopPropagation();
|
|
8
20
|
return;
|
|
@@ -11,34 +23,22 @@ function handlePanoramaClick(host, e) {
|
|
|
11
23
|
if (!host.qspace) {
|
|
12
24
|
return;
|
|
13
25
|
}
|
|
14
|
-
host.
|
|
26
|
+
host.setEnabled(false);
|
|
15
27
|
turnToPanoramaView(host.qspace, host.option, () => {
|
|
16
28
|
dispatchComplete(host, e);
|
|
17
|
-
host.setSwitching(false);
|
|
18
|
-
host.setCurrentView(true);
|
|
19
29
|
});
|
|
20
30
|
}
|
|
31
|
+
function handelCoreLoaded(host) {
|
|
32
|
+
var _a, _b;
|
|
33
|
+
syncEnabledFromMode(host, (_b = (_a = host.qspace) == null ? void 0 : _a.view) == null ? void 0 : _b.mode);
|
|
34
|
+
}
|
|
21
35
|
function handelViewModeChange(host, mode) {
|
|
22
|
-
|
|
23
|
-
case ViewMode.Transitioning:
|
|
24
|
-
host.setSwitching(true);
|
|
25
|
-
break;
|
|
26
|
-
case ViewMode.Panorama:
|
|
27
|
-
host.setSwitching(false);
|
|
28
|
-
host.setCurrentView(true);
|
|
29
|
-
break;
|
|
30
|
-
case ViewMode.Dollhouse:
|
|
31
|
-
host.setSwitching(false);
|
|
32
|
-
host.setCurrentView(false);
|
|
33
|
-
break;
|
|
34
|
-
case ViewMode.Floorplan:
|
|
35
|
-
host.setSwitching(false);
|
|
36
|
-
host.setCurrentView(false);
|
|
37
|
-
break;
|
|
38
|
-
}
|
|
36
|
+
syncEnabledFromMode(host, mode);
|
|
39
37
|
}
|
|
40
38
|
export {
|
|
39
|
+
handelCoreLoaded,
|
|
41
40
|
handelViewModeChange,
|
|
42
|
-
handlePanoramaClick
|
|
41
|
+
handlePanoramaClick,
|
|
42
|
+
syncEnabledFromMode
|
|
43
43
|
};
|
|
44
44
|
//# sourceMappingURL=interaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.js","sources":["../../../../src/components/common/lit-switch-panorama-view/interaction.ts"],"sourcesContent":["/*\n * @Author: ncz\n * @Date: 2026-05-30\n * @Description: lit-switch-panorama-view 点击交互流程\n */\n\nimport { ViewMode } from '@/enum/view.mode'\nimport { dispatchClick, dispatchComplete } from './events.js'\nimport { turnToPanoramaView } from './logic.js'\nimport type { PanoramaSwitchOption } from './properties.js'\n\nexport type PanoramaViewHost = HTMLElement & {\n\n qspace: any\n option: PanoramaSwitchOption | null\n
|
|
1
|
+
{"version":3,"file":"interaction.js","sources":["../../../../src/components/common/lit-switch-panorama-view/interaction.ts"],"sourcesContent":["/*\n * @Author: ncz\n * @Date: 2026-05-30\n * @Description: lit-switch-panorama-view 点击交互流程\n */\n\nimport { ViewMode } from '@/enum/view.mode'\nimport { dispatchClick, dispatchComplete } from './events.js'\nimport { turnToPanoramaView } from './logic.js'\nimport type { PanoramaSwitchOption } from './properties.js'\n\nexport type PanoramaViewHost = HTMLElement & {\n\n qspace: any\n option: PanoramaSwitchOption | null\n enabled: boolean\n setEnabled: (value: boolean) => void\n\n}\n\n/** 根据 qspace.view.mode 同步 enabled:当前视图或过渡中不可点 */\nexport function syncEnabledFromMode(host: PanoramaViewHost, mode: string | undefined) {\n\n switch (mode) {\n\n case ViewMode.Transitioning:\n case ViewMode.Panorama:\n host.setEnabled(false)\n break\n\n case ViewMode.Dollhouse:\n case ViewMode.Floorplan:\n host.setEnabled(true)\n break\n\n default:\n break\n\n }\n\n}\n\n/** 点击交互:校验 → 派发 click → 执行 qspace 切换 → 派发 complete */\nexport function handlePanoramaClick(host: PanoramaViewHost, e: Event) {\n\n if (!host.enabled) {\n\n e.preventDefault()\n e.stopPropagation()\n\n return\n\n }\n\n dispatchClick(host, e)\n\n if (!host.qspace) {\n\n return\n\n }\n\n host.setEnabled(false)\n\n turnToPanoramaView(host.qspace, host.option, () => {\n\n dispatchComplete(host, e)\n\n })\n\n}\n\nexport function handelCoreLoaded(host: PanoramaViewHost) {\n\n syncEnabledFromMode(host, host.qspace?.view?.mode)\n\n}\n\nexport function handelViewModeChange(host: PanoramaViewHost, mode: string) {\n\n syncEnabledFromMode(host, mode)\n\n}\n"],"names":[],"mappings":";;;AAqBO,SAAS,oBAAoB,MAAwB,MAA0B;AAEpF,UAAQ,MAAA;AAAA,IAEN,KAAK,SAAS;AAAA,IACd,KAAK,SAAS;AACZ,WAAK,WAAW,KAAK;AACrB;AAAA,IAEF,KAAK,SAAS;AAAA,IACd,KAAK,SAAS;AACZ,WAAK,WAAW,IAAI;AACpB;AAAA,EAGA;AAIN;AAGO,SAAS,oBAAoB,MAAwB,GAAU;AAEpE,MAAI,CAAC,KAAK,SAAS;AAEjB,MAAE,eAAA;AACF,MAAE,gBAAA;AAEF;AAAA,EAEF;AAEA,gBAAc,MAAM,CAAC;AAErB,MAAI,CAAC,KAAK,QAAQ;AAEhB;AAAA,EAEF;AAEA,OAAK,WAAW,KAAK;AAErB,qBAAmB,KAAK,QAAQ,KAAK,QAAQ,MAAM;AAEjD,qBAAiB,MAAM,CAAC;AAAA,EAE1B,CAAC;AAEH;AAEO,SAAS,iBAAiB,MAAwB;;AAEvD,sBAAoB,OAAM,gBAAK,WAAL,mBAAa,SAAb,mBAAmB,IAAI;AAEnD;AAEO,SAAS,qBAAqB,MAAwB,MAAc;AAEzE,sBAAoB,MAAM,IAAI;AAEhC;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-panorama-view/styles.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/components/common/lit-switch-panorama-view/styles.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,MAAM,yBA4BlB,CAAA"}
|
|
@@ -20,16 +20,12 @@ const styles = css`
|
|
|
20
20
|
background-image: var(--lit-mode-panorama-icon, url(${unsafeCSS(iconUrl)}));
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
:host(:not([
|
|
24
|
-
:host([switching]),
|
|
25
|
-
:host([current-view]) {
|
|
23
|
+
:host(:not([enabled])) {
|
|
26
24
|
pointer-events: none;
|
|
27
25
|
opacity: 0.5;
|
|
28
26
|
}
|
|
29
27
|
|
|
30
|
-
:host(:not([
|
|
31
|
-
:host([switching]) .mode-item,
|
|
32
|
-
:host([current-view]) .mode-item {
|
|
28
|
+
:host(:not([enabled])) .mode-item {
|
|
33
29
|
cursor: not-allowed;
|
|
34
30
|
}
|
|
35
31
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sources":["../../../../src/components/common/lit-switch-panorama-view/styles.ts"],"sourcesContent":["/*\r\n * @Author: ncz\r\n * @Date: 2026-05-30\r\n * @Description: lit-switch-panorama-view 样式\r\n */\r\n\r\nimport { css, unsafeCSS } from 'lit'\r\nimport iconUrl from './assets/icon.png?url'\r\n\r\nexport const styles = css`\r\n :host {\r\n display: inline-block;\r\n }\r\n\r\n .mode-item {\r\n box-sizing: border-box;\r\n width: 26px;\r\n height: 26px;\r\n background-repeat: no-repeat;\r\n background-size: 26px 26px;\r\n background-position: center;\r\n cursor: pointer;\r\n }\r\n\r\n .mode-item.panorama {\r\n background-color: rgba(255, 0, 0, 0.4);\r\n background-image: var(--lit-mode-panorama-icon, url(${unsafeCSS(iconUrl)}));\r\n }\r\n\r\n :host(:not([
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../../src/components/common/lit-switch-panorama-view/styles.ts"],"sourcesContent":["/*\r\n * @Author: ncz\r\n * @Date: 2026-05-30\r\n * @Description: lit-switch-panorama-view 样式\r\n */\r\n\r\nimport { css, unsafeCSS } from 'lit'\r\nimport iconUrl from './assets/icon.png?url'\r\n\r\nexport const styles = css`\r\n :host {\r\n display: inline-block;\r\n }\r\n\r\n .mode-item {\r\n box-sizing: border-box;\r\n width: 26px;\r\n height: 26px;\r\n background-repeat: no-repeat;\r\n background-size: 26px 26px;\r\n background-position: center;\r\n cursor: pointer;\r\n }\r\n\r\n .mode-item.panorama {\r\n background-color: rgba(255, 0, 0, 0.4);\r\n background-image: var(--lit-mode-panorama-icon, url(${unsafeCSS(iconUrl)}));\r\n }\r\n\r\n :host(:not([enabled])) {\r\n pointer-events: none;\r\n opacity: 0.5;\r\n }\r\n\r\n :host(:not([enabled])) .mode-item {\r\n cursor: not-allowed;\r\n }\r\n`\r\n"],"names":[],"mappings":";;AASO,MAAM,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0DAiBoC,UAAU,OAAO,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
|