uikit 3.12.3-dev.8ce29ae1a → 3.12.3-dev.8e3f8e19e

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/dist/css/uikit-core-rtl.css +1 -1
  3. package/dist/css/uikit-core-rtl.min.css +1 -1
  4. package/dist/css/uikit-core.css +1 -1
  5. package/dist/css/uikit-core.min.css +1 -1
  6. package/dist/css/uikit-rtl.css +1 -1
  7. package/dist/css/uikit-rtl.min.css +1 -1
  8. package/dist/css/uikit.css +1 -1
  9. package/dist/css/uikit.min.css +1 -1
  10. package/dist/js/components/countdown.js +1 -1
  11. package/dist/js/components/countdown.min.js +1 -1
  12. package/dist/js/components/filter.js +1 -1
  13. package/dist/js/components/filter.min.js +1 -1
  14. package/dist/js/components/lightbox-panel.js +1 -1
  15. package/dist/js/components/lightbox-panel.min.js +1 -1
  16. package/dist/js/components/lightbox.js +1 -1
  17. package/dist/js/components/lightbox.min.js +1 -1
  18. package/dist/js/components/notification.js +1 -1
  19. package/dist/js/components/notification.min.js +1 -1
  20. package/dist/js/components/parallax.js +33 -2
  21. package/dist/js/components/parallax.min.js +1 -1
  22. package/dist/js/components/slider-parallax.js +1 -1
  23. package/dist/js/components/slider-parallax.min.js +1 -1
  24. package/dist/js/components/slider.js +1 -1
  25. package/dist/js/components/slider.min.js +1 -1
  26. package/dist/js/components/slideshow-parallax.js +1 -1
  27. package/dist/js/components/slideshow-parallax.min.js +1 -1
  28. package/dist/js/components/slideshow.js +1 -1
  29. package/dist/js/components/slideshow.min.js +1 -1
  30. package/dist/js/components/sortable.js +1 -1
  31. package/dist/js/components/sortable.min.js +1 -1
  32. package/dist/js/components/tooltip.js +1 -1
  33. package/dist/js/components/tooltip.min.js +1 -1
  34. package/dist/js/components/upload.js +1 -1
  35. package/dist/js/components/upload.min.js +1 -1
  36. package/dist/js/uikit-core.js +39 -38
  37. package/dist/js/uikit-core.min.js +1 -1
  38. package/dist/js/uikit-icons.js +1 -1
  39. package/dist/js/uikit-icons.min.js +1 -1
  40. package/dist/js/uikit.js +40 -39
  41. package/dist/js/uikit.min.js +1 -1
  42. package/package.json +1 -1
  43. package/src/js/api/state.js +0 -35
  44. package/src/js/components/parallax.js +2 -1
  45. package/src/js/core/grid.js +2 -1
  46. package/src/js/core/scrollspy-nav.js +3 -0
  47. package/src/js/core/scrollspy.js +3 -0
  48. package/src/js/core/sticky.js +2 -1
  49. package/src/js/mixin/scroll.js +32 -0
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "uikit",
3
3
  "title": "UIkit",
4
4
  "description": "UIkit is a lightweight and modular front-end framework for developing fast and powerful web interfaces.",
5
- "version": "3.12.3-dev.8ce29ae1a",
5
+ "version": "3.12.3-dev.8e3f8e19e",
6
6
  "main": "dist/js/uikit.js",
7
7
  "style": "dist/css/uikit.css",
8
8
  "sideEffects": [
@@ -4,7 +4,6 @@ import {
4
4
  data as getData,
5
5
  hasOwn,
6
6
  hyphenate,
7
- includes,
8
7
  isArray,
9
8
  isFunction,
10
9
  isNumeric,
@@ -101,16 +100,11 @@ export default function (UIkit) {
101
100
  }
102
101
  }
103
102
  }
104
-
105
- if (hasUpdateOfType(this.$options.update, 'scroll')) {
106
- registerScrollListener(this._uid, () => this.$emit('scroll'));
107
- }
108
103
  };
109
104
 
110
105
  UIkit.prototype._unbindEvents = function () {
111
106
  this._events.forEach((unbind) => unbind());
112
107
  delete this._events;
113
- unregisterScrollListener(this._uid);
114
108
  };
115
109
 
