Skip to content

Commit 005ee9a

Browse files
committed
Merge branch 'release/1.1.0'
2 parents 6d3a899 + 8ab6bd1 commit 005ee9a

File tree

208 files changed

+2709
-11284
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

208 files changed

+2709
-11284
lines changed

.gitignore

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,7 @@ yarn-error.log*
2222
*.sublime-*
2323

2424
# Build files
25-
dist/*.html
26-
dist/package.json
27-
dist/LICENSE
28-
dist/README.md
25+
dist/
2926
demo/dist/
3027
docs/.vuepress/dist/
3128
coverage/

Slider.rfc.md

Lines changed: 0 additions & 18 deletions
This file was deleted.

demo/src/index.html

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@
7575
role="dialog"
7676
aria-modal="true"
7777
aria-hidden="true"
78-
style="opacity: 0; pointer-events: none; visibility: hidden;"
78+
style="opacity: 0; pointer-events: none; visibility: hidden"
7979
class="z-goku fixed inset-0"
8080
>
8181
<!--
@@ -268,7 +268,6 @@ <h2 id="components-tabs" class="text-lg mb-4">Tabs</h2>
268268
<div data-ref="content[]" aria-hidden="true">
269269
<img
270270
data-src="https://placekitten.com/299/299"
271-
data-option-debug
272271
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
273272
width="300"
274273
height="300"
@@ -407,18 +406,16 @@ <h2 id="components-tabs" class="text-lg mb-4">Tabs</h2>
407406

408407
<hr class="my-10" />
409408

410-
<div class="absolute left-0 right-0 bottom-0 p-10 bg-gray-200">
411-
Bottom
412-
</div>
409+
<div class="absolute left-0 right-0 bottom-0 p-10 bg-gray-200">Bottom</div>
413410
</main>
414411
<!-- BEGIN Cursor component -->
415412
<div
416413
data-component="Cursor"
417-
class="z-goku fixed top-0 left-0 w-2 h-2 -mt-1 -ml-1 bg-black rounded-full pointer-events-none transform transition duration-200 ease-out-expo"
414+
class="z-goku fixed top-0 left-0 flex items-center justify-center w-8 h-8 -mt-4 -ml-4 rounded-full border pointer-events-none"
418415
>
419416
<div
420417
data-ref="inner"
421-
class="absolute top-0 left-0 w-8 h-8 -mt-3 -ml-3 rounded-full border transition duration-300 ease-out-expo"
418+
class="w-2 h-2 rounded-full bg-black"
422419
></div>
423420
</div>
424421
<!-- END Cursor component -->

demo/src/js/app.js

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1+
/* eslint-disable max-classes-per-file */
12
import Base from '../../../src';
2-
import { Modal, Tabs, Accordion } from '../../../src/components';
3+
import { Modal, Tabs, Accordion, Cursor } from '../../../src/components';
4+
import { matrix } from '../../../src/utils/css';
35
import withBreakpointObserver from '../../../src/decorators/withBreakpointObserver';
46
import BreakpointManagerDemo from './components/BreakPointManagerDemo';
57
import BreakpointObserverDemo from './components/BreakpointObserverDemo';
@@ -13,12 +15,24 @@ class App extends Base {
1315
name: 'App',
1416
refs: ['modal'],
1517
log: true,
16-
foo: 'dede',
1718
components: {
1819
Accordion,
1920
BreakpointManagerDemo,
2021
BreakpointObserverDemo,
21-
Cursor: () => import(/* webpackChunkName: "Cursor" */ './components/Cursor'),
22+
Cursor: class extends Cursor {
23+
static config = {
24+
...Cursor.config,
25+
refs: ['inner'],
26+
};
27+
28+
render({ x, y, scale }) {
29+
this.$el.style.transform = `translateZ(0) ${matrix({ translateX: x, translateY: y })}`;
30+
this.$refs.inner.style.transform = `translateZ(0) ${matrix({
31+
scaleX: scale,
32+
scaleY: scale,
33+
})}`;
34+
}
35+
},
2236
Skew: () => import(/* webpackChunkName: "Skew" */ './components/Skew'),
2337
'[data-src]': () => import(/* webpackChunkName: "Lazyload" */ './components/Lazyload'),
2438
Modal: withBreakpointObserver(Modal),

demo/src/js/components/Skew.js

Lines changed: 35 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,47 @@
11
import Base from '../../../../src';
2-
import { withIntersectionObserver } from '../../../../src/decorators';
2+
import { matrix } from '../../../../src/utils/css';
3+
import { damp } from '../../../../src/utils/math';
4+
import { withMountWhenInView } from '../../../../src/decorators';
35

4-
export default class Skew extends withIntersectionObserver(Base) {
6+
function clamp(value, min, max) {
7+
/* eslint-disable no-nested-ternary */
8+
return min < max
9+
? value < min
10+
? min
11+
: value > max
12+
? max
13+
: value
14+
: value < max
15+
? max
16+
: value > min
17+
? min
18+
: value;
19+
/* eslint-enable no-nested-ternary */
20+
}
21+
22+
export default class Skew extends withMountWhenInView(Base) {
523
static config = {
624
name: 'Skew',
725
};
826

9-
mounted() {
10-
this.isVisible = false;
11-
}
27+
skewY = 0;
1228

13-
intersected([entry]) {
14-
this.isVisible = entry.intersectionRatio > 0;
15-
}
29+
dampedSkewY = 0;
1630

17-
scrolled({ delta }) {
18-
if (!this.isVisible) {
19-
return;
31+
scrolled({ delta, changed }) {
32+
if (changed.y && !this.$services.has('ticked')) {
33+
this.$services.enable('ticked');
2034
}
2135

22-
const skewY = delta.y * -0.05;
23-
this.$el.style.transform = `skewY(${skewY}deg)`;
36+
this.skewY = clamp(delta.y * -0.005, -0.1, 0.1);
37+
}
38+
39+
ticked() {
40+
this.dampedSkewY = damp(this.skewY, this.dampedSkewY, 0.1);
41+
this.$el.style.transform = matrix({ skewY: this.dampedSkewY });
42+
43+
if (Math.abs(this.dampedSkewY - this.skewY) < 0.01) {
44+
this.$services.disable('ticked');
45+
}
2446
}
2547
}

dist/abstracts/Base/children.d.ts

Lines changed: 0 additions & 31 deletions
This file was deleted.

dist/abstracts/Base/children.js

Lines changed: 0 additions & 74 deletions
This file was deleted.

dist/abstracts/Base/children.js.map

Lines changed: 0 additions & 1 deletion
This file was deleted.

dist/abstracts/Base/classes/Options.d.ts

Lines changed: 0 additions & 42 deletions
This file was deleted.

0 commit comments

Comments
 (0)