@plesk/ui-library 3.27.2 → 3.28.0

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 (71) hide show
  1. package/cjs/components/Dialog/Dialog.js +11 -2
  2. package/cjs/components/Form/Form.js +4 -2
  3. package/cjs/components/FormFieldPassword/FormFieldPassword.js +25 -239
  4. package/cjs/components/FormFieldPassword/PasswordMeter.js +81 -0
  5. package/cjs/components/FormFieldPassword/estimatePassword.js +212 -0
  6. package/cjs/components/FormFieldPassword/generatePassword.js +21 -0
  7. package/cjs/components/FormFieldPassword/index.js +5 -5
  8. package/cjs/components/Icon/constants.js +2 -2
  9. package/cjs/components/Icon/images/symbols.svg +9 -1
  10. package/cjs/components/ProgressDialog/ProgressDialog.js +2 -1
  11. package/cjs/components/Skeleton/Skeleton.js +49 -0
  12. package/cjs/components/Skeleton/Skeleton.stories.js +26 -0
  13. package/cjs/components/Skeleton/SkeletonTabs.js +41 -0
  14. package/cjs/components/Skeleton/SkeletonTabs.stories.js +17 -0
  15. package/cjs/components/Skeleton/SkeletonText.js +45 -0
  16. package/cjs/components/Skeleton/SkeletonText.stories.js +35 -0
  17. package/cjs/components/Skeleton/index.js +31 -0
  18. package/cjs/components/index.js +22 -1
  19. package/cjs/components/utils.js +6 -2
  20. package/cjs/index.js +1 -1
  21. package/dist/images/symbols.svg +9 -1
  22. package/dist/plesk-ui-library-rtl.css +1 -1
  23. package/dist/plesk-ui-library-rtl.css.map +1 -1
  24. package/dist/plesk-ui-library.css +1 -1
  25. package/dist/plesk-ui-library.css.map +1 -1
  26. package/dist/plesk-ui-library.js +607 -339
  27. package/dist/plesk-ui-library.js.map +1 -1
  28. package/dist/plesk-ui-library.min.js +5 -5
  29. package/dist/plesk-ui-library.min.js.map +1 -1
  30. package/esm/components/Dialog/Dialog.js +11 -2
  31. package/esm/components/Form/Form.js +4 -2
  32. package/esm/components/FormFieldPassword/FormFieldPassword.js +23 -232
  33. package/esm/components/FormFieldPassword/PasswordMeter.js +61 -0
  34. package/esm/components/FormFieldPassword/estimatePassword.js +196 -0
  35. package/esm/components/FormFieldPassword/generatePassword.js +14 -0
  36. package/esm/components/FormFieldPassword/index.js +3 -2
  37. package/esm/components/Icon/constants.js +2 -2
  38. package/esm/components/Icon/images/symbols.svg +9 -1
  39. package/esm/components/ProgressDialog/ProgressDialog.js +2 -1
  40. package/esm/components/Skeleton/Skeleton.js +34 -0
  41. package/esm/components/Skeleton/Skeleton.stories.js +10 -0
  42. package/esm/components/Skeleton/SkeletonTabs.js +26 -0
  43. package/esm/components/Skeleton/SkeletonTabs.stories.js +4 -0
  44. package/esm/components/Skeleton/SkeletonText.js +30 -0
  45. package/esm/components/Skeleton/SkeletonText.stories.js +16 -0
  46. package/esm/components/Skeleton/index.js +4 -0
  47. package/esm/components/index.js +3 -1
  48. package/esm/components/utils.js +2 -1
  49. package/esm/index.js +1 -1
  50. package/package.json +3 -3
  51. package/styleguide/build/bundle.24d5b0eb.js +2 -0
  52. package/styleguide/build/{bundle.1c9c8500.js.LICENSE.txt → bundle.24d5b0eb.js.LICENSE.txt} +0 -0
  53. package/styleguide/images/symbols.svg +9 -1
  54. package/styleguide/index.html +2 -2
  55. package/types/src/components/FormFieldPassword/FormFieldPassword.d.ts +91 -0
  56. package/types/src/components/FormFieldPassword/PasswordMeter.d.ts +9 -0
  57. package/types/src/components/FormFieldPassword/estimatePassword.d.ts +13 -0
  58. package/types/src/components/FormFieldPassword/index.d.ts +2 -0
  59. package/types/src/components/Icon/constants.d.ts +1 -1
  60. package/types/src/components/Skeleton/Skeleton.d.ts +49 -0
  61. package/types/src/components/Skeleton/Skeleton.stories.d.ts +12 -0
  62. package/types/src/components/Skeleton/SkeletonTabs.d.ts +23 -0
  63. package/types/src/components/Skeleton/SkeletonTabs.stories.d.ts +6 -0
  64. package/types/src/components/Skeleton/SkeletonText.d.ts +34 -0
  65. package/types/src/components/Skeleton/SkeletonText.stories.d.ts +38 -0
  66. package/types/src/components/Skeleton/index.d.ts +3 -0
  67. package/types/src/components/index.d.ts +2 -0
  68. package/types/src/components/utils.d.ts +1 -0
  69. package/cjs/components/FormFieldPassword/passwordScore.js +0 -132
  70. package/esm/components/FormFieldPassword/passwordScore.js +0 -123
  71. package/styleguide/build/bundle.1c9c8500.js +0 -2