116
110
  UIkit.prototype._initObservers = function () {
@@ -314,32 +308,3 @@ function initPropsObserver(component) {
314
308
 
315
309
  return observer;
316
310
  }
317
-
318
- function hasUpdateOfType(updates = [], type) {
319
- for (const { events = [] } of updates) {
320
- if (includes(events, type)) {
321
- return true;
322
- }
323
- }
324
- }
325
-
326
- const scrollListeners = new Map();
327
- let unbindScrollListener;
328
- function registerScrollListener(id, listener) {
329
- unbindScrollListener =
330
- unbindScrollListener ||
331
- on(window, 'scroll', () => scrollListeners.forEach((listener) => listener()), {
332
- passive: true,
333
- capture: true,
334
- });
335
-
336
- scrollListeners.set(id, listener);
337
- }
338
-
339
- function unregisterScrollListener(id) {
340
- scrollListeners.delete(id);
341
- if (unbindScrollListener && !scrollListeners.size) {
342
- unbindScrollListener();
343
- unbindScrollListener = null;
344
- }
345
- }
@@ -1,9 +1,10 @@
1
1
  import Resize from '../mixin/resize';
2
+ import Scroll from '../mixin/scroll';
2
3
  import Parallax from '../mixin/parallax';
3
4
  import { css, parent, query, scrolledOver, toPx } from 'uikit-util';
4
5
 
5
6
  export default {
6
- mixins: [Parallax, Resize],
7
+ mixins: [Parallax, Resize, Scroll],
7
8
 
8
9
  props: {
9
10
  target: String,
@@ -1,5 +1,6 @@
1
1
  import Margin from './margin';
2
2
  import Class from '../mixin/class';
3
+ import Scroll from '../mixin/scroll';
3
4
  import {
4
5
  addClass,
5
6
  children,
@@ -14,7 +15,7 @@ import {
14
15
  export default {
15
16
  extends: Margin,
16
17
 
17
- mixins: [Class],
18
+ mixins: [Class, Scroll],
18
19
 
19
20
  name: 'grid',
20
21
 
@@ -1,3 +1,4 @@
1
+ import Scroll from '../mixin/scroll';
1
2
  import {
2
3
  $$,
3
4
  closest,
@@ -13,6 +14,8 @@ import {
13
14
  import { getTargetElement } from './scroll';
14
15
 
15
16
  export default {
17
+ mixins: [Scroll],
18
+
16
19
  props: {
17
20
  cls: String,
18
21
  closest: String,
@@ -1,3 +1,4 @@
1
+ import Scroll from '../mixin/scroll';
1
2
  import {
2
3
  $$,
3
4
  css,
@@ -13,6 +14,8 @@ import {
13
14
 
14
15
  const stateKey = '_ukScrollspy';
15
16
  export default {
17
+ mixins: [Scroll],
18
+
16
19
  args: 'cls',
17
20
 
18
21
  props: {
@@ -1,6 +1,7 @@
1
1
  import Class from '../mixin/class';
2
2
  import Media from '../mixin/media';
3
3
  import Resize from '../mixin/resize';
4
+ import Scroll from '../mixin/scroll';
4
5
  import {
5
6
  $,
6
7
  addClass,
@@ -33,7 +34,7 @@ import {
33
34
  } from 'uikit-util';
34
35
 
35
36
  export default {
36
- mixins: [Class, Media, Resize],
37
+ mixins: [Class, Media, Resize, Scroll],
37
38
 
38
39
  props: {
39
40
  position: String,
@@ -0,0 +1,32 @@
1
+ import { on } from 'uikit-util';
2
+
3
+ export default {
4
+ connected() {
5
+ registerScrollListener(this._uid, () => this.$emit('scroll'));
6
+ },
7
+
8
+ disconnected() {
9
+ unregisterScrollListener(this._uid);
10
+ },
11
+ };
12
+
13
+ const scrollListeners = new Map();
14
+ let unbindScrollListener;
15
+ function registerScrollListener(id, listener) {
16
+ unbindScrollListener =
17
+ unbindScrollListener ||
18
+ on(window, 'scroll', () => scrollListeners.forEach((listener) => listener()), {
19
+ passive: true,
20
+ capture: true,
21
+ });
22
+
23
+ scrollListeners.set(id, listener);
24
+ }
25
+
26
+ function unregisterScrollListener(id) {
27
+ scrollListeners.delete(id);
28
+ if (unbindScrollListener && !scrollListeners.size) {
29
+ unbindScrollListener();
30
+ unbindScrollListener = null;
31
+ }
32
+ }