uikit 3.9.5-dev.e48c5e252 → 3.10.1-dev.6b26facf9

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 (103) hide show
  1. package/CHANGELOG.md +24 -8
  2. package/CONTRIBUTING.md +1 -1
  3. package/README.md +4 -2
  4. package/build/.eslintrc.json +10 -1
  5. package/build/build.js +5 -5
  6. package/build/less.js +29 -11
  7. package/build/publishDev.js +2 -1
  8. package/build/scss.js +1 -1
  9. package/build/util.js +1 -20
  10. package/dist/css/uikit-core-rtl.css +24 -13
  11. package/dist/css/uikit-core-rtl.min.css +1 -1
  12. package/dist/css/uikit-core.css +21 -10
  13. package/dist/css/uikit-core.min.css +1 -1
  14. package/dist/css/uikit-rtl.css +24 -13
  15. package/dist/css/uikit-rtl.min.css +1 -1
  16. package/dist/css/uikit.css +21 -10
  17. package/dist/css/uikit.min.css +1 -1
  18. package/dist/js/components/countdown.js +1 -1
  19. package/dist/js/components/countdown.min.js +1 -1
  20. package/dist/js/components/filter.js +5 -5
  21. package/dist/js/components/filter.min.js +1 -1
  22. package/dist/js/components/lightbox-panel.js +2 -2
  23. package/dist/js/components/lightbox-panel.min.js +1 -1
  24. package/dist/js/components/lightbox.js +2 -2
  25. package/dist/js/components/lightbox.min.js +1 -1
  26. package/dist/js/components/notification.js +1 -1
  27. package/dist/js/components/notification.min.js +1 -1
  28. package/dist/js/components/parallax.js +2 -2
  29. package/dist/js/components/parallax.min.js +1 -1
  30. package/dist/js/components/slider-parallax.js +2 -2
  31. package/dist/js/components/slider-parallax.min.js +1 -1
  32. package/dist/js/components/slider.js +2 -2
  33. package/dist/js/components/slider.min.js +1 -1
  34. package/dist/js/components/slideshow-parallax.js +2 -2
  35. package/dist/js/components/slideshow-parallax.min.js +1 -1
  36. package/dist/js/components/slideshow.js +6 -2
  37. package/dist/js/components/slideshow.min.js +1 -1
  38. package/dist/js/components/sortable.js +6 -6
  39. package/dist/js/components/sortable.min.js +1 -1
  40. package/dist/js/components/tooltip.js +3 -2
  41. package/dist/js/components/tooltip.min.js +1 -1
  42. package/dist/js/components/upload.js +1 -1
  43. package/dist/js/components/upload.min.js +1 -1
  44. package/dist/js/uikit-core.js +72 -80
  45. package/dist/js/uikit-core.min.js +1 -1
  46. package/dist/js/uikit-icons.js +1 -1
  47. package/dist/js/uikit-icons.min.js +1 -1
  48. package/dist/js/uikit.js +85 -88
  49. package/dist/js/uikit.min.js +1 -1
  50. package/package.json +9 -11
  51. package/src/js/api/component.js +3 -3
  52. package/src/js/api/state.js +3 -3
  53. package/src/js/components/slideshow.js +4 -0
  54. package/src/js/components/sortable.js +1 -1
  55. package/src/js/components/tooltip.js +2 -1
  56. package/src/js/core/cover.js +1 -2
  57. package/src/js/core/img.js +40 -57
  58. package/src/js/core/sticky.js +1 -1
  59. package/src/js/core/toggle.js +4 -3
  60. package/src/js/mixin/animate.js +4 -4
  61. package/src/js/mixin/internal/slideshow-animations.js +1 -1
  62. package/src/js/mixin/parallax.js +1 -1
  63. package/src/js/util/dom.js +5 -8
  64. package/src/js/util/selector.js +4 -2
  65. package/src/js/util/viewport.js +3 -3
  66. package/src/less/components/cover.less +5 -4
  67. package/src/less/components/divider.less +1 -1
  68. package/src/less/components/list.less +1 -1
  69. package/src/less/components/search.less +9 -6
  70. package/src/less/components/utility.less +5 -3
  71. package/src/less/components/width.less +7 -0
  72. package/src/scss/components/cover.scss +5 -4
  73. package/src/scss/components/divider.scss +1 -1
  74. package/src/scss/components/list.scss +1 -1
  75. package/src/scss/components/search.scss +9 -6
  76. package/src/scss/components/utility.scss +5 -3
  77. package/src/scss/components/width.scss +7 -0
  78. package/src/scss/variables-theme.scss +4 -0
  79. package/src/scss/variables.scss +4 -0
  80. package/tests/base.html +12 -12
  81. package/tests/button.html +1 -1
  82. package/tests/cover.html +5 -5
  83. package/tests/drop.html +2 -2
  84. package/tests/dropdown.html +1 -1
  85. package/tests/flex.html +1 -1
  86. package/tests/grid-masonry.html +1 -1
  87. package/tests/grid-parallax.html +1 -1
  88. package/tests/grid.html +1 -1
  89. package/tests/height.html +2 -2
  90. package/tests/margin.html +1 -1
  91. package/tests/modal.html +2 -2
  92. package/tests/navbar.html +2 -2
  93. package/tests/padding.html +1 -1
  94. package/tests/parallax.html +1 -1
  95. package/tests/search.html +1 -1
  96. package/tests/slider.html +1 -1
  97. package/tests/slideshow.html +2 -2
  98. package/tests/sticky.html +2 -2
  99. package/tests/switcher.html +1 -1
  100. package/tests/tab.html +1 -1
  101. package/tests/utility.html +1 -1
  102. package/tests/video.html +3 -3
  103. package/tests/width.html +1 -1