@@ -1,4 +1,4 @@
1
1
  /* eslint-disable max-len */
2
2
  // This file is generated by create-svg-sprite. Do not edit.
3
- export const NAMES_12 = ['archive', 'arrow-back', 'arrow-diagonal-out', 'arrow-down', 'arrow-down-in', 'arrow-down-out', 'arrow-down-tray', 'arrow-left', 'arrow-right', 'arrow-right-in', 'arrow-right-out', 'arrow-up', 'arrow-up-circle', 'arrow-up-in', 'arrow-up-in-cloud', 'arrow-up-out', 'arrow-up-tray', 'arrows-four-directions', 'arrows-inward', 'arrows-loop', 'arrows-opposite', 'arrows-outward', 'backup', 'backup2', 'bar-chart-vertical', 'bar-chart-vertical-arrow-up', 'bell', 'book-email', 'boundary', 'box-diagonal-bottom-in', 'box-diagonal-top-in', 'brush', 'bug', 'calendar', 'calendar-clock', 'camera', 'card', 'card-ribbon', 'card-row', 'card-tile', 'cd', 'cd-up-in-cloud', 'chain', 'chain-broken', 'chat', 'check-list', 'check-mark', 'check-mark-circle', 'check-mark-circle-filled', 'chevron-double-down', 'chevron-double-up', 'chevron-down', 'chevron-left', 'chevron-right', 'chevron-up', 'circle-diagonal', 'clean', 'clip', 'clock', 'clone', 'cloud', 'cloud-checkmark', 'cloud-crossed', 'cloud-graph', 'code', 'connection', 'console', 'console-filled', 'copy', 'copy-indicator', 'cpu', 'crane', 'credit-cards', 'cross-mark', 'cross-mark-circle', 'cross-mark-circle-filled', 'crown-transfer', 'dashboard', 'database', 'database-box', 'database-plus', 'deploy', 'docker-filled', 'dollar', 'dollar-filled', 'dot', 'emoticon-confused', 'emoticon-dead', 'emoticon-excited', 'emoticon-happy', 'emoticon-neutral', 'emoticon-sad', 'emoticon-smile', 'enter', 'exclamation-mark-circle', 'exclamation-mark-circle-filled', 'eye', 'eye-closed', 'facebook', 'facebook-filled', 'feedback', 'filter', 'filter-check-mark', 'fire', 'flag-globe', 'floppy-disk', 'folder-closed', 'folder-key', 'folder-network', 'folder-open', 'folders-tree', 'four-squares', 'gear', 'git', 'github', 'globe', 'hard-drive', 'hard-drive-key', 'hat', 'hexagons', 'home', 'info-circle', 'info-circle-filled', 'ip-addresses', 'kebab', 'key', 'lifebuoy', 'lightbulb', 'limit', 'linux', 'list', 'list-check-mark', 'location', 'lock-closed', 'lock-closed-check', 'lock-closed-filled', 'lock-open', 'lock-open-cross', 'lock-open-filled', 'mail', 'mail-settings', 'megaphone', 'menu', 'menu-thin', 'microsoft', 'minimize', 'minus', 'minus-circle', 'minus-circle-filled', 'monitoring', 'monitoring-off', 'my-little-admin', 'net', 'nine-dots', 'node-js', 'package', 'panel', 'panel-check', 'panel-eye', 'panel-key', 'panel-settings', 'panels', 'pause-circle', 'pencil', 'pencil-dialog', 'php', 'phpmyadmin', 'pin', 'pipette', 'plans', 'plugins', 'plus', 'power', 'projects', 'puzzle', 'question-mark-circle', 'question-mark-circle-filled', 'ram', 'react-js', 'recycle', 'refresh', 'reload', 'remove', 'reset', 'resource', 'ribbon', 'rocket', 'ruby', 'sand-clock', 'scan', 'screen', 'search', 'security-check', 'send', 'servers', 'share', 'shield', 'shield-chain', 'shopping-cart', 'sidebar-right-hide', 'sidebar-right-show', 'signal-light', 'site-page', 'sleep', 'sliders', 'square-with-circles', 'star', 'star-circle-filled', 'star-filled', 'star-half-filled', 'start', 'start-circle', 'stop', 'stop-circle', 'storage', 'themes', 'three-dots-horizontal', 'three-dots-vertical', 'tools', 'transfer', 'triangle-exclamation-mark', 'triangle-exclamation-mark-filled', 'unarchive', 'user', 'volume', 'web', 'web-plus', 'web-settings', 'windows', 'wordpress'];
4
- export const NAMES = ['archive', 'arrow-back', 'arrow-diagonal-out', 'arrow-down', 'arrow-down-in', 'arrow-down-out', 'arrow-down-tray', 'arrow-left', 'arrow-right', 'arrow-right-in', 'arrow-right-out', 'arrow-up', 'arrow-up-circle', 'arrow-up-in', 'arrow-up-in-cloud', 'arrow-up-out', 'arrow-up-tray', 'arrows-four-directions', 'arrows-inward', 'arrows-loop', 'arrows-opposite', 'arrows-outward', 'backup', 'backup2', 'bar-chart-vertical', 'bar-chart-vertical-arrow-up', 'bell', 'book-email', 'boundary', 'box-diagonal-bottom-in', 'box-diagonal-top-in', 'brush', 'bug', 'calendar', 'calendar-clock', 'camera', 'card', 'card-ribbon', 'card-row', 'card-tile', 'cd', 'cd-up-in-cloud', 'chain', 'chain-broken', 'chat', 'check-list', 'check-mark', 'check-mark-circle', 'check-mark-circle-filled', 'chevron-double-down', 'chevron-double-up', 'chevron-down', 'chevron-left', 'chevron-right', 'chevron-up', 'circle-diagonal', 'clean', 'clip', 'clock', 'clone', 'cloud', 'cloud-checkmark', 'cloud-crossed', 'cloud-graph', 'code', 'connection', 'console', 'console-filled', 'copy', 'copy-indicator', 'cpu', 'crane', 'credit-cards', 'cross-mark', 'cross-mark-circle', 'cross-mark-circle-filled', 'crown-transfer', 'dashboard', 'database', 'database-box', 'database-plus', 'deploy', 'docker-filled', 'dollar', 'dollar-filled', 'dot', 'emoticon-confused', 'emoticon-dead', 'emoticon-excited', 'emoticon-happy', 'emoticon-neutral', 'emoticon-sad', 'emoticon-smile', 'enter', 'exclamation-mark-circle', 'exclamation-mark-circle-filled', 'eye', 'eye-closed', 'facebook', 'facebook-filled', 'feedback', 'filter', 'filter-check-mark', 'fire', 'flag-globe', 'floppy-disk', 'folder-closed', 'folder-key', 'folder-network', 'folder-open', 'folders-tree', 'four-squares', 'gear', 'git', 'github', 'globe', 'hard-drive', 'hard-drive-key', 'hat', 'hexagons', 'home', 'info-circle', 'info-circle-filled', 'ip-addresses', 'kebab', 'key', 'lifebuoy', 'lightbulb', 'limit', 'linux', 'list', 'list-check-mark', 'location', 'lock-closed', 'lock-closed-check', 'lock-closed-filled', 'lock-open', 'lock-open-cross', 'lock-open-filled', 'mail', 'mail-settings', 'megaphone', 'menu', 'menu-thin', 'microsoft', 'minimize', 'minus', 'minus-circle', 'minus-circle-filled', 'monitoring', 'monitoring-off', 'my-little-admin', 'net', 'nine-dots', 'node-js', 'package', 'panel', 'panel-check', 'panel-eye', 'panel-key', 'panel-settings', 'panels', 'pause-circle', 'pencil', 'pencil-dialog', 'php', 'phpmyadmin', 'pin', 'pipette', 'plans', 'plugins', 'plus', 'power', 'projects', 'puzzle', 'question-mark-circle', 'question-mark-circle-filled', 'ram', 'react-js', 'recycle', 'refresh', 'reload', 'remove', 'reset', 'resource', 'ribbon', 'rocket', 'ruby', 'sand-clock', 'scan', 'screen', 'search', 'security-check', 'send', 'servers', 'share', 'shield', 'shield-chain', 'shopping-cart', 'sidebar-right-hide', 'sidebar-right-show', 'signal-light', 'site-page', 'sleep', 'sliders', 'square-with-circles', 'star', 'star-circle-filled', 'star-filled', 'star-half-filled', 'start', 'start-circle', 'stop', 'stop-circle', 'storage', 'themes', 'three-dots-horizontal', 'three-dots-vertical', 'tools', 'transfer', 'triangle-exclamation-mark', 'triangle-exclamation-mark-filled', 'unarchive', 'user', 'volume', 'web', 'web-plus', 'web-settings', 'windows', 'wordpress'];
3
+ export const NAMES_12 = ['archive', 'arrow-back', 'arrow-diagonal-out', 'arrow-down', 'arrow-down-in', 'arrow-down-out', 'arrow-down-tray', 'arrow-left', 'arrow-right', 'arrow-right-in', 'arrow-right-out', 'arrow-up', 'arrow-up-circle', 'arrow-up-in', 'arrow-up-in-cloud', 'arrow-up-out', 'arrow-up-tray', 'arrows-four-directions', 'arrows-inward', 'arrows-loop', 'arrows-opposite', 'arrows-outward', 'backup', 'backup2', 'bar-chart-vertical', 'bar-chart-vertical-arrow-up', 'bell', 'book-email', 'boundary', 'box-diagonal-bottom-in', 'box-diagonal-top-in', 'brush', 'bug', 'calendar', 'calendar-clock', 'camera', 'card', 'card-ribbon', 'card-row', 'card-tile', 'cd', 'cd-up-in-cloud', 'chain', 'chain-broken', 'chat', 'check-list', 'check-mark', 'check-mark-circle', 'check-mark-circle-filled', 'chevron-double-down', 'chevron-double-up', 'chevron-down', 'chevron-left', 'chevron-right', 'chevron-up', 'circle-diagonal', 'clean', 'clip', 'clock', 'clone', 'cloud', 'cloud-checkmark', 'cloud-crossed', 'cloud-graph', 'code', 'connection', 'console', 'console-filled', 'copy', 'copy-indicator', 'cpu', 'crane', 'credit-cards', 'cross-mark', 'cross-mark-circle', 'cross-mark-circle-filled', 'crown-transfer', 'dashboard', 'database', 'database-box', 'database-plus', 'deploy', 'docker-filled', 'dollar', 'dollar-filled', 'dot', 'emoticon-confused', 'emoticon-dead', 'emoticon-excited', 'emoticon-happy', 'emoticon-neutral', 'emoticon-sad', 'emoticon-smile', 'enter', 'exclamation-mark-circle', 'exclamation-mark-circle-filled', 'eye', 'eye-closed', 'facebook', 'facebook-filled', 'feedback', 'filter', 'filter-check-mark', 'fire', 'flag-globe', 'floppy-disk', 'folder-closed', 'folder-key', 'folder-network', 'folder-open', 'folders-tree', 'four-squares', 'gear', 'git', 'github', 'globe', 'hard-drive', 'hard-drive-key', 'hat', 'hexagons', 'home', 'info-circle', 'info-circle-filled', 'ip-addresses', 'kebab', 'key', 'lifebuoy', 'lightbulb', 'limit', 'linux', 'list', 'list-check-mark', 'location', 'lock-closed', 'lock-closed-check', 'lock-closed-filled', 'lock-open', 'lock-open-cross', 'lock-open-filled', 'mail', 'mail-settings', 'megaphone', 'menu', 'menu-thin', 'microsoft', 'minimize', 'minus', 'minus-circle', 'minus-circle-filled', 'monitoring', 'monitoring-off', 'my-little-admin', 'net', 'nine-dots', 'node-js', 'package', 'panel', 'panel-check', 'panel-eye', 'panel-key', 'panel-settings', 'panels', 'pause-circle', 'pencil', 'pencil-dialog', 'php', 'phpmyadmin', 'pin', 'pipette', 'plans', 'plugins', 'plus', 'power', 'projects', 'puzzle', 'question-mark-circle', 'question-mark-circle-filled', 'ram', 'react-js', 'recycle', 'refresh', 'reload', 'remove', 'reset', 'resource', 'ribbon', 'rocket', 'ruby', 'sand-clock', 'scan', 'screen', 'search', 'security-check', 'send', 'server', 'servers', 'share', 'shield', 'shield-chain', 'shopping-cart', 'sidebar-right-hide', 'sidebar-right-show', 'signal-light', 'site-page', 'sleep', 'sliders', 'square-with-circles', 'star', 'star-circle-filled', 'star-filled', 'star-half-filled', 'start', 'start-circle', 'stop', 'stop-circle', 'storage', 'themes', 'three-dots-horizontal', 'three-dots-vertical', 'tools', 'transfer', 'triangle-exclamation-mark', 'triangle-exclamation-mark-filled', 'unarchive', 'user', 'volume', 'web', 'web-plus', 'web-settings', 'windows', 'wordpress'];
4
+ export const NAMES = ['archive', 'arrow-back', 'arrow-diagonal-out', 'arrow-down', 'arrow-down-in', 'arrow-down-out', 'arrow-down-tray', 'arrow-left', 'arrow-right', 'arrow-right-in', 'arrow-right-out', 'arrow-up', 'arrow-up-circle', 'arrow-up-in', 'arrow-up-in-cloud', 'arrow-up-out', 'arrow-up-tray', 'arrows-four-directions', 'arrows-inward', 'arrows-loop', 'arrows-opposite', 'arrows-outward', 'backup', 'backup2', 'bar-chart-vertical', 'bar-chart-vertical-arrow-up', 'bell', 'book-email', 'boundary', 'box-diagonal-bottom-in', 'box-diagonal-top-in', 'brush', 'bug', 'calendar', 'calendar-clock', 'camera', 'card', 'card-ribbon', 'card-row', 'card-tile', 'cd', 'cd-up-in-cloud', 'chain', 'chain-broken', 'chat', 'check-list', 'check-mark', 'check-mark-circle', 'check-mark-circle-filled', 'chevron-double-down', 'chevron-double-up', 'chevron-down', 'chevron-left', 'chevron-right', 'chevron-up', 'circle-diagonal', 'clean', 'clip', 'clock', 'clone', 'cloud', 'cloud-checkmark', 'cloud-crossed', 'cloud-graph', 'code', 'connection', 'console', 'console-filled', 'copy', 'copy-indicator', 'cpu', 'crane', 'credit-cards', 'cross-mark', 'cross-mark-circle', 'cross-mark-circle-filled', 'crown-transfer', 'dashboard', 'database', 'database-box', 'database-plus', 'deploy', 'docker-filled', 'dollar', 'dollar-filled', 'dot', 'emoticon-confused', 'emoticon-dead', 'emoticon-excited', 'emoticon-happy', 'emoticon-neutral', 'emoticon-sad', 'emoticon-smile', 'enter', 'exclamation-mark-circle', 'exclamation-mark-circle-filled', 'eye', 'eye-closed', 'facebook', 'facebook-filled', 'feedback', 'filter', 'filter-check-mark', 'fire', 'flag-globe', 'floppy-disk', 'folder-closed', 'folder-key', 'folder-network', 'folder-open', 'folders-tree', 'four-squares', 'gear', 'git', 'github', 'globe', 'hard-drive', 'hard-drive-key', 'hat', 'hexagons', 'home', 'info-circle', 'info-circle-filled', 'ip-addresses', 'kebab', 'key', 'lifebuoy', 'lightbulb', 'limit', 'linux', 'list', 'list-check-mark', 'location', 'lock-closed', 'lock-closed-check', 'lock-closed-filled', 'lock-open', 'lock-open-cross', 'lock-open-filled', 'mail', 'mail-settings', 'megaphone', 'menu', 'menu-thin', 'microsoft', 'minimize', 'minus', 'minus-circle', 'minus-circle-filled', 'monitoring', 'monitoring-off', 'my-little-admin', 'net', 'nine-dots', 'node-js', 'package', 'panel', 'panel-check', 'panel-eye', 'panel-key', 'panel-settings', 'panels', 'pause-circle', 'pencil', 'pencil-dialog', 'php', 'phpmyadmin', 'pin', 'pipette', 'plans', 'plugins', 'plus', 'power', 'projects', 'puzzle', 'question-mark-circle', 'question-mark-circle-filled', 'ram', 'react-js', 'recycle', 'refresh', 'reload', 'remove', 'reset', 'resource', 'ribbon', 'rocket', 'ruby', 'sand-clock', 'scan', 'screen', 'search', 'security-check', 'send', 'server', 'servers', 'share', 'shield', 'shield-chain', 'shopping-cart', 'sidebar-right-hide', 'sidebar-right-show', 'signal-light', 'site-page', 'sleep', 'sliders', 'square-with-circles', 'star', 'star-circle-filled', 'star-filled', 'star-half-filled', 'start', 'start-circle', 'stop', 'stop-circle', 'storage', 'themes', 'three-dots-horizontal', 'three-dots-vertical', 'tools', 'transfer', 'triangle-exclamation-mark', 'triangle-exclamation-mark-filled', 'unarchive', 'user', 'volume', 'web', 'web-plus', 'web-settings', 'windows', 'wordpress'];
@@ -1,4 +1,4 @@
1
- <svg width="16" height="11040" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
1
+ <svg width="16" height="11088" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
2
2
  <defs>
