@lynx-js/web-elements-canary 0.9.0 → 0.9.1-canary-20251223-71b9083d
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/CHANGELOG.md +21 -7
- package/dist/ScrollView/FadeEdgeLengthAttribute.d.ts +2 -0
- package/dist/ScrollView/FadeEdgeLengthAttribute.js +15 -16
- package/dist/ScrollView/ScrollAttributes.d.ts +2 -0
- package/dist/ScrollView/ScrollAttributes.js +52 -54
- package/dist/ScrollView/ScrollViewEvents.d.ts +6 -0
- package/dist/ScrollView/ScrollViewEvents.js +41 -41
- package/dist/XAudioTT/XAudioAttribute.d.ts +3 -0
- package/dist/XAudioTT/XAudioAttribute.js +57 -60
- package/dist/XFoldViewNg/XFoldviewNgEvents.d.ts +2 -0
- package/dist/XFoldViewNg/XFoldviewNgEvents.js +23 -25
- package/dist/XFoldViewNg/XFoldviewSlotNgTouchEventsHandler.js +0 -1
- package/dist/XImage/DropShadow.d.ts +1 -0
- package/dist/XImage/DropShadow.js +7 -7
- package/dist/XImage/ImageEvents.d.ts +2 -0
- package/dist/XImage/ImageEvents.js +27 -29
- package/dist/XImage/ImageSrc.d.ts +5 -0
- package/dist/XImage/ImageSrc.js +35 -36
- package/dist/XInput/InputBaseAttributes.d.ts +5 -0
- package/dist/XInput/InputBaseAttributes.js +56 -58
- package/dist/XInput/Placeholder.d.ts +5 -0
- package/dist/XInput/Placeholder.js +31 -31
- package/dist/XInput/XInputAttribute.d.ts +3 -0
- package/dist/XInput/XInputAttribute.js +31 -32
- package/dist/XInput/XInputEvents.d.ts +3 -0
- package/dist/XInput/XInputEvents.js +34 -37
- package/dist/XList/ListItemAttributes.d.ts +1 -0
- package/dist/XList/ListItemAttributes.js +8 -9
- package/dist/XList/XListAttributes.d.ts +2 -0
- package/dist/XList/XListAttributes.js +13 -13
- package/dist/XList/XListEvents.d.ts +7 -0
- package/dist/XList/XListEvents.js +76 -78
- package/dist/XList/XListWaterfall.d.ts +2 -0
- package/dist/XList/XListWaterfall.js +66 -68
- package/dist/XOverlayNg/XOverlayAttributes.d.ts +2 -0
- package/dist/XOverlayNg/XOverlayAttributes.js +32 -34
- package/dist/XRefreshView/XRefreshViewEventsEmitter.d.ts +2 -0
- package/dist/XRefreshView/XRefreshViewEventsEmitter.js +34 -37
- package/dist/XSvg/XSvg.d.ts +3 -0
- package/dist/XSvg/XSvg.js +42 -45
- package/dist/XSwiper/XSwiperAutoScroll.d.ts +2 -0
- package/dist/XSwiper/XSwiperAutoScroll.js +23 -25
- package/dist/XSwiper/XSwiperCircular.d.ts +2 -0
- package/dist/XSwiper/XSwiperCircular.js +23 -25
- package/dist/XSwiper/XSwiperEvents.d.ts +2 -0
- package/dist/XSwiper/XSwiperEvents.js +19 -20
- package/dist/XSwiper/XSwiperIndicator.d.ts +5 -0
- package/dist/XSwiper/XSwiperIndicator.js +31 -31
- package/dist/XText/InlineImage.d.ts +1 -0
- package/dist/XText/InlineImage.js +10 -11
- package/dist/XText/RawText.d.ts +1 -0
- package/dist/XText/RawText.js +11 -12
- package/dist/XText/XTextTruncation.d.ts +2 -0
- package/dist/XText/XTextTruncation.js +29 -31
- package/dist/XTextarea/Placeholder.d.ts +5 -0
- package/dist/XTextarea/Placeholder.js +31 -31
- package/dist/XTextarea/TextareaBaseAttributes.d.ts +5 -0
- package/dist/XTextarea/TextareaBaseAttributes.js +31 -31
- package/dist/XTextarea/XTextareaAttributes.d.ts +5 -0
- package/dist/XTextarea/XTextareaAttributes.js +43 -45
- package/dist/XTextarea/XTextareaEvents.d.ts +3 -0
- package/dist/XTextarea/XTextareaEvents.js +34 -37
- package/dist/XView/BlurRadius.d.ts +1 -0
- package/dist/XView/BlurRadius.js +14 -15
- package/dist/XViewpagerNg/XViewpagerNgEvents.d.ts +2 -0
- package/dist/XViewpagerNg/XViewpagerNgEvents.js +15 -17
- package/dist/common/CommonEventsAndMethods.d.ts +1 -0
- package/dist/common/CommonEventsAndMethods.js +5 -1
- package/elements.css +18 -0
- package/index.css +1 -14
- package/package.json +21 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# @lynx-js/web-elements
|
|
2
2
|
|
|
3
|
+
## 0.9.1-canary-20251223075424-71b9083d7c117666ae815e62ced38709c3d207e6
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- refactor: change code structure for improved readability and maintainability ([#2004](https://github.com/lynx-family/lynx-stack/pull/2004))
|
|
8
|
+
|
|
9
|
+
- enable noUnusedLocals for web-elements
|
|
10
|
+
- add source field for supporting @rsbuild/plugin-source-build
|
|
11
|
+
|
|
12
|
+
This is a part of #1937
|
|
13
|
+
|
|
14
|
+
- Updated dependencies []:
|
|
15
|
+
- @lynx-js/web-elements-template@0.9.1-canary-20251223075424-71b9083d7c117666ae815e62ced38709c3d207e6
|
|
16
|
+
|
|
3
17
|
## 0.9.0
|
|
4
18
|
|
|
5
19
|
### Minor Changes
|
|
@@ -673,8 +687,8 @@
|
|
|
673
687
|
For compating usage, `@lynx-js/web-elements-compat/LinearContainer` is provided.
|
|
674
688
|
|
|
675
689
|
```javascript
|
|
676
|
-
import
|
|
677
|
-
import
|
|
690
|
+
import "@lynx-js/web-elements-compat/LinearContainer";
|
|
691
|
+
import "@lynx-js/web-elements/all";
|
|
678
692
|
```
|
|
679
693
|
|
|
680
694
|
- f8d1d98: break: rename the `blur` and `focus` event to `lynxblur` and `lynxfocus` for x-input element
|
|
@@ -696,11 +710,11 @@
|
|
|
696
710
|
There is also a simple way to use this feature
|
|
697
711
|
|
|
698
712
|
```javascript
|
|
699
|
-
import { LynxCard } from
|
|
700
|
-
import { loadElement } from
|
|
701
|
-
import
|
|
702
|
-
import
|
|
703
|
-
import
|
|
713
|
+
import { LynxCard } from "@lynx-js/web-core";
|
|
714
|
+
import { loadElement } from "@lynx-js/web-elements/lazy";
|
|
715
|
+
import "@lynx-js/web-elements/index.css";
|
|
716
|
+
import "@lynx-js/web-core/index.css";
|
|
717
|
+
import "./index.css";
|
|
704
718
|
|
|
705
719
|
const lynxcard = new LynxCard({
|
|
706
720
|
...beforeConfigs,
|
|
@@ -5,6 +5,8 @@ export declare class FadeEdgeLengthAttribute implements InstanceType<AttributeRe
|
|
|
5
5
|
static observedAttributes: string[];
|
|
6
6
|
static observedCSSProperties: string[];
|
|
7
7
|
constructor(dom: ScrollView);
|
|
8
|
+
_handleFadingEdgeLength: (this: void, newVal: string | null) => void;
|
|
9
|
+
_backgroundColorToVariable(backGroundColor: string | null): void;
|
|
8
10
|
connectedCallback?(): void;
|
|
9
11
|
dispose(): void;
|
|
10
12
|
}
|
|
@@ -1,27 +1,23 @@
|
|
|
1
|
-
import { __esDecorate, __runInitializers, __setFunctionName } from "tslib";
|
|
2
1
|
/*
|
|
3
2
|
// Copyright 2024 The Lynx Authors. All rights reserved.
|
|
4
3
|
// Licensed under the Apache License Version 2.0 that can be found in the
|
|
5
4
|
// LICENSE file in the root directory of this source tree.
|
|
6
5
|
*/
|
|
6
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
7
7
|
import { bindToStyle, genDomGetter, registerAttributeHandler, registerStyleChangeHandler, } from '@lynx-js/web-elements-reactive';
|
|
8
8
|
let FadeEdgeLengthAttribute = (() => {
|
|
9
9
|
let _instanceExtraInitializers = [];
|
|
10
|
-
let
|
|
11
|
-
let
|
|
12
|
-
let
|
|
13
|
-
let
|
|
14
|
-
let _private_backgroundColorToVariable_descriptor;
|
|
10
|
+
let __handleFadingEdgeLength_decorators;
|
|
11
|
+
let __handleFadingEdgeLength_initializers = [];
|
|
12
|
+
let __handleFadingEdgeLength_extraInitializers = [];
|
|
13
|
+
let __backgroundColorToVariable_decorators;
|
|
15
14
|
return class FadeEdgeLengthAttribute {
|
|
16
15
|
static {
|
|
17
16
|
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
__esDecorate(this,
|
|
21
|
-
|
|
22
|
-
this.#getBotFadeMask().style.setProperty('--scroll-view-bg-color', backGroundColor);
|
|
23
|
-
}, "#backgroundColorToVariable") }, _private_backgroundColorToVariable_decorators, { kind: "method", name: "#backgroundColorToVariable", static: false, private: true, access: { has: obj => #backgroundColorToVariable in obj, get: obj => obj.#backgroundColorToVariable }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
24
|
-
__esDecorate(null, null, _private_handleFadingEdgeLength_decorators, { kind: "field", name: "#handleFadingEdgeLength", static: false, private: true, access: { has: obj => #handleFadingEdgeLength in obj, get: obj => obj.#handleFadingEdgeLength, set: (obj, value) => { obj.#handleFadingEdgeLength = value; } }, metadata: _metadata }, _private_handleFadingEdgeLength_initializers, _private_handleFadingEdgeLength_extraInitializers);
|
|
17
|
+
__handleFadingEdgeLength_decorators = [registerAttributeHandler('fading-edge-length', true)];
|
|
18
|
+
__backgroundColorToVariable_decorators = [registerStyleChangeHandler('background'), registerStyleChangeHandler('background-color')];
|
|
19
|
+
__esDecorate(this, null, __backgroundColorToVariable_decorators, { kind: "method", name: "_backgroundColorToVariable", static: false, private: false, access: { has: obj => "_backgroundColorToVariable" in obj, get: obj => obj._backgroundColorToVariable }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
20
|
+
__esDecorate(null, null, __handleFadingEdgeLength_decorators, { kind: "field", name: "_handleFadingEdgeLength", static: false, private: false, access: { has: obj => "_handleFadingEdgeLength" in obj, get: obj => obj._handleFadingEdgeLength, set: (obj, value) => { obj._handleFadingEdgeLength = value; } }, metadata: _metadata }, __handleFadingEdgeLength_initializers, __handleFadingEdgeLength_extraInitializers);
|
|
25
21
|
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
26
22
|
}
|
|
27
23
|
#dom = __runInitializers(this, _instanceExtraInitializers);
|
|
@@ -30,11 +26,14 @@ let FadeEdgeLengthAttribute = (() => {
|
|
|
30
26
|
static observedAttributes = ['fading-edge-length'];
|
|
31
27
|
static observedCSSProperties = ['background', 'background-color'];
|
|
32
28
|
constructor(dom) {
|
|
33
|
-
__runInitializers(this,
|
|
29
|
+
__runInitializers(this, __handleFadingEdgeLength_extraInitializers);
|
|
34
30
|
this.#dom = dom;
|
|
35
31
|
}
|
|
36
|
-
|
|
37
|
-
|
|
32
|
+
_handleFadingEdgeLength = __runInitializers(this, __handleFadingEdgeLength_initializers, bindToStyle(() => this.#dom, '--scroll-view-fading-edge-length', (v) => `${parseFloat(v)}px`));
|
|
33
|
+
_backgroundColorToVariable(backGroundColor) {
|
|
34
|
+
this.#getTopFadeMask().style.setProperty('--scroll-view-bg-color', backGroundColor);
|
|
35
|
+
this.#getBotFadeMask().style.setProperty('--scroll-view-bg-color', backGroundColor);
|
|
36
|
+
}
|
|
38
37
|
connectedCallback() { }
|
|
39
38
|
dispose() { }
|
|
40
39
|
};
|
|
@@ -4,5 +4,7 @@ export declare class ScrollAttributes implements InstanceType<AttributeReactiveC
|
|
|
4
4
|
#private;
|
|
5
5
|
static observedAttributes: string[];
|
|
6
6
|
constructor(dom: ScrollView);
|
|
7
|
+
_handleInitialScrollOffset(newVal: string | null, _: string | null, attributeName: string): void;
|
|
8
|
+
_handleInitialScrollIndex(newVal: string | null): void;
|
|
7
9
|
dispose(): void;
|
|
8
10
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __esDecorate, __runInitializers
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
2
|
/*
|
|
3
3
|
// Copyright 2024 The Lynx Authors. All rights reserved.
|
|
4
4
|
// Licensed under the Apache License Version 2.0 that can be found in the
|
|
@@ -7,60 +7,15 @@ import { __esDecorate, __runInitializers, __setFunctionName } from "tslib";
|
|
|
7
7
|
import { registerAttributeHandler, } from '@lynx-js/web-elements-reactive';
|
|
8
8
|
let ScrollAttributes = (() => {
|
|
9
9
|
let _instanceExtraInitializers = [];
|
|
10
|
-
let
|
|
11
|
-
let
|
|
12
|
-
let _private_handleInitialScrollIndex_decorators;
|
|
13
|
-
let _private_handleInitialScrollIndex_descriptor;
|
|
10
|
+
let __handleInitialScrollOffset_decorators;
|
|
11
|
+
let __handleInitialScrollIndex_decorators;
|
|
14
12
|
return class ScrollAttributes {
|
|
15
13
|
static {
|
|
16
14
|
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
__esDecorate(this,
|
|
20
|
-
|
|
21
|
-
const scrollValue = parseFloat(newVal);
|
|
22
|
-
const scrollOrientation = this.#dom.getAttribute('scroll-orientation');
|
|
23
|
-
const scrollY = this.#dom.getAttribute('scroll-y');
|
|
24
|
-
const scrollX = this.#dom.getAttribute('scroll-x');
|
|
25
|
-
const topScrollDistance = (attributeName === 'scroll-top'
|
|
26
|
-
|| attributeName === 'initial-scroll-offset')
|
|
27
|
-
&& (scrollY === ''
|
|
28
|
-
|| scrollY === 'true'
|
|
29
|
-
|| scrollOrientation === 'vertical'
|
|
30
|
-
|| scrollOrientation === 'both');
|
|
31
|
-
const leftScrollDistance = (attributeName === 'scroll-left'
|
|
32
|
-
|| attributeName === 'initial-scroll-offset')
|
|
33
|
-
&& (scrollX === ''
|
|
34
|
-
|| scrollX === 'true'
|
|
35
|
-
|| scrollOrientation === 'vertical'
|
|
36
|
-
|| scrollOrientation === 'both');
|
|
37
|
-
requestAnimationFrame(() => {
|
|
38
|
-
if (topScrollDistance) {
|
|
39
|
-
this.#dom.scrollTo(0, scrollValue);
|
|
40
|
-
}
|
|
41
|
-
if (leftScrollDistance) {
|
|
42
|
-
this.#dom.scrollLeft = scrollValue;
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
}, "#handleInitialScrollOffset") }, _private_handleInitialScrollOffset_decorators, { kind: "method", name: "#handleInitialScrollOffset", static: false, private: true, access: { has: obj => #handleInitialScrollOffset in obj, get: obj => obj.#handleInitialScrollOffset }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
47
|
-
__esDecorate(this, _private_handleInitialScrollIndex_descriptor = { value: __setFunctionName(function (newVal) {
|
|
48
|
-
if (newVal) {
|
|
49
|
-
const scrollValue = parseFloat(newVal);
|
|
50
|
-
const childrenElement = this.#dom.children.item(scrollValue);
|
|
51
|
-
if (childrenElement && childrenElement instanceof HTMLElement) {
|
|
52
|
-
const scrollX = this.#dom.getAttribute('scroll-x') !== null;
|
|
53
|
-
requestAnimationFrame(() => {
|
|
54
|
-
if (scrollX) {
|
|
55
|
-
this.#dom.scrollLeft = childrenElement.offsetLeft;
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
this.#dom.scrollTop = childrenElement.offsetTop;
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}, "#handleInitialScrollIndex") }, _private_handleInitialScrollIndex_decorators, { kind: "method", name: "#handleInitialScrollIndex", static: false, private: true, access: { has: obj => #handleInitialScrollIndex in obj, get: obj => obj.#handleInitialScrollIndex }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
15
|
+
__handleInitialScrollOffset_decorators = [registerAttributeHandler('scroll-top', false), registerAttributeHandler('scroll-left', false), registerAttributeHandler('initial-scroll-offset', false)];
|
|
16
|
+
__handleInitialScrollIndex_decorators = [registerAttributeHandler('scroll-to-index', false), registerAttributeHandler('initial-scroll-to-index', false)];
|
|
17
|
+
__esDecorate(this, null, __handleInitialScrollOffset_decorators, { kind: "method", name: "_handleInitialScrollOffset", static: false, private: false, access: { has: obj => "_handleInitialScrollOffset" in obj, get: obj => obj._handleInitialScrollOffset }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
18
|
+
__esDecorate(this, null, __handleInitialScrollIndex_decorators, { kind: "method", name: "_handleInitialScrollIndex", static: false, private: false, access: { has: obj => "_handleInitialScrollIndex" in obj, get: obj => obj._handleInitialScrollIndex }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
64
19
|
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
65
20
|
}
|
|
66
21
|
#dom = __runInitializers(this, _instanceExtraInitializers);
|
|
@@ -74,8 +29,51 @@ let ScrollAttributes = (() => {
|
|
|
74
29
|
constructor(dom) {
|
|
75
30
|
this.#dom = dom;
|
|
76
31
|
}
|
|
77
|
-
|
|
78
|
-
|
|
32
|
+
_handleInitialScrollOffset(newVal, _, attributeName) {
|
|
33
|
+
if (newVal) {
|
|
34
|
+
const scrollValue = parseFloat(newVal);
|
|
35
|
+
const scrollOrientation = this.#dom.getAttribute('scroll-orientation');
|
|
36
|
+
const scrollY = this.#dom.getAttribute('scroll-y');
|
|
37
|
+
const scrollX = this.#dom.getAttribute('scroll-x');
|
|
38
|
+
const topScrollDistance = (attributeName === 'scroll-top'
|
|
39
|
+
|| attributeName === 'initial-scroll-offset')
|
|
40
|
+
&& (scrollY === ''
|
|
41
|
+
|| scrollY === 'true'
|
|
42
|
+
|| scrollOrientation === 'vertical'
|
|
43
|
+
|| scrollOrientation === 'both');
|
|
44
|
+
const leftScrollDistance = (attributeName === 'scroll-left'
|
|
45
|
+
|| attributeName === 'initial-scroll-offset')
|
|
46
|
+
&& (scrollX === ''
|
|
47
|
+
|| scrollX === 'true'
|
|
48
|
+
|| scrollOrientation === 'vertical'
|
|
49
|
+
|| scrollOrientation === 'both');
|
|
50
|
+
requestAnimationFrame(() => {
|
|
51
|
+
if (topScrollDistance) {
|
|
52
|
+
this.#dom.scrollTo(0, scrollValue);
|
|
53
|
+
}
|
|
54
|
+
if (leftScrollDistance) {
|
|
55
|
+
this.#dom.scrollLeft = scrollValue;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
_handleInitialScrollIndex(newVal) {
|
|
61
|
+
if (newVal) {
|
|
62
|
+
const scrollValue = parseFloat(newVal);
|
|
63
|
+
const childrenElement = this.#dom.children.item(scrollValue);
|
|
64
|
+
if (childrenElement && childrenElement instanceof HTMLElement) {
|
|
65
|
+
const scrollX = this.#dom.getAttribute('scroll-x') !== null;
|
|
66
|
+
requestAnimationFrame(() => {
|
|
67
|
+
if (scrollX) {
|
|
68
|
+
this.#dom.scrollLeft = childrenElement.offsetLeft;
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
this.#dom.scrollTop = childrenElement.offsetTop;
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
79
77
|
dispose() { }
|
|
80
78
|
};
|
|
81
79
|
})();
|
|
@@ -4,6 +4,12 @@ export declare class ScrollViewEvents implements InstanceType<AttributeReactiveC
|
|
|
4
4
|
#private;
|
|
5
5
|
constructor(dom: ScrollView);
|
|
6
6
|
static observedAttributes: string[];
|
|
7
|
+
_handleScrollUpperThresholdEventEnabled: (enabled: boolean) => void;
|
|
8
|
+
_handleScrollLowerThresholdEventEnabled: (enabled: boolean) => void;
|
|
9
|
+
_updateUpperThreshold: (this: void, newVal: string | null) => void;
|
|
10
|
+
_updateLowerThreshold: (this: void, newVal: string | null) => void;
|
|
11
|
+
_handleScrollEventEnabled: (enabled: boolean) => void;
|
|
12
|
+
_handleScrollEndEventEnabled: (enabled: boolean) => void;
|
|
7
13
|
connectedCallback?(): void;
|
|
8
14
|
dispose(): void;
|
|
9
15
|
}
|
|
@@ -10,39 +10,39 @@ import { bindToIntersectionObserver } from '../common/bindToIntersectionObserver
|
|
|
10
10
|
import { useScrollEnd } from '../common/constants.js';
|
|
11
11
|
import { registerEventEnableStatusChangeHandler } from '@lynx-js/web-elements-reactive';
|
|
12
12
|
let ScrollViewEvents = (() => {
|
|
13
|
-
let
|
|
14
|
-
let
|
|
15
|
-
let
|
|
16
|
-
let
|
|
17
|
-
let
|
|
18
|
-
let
|
|
19
|
-
let
|
|
20
|
-
let
|
|
21
|
-
let
|
|
22
|
-
let
|
|
23
|
-
let
|
|
24
|
-
let
|
|
25
|
-
let
|
|
26
|
-
let
|
|
27
|
-
let
|
|
28
|
-
let
|
|
29
|
-
let
|
|
30
|
-
let
|
|
13
|
+
let __handleScrollUpperThresholdEventEnabled_decorators;
|
|
14
|
+
let __handleScrollUpperThresholdEventEnabled_initializers = [];
|
|
15
|
+
let __handleScrollUpperThresholdEventEnabled_extraInitializers = [];
|
|
16
|
+
let __handleScrollLowerThresholdEventEnabled_decorators;
|
|
17
|
+
let __handleScrollLowerThresholdEventEnabled_initializers = [];
|
|
18
|
+
let __handleScrollLowerThresholdEventEnabled_extraInitializers = [];
|
|
19
|
+
let __updateUpperThreshold_decorators;
|
|
20
|
+
let __updateUpperThreshold_initializers = [];
|
|
21
|
+
let __updateUpperThreshold_extraInitializers = [];
|
|
22
|
+
let __updateLowerThreshold_decorators;
|
|
23
|
+
let __updateLowerThreshold_initializers = [];
|
|
24
|
+
let __updateLowerThreshold_extraInitializers = [];
|
|
25
|
+
let __handleScrollEventEnabled_decorators;
|
|
26
|
+
let __handleScrollEventEnabled_initializers = [];
|
|
27
|
+
let __handleScrollEventEnabled_extraInitializers = [];
|
|
28
|
+
let __handleScrollEndEventEnabled_decorators;
|
|
29
|
+
let __handleScrollEndEventEnabled_initializers = [];
|
|
30
|
+
let __handleScrollEndEventEnabled_extraInitializers = [];
|
|
31
31
|
return class ScrollViewEvents {
|
|
32
32
|
static {
|
|
33
33
|
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
__esDecorate(null, null,
|
|
41
|
-
__esDecorate(null, null,
|
|
42
|
-
__esDecorate(null, null,
|
|
43
|
-
__esDecorate(null, null,
|
|
44
|
-
__esDecorate(null, null,
|
|
45
|
-
__esDecorate(null, null,
|
|
34
|
+
__handleScrollUpperThresholdEventEnabled_decorators = [registerEventEnableStatusChangeHandler('scrolltoupper')];
|
|
35
|
+
__handleScrollLowerThresholdEventEnabled_decorators = [registerEventEnableStatusChangeHandler('scrolltolower')];
|
|
36
|
+
__updateUpperThreshold_decorators = [registerAttributeHandler('upper-threshold', true)];
|
|
37
|
+
__updateLowerThreshold_decorators = [registerAttributeHandler('lower-threshold', true)];
|
|
38
|
+
__handleScrollEventEnabled_decorators = [registerEventEnableStatusChangeHandler('lynxscroll')];
|
|
39
|
+
__handleScrollEndEventEnabled_decorators = [registerEventEnableStatusChangeHandler('lynxscrollend')];
|
|
40
|
+
__esDecorate(null, null, __handleScrollUpperThresholdEventEnabled_decorators, { kind: "field", name: "_handleScrollUpperThresholdEventEnabled", static: false, private: false, access: { has: obj => "_handleScrollUpperThresholdEventEnabled" in obj, get: obj => obj._handleScrollUpperThresholdEventEnabled, set: (obj, value) => { obj._handleScrollUpperThresholdEventEnabled = value; } }, metadata: _metadata }, __handleScrollUpperThresholdEventEnabled_initializers, __handleScrollUpperThresholdEventEnabled_extraInitializers);
|
|
41
|
+
__esDecorate(null, null, __handleScrollLowerThresholdEventEnabled_decorators, { kind: "field", name: "_handleScrollLowerThresholdEventEnabled", static: false, private: false, access: { has: obj => "_handleScrollLowerThresholdEventEnabled" in obj, get: obj => obj._handleScrollLowerThresholdEventEnabled, set: (obj, value) => { obj._handleScrollLowerThresholdEventEnabled = value; } }, metadata: _metadata }, __handleScrollLowerThresholdEventEnabled_initializers, __handleScrollLowerThresholdEventEnabled_extraInitializers);
|
|
42
|
+
__esDecorate(null, null, __updateUpperThreshold_decorators, { kind: "field", name: "_updateUpperThreshold", static: false, private: false, access: { has: obj => "_updateUpperThreshold" in obj, get: obj => obj._updateUpperThreshold, set: (obj, value) => { obj._updateUpperThreshold = value; } }, metadata: _metadata }, __updateUpperThreshold_initializers, __updateUpperThreshold_extraInitializers);
|
|
43
|
+
__esDecorate(null, null, __updateLowerThreshold_decorators, { kind: "field", name: "_updateLowerThreshold", static: false, private: false, access: { has: obj => "_updateLowerThreshold" in obj, get: obj => obj._updateLowerThreshold, set: (obj, value) => { obj._updateLowerThreshold = value; } }, metadata: _metadata }, __updateLowerThreshold_initializers, __updateLowerThreshold_extraInitializers);
|
|
44
|
+
__esDecorate(null, null, __handleScrollEventEnabled_decorators, { kind: "field", name: "_handleScrollEventEnabled", static: false, private: false, access: { has: obj => "_handleScrollEventEnabled" in obj, get: obj => obj._handleScrollEventEnabled, set: (obj, value) => { obj._handleScrollEventEnabled = value; } }, metadata: _metadata }, __handleScrollEventEnabled_initializers, __handleScrollEventEnabled_extraInitializers);
|
|
45
|
+
__esDecorate(null, null, __handleScrollEndEventEnabled_decorators, { kind: "field", name: "_handleScrollEndEventEnabled", static: false, private: false, access: { has: obj => "_handleScrollEndEventEnabled" in obj, get: obj => obj._handleScrollEndEventEnabled, set: (obj, value) => { obj._handleScrollEndEventEnabled = value; } }, metadata: _metadata }, __handleScrollEndEventEnabled_initializers, __handleScrollEndEventEnabled_extraInitializers);
|
|
46
46
|
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
47
47
|
}
|
|
48
48
|
#dom;
|
|
@@ -50,7 +50,7 @@ let ScrollViewEvents = (() => {
|
|
|
50
50
|
#prevX = 0;
|
|
51
51
|
#prevY = 0;
|
|
52
52
|
constructor(dom) {
|
|
53
|
-
__runInitializers(this,
|
|
53
|
+
__runInitializers(this, __handleScrollEndEventEnabled_extraInitializers);
|
|
54
54
|
this.#dom = dom;
|
|
55
55
|
}
|
|
56
56
|
#getScrollContainer = () => this.#dom;
|
|
@@ -78,22 +78,22 @@ let ScrollViewEvents = (() => {
|
|
|
78
78
|
'upper-threshold',
|
|
79
79
|
'lower-threshold',
|
|
80
80
|
];
|
|
81
|
-
|
|
81
|
+
_handleScrollUpperThresholdEventEnabled = __runInitializers(this, __handleScrollUpperThresholdEventEnabled_initializers, (enabled) => {
|
|
82
82
|
enabled
|
|
83
83
|
? this.#dom.setAttribute('x-enable-scrolltoupper-event', '')
|
|
84
84
|
: this.#dom.removeAttribute('x-enable-scrolltoupper-event'); // css needs this;
|
|
85
85
|
this.#updateUpperIntersectionObserver(enabled);
|
|
86
86
|
});
|
|
87
|
-
#updateUpperIntersectionObserver = (__runInitializers(this,
|
|
88
|
-
|
|
87
|
+
#updateUpperIntersectionObserver = (__runInitializers(this, __handleScrollUpperThresholdEventEnabled_extraInitializers), bindToIntersectionObserver(this.#getScrollContainer, this.#getUpperThresholdObserverDom, this.#handleObserver));
|
|
88
|
+
_handleScrollLowerThresholdEventEnabled = __runInitializers(this, __handleScrollLowerThresholdEventEnabled_initializers, (enabled) => {
|
|
89
89
|
enabled
|
|
90
90
|
? this.#dom.setAttribute('x-enable-scrolltolower-event', '')
|
|
91
91
|
: this.#dom.removeAttribute('x-enable-scrolltolower-event'); // css needs this;
|
|
92
92
|
this.#updateLowerIntersectionObserver(enabled);
|
|
93
93
|
});
|
|
94
|
-
#updateLowerIntersectionObserver = (__runInitializers(this,
|
|
95
|
-
|
|
96
|
-
|
|
94
|
+
#updateLowerIntersectionObserver = (__runInitializers(this, __handleScrollLowerThresholdEventEnabled_extraInitializers), bindToIntersectionObserver(this.#getScrollContainer, this.#getLowerThresholdObserverDom, this.#handleObserver));
|
|
95
|
+
_updateUpperThreshold = __runInitializers(this, __updateUpperThreshold_initializers, bindToStyle(this.#getUpperThresholdObserverDom, 'flex-basis', (v) => `${parseInt(v)}px`));
|
|
96
|
+
_updateLowerThreshold = (__runInitializers(this, __updateUpperThreshold_extraInitializers), __runInitializers(this, __updateLowerThreshold_initializers, bindToStyle(this.#getLowerThresholdObserverDom, 'flex-basis', (v) => `${parseInt(v)}px`)));
|
|
97
97
|
#getScrollDetail() {
|
|
98
98
|
let { scrollTop, scrollLeft, scrollHeight, scrollWidth } = this
|
|
99
99
|
.#getScrollContainer();
|
|
@@ -116,7 +116,7 @@ let ScrollViewEvents = (() => {
|
|
|
116
116
|
this.#prevY = scrollTop;
|
|
117
117
|
return detail;
|
|
118
118
|
}
|
|
119
|
-
#handleScroll = (__runInitializers(this,
|
|
119
|
+
#handleScroll = (__runInitializers(this, __updateLowerThreshold_extraInitializers), () => {
|
|
120
120
|
if (this.#scrollEndEventEnabled && !useScrollEnd) {
|
|
121
121
|
// debounce
|
|
122
122
|
clearTimeout(this.#debounceScrollForMockingScrollEnd);
|
|
@@ -136,12 +136,12 @@ let ScrollViewEvents = (() => {
|
|
|
136
136
|
}));
|
|
137
137
|
};
|
|
138
138
|
#scrollEventEnabled = false;
|
|
139
|
-
|
|
139
|
+
_handleScrollEventEnabled = __runInitializers(this, __handleScrollEventEnabled_initializers, (enabled) => {
|
|
140
140
|
this.#scrollEventEnabled = enabled;
|
|
141
141
|
this.#handleScrollEventsSwitches();
|
|
142
142
|
});
|
|
143
|
-
#scrollEndEventEnabled = (__runInitializers(this,
|
|
144
|
-
|
|
143
|
+
#scrollEndEventEnabled = (__runInitializers(this, __handleScrollEventEnabled_extraInitializers), false);
|
|
144
|
+
_handleScrollEndEventEnabled = __runInitializers(this, __handleScrollEndEventEnabled_initializers, (enabled) => {
|
|
145
145
|
this.#scrollEndEventEnabled = enabled;
|
|
146
146
|
this.#handleScrollEventsSwitches();
|
|
147
147
|
});
|
|
@@ -3,5 +3,8 @@ import type { XAudioTT } from './XAudioTT.js';
|
|
|
3
3
|
export declare class XAudioAttribute implements InstanceType<AttributeReactiveClass<typeof HTMLElement>> {
|
|
4
4
|
#private;
|
|
5
5
|
static observedAttributes: string[];
|
|
6
|
+
_handleSrc(newValue: string | null): void;
|
|
7
|
+
_handleLoop: (this: void, newVal: string | null) => void;
|
|
8
|
+
_handlePauseOnHide(newValue: string | null): void;
|
|
6
9
|
constructor(dom: XAudioTT);
|
|
7
10
|
}
|
|
@@ -3,69 +3,26 @@
|
|
|
3
3
|
// Licensed under the Apache License Version 2.0 that can be found in the
|
|
4
4
|
// LICENSE file in the root directory of this source tree.
|
|
5
5
|
*/
|
|
6
|
-
import { __esDecorate, __runInitializers
|
|
6
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
7
7
|
import { bindToAttribute, genDomGetter, registerAttributeHandler, } from '@lynx-js/web-elements-reactive';
|
|
8
8
|
import { XAudioErrorCode, xAudioBlob, xAudioSrc } from './utils.js';
|
|
9
9
|
import { commonComponentEventSetting } from '../common/commonEventInitConfiguration.js';
|
|
10
10
|
let XAudioAttribute = (() => {
|
|
11
11
|
let _instanceExtraInitializers = [];
|
|
12
|
-
let
|
|
13
|
-
let
|
|
14
|
-
let
|
|
15
|
-
let
|
|
16
|
-
let
|
|
17
|
-
let _private_handlePauseOnHide_decorators;
|
|
18
|
-
let _private_handlePauseOnHide_descriptor;
|
|
12
|
+
let __handleSrc_decorators;
|
|
13
|
+
let __handleLoop_decorators;
|
|
14
|
+
let __handleLoop_initializers = [];
|
|
15
|
+
let __handleLoop_extraInitializers = [];
|
|
16
|
+
let __handlePauseOnHide_decorators;
|
|
19
17
|
return class XAudioAttribute {
|
|
20
18
|
static {
|
|
21
19
|
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
__esDecorate(this,
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
parsedSrc = JSON.parse(newValue || '') || {};
|
|
29
|
-
}
|
|
30
|
-
catch (error) {
|
|
31
|
-
console.error(`JSON.parse src error: ${error}`);
|
|
32
|
-
parsedSrc = {};
|
|
33
|
-
}
|
|
34
|
-
if (newValue === null) {
|
|
35
|
-
this.#dom.dispatchEvent(new CustomEvent('error', {
|
|
36
|
-
...commonComponentEventSetting,
|
|
37
|
-
detail: {
|
|
38
|
-
code: XAudioErrorCode.SrcError,
|
|
39
|
-
msg: '',
|
|
40
|
-
from: 'res loader',
|
|
41
|
-
currentSrcID: this.#dom[xAudioSrc]?.id,
|
|
42
|
-
},
|
|
43
|
-
}));
|
|
44
|
-
}
|
|
45
|
-
else if (parsedSrc?.id === undefined || parsedSrc?.play_url === undefined) {
|
|
46
|
-
this.#dom.dispatchEvent(new CustomEvent('error', {
|
|
47
|
-
...commonComponentEventSetting,
|
|
48
|
-
detail: {
|
|
49
|
-
code: XAudioErrorCode.SrcJsonError,
|
|
50
|
-
msg: '',
|
|
51
|
-
from: 'res loader',
|
|
52
|
-
currentSrcID: this.#dom[xAudioSrc]?.id,
|
|
53
|
-
},
|
|
54
|
-
}));
|
|
55
|
-
}
|
|
56
|
-
this.#dom[xAudioSrc] = parsedSrc;
|
|
57
|
-
this.#dom[xAudioBlob] = undefined;
|
|
58
|
-
this.#dom.stop();
|
|
59
|
-
}, "#handleSrc") }, _private_handleSrc_decorators, { kind: "method", name: "#handleSrc", static: false, private: true, access: { has: obj => #handleSrc in obj, get: obj => obj.#handleSrc }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
60
|
-
__esDecorate(this, _private_handlePauseOnHide_descriptor = { value: __setFunctionName(function (newValue) {
|
|
61
|
-
if (newValue !== null) {
|
|
62
|
-
document.addEventListener('visibilitychange', this.#documentVisibilitychange, { passive: true });
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
document.removeEventListener('visibilitychange', this.#documentVisibilitychange);
|
|
66
|
-
}
|
|
67
|
-
}, "#handlePauseOnHide") }, _private_handlePauseOnHide_decorators, { kind: "method", name: "#handlePauseOnHide", static: false, private: true, access: { has: obj => #handlePauseOnHide in obj, get: obj => obj.#handlePauseOnHide }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
68
|
-
__esDecorate(null, null, _private_handleLoop_decorators, { kind: "field", name: "#handleLoop", static: false, private: true, access: { has: obj => #handleLoop in obj, get: obj => obj.#handleLoop, set: (obj, value) => { obj.#handleLoop = value; } }, metadata: _metadata }, _private_handleLoop_initializers, _private_handleLoop_extraInitializers);
|
|
20
|
+
__handleSrc_decorators = [registerAttributeHandler('src', true)];
|
|
21
|
+
__handleLoop_decorators = [registerAttributeHandler('loop', true)];
|
|
22
|
+
__handlePauseOnHide_decorators = [registerAttributeHandler('pause-on-hide', true)];
|
|
23
|
+
__esDecorate(this, null, __handleSrc_decorators, { kind: "method", name: "_handleSrc", static: false, private: false, access: { has: obj => "_handleSrc" in obj, get: obj => obj._handleSrc }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
24
|
+
__esDecorate(this, null, __handlePauseOnHide_decorators, { kind: "method", name: "_handlePauseOnHide", static: false, private: false, access: { has: obj => "_handlePauseOnHide" in obj, get: obj => obj._handlePauseOnHide }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
25
|
+
__esDecorate(null, null, __handleLoop_decorators, { kind: "field", name: "_handleLoop", static: false, private: false, access: { has: obj => "_handleLoop" in obj, get: obj => obj._handleLoop, set: (obj, value) => { obj._handleLoop = value; } }, metadata: _metadata }, __handleLoop_initializers, __handleLoop_extraInitializers);
|
|
69
26
|
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
70
27
|
}
|
|
71
28
|
static observedAttributes = [
|
|
@@ -75,15 +32,55 @@ let XAudioAttribute = (() => {
|
|
|
75
32
|
];
|
|
76
33
|
#dom = __runInitializers(this, _instanceExtraInitializers);
|
|
77
34
|
#getAudioElement = genDomGetter(() => this.#dom.shadowRoot, '#audio');
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
35
|
+
_handleSrc(newValue) {
|
|
36
|
+
let parsedSrc;
|
|
37
|
+
try {
|
|
38
|
+
parsedSrc = JSON.parse(newValue || '') || {};
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
console.error(`JSON.parse src error: ${error}`);
|
|
42
|
+
parsedSrc = {};
|
|
43
|
+
}
|
|
44
|
+
if (newValue === null) {
|
|
45
|
+
this.#dom.dispatchEvent(new CustomEvent('error', {
|
|
46
|
+
...commonComponentEventSetting,
|
|
47
|
+
detail: {
|
|
48
|
+
code: XAudioErrorCode.SrcError,
|
|
49
|
+
msg: '',
|
|
50
|
+
from: 'res loader',
|
|
51
|
+
currentSrcID: this.#dom[xAudioSrc]?.id,
|
|
52
|
+
},
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
else if (parsedSrc?.id === undefined || parsedSrc?.play_url === undefined) {
|
|
56
|
+
this.#dom.dispatchEvent(new CustomEvent('error', {
|
|
57
|
+
...commonComponentEventSetting,
|
|
58
|
+
detail: {
|
|
59
|
+
code: XAudioErrorCode.SrcJsonError,
|
|
60
|
+
msg: '',
|
|
61
|
+
from: 'res loader',
|
|
62
|
+
currentSrcID: this.#dom[xAudioSrc]?.id,
|
|
63
|
+
},
|
|
64
|
+
}));
|
|
65
|
+
}
|
|
66
|
+
this.#dom[xAudioSrc] = parsedSrc;
|
|
67
|
+
this.#dom[xAudioBlob] = undefined;
|
|
68
|
+
this.#dom.stop();
|
|
69
|
+
}
|
|
70
|
+
_handleLoop = __runInitializers(this, __handleLoop_initializers, bindToAttribute(this.#getAudioElement, 'loop'));
|
|
71
|
+
#documentVisibilitychange = (__runInitializers(this, __handleLoop_extraInitializers), () => {
|
|
82
72
|
if (document.visibilityState === 'hidden') {
|
|
83
73
|
this.#dom.pause();
|
|
84
74
|
}
|
|
85
75
|
});
|
|
86
|
-
|
|
76
|
+
_handlePauseOnHide(newValue) {
|
|
77
|
+
if (newValue !== null) {
|
|
78
|
+
document.addEventListener('visibilitychange', this.#documentVisibilitychange, { passive: true });
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
document.removeEventListener('visibilitychange', this.#documentVisibilitychange);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
87
84
|
constructor(dom) {
|
|
88
85
|
this.#dom = dom;
|
|
89
86
|
}
|