package/CHANGELOG.md CHANGED
@@ -2,10 +2,22 @@
2
2
 
3
3
  ## WIP
4
4
 
5
+ ### Fixed
6
+
7
+ - Fix vertical divider width in Divider component
8
+ - Fix usage of `data-` prefix for Cover and Responsive component
9
+ - Fix pointer events for iframes in Cover component
10
+ - Fix Slideshow component no longer throws if items list does not exist
11
+ - Fix space key no longer triggers Toggle on <input> elements
12
+
13
+ ## 3.10.0 (January 12, 2022)
14
+
5
15
  ### Added
6
16
 
7
- - Add support for <picture> element in Img component
17
+ - Add intrinsic widths to Width component
8
18
  - Add 'aria-haspopup' attribute to Drop component's toggle
19
+ - Add padding variable to search icon in Search component
20
+ - Add position bottom variable to box-shadow bottom in Utility component
9
21
 
10
22
  ### Changed
11
23
 
@@ -15,6 +27,10 @@
15
27
 
16
28
  - Fix initial iframe width for `uk-responsive` which caused an expanded viewport on iOS devices
17
29
  - Fix link toggle style if not hovered
30
+ - Fix compiling Slideshow css in rtl mode
31
+ - Fix Sortable component no longer scrolls `overflow: hidden` containers
32
+ - Fix 'yarn watch' not watching changes in less files
33
+ - Fix `domPath()` for elements within forms that include inputs with name 'id'
18
34
 
19
35
  ## 3.9.4 (November 25, 2021)
20
36
 
@@ -32,7 +48,7 @@
32
48
 
33
49
  ### Fixed
34
50
 
35
- - Fix build scripts for windows users
51
+ - Fix build scripts for Windows users
36
52
  - Fix css in Leader component
37
53
  - Fix division deprecation warnings in Sass source
38
54
 
@@ -57,7 +73,7 @@
57
73
  ### Changed
58
74
 
59
75
  - Make padding large a little bigger on small devices
60
- - Change logo color to emphasis
76
+ - Change logo color to 'emphasis'
61
77
 
62
78
  ### Fixed
63
79
 
@@ -432,7 +448,7 @@
432
448
 
433
449
  ### Changed
434
450
 