3
3
  <symbol viewBox="0 0 12 12" id="archive:12">
4
4
  <path d="M2 1h7v.5a.5.5 0 0 0 1 0V1a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1v-.5a.5.5 0 0 0-1 0v.5H2V1z" />
@@ -1391,6 +1391,14 @@
1391
1391
  <symbol viewBox="0 0 16 16" id="send:16">
1392
1392
  <path fill-rule="evenodd" d="M15.63 1.174a.5.5 0 0 1 .067.55l-6.5 13a.5.5 0 0 1-.827.101l-1.5-1.75-.005-.006L5.646 11.6a.5.5 0 0 1-.061-.544l1.304-2.587-3.016.975a.5.5 0 0 1-.474-.09l-1.468-1.22-.006-.005-1.75-1.5a.5.5 0 0 1 .172-.855l14.75-4.75a.5.5 0 0 1 .532.15zM1.503 6.452l1.068.916 1.254 1.04L7.721 7.15a.5.5 0 0 1 .6.7l-1.696 3.365 1.007 1.213 1.008 1.176L14.27 2.34 1.505 6.452z" clip-rule="evenodd" />
1393
1393
  </symbol>
1394
+ <symbol viewBox="0 0 12 12" id="server:12">
1395
+ <path d="M2.5 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1ZM5 2.5c0-.28.22-.5.5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5ZM2.5 6a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1ZM5 6.5c0-.28.22-.5.5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5Z" />
1396
+ <path fill-rule="evenodd" d="M0 3a2 2 0 0 0 .68 1.5A2 2 0 0 0 0 6v1c0 1.1.9 2 2 2h3.5v.09a1.5 1.5 0 0 0-.91.91H.5a.5.5 0 1 0 0 1h4.09a1.5 1.5 0 0 0 2.82 0h4.09a.5.5 0 0 0 0-1H7.41a1.5 1.5 0 0 0-.91-.91V9H10a2 2 0 0 0 2-2V6a2 2 0 0 0-.68-1.5A2 2 0 0 0 12 3V2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v1Zm10-2H2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1Zm0 7a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v1a1 1 0 0 0 1 1h8Zm-4 3a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1Z" clip-rule="evenodd" />
1397
+ </symbol>
1398
+ <symbol viewBox="0 0 16 16" id="server:16">
1399
+ <path d="M3 7a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM5 8a1 1 0 1 1 2 0 1 1 0 0 1-2 0ZM9 7a1 1 0 0 0 0 2h4a1 1 0 1 0 0-2H9ZM3 2a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM6 2a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM8 3a1 1 0 0 1 1-1h4a1 1 0 1 1 0 2H9a1 1 0 0 1-1-1Z" />
1400
+ <path fill-rule="evenodd" d="M0 4a2 2 0 0 0 .68 1.5A2 2 0 0 0 0 7v2c0 1.1.9 2 2 2h5.5v1.09a1.5 1.5 0 0 0-.91.91H.5a.5.5 0 1 0 0 1h6.09a1.5 1.5 0 0 0 2.82 0h6.09a.5.5 0 0 0 0-1H9.41a1.5 1.5 0 0 0-.91-.91V11H14a2 2 0 0 0 2-2V7a2 2 0 0 0-.68-1.5A2 2 0 0 0 16 4V2a2 2 0 0 0-2-2H2a2 2 0 0 0-2 2v2Zm14 6a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h12Zm0-9H2a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1ZM8.5 13.5a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0Z" clip-rule="evenodd" />
1401
+ </symbol>
1394
1402
  <symbol viewBox="0 0 12 12" id="servers:12">