435
- - Sorting starts after traversing half the items height/width in Sortable component
451
+ - Sorting starts after traversing half the item's height/width in Sortable component
436
452
 
437
453
  ## 3.5.12 (December 7, 2020)
438
454
 
@@ -501,7 +517,7 @@
501
517
 
502
518
  ### Changed
503
519
 
504
- - Sticky component uses window.Date instead of window.performance
520
+ - Sticky component uses 'window.Date' instead of 'window.performance'
505
521
  - Sticky component with sticky-on-up no longer hides when Dropdown shows
506
522
 
507
523
  ### Fixed
@@ -788,7 +804,7 @@
788
804
 
789
805
  ### Added
790
806
 
791
- - Parallax, Scroll, Scrollspy Nav components work inside of scrollable container
807
+ - Parallax, Scroll, Scrollspy Nav components work inside scrollable container
792
808
  - Expose `scrollIntoView` utility function
793
809
 
794
810
  ### Fixed
@@ -1536,7 +1552,7 @@
1536
1552
 
1537
1553
  ### Added
1538
1554
 
1539
- - Add support to center elements outside of a container to Position component
1555
+ - Add support to center elements outside a container to Position component
1540
1556
 
1541
1557
  ### Changed
1542
1558
 
@@ -1943,7 +1959,7 @@
1943
1959
 
1944
1960
  ### Changed
1945
1961
 
1946
- - IMPORTANT: Offcanvas requires to wrap page in extra div
1962
+ - IMPORTANT: Offcanvas requires wrapping page in extra div
1947
1963
  - Refactored Offcanvas component
1948
1964
  - Update Instagram, Tumblr and Vimeo icons
1949
1965
  - Component Constructor initializes multiple components at once
package/CONTRIBUTING.md CHANGED
@@ -83,7 +83,7 @@ UIkit adapts the [Vue's commit convention](https://github.com/vuejs/vue/blob/dev
83
83
  - `fix:` A bug fix
84
84
  - `perf:` A code change that improves performance
85
85
  - `refactor:` A code change that neither fixes a bug nor adds a feature
86
- - `style:` Changes that do not affect the meaning of the code (white-space, formatting, etc)
86
+ - `style:` Changes that do not affect the meaning of the code (white-space, formatting, etc.)
87
87
  - `test:` Adding missing tests or correcting existing tests
88
88
 
89
89
  ## Versioning
package/README.md CHANGED
@@ -3,6 +3,8 @@
3
3
  # UIkit
4
4
 
5
5
  [![Discord](https://img.shields.io/badge/chat-on%20discord-7289da.svg)](https://discord.gg/NEt4Pv7)
6
+ [![Build](https://circleci.com/gh/uikit/uikit.svg?style=shield)](https://circleci.com/gh/uikit/uikit)
7
+ [![jsdelivr](https://data.jsdelivr.com/v1/package/npm/uikit/badge?style=rounded)](https://www.jsdelivr.com/package/npm/uikit)
6
8
 
7
9
  UIkit is a lightweight and modular front-end framework for developing fast and powerful web interfaces.
8
10
 
@@ -51,8 +53,8 @@ UIkit is maintained by using the [Semantic Versioning Specification (SemVer)](ht
51
53
  ## Browser Support
52
54
 
53
55
  | ![Firefox](https://raw.github.com/alrra/browser-logos/main/src/firefox/firefox_48x48.png) | ![Safari](https://raw.github.com/alrra/browser-logos/main/src/safari/safari_48x48.png) | ![Chrome](https://raw.github.com/alrra/browser-logos/main/src/chrome/chrome_48x48.png) | ![Edge](https://raw.github.com/alrra/browser-logos/main/src/edge/edge_48x48.png) | ![Opera](https://raw.github.com/alrra/browser-logos/main/src/opera/opera_48x48.png) |
54
- | -------- | -------- | -------- | -------- | -------- |
55
- | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ |
56
+ |-------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------|----------------------------------------------------------------------------------|-------------------------------------------------------------------------------------|
57
+ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ |
56
58
 
57
59
  Tested With<br>[![BrowserStack](https://user-images.githubusercontent.com/355427/27389060-9f716c82-569d-11e7-923c-bd5fe7f1c55a.png)](https://www.browserstack.com)
58
60
 
@@ -11,5 +11,14 @@
11
11
  ],
12
12
  "parserOptions": {
13
13
  "ecmaVersion": 2022
14
- }
14
+ },
15
+ "overrides": [
16
+ {
17
+ "files": ["wrapper/*.js"],
18
+ "env": {
19
+ "browser": true,
20
+ "node": false
21
+ }
22
+ }
23
+ ]
15
24
  }
package/build/build.js CHANGED
@@ -4,9 +4,9 @@ import {args, compile, glob, icons} from './util.js';
4
4
 
5
5
  const bundles = getBundleTasks();
6
6
  const components = await getComponentTasks();
7
- const buildAll = args.all || Object.keys(args).filter(name =>
8
- ['d', 'debug', 'nominify', 'watch'].includes(name)
9
- ).length <= 1;
7
+ const buildAll = args.all || !Object.keys(args).filter(name =>
8
+ !['d', 'debug', 'nominify', 'watch', '_'].includes(name)
9
+ ).length;
10
10
 
11
11
  if (args.h || args.help) {
12
12
  console.log(`
@@ -16,8 +16,8 @@ if (args.h || args.help) {
16
16
 
17
17
  examples:
18
18
 
19
- build.js // builds all of uikit, including icons and does minification (implies 'all')
20
- build.js uikit icons -d // builds all of uikit and the icons, skipping the minification
19
+ build.js // builds all of uikit, including icons, components and does minification (implies 'all')
20
+ build.js uikit icons -d // builds uikit and the icons, skipping the minification and components
21
21
  build.js core lightbox -d // builds uikit-core and the lightbox, skipping the minification
22
22
 
23
23
  available components:
package/build/less.js CHANGED
@@ -1,5 +1,4 @@
1
1
  import rtlcss from 'rtlcss';
2
- import postcss from 'postcss';
3
2
  import {basename} from 'path';
4
3
  import {args, banner, glob, minify, pathExists, read, readJson, renderLess, write} from './util.js';
5
4
 
@@ -42,12 +41,9 @@ async function compile(file, dist, develop, rtl) {
42
41
  })).replace(/\.\.\/dist\//g, '');
43
42
 
44
43
  if (rtl) {
45
- output = postcss([
46
- css => {
47
- css.insertBefore(css.nodes[0], postcss.comment({text: 'rtl:begin:rename'}));
48
- css.insertAfter(css.nodes[css.nodes.length - 1], postcss.comment({text: 'rtl:end:rename'}));
49
- },
50
- rtlcss({
44
+ output = rtlcss.process(
45
+ output,
46
+ {
51
47
  stringMap: [{
52
48
  name: 'previous-next',
53
49
  priority: 100,
@@ -58,10 +54,32 @@ async function compile(file, dist, develop, rtl) {
58
54
  ignoreCase: false
59
55
  }
60
56
  }]
61
- })
62
- ]).process(output).css;
63
-
64
- output = output.replace(/stroke-dashoffset: (\d+)px/g, 'stroke-dashoffset: -$1px');
57
+ },
58
+ [
59
+ {
60
+ name: 'customNegate',
61
+ priority: 50,
62
+ directives: {
63
+ control: {},
64
+ value: []
65
+ },
66
+ processors: [
67
+ {
68
+ expr: ['--uk-position-translate-x', 'stroke-dashoffset'].join('|'),
69
+ action(prop, value, context) {
70
+ return {prop, value: context.util.negate(value)};
71
+ }
72
+ }
73
+ ]
74
+ }
75
+ ],
76
+ {
77
+ pre(root, postcss) {
78
+ root.prepend(postcss.comment({text: 'rtl:begin:rename'}));
79
+ root.append(postcss.comment({text: 'rtl:end:rename'}));
80
+ }
81
+ }
82
+ );
65
83
  }
66
84
 
67
85
  await write(dist, banner + output);
@@ -28,7 +28,8 @@ async function isDevCommit() {
28
28
  // check for changes to publish (%B: raw body (unwrapped subject and body)
29
29
  const message = await run('git log -1 --pretty=%B');
30
30
 
31
- const type = message.match(/^(revert: )?(feat|fix|polish|docs|style|refactor|perf|test|workflow|ci|chore|types)(\(.+\))?: .{1,50}/);
31
+ // https://www.conventionalcommits.org/en/v1.0.0/
32
+ const type = message.match(/^(revert: )?(feat|fix|polish|docs|style|refactor|perf|test|workflow|ci|chore|types|build)(\(.+\))?: .{1,50}/);
32
33
 
33
34
  return type && ['feat', 'fix', 'refactor', 'perf'].includes(type[2]);
34
35
 
package/build/scss.js CHANGED
@@ -236,7 +236,7 @@ async function getVariablesFromFile(file, data) {
236
236
 
237
237
  while (match) {
238
238
 
239
- /* check if variable is an background icon, if so replace it directly by the SVG */
239
+ /* check if variable is a background icon, if so replace it directly by the SVG */
240
240
  if (match[0].indexOf('../../images/backgrounds') >= 0) {
241
241
 
242
242
  const iconregex = /(\$[\w-]+)\s*:\s*"\.\.\/\.\.\/images\/backgrounds\/([\w./-]+)" !default;/g;
package/build/util.js CHANGED
@@ -1,7 +1,6 @@
1
1
  import less from 'less';
2
2
  import fs from 'fs-extra';
3
3
  import pLimit from 'p-limit';
4
- import postcss from 'postcss';
5
4
  import globImport from 'glob';
6
5
  import {optimize} from 'svgo';
7
6
  import {promisify} from 'util';
@@ -75,25 +74,7 @@ export async function minify(file) {
75
74
  }
76
75
 
77
76
  export function renderLess(data, options) {
78
- return limit(async () => postcss()
79
- .use({
80
- postcssPlugin: 'calc',
81
- Once(root) {
82
- root.walk(node => {
83
- const {type} = node;
84
- if (type === 'decl') {
85
- node.value = postcss.list.space(node.value).map(value =>
86
- value.startsWith('calc(')
87
- ? value.replace(/(.)calc/g, '$1')
88
- : value
89
- ).join(' ');
90
- }
91
- });
92
- }
93
- })
94
- .process((await less.render(data, options)).css)
95
- .css
96
- );
77
+ return limit(async () => (await less.render(data, options)).css);
97
78
  }
98
79
 
99
80
  export async function compile(file, dest, {external, globals, name, aliases, replaces} = {}) {
@@ -1,4 +1,4 @@
1
- /*! UIkit 3.9.5-dev.e48c5e252 | https://www.getuikit.com | (c) 2014 - 2021 YOOtheme | MIT License */
1
+ /*! UIkit 3.10.1-dev.6b26facf9 | https://www.getuikit.com | (c) 2014 - 2022 YOOtheme | MIT License */
2
2
  /* ========================================================================
3
3
  Component: Base
4
4
  ========================================================================== */
@@ -648,7 +648,7 @@ a.uk-link-reset,
648
648
  content: "";
649
649
  /* 1 */
650
650
  position: absolute;
651
- top: calc(50% - ((0.2px + 0.05em) / 2));
651
+ top: calc(50% - (calc(0.2px + 0.05em) / 2));
652
652
  /* 2 */
653
653
  width: 2000px;
654
654
  /* 3 */
@@ -726,7 +726,7 @@ a.uk-link-reset,
726
726
  /* Vertical
727
727
  ========================================================================== */
728
728
  .uk-divider-vertical {
729
- width: 1px;
729
+ width: max-content;
730
730
  height: 100px;
731
731
  margin-right: auto;
732
732
  margin-left: auto;
@@ -773,7 +773,7 @@ a.uk-link-reset,
773
773
  counter-increment: decimal;
774
774
  }
775
775
  [class*='uk-list'] > ::before {
776
- content: '';
776
+ content: "";
777
777
  position: relative;
778
778
  right: -30px;
779
779
  width: 30px;
@@ -6720,6 +6720,14 @@ ul.uk-nav-sub {
6720
6720
  min-width: 1px;
6721
6721
  }
6722
6722
  }
6723
+ /* Intrinsic Widths
6724
+ ========================================================================== */
6725
+ .uk-width-max-content {
6726
+ width: max-content;
6727
+ }
6728
+ .uk-width-min-content {
6729
+ width: min-content;
6730
+ }
6723
6731
  /* ========================================================================
6724
6732
  Component: Height
6725
6733
  ========================================================================== */
@@ -7127,25 +7135,27 @@ td.uk-text-break {
7127
7135
  ========================================================================== */
7128
7136
  /*
7129
7137
  * Works with iframes and embedded content
7130
- * 1. Apply transform instantly. Needed if transform is transitioned.
7138
+ * 1. Use attribute to apply transform instantly. Needed if transform is transitioned.
7131
7139
  * 2. Reset responsiveness for embedded content
7132
7140
  * 3. Center object
7133
7141
  * Note: Percent values on the `top` property only works if this element
7134
7142
  * is absolute positioned or if the container has a height
7135
7143
  */
7136
- .uk-cover,
7137
- [uk-cover] {
7144
+ /* 1 */
7145
+ [uk-cover],
7146
+ [data-uk-cover] {
7138
7147
  /* 2 */
7139
7148
  max-width: none;
7140
7149
  /* 3 */
7141
7150
  position: absolute;
7142
7151
  right: 50%;
7143
7152
  top: 50%;
7144
- --uk-position-translate-x: -50%;
7153
+ --uk-position-translate-x: 50%;
7145
7154
  --uk-position-translate-y: -50%;
7146
7155
  transform: translate(var(--uk-position-translate-x), var(--uk-position-translate-y));
7147
7156
  }
7148
- iframe.uk-cover {
7157
+ iframe[uk-cover],
7158
+ iframe[data-uk-cover] {
7149
7159
  pointer-events: none;
7150
7160
  }
7151
7161
  /* Container
@@ -7608,7 +7618,8 @@ iframe.uk-cover {
7608
7618
  /*
7609
7619
  * Fix initial iframe width. Without the viewport is expanded on iOS devices
7610
7620
  */
7611
- [uk-responsive] {
7621
+ [uk-responsive],
7622
+ [data-uk-responsive] {
7612
7623
  max-width: 100%;
7613
7624
  }
7614
7625
  /* Border
@@ -7676,7 +7687,7 @@ iframe.uk-cover {
7676
7687
  vertical-align: middle;
7677
7688
  }
7678
7689
  .uk-box-shadow-bottom::after {
7679
- content: '';
7690
+ content: "";
7680
7691
  /* 1 */
7681
7692
  position: absolute;
7682
7693
  bottom: -30px;
@@ -8509,7 +8520,7 @@ iframe.uk-cover {
8509
8520
  .uk-position-center {
8510
8521
  top: calc(50% - var(--uk-position-margin-offset));
8511
8522
  right: calc(50% - var(--uk-position-margin-offset));
8512
- --uk-position-translate-x: -50%;
8523
+ --uk-position-translate-x: 50%;
8513
8524
  --uk-position-translate-y: -50%;
8514
8525
  transform: translate(var(--uk-position-translate-x), var(--uk-position-translate-y));
8515
8526
  /* 1 */
@@ -8540,7 +8551,7 @@ iframe.uk-cover {
8540
8551
  .uk-position-top-center,
8541
8552
  .uk-position-bottom-center {
8542
8553
  right: calc(50% - var(--uk-position-margin-offset));
8543
- --uk-position-translate-x: -50%;
8554
+ --uk-position-translate-x: 50%;
8544
8555
  transform: translate(var(--uk-position-translate-x), 0);
8545
8556
  /* 1 */
8546
8557
  width: max-content;