1395
1403
  <path d="M8 6.5a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5zM0 1.5a.5.5 0 011 0v2a.5.5 0 01-1 0v-2zM2.5 1a.5.5 0 00-.5.5v2a.5.5 0 001 0v-2a.5.5 0 00-.5-.5zM8.5 2a.5.5 0 000 1H9v1a1 1 0 001 1h1.5a.5.5 0 000-1H10V3a1 1 0 00-1-1h-.5zM9 9v1h-.5a.5.5 0 000 1H9a1 1 0 001-1V9h1.5a.5.5 0 000-1H10a1 1 0 00-1 1z" />
1396
1404
  <path fill-rule="evenodd" d="M4 2a1 1 0 011-1h1a1 1 0 011 1v1a1 1 0 01-1 1H5a1 1 0 01-1-1V2zm1 0h1v1H5V2z" clip-rule="evenodd" />
@@ -131,7 +131,8 @@ class ProgressDialog extends Component {
131
131
  }, props, {
132
132
  isOpen: isOpen,
133
133
  onClose: this.handleClose,
134
- closable: canClose || canCancel
134
+ closable: canClose || canCancel,
135
+ canClose: canClose
135
136
  }), description && /*#__PURE__*/React.createElement("div", {
136
137
  className: `${baseClassName}__description`
137
138
  }, description), /*#__PURE__*/React.createElement(Progress, {
@@ -0,0 +1,34 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ // Copyright 1999-2022. Plesk International GmbH. All rights reserved.
3
+ import React from 'react';
4
+ import classNames from 'classnames';
5
+ import { normalizeSize } from '../utils';
6
+ import { CLS_PREFIX } from '../../constants';
7
+
8
+ /**
9
+ * `Skeleton` (or content-placeholder) is placeholder preview of content before the data gets loaded to reduce load-time frustration.
10
+ * Skeleton is used for non-text components, images, media-objects, etc.
11
+ * @since 3.28.0
12
+ */
13
+ const Skeleton = ({
14
+ width,
15
+ maxWidth,
16
+ height,
17
+ style,
18
+ component: Tag = 'span',
19
+ className,
20
+ baseClassName = `${CLS_PREFIX}skeleton`,
21
+ ...props
22
+ }) => {
23
+ const finalStyle = { ...style,
24
+ width: normalizeSize(width),
25
+ maxWidth: normalizeSize(maxWidth),
26
+ height: normalizeSize(height)
27
+ };
28
+ return /*#__PURE__*/React.createElement(Tag, _extends({
29
+ className: classNames(baseClassName, className),
30
+ style: finalStyle
31
+ }, props));
32
+ };
33
+
34
+ export default Skeleton;
@@ -0,0 +1,10 @@
1
+ // Copyright 1999-2022. Plesk International GmbH. All rights reserved.
2
+ import React from 'react';
3
+ import Skeleton from './Skeleton';
4
+ export const Basic = args => /*#__PURE__*/React.createElement(Skeleton, args);
5
+ Basic.args = {};
6
+ export const CustomSize = args => /*#__PURE__*/React.createElement(Basic, args);
7
+ CustomSize.args = {
8
+ width: 200,
9
+ height: 100
10
+ };
@@ -0,0 +1,26 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ // Copyright 1999-2022. Plesk International GmbH. All rights reserved.
3
+ import React from 'react';
4
+ import classNames from 'classnames';
5
+ import SkeletonText from './SkeletonText';
6
+ import { CLS_PREFIX } from '../../constants';
7
+
8
+ /**
9
+ * Skeleton for tabs component
10
+ * @since `3.28.0
11
+ */
12
+ const SkeletonTabs = ({
13
+ count = 3,
14
+ className,
15
+ baseClassName = `${CLS_PREFIX}skeleton-tabs`,
16
+ ...props
17
+ }) => /*#__PURE__*/React.createElement("div", _extends({
18
+ className: classNames(baseClassName, className)
19
+ }, props), /*#__PURE__*/React.createElement(SkeletonText, {
20
+ lineProps: {
21
+ maxWidth: 100
22
+ },
23
+ lines: count
24
+ }));
25
+
26
+ export default SkeletonTabs;
@@ -0,0 +1,4 @@
1
+ // Copyright 1999-2022. Plesk International GmbH. All rights reserved.
2
+ import React from 'react';
3
+ import SkeletonTabs from './SkeletonTabs';
4
+ export const Basic = args => /*#__PURE__*/React.createElement(SkeletonTabs, args);
@@ -0,0 +1,30 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ // Copyright 1999-2022. Plesk International GmbH. All rights reserved.
3
+ import React from 'react';
4
+ import classNames from 'classnames';
5
+ import Skeleton from './Skeleton';
6
+ import { CLS_PREFIX } from '../../constants';
7
+
8
+ /**
9
+ * Skeleton for text-containing components. Is can be used inside Paragraph, as title, or single text
10
+ * @since 3.28.0
11
+ */
12
+ const SkeletonText = ({
13
+ lines = 3,
14
+ component: Tag = 'span',
15
+ className,
16
+ baseClassName = `${CLS_PREFIX}skeleton-text`,
17
+ lineProps = {},
18
+ ...props
19
+ }) => /*#__PURE__*/React.createElement(Tag, _extends({
20
+ className: classNames(baseClassName, className)
21
+ }, props), Array.from({
22
+ length: lines
23
+ }).map((_, key) => /*#__PURE__*/React.createElement(Skeleton // eslint-disable-next-line react/no-array-index-key
24
+ , _extends({
25
+ key: key
26
+ }, lineProps, {
27
+ className: classNames(`${baseClassName}__line`, lineProps === null || lineProps === void 0 ? void 0 : lineProps.className)
28
+ }))));
29
+
30
+ export default SkeletonText;
@@ -0,0 +1,16 @@
1
+ // Copyright 1999-2022. Plesk International GmbH. All rights reserved.
2
+ import React from 'react';
3
+ import SkeletonText from './SkeletonText';
4
+ export const Basic = args => /*#__PURE__*/React.createElement(SkeletonText, args);
5
+ Basic.args = {};
6
+ export const LinesCount = args => /*#__PURE__*/React.createElement(Basic, args);
7
+ LinesCount.args = {
8
+ lines: 5
9
+ };
10
+ export const Custom = args => /*#__PURE__*/React.createElement(Basic, args);
11
+ Custom.args = {
12
+ lines: 5,
13
+ lineProps: {
14
+ width: 200
15
+ }
16
+ };
@@ -0,0 +1,4 @@
1
+ // Copyright 1999-2022. Plesk International GmbH. All rights reserved.
2
+ export { default } from './Skeleton';
3
+ export { default as SkeletonText } from './SkeletonText';
4
+ export { default as SkeletonTabs } from './SkeletonTabs';
@@ -96,4 +96,6 @@ export * from './Toolbar';
96
96
  export { default as Tooltip } from './Tooltip';
97
97
  export { default as Tour } from './Tour';
98
98
  export { default as Translate } from './Translate';
99
- export { default as Link } from './Link';
99
+ export { default as Link } from './Link';
100
+ export { default as Skeleton } from './Skeleton';
101
+ export * from './Skeleton';
@@ -223,4 +223,5 @@ export const mergeRefs = (...refs) => value => {
223
223
  ref.current = value;
224
224
  }
225
225
  });
226
- };
226
+ };
227
+ export const normalizeSize = value => String(Number(value)) === String(value) ? `${value}px` : value;
package/esm/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  // Copyright 1999-2018. Plesk International GmbH. All rights reserved.
2
2
  import svg4everybody from 'svg4everybody';
3
- const version = "3.27.2";
3
+ const version = "3.28.0";
4
4
  export * from './publicPath';
5
5
  export { version };
6
6
  export * from './utils';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plesk/ui-library",
3
- "version": "3.27.2",
3
+ "version": "3.28.0",
4
4
  "description": "Plesk UI Library",
5
5
  "main": "index.js",
6
6
  "module": "esm/index.js",
@@ -29,7 +29,7 @@
29
29
  "styleguide:build": "styleguidist build --config ./configs/styleguide.config.js",
30
30
  "create-component": "node scripts/create-component.js",
31
31
  "prepublishOnly": "yarn install && yarn test && yarn build && yarn styleguide:build",
32
- "storybook": "webpack serve --config ./configs/storybook.config.js",
32
+ "storybook": "webpack serve --config ./configs/storybook.config.js --disable-host-check",
33
33
  "postinstall": "node ./scripts/postinstall.js"
34
34
  },
35
35
  "files": [
@@ -110,7 +110,7 @@
110
110
  "postcss-loader": "^6.2.1",
111
111
  "postcss-logical": "^5.0.3",
112
112
  "prettier": "^2.0.5",
113
- "puppeteer-core": "^5.2.1",
113
+ "puppeteer-core": "13.1.3",
114
114
  "react": "^16.8.6",
115
115
  "react-dom": "^16.8.6",
116
116
  "react-styleguidist": "^11.1.7",