├── .gitignore ├── CHANGELOG.md ├── README.md ├── build.ls ├── dist ├── circle.html ├── default.html ├── dual-ring.html ├── ellipsis.html ├── entries │ ├── circle │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ ├── default │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ ├── dual-ring │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ ├── ellipsis │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ ├── facebook │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ ├── grid │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ ├── heart │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ ├── hourglass │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ ├── ring │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ ├── ripple │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ ├── roller │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css │ └── spinner │ │ ├── index.css │ │ ├── index.html │ │ └── index.min.css ├── facebook.html ├── grid.html ├── heart.html ├── hourglass.html ├── index.css ├── index.min.css ├── mixin.pug ├── ring.html ├── ripple.html ├── roller.html └── spinner.html ├── package-lock.json ├── package.json ├── src ├── circle │ ├── index.pug │ └── index.styl ├── default │ ├── index.pug │ └── index.styl ├── dual-ring │ ├── index.pug │ └── index.styl ├── ellipsis │ ├── index.pug │ └── index.styl ├── facebook │ ├── index.pug │ └── index.styl ├── grid │ ├── index.pug │ └── index.styl ├── heart │ ├── index.pug │ └── index.styl ├── hourglass │ ├── index.pug │ └── index.styl ├── ring │ ├── index.pug │ └── index.styl ├── ripple │ ├── index.pug │ └── index.styl ├── roller │ ├── index.pug │ └── index.styl └── spinner │ ├── index.pug │ └── index.styl ├── vars.styl └── web ├── .view └── index.js ├── src └── pug │ ├── index.ls │ ├── index.pug │ └── mixin.pug └── static ├── assets └── lib │ ├── @loadingio │ ├── bootstrap.ext │ │ ├── 0.0.1 │ │ │ ├── index.css │ │ │ ├── index.min.css │ │ │ └── index.pug │ │ ├── 0.0.6 │ │ │ ├── CHANGELOG.md │ │ │ ├── README.md │ │ │ ├── index.css │ │ │ ├── index.min.css │ │ │ ├── index.pug │ │ │ └── package.json │ │ └── main │ ├── css-spinner │ │ └── dev │ │ │ ├── circle.html │ │ │ ├── default.html │ │ │ ├── dual-ring.html │ │ │ ├── ellipsis.html │ │ │ ├── entries │ │ │ ├── circle │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── default │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── dual-ring │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── ellipsis │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── facebook │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── grid │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── heart │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── hourglass │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── ring │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── ripple │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── roller │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ └── spinner │ │ │ │ ├── index.css │ │ │ │ ├── index.html │ │ │ │ └── index.min.css │ │ │ ├── facebook.html │ │ │ ├── grid.html │ │ │ ├── heart.html │ │ │ ├── hourglass.html │ │ │ ├── index.css │ │ │ ├── index.min.css │ │ │ ├── mixin.pug │ │ │ ├── ring.html │ │ │ ├── ripple.html │ │ │ ├── roller.html │ │ │ └── spinner.html │ ├── ldcolorpicker │ │ ├── 2.0.2 │ │ │ ├── ldcp.css │ │ │ ├── ldcp.js │ │ │ ├── ldcp.min.css │ │ │ └── ldcp.min.js │ │ ├── 3.0.1 │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── index.css │ │ │ ├── index.js │ │ │ ├── index.min.css │ │ │ ├── index.min.js │ │ │ └── package.json │ │ └── main │ └── ldquery │ │ ├── 2.0.0 │ │ ├── ldq.js │ │ └── ldq.min.js │ │ ├── 2.1.0 │ │ ├── ldq.js │ │ └── ldq.min.js │ │ ├── 3.0.3 │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── index.min.js │ │ └── package.json │ │ └── main │ ├── @plotdb │ ├── block │ │ ├── 2.0.5 │ │ │ ├── block.js │ │ │ └── block.min.js │ │ ├── 2.0.6 │ │ │ ├── block.js │ │ │ └── block.min.js │ │ ├── 2.0.7 │ │ │ ├── block.js │ │ │ └── block.min.js │ │ ├── 4.6.0 │ │ │ ├── CHANGELOG.md │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ ├── index.min.js │ │ │ └── package.json │ │ └── main │ ├── csscope │ │ ├── 1.0.0 │ │ │ ├── csscope.js │ │ │ └── csscope.min.js │ │ ├── 2.0.0 │ │ │ ├── csscope.js │ │ │ └── csscope.min.js │ │ ├── 4.0.5 │ │ │ ├── CHANGELOG.md │ │ │ ├── README.md │ │ │ ├── index.js │ │ │ ├── index.min.js │ │ │ └── package.json │ │ └── main │ └── rescope │ │ ├── 3.0.0 │ │ ├── rescope.js │ │ └── rescope.min.js │ │ ├── 4.1.3 │ │ ├── README.md │ │ ├── index.js │ │ ├── index.min.js │ │ └── package.json │ │ └── main │ ├── bootstrap.ldui │ ├── 0.0.1 │ │ ├── bootstrap.ldui.css │ │ ├── bootstrap.ldui.js │ │ ├── bootstrap.ldui.min.css │ │ ├── bootstrap.ldui.min.js │ │ ├── index.pug │ │ └── pug │ │ │ ├── base64-image.pug │ │ │ ├── loader.pug │ │ │ ├── lorem-ipsum.pug │ │ │ └── misc.pug │ └── main │ ├── bootstrap │ ├── 4.6.0 │ │ ├── LICENSE │ │ ├── README.md │ │ ├── dist │ │ │ ├── css │ │ │ │ ├── bootstrap-grid.css │ │ │ │ ├── bootstrap-grid.css.map │ │ │ │ ├── bootstrap-grid.min.css │ │ │ │ ├── bootstrap-grid.min.css.map │ │ │ │ ├── bootstrap-reboot.css │ │ │ │ ├── bootstrap-reboot.css.map │ │ │ │ ├── bootstrap-reboot.min.css │ │ │ │ ├── bootstrap-reboot.min.css.map │ │ │ │ ├── bootstrap.css │ │ │ │ ├── bootstrap.css.map │ │ │ │ ├── bootstrap.min.css │ │ │ │ └── bootstrap.min.css.map │ │ │ └── js │ │ │ │ ├── bootstrap.bundle.js │ │ │ │ ├── bootstrap.bundle.js.map │ │ │ │ ├── bootstrap.bundle.min.js │ │ │ │ ├── bootstrap.bundle.min.js.map │ │ │ │ ├── bootstrap.js │ │ │ │ ├── bootstrap.js.map │ │ │ │ ├── bootstrap.min.js │ │ │ │ └── bootstrap.min.js.map │ │ ├── index.css │ │ ├── index.js │ │ ├── js │ │ │ ├── dist │ │ │ │ ├── alert.js │ │ │ │ ├── alert.js.map │ │ │ │ ├── button.js │ │ │ │ ├── button.js.map │ │ │ │ ├── carousel.js │ │ │ │ ├── carousel.js.map │ │ │ │ ├── collapse.js │ │ │ │ ├── collapse.js.map │ │ │ │ ├── dropdown.js │ │ │ │ ├── dropdown.js.map │ │ │ │ ├── index.js │ │ │ │ ├── modal.js │ │ │ │ ├── modal.js.map │ │ │ │ ├── popover.js │ │ │ │ ├── popover.js.map │ │ │ │ ├── scrollspy.js │ │ │ │ ├── scrollspy.js.map │ │ │ │ ├── tab.js │ │ │ │ ├── tab.js.map │ │ │ │ ├── toast.js │ │ │ │ ├── toast.js.map │ │ │ │ ├── tooltip.js │ │ │ │ ├── tooltip.js.map │ │ │ │ ├── util.js │ │ │ │ └── util.js.map │ │ │ └── src │ │ │ │ ├── alert.js │ │ │ │ ├── button.js │ │ │ │ ├── carousel.js │ │ │ │ ├── collapse.js │ │ │ │ ├── dropdown.js │ │ │ │ ├── modal.js │ │ │ │ ├── popover.js │ │ │ │ ├── scrollspy.js │ │ │ │ ├── tab.js │ │ │ │ ├── toast.js │ │ │ │ ├── tools │ │ │ │ └── sanitizer.js │ │ │ │ ├── tooltip.js │ │ │ │ └── util.js │ │ ├── package.json │ │ └── scss │ │ │ ├── _alert.scss │ │ │ ├── _badge.scss │ │ │ ├── _breadcrumb.scss │ │ │ ├── _button-group.scss │ │ │ ├── _buttons.scss │ │ │ ├── _card.scss │ │ │ ├── _carousel.scss │ │ │ ├── _close.scss │ │ │ ├── _code.scss │ │ │ ├── _custom-forms.scss │ │ │ ├── _dropdown.scss │ │ │ ├── _forms.scss │ │ │ ├── _functions.scss │ │ │ ├── _grid.scss │ │ │ ├── _images.scss │ │ │ ├── _input-group.scss │ │ │ ├── _jumbotron.scss │ │ │ ├── _list-group.scss │ │ │ ├── _media.scss │ │ │ ├── _mixins.scss │ │ │ ├── _modal.scss │ │ │ ├── _nav.scss │ │ │ ├── _navbar.scss │ │ │ ├── _pagination.scss │ │ │ ├── _popover.scss │ │ │ ├── _print.scss │ │ │ ├── _progress.scss │ │ │ ├── _reboot.scss │ │ │ ├── _root.scss │ │ │ ├── _spinners.scss │ │ │ ├── _tables.scss │ │ │ ├── _toasts.scss │ │ │ ├── _tooltip.scss │ │ │ ├── _transitions.scss │ │ │ ├── _type.scss │ │ │ ├── _utilities.scss │ │ │ ├── _variables.scss │ │ │ ├── bootstrap-grid.scss │ │ │ ├── bootstrap-reboot.scss │ │ │ ├── bootstrap.scss │ │ │ ├── mixins │ │ │ ├── _alert.scss │ │ │ ├── _background-variant.scss │ │ │ ├── _badge.scss │ │ │ ├── _border-radius.scss │ │ │ ├── _box-shadow.scss │ │ │ ├── _breakpoints.scss │ │ │ ├── _buttons.scss │ │ │ ├── _caret.scss │ │ │ ├── _clearfix.scss │ │ │ ├── _deprecate.scss │ │ │ ├── _float.scss │ │ │ ├── _forms.scss │ │ │ ├── _gradients.scss │ │ │ ├── _grid-framework.scss │ │ │ ├── _grid.scss │ │ │ ├── _hover.scss │ │ │ ├── _image.scss │ │ │ ├── _list-group.scss │ │ │ ├── _lists.scss │ │ │ ├── _nav-divider.scss │ │ │ ├── _pagination.scss │ │ │ ├── _reset-text.scss │ │ │ ├── _resize.scss │ │ │ ├── _screen-reader.scss │ │ │ ├── _size.scss │ │ │ ├── _table-row.scss │ │ │ ├── _text-emphasis.scss │ │ │ ├── _text-hide.scss │ │ │ ├── _text-truncate.scss │ │ │ ├── _transition.scss │ │ │ └── _visibility.scss │ │ │ ├── utilities │ │ │ ├── _align.scss │ │ │ ├── _background.scss │ │ │ ├── _borders.scss │ │ │ ├── _clearfix.scss │ │ │ ├── _display.scss │ │ │ ├── _embed.scss │ │ │ ├── _flex.scss │ │ │ ├── _float.scss │ │ │ ├── _interactions.scss │ │ │ ├── _overflow.scss │ │ │ ├── _position.scss │ │ │ ├── _screenreaders.scss │ │ │ ├── _shadows.scss │ │ │ ├── _sizing.scss │ │ │ ├── _spacing.scss │ │ │ ├── _stretched-link.scss │ │ │ ├── _text.scss │ │ │ └── _visibility.scss │ │ │ └── vendor │ │ │ └── _rfs.scss │ └── main │ ├── ldcolor │ ├── 0.0.3 │ │ ├── ldcolor.js │ │ ├── ldcolor.min.js │ │ ├── ldcolor.named.js │ │ └── ldcolor.named.min.js │ ├── 0.0.4 │ │ ├── ldcolor.js │ │ ├── ldcolor.min.js │ │ ├── ldcolor.named.js │ │ └── ldcolor.named.min.js │ ├── 1.0.0 │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── index.min.js │ │ ├── index.named.js │ │ ├── index.named.min.js │ │ └── package.json │ └── main │ ├── ldcover │ ├── 1.3.3 │ │ ├── ldcv.css │ │ ├── ldcv.effects.css │ │ ├── ldcv.effects.min.css │ │ ├── ldcv.js │ │ ├── ldcv.min.css │ │ ├── ldcv.min.js │ │ └── ldcv.pug │ ├── 3.0.1 │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.css │ │ ├── index.js │ │ ├── index.min.css │ │ ├── index.min.js │ │ ├── index.pug │ │ ├── ldcv.effects.css │ │ ├── ldcv.effects.min.css │ │ └── package.json │ └── main │ ├── ldslider │ ├── 2.0.6 │ │ ├── ldrs.css │ │ ├── ldrs.js │ │ ├── ldrs.min.css │ │ └── ldrs.min.js │ ├── 3.0.4 │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.css │ │ ├── index.js │ │ ├── index.min.css │ │ ├── index.min.js │ │ └── package.json │ └── main │ ├── ldview │ ├── 0.1.1 │ │ ├── index.js │ │ ├── index.min.js │ │ └── index.pug │ ├── 0.2.2 │ │ ├── index.js │ │ ├── index.min.js │ │ └── index.pug │ ├── 1.1.1 │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── index.min.js │ │ ├── index.pug │ │ └── package.json │ └── main │ └── proxise │ ├── 0.1.2 │ ├── proxise.js │ └── proxise.min.js │ ├── 1.0.1 │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ ├── index.min.js │ └── package.json │ └── main ├── favicon.ico ├── index.html └── thumbnail.gif /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .*.swp 3 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Logs 2 | 3 | # v2.0.3 4 | 5 | - replace `colors` with `@plotdb/color` 6 | - upgrade some devDependencies 7 | 8 | 9 | # v2.0.2 10 | 11 | - fix blinking issue of `ripple` spinner in mobile Safari 12 | 13 | 14 | # v2.0.1 15 | 16 | - add missing `vars.styl` and ensure build pass 17 | - fix typo in `spinner` about color ( incorrectly set to `vendors`, which should be `color.fg` ) 18 | - fix incorrect paths in `mixin.pug` 19 | 20 | 21 | # v2.0.0 22 | 23 | - rename `css-spinner` to `@loadingio/css-spinner` since the old name conflicts. 24 | - correct box-sizing model in every spinner 25 | - fix ripple and heart spinner alignment 26 | - add mixin.pug 27 | - use currentColor for spinner color 28 | - add `style` field in package.json 29 | - support attributes in mixin 30 | -------------------------------------------------------------------------------- /dist/circle.html: -------------------------------------------------------------------------------- 1 | 36 |
-------------------------------------------------------------------------------- /dist/default.html: -------------------------------------------------------------------------------- 1 | 90 |
-------------------------------------------------------------------------------- /dist/dual-ring.html: -------------------------------------------------------------------------------- 1 | 32 |
-------------------------------------------------------------------------------- /dist/ellipsis.html: -------------------------------------------------------------------------------- 1 | 63 |
-------------------------------------------------------------------------------- /dist/entries/circle/index.css: -------------------------------------------------------------------------------- 1 | .lds-circle, 2 | .lds-circle div { 3 | box-sizing: border-box; 4 | } 5 | .lds-circle { 6 | display: inline-block; 7 | transform: translateZ(1px); 8 | } 9 | .lds-circle > div { 10 | display: inline-block; 11 | width: 64px; 12 | height: 64px; 13 | margin: 8px; 14 | background: currentColor; 15 | border-radius: 50%; 16 | animation: lds-circle 2.4s cubic-bezier(0, 0.2, 0.8, 1) infinite; 17 | } 18 | @keyframes lds-circle { 19 | 0%, 100% { 20 | animation-timing-function: cubic-bezier(0.5, 0, 1, 0.5); 21 | } 22 | 0% { 23 | transform: rotateY(0deg); 24 | } 25 | 50% { 26 | transform: rotateY(1800deg); 27 | animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1); 28 | } 29 | 100% { 30 | transform: rotateY(3600deg); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /dist/entries/circle/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/circle/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-circle,.lds-circle div{box-sizing:border-box}.lds-circle{display:inline-block;transform:translateZ(1px)}.lds-circle>div{display:inline-block;width:64px;height:64px;margin:8px;background:currentColor;border-radius:50%;animation:lds-circle 2.4s cubic-bezier(0,0.2,0.8,1) infinite}@keyframes lds-circle{0%,100%{animation-timing-function:cubic-bezier(0.5,0,1,0.5)}0%{transform:rotateY(0)}50%{transform:rotateY(1800deg);animation-timing-function:cubic-bezier(0,0.5,0.5,1)}100%{transform:rotateY(3600deg)}} -------------------------------------------------------------------------------- /dist/entries/default/index.css: -------------------------------------------------------------------------------- 1 | .lds-default, 2 | .lds-default div { 3 | box-sizing: border-box; 4 | } 5 | .lds-default { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-default div { 12 | position: absolute; 13 | width: 6.4px; 14 | height: 6.4px; 15 | background: currentColor; 16 | border-radius: 50%; 17 | animation: lds-default 1.2s linear infinite; 18 | } 19 | .lds-default div:nth-child(1) { 20 | animation-delay: 0s; 21 | top: 36.8px; 22 | left: 66.24px; 23 | } 24 | .lds-default div:nth-child(2) { 25 | animation-delay: -0.1s; 26 | top: 22.08px; 27 | left: 62.29579px; 28 | } 29 | .lds-default div:nth-child(3) { 30 | animation-delay: -0.2s; 31 | top: 11.30421px; 32 | left: 51.52px; 33 | } 34 | .lds-default div:nth-child(4) { 35 | animation-delay: -0.3s; 36 | top: 7.36px; 37 | left: 36.8px; 38 | } 39 | .lds-default div:nth-child(5) { 40 | animation-delay: -0.4s; 41 | top: 11.30421px; 42 | left: 22.08px; 43 | } 44 | .lds-default div:nth-child(6) { 45 | animation-delay: -0.5s; 46 | top: 22.08px; 47 | left: 11.30421px; 48 | } 49 | .lds-default div:nth-child(7) { 50 | animation-delay: -0.6s; 51 | top: 36.8px; 52 | left: 7.36px; 53 | } 54 | .lds-default div:nth-child(8) { 55 | animation-delay: -0.7s; 56 | top: 51.52px; 57 | left: 11.30421px; 58 | } 59 | .lds-default div:nth-child(9) { 60 | animation-delay: -0.8s; 61 | top: 62.29579px; 62 | left: 22.08px; 63 | } 64 | .lds-default div:nth-child(10) { 65 | animation-delay: -0.9s; 66 | top: 66.24px; 67 | left: 36.8px; 68 | } 69 | .lds-default div:nth-child(11) { 70 | animation-delay: -1s; 71 | top: 62.29579px; 72 | left: 51.52px; 73 | } 74 | .lds-default div:nth-child(12) { 75 | animation-delay: -1.1s; 76 | top: 51.52px; 77 | left: 62.29579px; 78 | } 79 | @keyframes lds-default { 80 | 0%, 20%, 80%, 100% { 81 | transform: scale(1); 82 | } 83 | 50% { 84 | transform: scale(1.5); 85 | } 86 | } 87 | -------------------------------------------------------------------------------- /dist/entries/default/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/default/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-default,.lds-default div{box-sizing:border-box}.lds-default{display:inline-block;position:relative;width:80px;height:80px}.lds-default div{position:absolute;width:6.4px;height:6.4px;background:currentColor;border-radius:50%;animation:lds-default 1.2s linear infinite}.lds-default div:nth-child(1){animation-delay:0s;top:36.8px;left:66.24px}.lds-default div:nth-child(2){animation-delay:-0.1s;top:22.08px;left:62.29579px}.lds-default div:nth-child(3){animation-delay:-0.2s;top:11.30421px;left:51.52px}.lds-default div:nth-child(4){animation-delay:-0.3s;top:7.36px;left:36.8px}.lds-default div:nth-child(5){animation-delay:-0.4s;top:11.30421px;left:22.08px}.lds-default div:nth-child(6){animation-delay:-0.5s;top:22.08px;left:11.30421px}.lds-default div:nth-child(7){animation-delay:-0.6s;top:36.8px;left:7.36px}.lds-default div:nth-child(8){animation-delay:-0.7s;top:51.52px;left:11.30421px}.lds-default div:nth-child(9){animation-delay:-0.8s;top:62.29579px;left:22.08px}.lds-default div:nth-child(10){animation-delay:-0.9s;top:66.24px;left:36.8px}.lds-default div:nth-child(11){animation-delay:-1s;top:62.29579px;left:51.52px}.lds-default div:nth-child(12){animation-delay:-1.1s;top:51.52px;left:62.29579px}@keyframes lds-default{0%,20%,80%,100%{transform:scale(1)}50%{transform:scale(1.5)}} -------------------------------------------------------------------------------- /dist/entries/dual-ring/index.css: -------------------------------------------------------------------------------- 1 | .lds-dual-ring, 2 | .lds-dual-ring:after { 3 | box-sizing: border-box; 4 | } 5 | .lds-dual-ring { 6 | display: inline-block; 7 | width: 80px; 8 | height: 80px; 9 | } 10 | .lds-dual-ring:after { 11 | content: " "; 12 | display: block; 13 | width: 64px; 14 | height: 64px; 15 | margin: 8px; 16 | border-radius: 50%; 17 | border: 6.4px solid currentColor; 18 | border-color: currentColor transparent currentColor transparent; 19 | animation: lds-dual-ring 1.2s linear infinite; 20 | } 21 | @keyframes lds-dual-ring { 22 | 0% { 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | transform: rotate(360deg); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /dist/entries/dual-ring/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/dual-ring/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-dual-ring,.lds-dual-ring:after{box-sizing:border-box}.lds-dual-ring{display:inline-block;width:80px;height:80px}.lds-dual-ring:after{content:" ";display:block;width:64px;height:64px;margin:8px;border-radius:50%;border:6.4px solid currentColor;border-color:currentColor transparent currentColor transparent;animation:lds-dual-ring 1.2s linear infinite}@keyframes lds-dual-ring{0%{transform:rotate(0)}100%{transform:rotate(360deg)}} -------------------------------------------------------------------------------- /dist/entries/ellipsis/index.css: -------------------------------------------------------------------------------- 1 | .lds-ellipsis, 2 | .lds-ellipsis div { 3 | box-sizing: border-box; 4 | } 5 | .lds-ellipsis { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-ellipsis div { 12 | position: absolute; 13 | top: 33.33333px; 14 | width: 13.33333px; 15 | height: 13.33333px; 16 | border-radius: 50%; 17 | background: currentColor; 18 | animation-timing-function: cubic-bezier(0, 1, 1, 0); 19 | } 20 | .lds-ellipsis div:nth-child(1) { 21 | left: 8px; 22 | animation: lds-ellipsis1 0.6s infinite; 23 | } 24 | .lds-ellipsis div:nth-child(2) { 25 | left: 8px; 26 | animation: lds-ellipsis2 0.6s infinite; 27 | } 28 | .lds-ellipsis div:nth-child(3) { 29 | left: 32px; 30 | animation: lds-ellipsis2 0.6s infinite; 31 | } 32 | .lds-ellipsis div:nth-child(4) { 33 | left: 56px; 34 | animation: lds-ellipsis3 0.6s infinite; 35 | } 36 | @keyframes lds-ellipsis1 { 37 | 0% { 38 | transform: scale(0); 39 | } 40 | 100% { 41 | transform: scale(1); 42 | } 43 | } 44 | @keyframes lds-ellipsis3 { 45 | 0% { 46 | transform: scale(1); 47 | } 48 | 100% { 49 | transform: scale(0); 50 | } 51 | } 52 | @keyframes lds-ellipsis2 { 53 | 0% { 54 | transform: translate(0, 0); 55 | } 56 | 100% { 57 | transform: translate(24px, 0); 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /dist/entries/ellipsis/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/ellipsis/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-ellipsis,.lds-ellipsis div{box-sizing:border-box}.lds-ellipsis{display:inline-block;position:relative;width:80px;height:80px}.lds-ellipsis div{position:absolute;top:33.33333px;width:13.33333px;height:13.33333px;border-radius:50%;background:currentColor;animation-timing-function:cubic-bezier(0,1,1,0)}.lds-ellipsis div:nth-child(1){left:8px;animation:lds-ellipsis1 .6s infinite}.lds-ellipsis div:nth-child(2){left:8px;animation:lds-ellipsis2 .6s infinite}.lds-ellipsis div:nth-child(3){left:32px;animation:lds-ellipsis2 .6s infinite}.lds-ellipsis div:nth-child(4){left:56px;animation:lds-ellipsis3 .6s infinite}@keyframes lds-ellipsis1{0%{transform:scale(0)}100%{transform:scale(1)}}@keyframes lds-ellipsis3{0%{transform:scale(1)}100%{transform:scale(0)}}@keyframes lds-ellipsis2{0%{transform:translate(0,0)}100%{transform:translate(24px,0)}} -------------------------------------------------------------------------------- /dist/entries/facebook/index.css: -------------------------------------------------------------------------------- 1 | .lds-facebook, 2 | .lds-facebook div { 3 | box-sizing: border-box; 4 | } 5 | .lds-facebook { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-facebook div { 12 | display: inline-block; 13 | position: absolute; 14 | left: 8px; 15 | width: 16px; 16 | background: currentColor; 17 | animation: lds-facebook 1.2s cubic-bezier(0, 0.5, 0.5, 1) infinite; 18 | } 19 | .lds-facebook div:nth-child(1) { 20 | left: 8px; 21 | animation-delay: -0.24s; 22 | } 23 | .lds-facebook div:nth-child(2) { 24 | left: 32px; 25 | animation-delay: -0.12s; 26 | } 27 | .lds-facebook div:nth-child(3) { 28 | left: 56px; 29 | animation-delay: 0s; 30 | } 31 | @keyframes lds-facebook { 32 | 0% { 33 | top: 8px; 34 | height: 64px; 35 | } 36 | 50%, 100% { 37 | top: 24px; 38 | height: 32px; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /dist/entries/facebook/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/facebook/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-facebook,.lds-facebook div{box-sizing:border-box}.lds-facebook{display:inline-block;position:relative;width:80px;height:80px}.lds-facebook div{display:inline-block;position:absolute;left:8px;width:16px;background:currentColor;animation:lds-facebook 1.2s cubic-bezier(0,0.5,0.5,1) infinite}.lds-facebook div:nth-child(1){left:8px;animation-delay:-0.24s}.lds-facebook div:nth-child(2){left:32px;animation-delay:-0.12s}.lds-facebook div:nth-child(3){left:56px;animation-delay:0s}@keyframes lds-facebook{0%{top:8px;height:64px}50%,100%{top:24px;height:32px}} -------------------------------------------------------------------------------- /dist/entries/grid/index.css: -------------------------------------------------------------------------------- 1 | .lds-grid, 2 | .lds-grid div { 3 | box-sizing: border-box; 4 | } 5 | .lds-grid { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-grid div { 12 | position: absolute; 13 | width: 16px; 14 | height: 16px; 15 | border-radius: 50%; 16 | background: currentColor; 17 | animation: lds-grid 1.2s linear infinite; 18 | } 19 | .lds-grid div:nth-child(1) { 20 | top: 8px; 21 | left: 8px; 22 | animation-delay: 0s; 23 | } 24 | .lds-grid div:nth-child(2) { 25 | top: 8px; 26 | left: 32px; 27 | animation-delay: -0.4s; 28 | } 29 | .lds-grid div:nth-child(3) { 30 | top: 8px; 31 | left: 56px; 32 | animation-delay: -0.8s; 33 | } 34 | .lds-grid div:nth-child(4) { 35 | top: 32px; 36 | left: 8px; 37 | animation-delay: -0.4s; 38 | } 39 | .lds-grid div:nth-child(5) { 40 | top: 32px; 41 | left: 32px; 42 | animation-delay: -0.8s; 43 | } 44 | .lds-grid div:nth-child(6) { 45 | top: 32px; 46 | left: 56px; 47 | animation-delay: -1.2s; 48 | } 49 | .lds-grid div:nth-child(7) { 50 | top: 56px; 51 | left: 8px; 52 | animation-delay: -0.8s; 53 | } 54 | .lds-grid div:nth-child(8) { 55 | top: 56px; 56 | left: 32px; 57 | animation-delay: -1.2s; 58 | } 59 | .lds-grid div:nth-child(9) { 60 | top: 56px; 61 | left: 56px; 62 | animation-delay: -1.6s; 63 | } 64 | @keyframes lds-grid { 65 | 0%, 100% { 66 | opacity: 1; 67 | } 68 | 50% { 69 | opacity: 0.5; 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /dist/entries/grid/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/grid/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-grid,.lds-grid div{box-sizing:border-box}.lds-grid{display:inline-block;position:relative;width:80px;height:80px}.lds-grid div{position:absolute;width:16px;height:16px;border-radius:50%;background:currentColor;animation:lds-grid 1.2s linear infinite}.lds-grid div:nth-child(1){top:8px;left:8px;animation-delay:0s}.lds-grid div:nth-child(2){top:8px;left:32px;animation-delay:-0.4s}.lds-grid div:nth-child(3){top:8px;left:56px;animation-delay:-0.8s}.lds-grid div:nth-child(4){top:32px;left:8px;animation-delay:-0.4s}.lds-grid div:nth-child(5){top:32px;left:32px;animation-delay:-0.8s}.lds-grid div:nth-child(6){top:32px;left:56px;animation-delay:-1.2s}.lds-grid div:nth-child(7){top:56px;left:8px;animation-delay:-0.8s}.lds-grid div:nth-child(8){top:56px;left:32px;animation-delay:-1.2s}.lds-grid div:nth-child(9){top:56px;left:56px;animation-delay:-1.6s}@keyframes lds-grid{0%,100%{opacity:1}50%{opacity:.5}} -------------------------------------------------------------------------------- /dist/entries/heart/index.css: -------------------------------------------------------------------------------- 1 | .lds-heart, 2 | .lds-heart div, 3 | .lds-heart div:after, 4 | .lds-heart div:before { 5 | box-sizing: border-box; 6 | } 7 | .lds-heart { 8 | display: inline-block; 9 | position: relative; 10 | width: 80px; 11 | height: 80px; 12 | transform: rotate(45deg); 13 | transform-origin: 40px 40px; 14 | } 15 | .lds-heart div { 16 | top: 28px; 17 | left: 28px; 18 | position: absolute; 19 | width: 32px; 20 | height: 32px; 21 | background: currentColor; 22 | animation: lds-heart 1.2s infinite cubic-bezier(0.215, 0.61, 0.355, 1); 23 | } 24 | .lds-heart div:after, 25 | .lds-heart div:before { 26 | content: " "; 27 | position: absolute; 28 | display: block; 29 | width: 32px; 30 | height: 32px; 31 | background: currentColor; 32 | } 33 | .lds-heart div:before { 34 | left: -24px; 35 | border-radius: 50% 0 0 50%; 36 | } 37 | .lds-heart div:after { 38 | top: -24px; 39 | border-radius: 50% 50% 0 0; 40 | } 41 | @keyframes lds-heart { 42 | 0% { 43 | transform: scale(0.95); 44 | } 45 | 5% { 46 | transform: scale(1.1); 47 | } 48 | 39% { 49 | transform: scale(0.85); 50 | } 51 | 45% { 52 | transform: scale(1); 53 | } 54 | 60% { 55 | transform: scale(0.95); 56 | } 57 | 100% { 58 | transform: scale(0.9); 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /dist/entries/heart/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/heart/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-heart,.lds-heart div,.lds-heart div:after,.lds-heart div:before{box-sizing:border-box}.lds-heart{display:inline-block;position:relative;width:80px;height:80px;transform:rotate(45deg);transform-origin:40px 40px}.lds-heart div{top:28px;left:28px;position:absolute;width:32px;height:32px;background:currentColor;animation:lds-heart 1.2s infinite cubic-bezier(0.215,0.61,0.355,1)}.lds-heart div:after,.lds-heart div:before{content:" ";position:absolute;display:block;width:32px;height:32px;background:currentColor}.lds-heart div:before{left:-24px;border-radius:50% 0 0 50%}.lds-heart div:after{top:-24px;border-radius:50% 50% 0 0}@keyframes lds-heart{0%{transform:scale(0.95)}5%{transform:scale(1.1)}39%{transform:scale(0.85)}45%{transform:scale(1)}60%{transform:scale(0.95)}100%{transform:scale(0.9)}} -------------------------------------------------------------------------------- /dist/entries/hourglass/index.css: -------------------------------------------------------------------------------- 1 | .lds-hourglass, 2 | .lds-hourglass:after { 3 | box-sizing: border-box; 4 | } 5 | .lds-hourglass { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-hourglass:after { 12 | content: " "; 13 | display: block; 14 | border-radius: 50%; 15 | width: 0; 16 | height: 0; 17 | margin: 8px; 18 | box-sizing: border-box; 19 | border: 32px solid currentColor; 20 | border-color: currentColor transparent currentColor transparent; 21 | animation: lds-hourglass 1.2s infinite; 22 | } 23 | @keyframes lds-hourglass { 24 | 0% { 25 | transform: rotate(0); 26 | animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); 27 | } 28 | 50% { 29 | transform: rotate(900deg); 30 | animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); 31 | } 32 | 100% { 33 | transform: rotate(1800deg); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /dist/entries/hourglass/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/hourglass/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-hourglass,.lds-hourglass:after{box-sizing:border-box}.lds-hourglass{display:inline-block;position:relative;width:80px;height:80px}.lds-hourglass:after{content:" ";display:block;border-radius:50%;width:0;height:0;margin:8px;box-sizing:border-box;border:32px solid currentColor;border-color:currentColor transparent currentColor transparent;animation:lds-hourglass 1.2s infinite}@keyframes lds-hourglass{0%{transform:rotate(0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}50%{transform:rotate(900deg);animation-timing-function:cubic-bezier(0.215,0.61,0.355,1)}100%{transform:rotate(1800deg)}} -------------------------------------------------------------------------------- /dist/entries/ring/index.css: -------------------------------------------------------------------------------- 1 | .lds-ring, 2 | .lds-ring div { 3 | box-sizing: border-box; 4 | } 5 | .lds-ring { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-ring div { 12 | box-sizing: border-box; 13 | display: block; 14 | position: absolute; 15 | width: 64px; 16 | height: 64px; 17 | margin: 8px; 18 | border: 8px solid currentColor; 19 | border-radius: 50%; 20 | animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite; 21 | border-color: currentColor transparent transparent transparent; 22 | } 23 | .lds-ring div:nth-child(1) { 24 | animation-delay: -0.45s; 25 | } 26 | .lds-ring div:nth-child(2) { 27 | animation-delay: -0.3s; 28 | } 29 | .lds-ring div:nth-child(3) { 30 | animation-delay: -0.15s; 31 | } 32 | @keyframes lds-ring { 33 | 0% { 34 | transform: rotate(0deg); 35 | } 36 | 100% { 37 | transform: rotate(360deg); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /dist/entries/ring/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/ring/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-ring,.lds-ring div{box-sizing:border-box}.lds-ring{display:inline-block;position:relative;width:80px;height:80px}.lds-ring div{box-sizing:border-box;display:block;position:absolute;width:64px;height:64px;margin:8px;border:8px solid currentColor;border-radius:50%;animation:lds-ring 1.2s cubic-bezier(0.5,0,0.5,1) infinite;border-color:currentColor transparent transparent transparent}.lds-ring div:nth-child(1){animation-delay:-0.45s}.lds-ring div:nth-child(2){animation-delay:-0.3s}.lds-ring div:nth-child(3){animation-delay:-0.15s}@keyframes lds-ring{0%{transform:rotate(0)}100%{transform:rotate(360deg)}} -------------------------------------------------------------------------------- /dist/entries/ripple/index.css: -------------------------------------------------------------------------------- 1 | .lds-ripple, 2 | .lds-ripple div { 3 | box-sizing: border-box; 4 | } 5 | .lds-ripple { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-ripple div { 12 | position: absolute; 13 | border: 4px solid currentColor; 14 | opacity: 1; 15 | border-radius: 50%; 16 | animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite; 17 | } 18 | .lds-ripple div:nth-child(2) { 19 | animation-delay: -0.5s; 20 | } 21 | @keyframes lds-ripple { 22 | 0% { 23 | top: 36px; 24 | left: 36px; 25 | width: 8px; 26 | height: 8px; 27 | opacity: 0; 28 | } 29 | 4.9% { 30 | top: 36px; 31 | left: 36px; 32 | width: 8px; 33 | height: 8px; 34 | opacity: 0; 35 | } 36 | 5% { 37 | top: 36px; 38 | left: 36px; 39 | width: 8px; 40 | height: 8px; 41 | opacity: 1; 42 | } 43 | 100% { 44 | top: 0; 45 | left: 0; 46 | width: 80px; 47 | height: 80px; 48 | opacity: 0; 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /dist/entries/ripple/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/ripple/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-ripple,.lds-ripple div{box-sizing:border-box}.lds-ripple{display:inline-block;position:relative;width:80px;height:80px}.lds-ripple div{position:absolute;border:4px solid currentColor;opacity:1;border-radius:50%;animation:lds-ripple 1s cubic-bezier(0,0.2,0.8,1) infinite}.lds-ripple div:nth-child(2){animation-delay:-0.5s}@keyframes lds-ripple{0%{top:36px;left:36px;width:8px;height:8px;opacity:0}4.9%{top:36px;left:36px;width:8px;height:8px;opacity:0}5%{top:36px;left:36px;width:8px;height:8px;opacity:1}100%{top:0;left:0;width:80px;height:80px;opacity:0}} -------------------------------------------------------------------------------- /dist/entries/roller/index.css: -------------------------------------------------------------------------------- 1 | .lds-roller, 2 | .lds-roller div, 3 | .lds-roller div:after { 4 | box-sizing: border-box; 5 | } 6 | .lds-roller { 7 | display: inline-block; 8 | position: relative; 9 | width: 80px; 10 | height: 80px; 11 | } 12 | .lds-roller div { 13 | animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite; 14 | transform-origin: 40px 40px; 15 | } 16 | .lds-roller div:after { 17 | content: " "; 18 | display: block; 19 | position: absolute; 20 | width: 7.2px; 21 | height: 7.2px; 22 | border-radius: 50%; 23 | background: currentColor; 24 | margin: -3.6px 0 0 -3.6px; 25 | } 26 | .lds-roller div:nth-child(1) { 27 | animation-delay: -0.036s; 28 | } 29 | .lds-roller div:nth-child(1):after { 30 | top: 62.62742px; 31 | left: 62.62742px; 32 | } 33 | .lds-roller div:nth-child(2) { 34 | animation-delay: -0.072s; 35 | } 36 | .lds-roller div:nth-child(2):after { 37 | top: 67.71281px; 38 | left: 56px; 39 | } 40 | .lds-roller div:nth-child(3) { 41 | animation-delay: -0.108s; 42 | } 43 | .lds-roller div:nth-child(3):after { 44 | top: 70.90963px; 45 | left: 48.28221px; 46 | } 47 | .lds-roller div:nth-child(4) { 48 | animation-delay: -0.144s; 49 | } 50 | .lds-roller div:nth-child(4):after { 51 | top: 72px; 52 | left: 40px; 53 | } 54 | .lds-roller div:nth-child(5) { 55 | animation-delay: -0.18s; 56 | } 57 | .lds-roller div:nth-child(5):after { 58 | top: 70.90963px; 59 | left: 31.71779px; 60 | } 61 | .lds-roller div:nth-child(6) { 62 | animation-delay: -0.216s; 63 | } 64 | .lds-roller div:nth-child(6):after { 65 | top: 67.71281px; 66 | left: 24px; 67 | } 68 | .lds-roller div:nth-child(7) { 69 | animation-delay: -0.252s; 70 | } 71 | .lds-roller div:nth-child(7):after { 72 | top: 62.62742px; 73 | left: 17.37258px; 74 | } 75 | .lds-roller div:nth-child(8) { 76 | animation-delay: -0.288s; 77 | } 78 | .lds-roller div:nth-child(8):after { 79 | top: 56px; 80 | left: 12.28719px; 81 | } 82 | @keyframes lds-roller { 83 | 0% { 84 | transform: rotate(0deg); 85 | } 86 | 100% { 87 | transform: rotate(360deg); 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /dist/entries/roller/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/roller/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-roller,.lds-roller div,.lds-roller div:after{box-sizing:border-box}.lds-roller{display:inline-block;position:relative;width:80px;height:80px}.lds-roller div{animation:lds-roller 1.2s cubic-bezier(0.5,0,0.5,1) infinite;transform-origin:40px 40px}.lds-roller div:after{content:" ";display:block;position:absolute;width:7.2px;height:7.2px;border-radius:50%;background:currentColor;margin:-3.6px 0 0 -3.6px}.lds-roller div:nth-child(1){animation-delay:-0.036s}.lds-roller div:nth-child(1):after{top:62.62742px;left:62.62742px}.lds-roller div:nth-child(2){animation-delay:-0.072s}.lds-roller div:nth-child(2):after{top:67.71281px;left:56px}.lds-roller div:nth-child(3){animation-delay:-0.108s}.lds-roller div:nth-child(3):after{top:70.90963px;left:48.28221px}.lds-roller div:nth-child(4){animation-delay:-0.144s}.lds-roller div:nth-child(4):after{top:72px;left:40px}.lds-roller div:nth-child(5){animation-delay:-0.18s}.lds-roller div:nth-child(5):after{top:70.90963px;left:31.71779px}.lds-roller div:nth-child(6){animation-delay:-0.216s}.lds-roller div:nth-child(6):after{top:67.71281px;left:24px}.lds-roller div:nth-child(7){animation-delay:-0.252s}.lds-roller div:nth-child(7):after{top:62.62742px;left:17.37258px}.lds-roller div:nth-child(8){animation-delay:-0.288s}.lds-roller div:nth-child(8):after{top:56px;left:12.28719px}@keyframes lds-roller{0%{transform:rotate(0)}100%{transform:rotate(360deg)}} -------------------------------------------------------------------------------- /dist/entries/spinner/index.css: -------------------------------------------------------------------------------- 1 | .lds-spinner, 2 | .lds-spinner div, 3 | .lds-spinner div:after { 4 | box-sizing: border-box; 5 | } 6 | .lds-spinner { 7 | color: currentColor; 8 | display: inline-block; 9 | position: relative; 10 | width: 80px; 11 | height: 80px; 12 | } 13 | .lds-spinner div { 14 | transform-origin: 40px 40px; 15 | animation: lds-spinner 1.2s linear infinite; 16 | } 17 | .lds-spinner div:after { 18 | content: " "; 19 | display: block; 20 | position: absolute; 21 | top: 3.2px; 22 | left: 36.8px; 23 | width: 6.4px; 24 | height: 17.6px; 25 | border-radius: 20%; 26 | background: currentColor; 27 | } 28 | .lds-spinner div:nth-child(1) { 29 | transform: rotate(0deg); 30 | animation-delay: -1.1s; 31 | } 32 | .lds-spinner div:nth-child(2) { 33 | transform: rotate(30deg); 34 | animation-delay: -1s; 35 | } 36 | .lds-spinner div:nth-child(3) { 37 | transform: rotate(60deg); 38 | animation-delay: -0.9s; 39 | } 40 | .lds-spinner div:nth-child(4) { 41 | transform: rotate(90deg); 42 | animation-delay: -0.8s; 43 | } 44 | .lds-spinner div:nth-child(5) { 45 | transform: rotate(120deg); 46 | animation-delay: -0.7s; 47 | } 48 | .lds-spinner div:nth-child(6) { 49 | transform: rotate(150deg); 50 | animation-delay: -0.6s; 51 | } 52 | .lds-spinner div:nth-child(7) { 53 | transform: rotate(180deg); 54 | animation-delay: -0.5s; 55 | } 56 | .lds-spinner div:nth-child(8) { 57 | transform: rotate(210deg); 58 | animation-delay: -0.4s; 59 | } 60 | .lds-spinner div:nth-child(9) { 61 | transform: rotate(240deg); 62 | animation-delay: -0.3s; 63 | } 64 | .lds-spinner div:nth-child(10) { 65 | transform: rotate(270deg); 66 | animation-delay: -0.2s; 67 | } 68 | .lds-spinner div:nth-child(11) { 69 | transform: rotate(300deg); 70 | animation-delay: -0.1s; 71 | } 72 | .lds-spinner div:nth-child(12) { 73 | transform: rotate(330deg); 74 | animation-delay: 0s; 75 | } 76 | @keyframes lds-spinner { 77 | 0% { 78 | opacity: 1; 79 | } 80 | 100% { 81 | opacity: 0; 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /dist/entries/spinner/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /dist/entries/spinner/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-spinner,.lds-spinner div,.lds-spinner div:after{box-sizing:border-box}.lds-spinner{color:currentColor;display:inline-block;position:relative;width:80px;height:80px}.lds-spinner div{transform-origin:40px 40px;animation:lds-spinner 1.2s linear infinite}.lds-spinner div:after{content:" ";display:block;position:absolute;top:3.2px;left:36.8px;width:6.4px;height:17.6px;border-radius:20%;background:currentColor}.lds-spinner div:nth-child(1){transform:rotate(0);animation-delay:-1.1s}.lds-spinner div:nth-child(2){transform:rotate(30deg);animation-delay:-1s}.lds-spinner div:nth-child(3){transform:rotate(60deg);animation-delay:-0.9s}.lds-spinner div:nth-child(4){transform:rotate(90deg);animation-delay:-0.8s}.lds-spinner div:nth-child(5){transform:rotate(120deg);animation-delay:-0.7s}.lds-spinner div:nth-child(6){transform:rotate(150deg);animation-delay:-0.6s}.lds-spinner div:nth-child(7){transform:rotate(180deg);animation-delay:-0.5s}.lds-spinner div:nth-child(8){transform:rotate(210deg);animation-delay:-0.4s}.lds-spinner div:nth-child(9){transform:rotate(240deg);animation-delay:-0.3s}.lds-spinner div:nth-child(10){transform:rotate(270deg);animation-delay:-0.2s}.lds-spinner div:nth-child(11){transform:rotate(300deg);animation-delay:-0.1s}.lds-spinner div:nth-child(12){transform:rotate(330deg);animation-delay:0s}@keyframes lds-spinner{0%{opacity:1}100%{opacity:0}} -------------------------------------------------------------------------------- /dist/facebook.html: -------------------------------------------------------------------------------- 1 | 44 |
-------------------------------------------------------------------------------- /dist/grid.html: -------------------------------------------------------------------------------- 1 | 75 |
-------------------------------------------------------------------------------- /dist/heart.html: -------------------------------------------------------------------------------- 1 | 64 |
-------------------------------------------------------------------------------- /dist/hourglass.html: -------------------------------------------------------------------------------- 1 | 39 |
-------------------------------------------------------------------------------- /dist/mixin.pug: -------------------------------------------------------------------------------- 1 | mixin lds-circle() 2 | .lds-circle&attributes(attributes): div 3 | mixin lds-default() 4 | .lds-default&attributes(attributes) #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 5 | mixin lds-dual-ring() 6 | .lds-dual-ring 7 | mixin lds-ellipsis() 8 | .lds-ellipsis&attributes(attributes) #[div]#[div]#[div]#[div] 9 | mixin lds-facebook() 10 | .lds-facebook&attributes(attributes) #[div]#[div]#[div] 11 | mixin lds-grid() 12 | .lds-grid&attributes(attributes) #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 13 | mixin lds-heart() 14 | .lds-heart&attributes(attributes): div 15 | mixin lds-hourglass() 16 | .lds-hourglass 17 | mixin lds-ring() 18 | .lds-ring&attributes(attributes) #[div]#[div]#[div]#[div] 19 | mixin lds-ripple() 20 | .lds-ripple&attributes(attributes) #[div]#[div] 21 | mixin lds-roller() 22 | .lds-roller&attributes(attributes) #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 23 | mixin lds-spinner() 24 | .lds-spinner&attributes(attributes) #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 25 | -------------------------------------------------------------------------------- /dist/ring.html: -------------------------------------------------------------------------------- 1 | 43 |
-------------------------------------------------------------------------------- /dist/ripple.html: -------------------------------------------------------------------------------- 1 | 54 |
-------------------------------------------------------------------------------- /dist/roller.html: -------------------------------------------------------------------------------- 1 | 93 |
-------------------------------------------------------------------------------- /dist/spinner.html: -------------------------------------------------------------------------------- 1 | 87 |
-------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": "loading.io", 3 | "name": "@loadingio/css-spinner", 4 | "license": "CC0-1.0", 5 | "description": "Pure CSS Loader Optimized for the Web", 6 | "version": "2.0.3", 7 | "style": "dist/index.min.css", 8 | "homepage": "https://loading.io/css/", 9 | "files": [ 10 | "dist/**/*" 11 | ], 12 | "repository": { 13 | "type": "git", 14 | "url": "https://github.com/loadingio/css-spinner" 15 | }, 16 | "scripts": { 17 | "start": "./node_modules/.bin/server -r web -o true", 18 | "build": "./node_modules/.bin/lsc build.ls" 19 | }, 20 | "devDependencies": { 21 | "@loadingio/bootstrap.ext": "^0.0.9", 22 | "@loadingio/ldcolorpicker": "^3.0.1", 23 | "@loadingio/ldquery": "^3.0.4", 24 | "@plotdb/block": "^4.6.2", 25 | "@plotdb/csscope": "^4.0.7", 26 | "@plotdb/rescope": "^4.1.7", 27 | "@zbryikt/template": "^2.3.38", 28 | "bootstrap": "^4.5.2", 29 | "@plotdb/colors": "^0.0.2", 30 | "fedep": "^1.1.7", 31 | "fs-extra": "^8.0.0", 32 | "ldcolor": "^1.0.0", 33 | "ldcover": "^3.2.1", 34 | "ldslider": "^3.0.4", 35 | "ldview": "^1.2.1", 36 | "livescript": "^1.6.0", 37 | "progress": "^2.0.0", 38 | "proxise": "^1.0.1", 39 | "pug": "^3.0.2", 40 | "stylus": "^0.55.0", 41 | "uglify-js": "^3.13.1", 42 | "uglifycss": "^0.0.29" 43 | }, 44 | "frontendDependencies": { 45 | "root": "web/static/assets/lib", 46 | "modules": [ 47 | "bootstrap", 48 | "@loadingio/bootstrap.ext", 49 | "@loadingio/ldquery", 50 | "@loadingio/ldcolorpicker", 51 | "@plotdb/block", 52 | "@plotdb/rescope", 53 | "@plotdb/csscope", 54 | "proxise", 55 | "ldview", 56 | "ldslider", 57 | "ldcover", 58 | "ldcolor" 59 | ] 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /src/circle/index.pug: -------------------------------------------------------------------------------- 1 | .lds-circle: div 2 | -------------------------------------------------------------------------------- /src/circle/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | @keyframes lds-circle 3 | 0%, 100% 4 | animation-timing-function: cubic-bezier(.5,0,1,.5) 5 | 0% 6 | transform: rotateY(0deg) 7 | 50% 8 | transform: rotateY(1800deg) 9 | animation-timing-function: cubic-bezier(0,.5,.5,1) 10 | 100% 11 | transform: rotateY(3600deg) 12 | 13 | .lds-circle, .lds-circle div 14 | box-sizing: border-box 15 | 16 | .lds-circle 17 | display: inline-block 18 | transform: translateZ(1px) 19 | 20 | .lds-circle > div 21 | display: inline-block 22 | width: prec-round(size * .8) 23 | height: prec-round(size * .8) 24 | margin: prec-round(size * .1) 25 | background: color.fg 26 | border-radius: 50% 27 | animation: lds-circle (speed * 2) cubic-bezier(0,.2,.8,1) infinite 28 | -------------------------------------------------------------------------------- /src/default/index.pug: -------------------------------------------------------------------------------- 1 | .lds-default #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 2 | -------------------------------------------------------------------------------- /src/default/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | ballSize = size * .08 3 | radius = (size - ballSize) * .4 4 | 5 | @keyframes lds-default 6 | 0%,20%,80%,100% 7 | transform: scale(1) 8 | 50% 9 | transform: scale(1.5) 10 | 11 | .lds-default, .lds-default div 12 | box-sizing: border-box 13 | 14 | .lds-default 15 | display: inline-block 16 | position: relative 17 | width: prec-round(size) 18 | height: prec-round(size) 19 | 20 | .lds-default div 21 | position: absolute 22 | width: prec-round(ballSize) 23 | height: prec-round(ballSize) 24 | background: color.fg 25 | border-radius: 50% 26 | animation: lds-default speed linear infinite 27 | 28 | for angle,key in 0deg 30deg 60deg 90deg 120deg 150deg 180deg 210deg 240deg 270deg 300deg 330deg 29 | .lds-default div:nth-child({key + 1}) 30 | animation-delay: speed * (key * -1 / 12) 31 | top: prec-round((size - ballSize) * .5 + sin(-1 * angle) * radius) 32 | left: prec-round((size - ballSize) * .5 + cos(-1 * angle) * radius) 33 | -------------------------------------------------------------------------------- /src/dual-ring/index.pug: -------------------------------------------------------------------------------- 1 | .lds-dual-ring 2 | -------------------------------------------------------------------------------- /src/dual-ring/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | borderSize = size * .08 3 | 4 | @keyframes lds-dual-ring 5 | 0% 6 | transform: rotate(0deg) 7 | 100% 8 | transform: rotate(360deg) 9 | 10 | .lds-dual-ring, .lds-dual-ring:after 11 | box-sizing: border-box 12 | 13 | .lds-dual-ring 14 | display: inline-block 15 | width: prec-round(size) 16 | height: prec-round(size) 17 | 18 | .lds-dual-ring:after 19 | content: " " 20 | display: block 21 | width: prec-round(size * .8) 22 | height: prec-round(size * .8) 23 | margin: prec-round(size * .1) 24 | border-radius: 50% 25 | border: prec-round(borderSize) solid color.fg 26 | border-color: color.fg transparent color.fg transparent 27 | animation: lds-dual-ring speed linear infinite 28 | -------------------------------------------------------------------------------- /src/ellipsis/index.pug: -------------------------------------------------------------------------------- 1 | .lds-ellipsis #[div]#[div]#[div]#[div] 2 | -------------------------------------------------------------------------------- /src/ellipsis/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | ballSize = size / 6 3 | gapSize = size / 10 4 | mySpeed = speed * .5 5 | 6 | .lds-ellipsis, .lds-ellipsis div 7 | box-sizing: border-box 8 | 9 | .lds-ellipsis 10 | display: inline-block 11 | position: relative 12 | width: prec-round(size) 13 | height: prec-round(size) 14 | 15 | .lds-ellipsis div 16 | position: absolute 17 | top: prec-round((size - ballSize) * .5) 18 | width: prec-round(ballSize) 19 | height: prec-round(ballSize) 20 | border-radius: 50% 21 | background: color.fg 22 | animation-timing-function: cubic-bezier(0,1,1,0) 23 | .lds-ellipsis div:nth-child(1) 24 | left: prec-round(gapSize) 25 | animation: lds-ellipsis1 mySpeed infinite 26 | .lds-ellipsis div:nth-child(2) 27 | left: prec-round(gapSize) 28 | animation: lds-ellipsis2 mySpeed infinite 29 | .lds-ellipsis div:nth-child(3) 30 | left: prec-round(gapSize * 4) 31 | animation: lds-ellipsis2 mySpeed infinite 32 | .lds-ellipsis div:nth-child(4) 33 | left: prec-round(gapSize * 7) 34 | animation: lds-ellipsis3 mySpeed infinite 35 | 36 | @keyframes lds-ellipsis1 37 | 0% 38 | transform: scale(0) 39 | 100% 40 | transform: scale(1) 41 | 42 | @keyframes lds-ellipsis3 43 | 0% 44 | transform: scale(1) 45 | 100% 46 | transform: scale(0) 47 | 48 | @keyframes lds-ellipsis2 49 | 0% 50 | transform: translate(0,0) 51 | 100% 52 | transform: translate(prec-round(gapSize * 3),0) 53 | -------------------------------------------------------------------------------- /src/facebook/index.pug: -------------------------------------------------------------------------------- 1 | .lds-facebook #[div]#[div]#[div] 2 | -------------------------------------------------------------------------------- /src/facebook/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | 3 | barWidth = size / 5 4 | gapSize = size / 10 5 | 6 | @keyframes lds-facebook 7 | 0% 8 | top: prec-round(size * .1) 9 | height: prec-round(size * .8) 10 | 50%, 100% 11 | top: prec-round(size * .3) 12 | height: prec-round(size * .4) 13 | 14 | .lds-facebook, .lds-facebook div 15 | box-sizing: border-box 16 | 17 | .lds-facebook 18 | display: inline-block 19 | position: relative 20 | width: prec-round(size) 21 | height: prec-round(size) 22 | 23 | .lds-facebook div 24 | display: inline-block 25 | position: absolute 26 | left: prec-round(gapSize) 27 | width: prec-round(barWidth) 28 | background: color.fg 29 | animation: lds-facebook speed cubic-bezier(0,.5,.5,1) infinite 30 | .lds-facebook div:nth-child(1) 31 | left: prec-round(gapSize * 1) 32 | animation-delay: -0.2 * speed 33 | .lds-facebook div:nth-child(2) 34 | left: prec-round(gapSize * 4) 35 | animation-delay: -0.1 * speed 36 | .lds-facebook div:nth-child(3) 37 | left: prec-round(gapSize * 7) 38 | animation-delay: 0s 39 | -------------------------------------------------------------------------------- /src/grid/index.pug: -------------------------------------------------------------------------------- 1 | .lds-grid #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 2 | -------------------------------------------------------------------------------- /src/grid/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | ballSize = size / 5 3 | gapSize = size / 10 4 | @keyframes lds-grid 5 | 0%, 100% 6 | opacity: 1 7 | 50% 8 | opacity: .5 9 | 10 | .lds-grid, .lds-grid div 11 | box-sizing: border-box 12 | 13 | .lds-grid 14 | display: inline-block 15 | position: relative 16 | width: prec-round(size) 17 | height: prec-round(size) 18 | 19 | .lds-grid div 20 | position: absolute 21 | width: prec-round(ballSize) 22 | height: prec-round(ballSize) 23 | border-radius: 50% 24 | background: color.fg 25 | animation: lds-grid speed linear infinite 26 | 27 | for key in 0 1 2 3 4 5 6 7 8 28 | .lds-grid div:nth-child({key + 1}) 29 | top: prec-round(floor(key / 3) * (ballSize + gapSize) + gapSize) 30 | left: prec-round(floor(key % 3) * (ballSize + gapSize) + gapSize) 31 | animation-delay: speed * (-1 / 3 * (((key % 3) + floor(key / 3)) % 3)) 32 | -------------------------------------------------------------------------------- /src/heart/index.pug: -------------------------------------------------------------------------------- 1 | .lds-heart: div 2 | -------------------------------------------------------------------------------- /src/heart/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | @keyframes lds-heart 3 | 0% 4 | transform: scale(.95) 5 | 5% 6 | transform: scale(1.1) 7 | 39% 8 | transform: scale(.85) 9 | 45% 10 | transform: scale(1) 11 | 60% 12 | transform: scale(.95) 13 | 100% 14 | transform: scale(.9) 15 | 16 | .lds-heart, .lds-heart div, .lds-heart div:after, .lds-heart div:before 17 | box-sizing: border-box 18 | 19 | .lds-heart 20 | display: inline-block 21 | position: relative 22 | width: prec-round(size) 23 | height: prec-round(size) 24 | transform: rotate(45deg) 25 | transform-origin: prec-round(size * .5) prec-round(size * .5) 26 | div 27 | top: prec-round(size * .35) 28 | left: prec-round(size * .35) 29 | position: absolute 30 | width: prec-round(size * .4) 31 | height: prec-round(size * .4) 32 | background: color.fg 33 | animation: lds-heart speed infinite cubic-bezier(.215,.61,.355,1) 34 | 35 | div:after, div:before 36 | content: " " 37 | position: absolute 38 | display: block 39 | width: prec-round(size * .4) 40 | height: prec-round(size * .4) 41 | background: color.fg 42 | div:before 43 | left: prec-round(size * -.3) 44 | border-radius: 50% 0 0 50% 45 | 46 | div:after 47 | top: prec-round(size * -.3) 48 | border-radius: 50% 50% 0 0 49 | -------------------------------------------------------------------------------- /src/hourglass/index.pug: -------------------------------------------------------------------------------- 1 | .lds-hourglass 2 | -------------------------------------------------------------------------------- /src/hourglass/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | @keyframes lds-hourglass 3 | 0% 4 | transform: rotate(0) 5 | animation-timing-function: cubic-bezier(.55,.055,.675,.19) 6 | 50% 7 | transform: rotate(900deg) 8 | animation-timing-function: cubic-bezier(.215,.61,.355,1) 9 | 100% 10 | transform: rotate(1800deg) 11 | 12 | .lds-hourglass, .lds-hourglass:after 13 | box-sizing: border-box 14 | 15 | .lds-hourglass 16 | display: inline-block 17 | position: relative 18 | width: prec-round(size) 19 | height: prec-round(size) 20 | 21 | .lds-hourglass:after 22 | content: " " 23 | display: block 24 | border-radius: 50% 25 | width: 0 26 | height: 0 27 | margin: prec-round(size * .1) 28 | box-sizing: border-box 29 | border: prec-round(size * .4) solid color.fg 30 | border-color: color.fg transparent color.fg transparent 31 | animation: lds-hourglass speed infinite 32 | -------------------------------------------------------------------------------- /src/ring/index.pug: -------------------------------------------------------------------------------- 1 | .lds-ring #[div]#[div]#[div]#[div] 2 | -------------------------------------------------------------------------------- /src/ring/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | delta = -.125 3 | @keyframes lds-ring 4 | 0% 5 | transform: rotate(0deg) 6 | 100% 7 | transform: rotate(360deg) 8 | 9 | .lds-ring, .lds-ring div 10 | box-sizing: border-box 11 | 12 | .lds-ring 13 | display: inline-block 14 | position: relative 15 | width: prec-round(size) 16 | height: prec-round(size) 17 | div 18 | box-sizing: border-box 19 | display: block 20 | position: absolute 21 | width: prec-round(size * .8) 22 | height: prec-round(size * .8) 23 | margin: prec-round(size * .1) 24 | border: prec-round(size * .1) solid color.fg 25 | border-radius: 50% 26 | animation: lds-ring speed cubic-bezier(.5,0,.5,1) infinite 27 | border-color: color.fg transparent transparent transparent 28 | div:nth-child(1) 29 | animation-delay: delta * 3 * speed 30 | div:nth-child(2) 31 | animation-delay: delta * 2 * speed 32 | div:nth-child(3) 33 | animation-delay: delta * 1 * speed 34 | -------------------------------------------------------------------------------- /src/ripple/index.pug: -------------------------------------------------------------------------------- 1 | .lds-ripple #[div]#[div] 2 | -------------------------------------------------------------------------------- /src/ripple/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | borderSize = 4px 3 | 4 | @keyframes lds-ripple 5 | 0% 6 | top: prec-round(size * .5 - borderSize) 7 | left: prec-round(size * .5 - borderSize) 8 | width: borderSize * 2 9 | height: borderSize * 2 10 | opacity: 0 11 | 4.9% 12 | top: prec-round(size * .5 - borderSize) 13 | left: prec-round(size * .5 - borderSize) 14 | width: borderSize * 2 15 | height: borderSize * 2 16 | opacity: 0 17 | 5% 18 | top: prec-round(size * .5 - borderSize) 19 | left: prec-round(size * .5 - borderSize) 20 | width: borderSize * 2 21 | height: borderSize * 2 22 | opacity: 1 23 | 100% 24 | top: 0 25 | left: 0 26 | width: prec-round(size) 27 | height: prec-round(size) 28 | opacity: 0 29 | 30 | .lds-ripple, .lds-ripple div 31 | box-sizing: border-box 32 | 33 | .lds-ripple 34 | display: inline-block 35 | position: relative 36 | width: prec-round(size) 37 | height: prec-round(size) 38 | 39 | .lds-ripple div 40 | position: absolute 41 | border: prec-round(borderSize) solid color.fg 42 | opacity: 1 43 | border-radius: 50% 44 | animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite 45 | .lds-ripple div:nth-child(2) 46 | animation-delay: -.5s 47 | -------------------------------------------------------------------------------- /src/roller/index.pug: -------------------------------------------------------------------------------- 1 | .lds-roller #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 2 | -------------------------------------------------------------------------------- /src/roller/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | mySpeed = speed * 1 3 | ballSize = size * .09 4 | radius = size * .4 5 | dAngle = 15deg 6 | oAngle = 90deg - dAngle * 8 * 0.5 7 | 8 | @keyframes lds-roller 9 | 0% 10 | transform: rotate(0deg) 11 | 100% 12 | transform: rotate(360deg) 13 | 14 | .lds-roller, .lds-roller div, .lds-roller div:after 15 | box-sizing: border-box 16 | 17 | .lds-roller 18 | display: inline-block 19 | position: relative 20 | width: prec-round(size) 21 | height: prec-round(size) 22 | 23 | .lds-roller div 24 | animation: lds-roller mySpeed cubic-bezier(.5,0,.5,1) infinite 25 | transform-origin: prec-round(size * .5) prec-round(size * .5) 26 | 27 | .lds-roller div:after 28 | content: " " 29 | display: block 30 | position: absolute 31 | width: prec-round(ballSize) 32 | height: prec-round(ballSize) 33 | border-radius: 50% 34 | background: color.fg 35 | margin: prec-round(ballSize * -.5) 0 0 prec-round(ballSize * -.5) 36 | 37 | for key in 1 2 3 4 5 6 7 8 38 | .lds-roller div:nth-child({key}) 39 | animation-delay: -.03 * (key) * mySpeed 40 | 41 | .lds-roller div:nth-child({key}):after 42 | top: prec-round(sin(oAngle + dAngle * key) * radius + size * .5) 43 | left: prec-round(cos(oAngle + dAngle * key) * radius + size * .5) 44 | -------------------------------------------------------------------------------- /src/spinner/index.pug: -------------------------------------------------------------------------------- 1 | .lds-spinner #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 2 | -------------------------------------------------------------------------------- /src/spinner/index.styl: -------------------------------------------------------------------------------- 1 | //- module 2 | radius = size * .35 3 | width = size * .08 4 | height = size * .22 5 | 6 | @keyframes lds-spinner 7 | 0% 8 | opacity: 1 9 | 100% 10 | opacity: 0 11 | 12 | .lds-spinner, .lds-spinner div, .lds-spinner div:after 13 | box-sizing: border-box 14 | 15 | .lds-spinner 16 | color: color.fg 17 | display: inline-block 18 | position: relative 19 | width: prec-round(size) 20 | height: prec-round(size) 21 | div 22 | transform-origin: prec-round(size * .5) prec-round(size * .5) 23 | animation: lds-spinner speed linear infinite 24 | div:after 25 | content: " " 26 | display: block 27 | position: absolute 28 | top: prec-round(size * .5 - radius - height * .5) 29 | left: prec-round(size * .5 - width * .5) 30 | width: prec-round(width) 31 | height: prec-round(height) 32 | border-radius: 20% 33 | background: color.fg 34 | 35 | for angle,key in 0 1 2 3 4 5 6 7 8 9 10 11 36 | .lds-spinner div:nth-child({key + 1}) 37 | transform: rotate(angle * 30deg) 38 | animation-delay: speed * (-1 * (11 - key) / 12) 39 | -------------------------------------------------------------------------------- /vars.styl: -------------------------------------------------------------------------------- 1 | vendors = official 2 | size = 80px 3 | speed = 1.2s 4 | precision = 5 5 | color = { 6 | bg: none 7 | fg: currentColor 8 | } 9 | 10 | prec-round(a) 11 | round(a, precision) 12 | -------------------------------------------------------------------------------- /web/src/pug/index.ls: -------------------------------------------------------------------------------- 1 | <-(->it.apply {}) _ 2 | mgr = new block.manager { 3 | registry: ({name,version,path,type}) -> "/assets/lib/@loadingio/css-spinner/dev/#name.html" 4 | } 5 | mgr.init! 6 | .then ~> 7 | 8 | view = new ldview do 9 | root: document.body 10 | init-render: false 11 | action: click: 12 | spinner: ({node}) ~> 13 | name = node.getAttribute(\data-name) 14 | @ldcv.toggle true 15 | .then -> 16 | mgr.get({name: name, version: 'master', path: 'index.html'}) 17 | .then (bc) ~> bc.create {} 18 | .then (bi) ~> 19 | if @bi => @bi.detach! 20 | @bi = bi 21 | root = view.get('preview') 22 | root.innHTML = '' 23 | bi.attach {root: view.get('preview')} 24 | init: 25 | color: ({node}) -> 26 | ldcp = new ldcolorpicker node 27 | ldcp.on \change, -> 28 | node.style.background = ldcolor.web(it) 29 | view.get('gallery').style.color = ldcolor.web(it) 30 | node.style.background = ldcolor.web(ldcp.get-color!) 31 | slider: ({node}) -> 32 | ldrs = new ldslider root: node, min: 0.1, max: 1, step: 0.01, from: 1 33 | ldrs.on \change, (v) -> 34 | view.get-all \spinner .map -> it.style.transform = "scale(#{v})" 35 | handler: colorbox: (->), gallery: (->) 36 | view.render! 37 | 38 | @ldcv = new ldcover root: view.get('ldcv') 39 | -------------------------------------------------------------------------------- /web/src/pug/mixin.pug: -------------------------------------------------------------------------------- 1 | //- module 2 | mixin lds-circle() 3 | include /../../../src/circle/index.pug 4 | 5 | mixin lds-dual-ring() 6 | include /../../../src/dual-ring/index.pug 7 | 8 | mixin lds-facebook() 9 | include /../../../src/facebook/index.pug 10 | 11 | mixin lds-heart() 12 | include /../../../src/heart/index.pug 13 | 14 | mixin lds-ring() 15 | include /../../../src/ring/index.pug 16 | 17 | mixin lds-roller() 18 | include /../../../src/roller/index.pug 19 | 20 | mixin lds-default() 21 | include /../../../src/default/index.pug 22 | 23 | mixin lds-ellipsis() 24 | include /../../../src/ellipsis/index.pug 25 | 26 | mixin lds-grid() 27 | include /../../../src/grid/index.pug 28 | 29 | mixin lds-hourglass() 30 | include /../../../src/hourglass/index.pug 31 | 32 | mixin lds-ripple() 33 | include /../../../src/ripple/index.pug 34 | 35 | mixin lds-spinner() 36 | include /../../../src/spinner/index.pug 37 | 38 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/bootstrap.ext/0.0.6/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Logs 2 | 3 | ## v0.0.6 4 | 5 | - fix `_g-*` for only-child scenario 6 | 7 | 8 | ## v0.0.5 9 | 10 | - add `_g-*` for partially flexbox gap polyfill 11 | 12 | 13 | ## v0.0.4 14 | 15 | - add `style` field in `package.json` 16 | - upgrade modules 17 | - release with compact directory structure 18 | 19 | 20 | ## v0.0.3 21 | 22 | - add `g-*` for `gap` of flexbox and grid layout. 23 | 24 | 25 | ## v0.0.2 26 | 27 | - scriptLoader (libLoader) is moved to `@plotdb/srcbuild`, we still support it but will use libLoader instead if found 28 | 29 | 30 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/bootstrap.ext/0.0.6/README.md: -------------------------------------------------------------------------------- 1 | # bootstrap.ldui 2 | 3 | bootstrap extension used by loading.io. work in progress. 4 | 5 | # License 6 | 7 | MIT 8 | 9 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/bootstrap.ext/0.0.6/package.json: -------------------------------------------------------------------------------- 1 | {"author":"zbryikt","name":"@loadingio/bootstrap.ext","license":"MIT","description":"bootstrap extension used by loading.io","version":"0.0.6","style":"index.min.css","homepage":"https://github.com/loadingio/bootstrap.ext","repository":{"type":"git","url":"https://github.com/loadingio/bootstrap.ext"},"engines":{"node":">=10.14.1","npm":">=6.4.1"},"scripts":{"start":"npx server -r web -o true"},"devDependencies":{"stylus":"^0.55.0","uglify-js":"^3.13.1","uglifycss":"^0.0.29","template-text":"^0.1.2","@zbryikt/deploy":"^0.0.1","@zbryikt/template":"^2.3.33","@loadingio/ldquery":"^3.0.1","@loadingio/ldc":"^0.0.2","ldiconfont":"^0.1.7","ldcover":"^3.0.1","ldslider":"^3.0.2","ldnotify":"^0.0.1","bootstrap":"^4.5.3","bootstrap.native":"^3.0.15","fedep":"^1.1.0","livescript":"^1.6.0"},"frontendDependencies":{"root":"web/static/assets/lib","modules":["bootstrap","bootstrap.native","ldcover","ldnotify","ldslider","@loadingio/ldquery","@loadingio/ldc","ldiconfont"]}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/bootstrap.ext/main: -------------------------------------------------------------------------------- 1 | 0.0.6 -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/circle.html: -------------------------------------------------------------------------------- 1 | 36 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/default.html: -------------------------------------------------------------------------------- 1 | 90 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/dual-ring.html: -------------------------------------------------------------------------------- 1 | 32 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/ellipsis.html: -------------------------------------------------------------------------------- 1 | 63 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/circle/index.css: -------------------------------------------------------------------------------- 1 | .lds-circle, 2 | .lds-circle div { 3 | box-sizing: border-box; 4 | } 5 | .lds-circle { 6 | display: inline-block; 7 | transform: translateZ(1px); 8 | } 9 | .lds-circle > div { 10 | display: inline-block; 11 | width: 64px; 12 | height: 64px; 13 | margin: 8px; 14 | background: currentColor; 15 | border-radius: 50%; 16 | animation: lds-circle 2.4s cubic-bezier(0, 0.2, 0.8, 1) infinite; 17 | } 18 | @keyframes lds-circle { 19 | 0%, 100% { 20 | animation-timing-function: cubic-bezier(0.5, 0, 1, 0.5); 21 | } 22 | 0% { 23 | transform: rotateY(0deg); 24 | } 25 | 50% { 26 | transform: rotateY(1800deg); 27 | animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1); 28 | } 29 | 100% { 30 | transform: rotateY(3600deg); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/circle/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/circle/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-circle,.lds-circle div{box-sizing:border-box}.lds-circle{display:inline-block;transform:translateZ(1px)}.lds-circle>div{display:inline-block;width:64px;height:64px;margin:8px;background:currentColor;border-radius:50%;animation:lds-circle 2.4s cubic-bezier(0,0.2,0.8,1) infinite}@keyframes lds-circle{0%,100%{animation-timing-function:cubic-bezier(0.5,0,1,0.5)}0%{transform:rotateY(0)}50%{transform:rotateY(1800deg);animation-timing-function:cubic-bezier(0,0.5,0.5,1)}100%{transform:rotateY(3600deg)}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/default/index.css: -------------------------------------------------------------------------------- 1 | .lds-default, 2 | .lds-default div { 3 | box-sizing: border-box; 4 | } 5 | .lds-default { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-default div { 12 | position: absolute; 13 | width: 6.4px; 14 | height: 6.4px; 15 | background: currentColor; 16 | border-radius: 50%; 17 | animation: lds-default 1.2s linear infinite; 18 | } 19 | .lds-default div:nth-child(1) { 20 | animation-delay: 0s; 21 | top: 36.8px; 22 | left: 66.24px; 23 | } 24 | .lds-default div:nth-child(2) { 25 | animation-delay: -0.1s; 26 | top: 22.08px; 27 | left: 62.29579px; 28 | } 29 | .lds-default div:nth-child(3) { 30 | animation-delay: -0.2s; 31 | top: 11.30421px; 32 | left: 51.52px; 33 | } 34 | .lds-default div:nth-child(4) { 35 | animation-delay: -0.3s; 36 | top: 7.36px; 37 | left: 36.8px; 38 | } 39 | .lds-default div:nth-child(5) { 40 | animation-delay: -0.4s; 41 | top: 11.30421px; 42 | left: 22.08px; 43 | } 44 | .lds-default div:nth-child(6) { 45 | animation-delay: -0.5s; 46 | top: 22.08px; 47 | left: 11.30421px; 48 | } 49 | .lds-default div:nth-child(7) { 50 | animation-delay: -0.6s; 51 | top: 36.8px; 52 | left: 7.36px; 53 | } 54 | .lds-default div:nth-child(8) { 55 | animation-delay: -0.7s; 56 | top: 51.52px; 57 | left: 11.30421px; 58 | } 59 | .lds-default div:nth-child(9) { 60 | animation-delay: -0.8s; 61 | top: 62.29579px; 62 | left: 22.08px; 63 | } 64 | .lds-default div:nth-child(10) { 65 | animation-delay: -0.9s; 66 | top: 66.24px; 67 | left: 36.8px; 68 | } 69 | .lds-default div:nth-child(11) { 70 | animation-delay: -1s; 71 | top: 62.29579px; 72 | left: 51.52px; 73 | } 74 | .lds-default div:nth-child(12) { 75 | animation-delay: -1.1s; 76 | top: 51.52px; 77 | left: 62.29579px; 78 | } 79 | @keyframes lds-default { 80 | 0%, 20%, 80%, 100% { 81 | transform: scale(1); 82 | } 83 | 50% { 84 | transform: scale(1.5); 85 | } 86 | } 87 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/default/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/default/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-default,.lds-default div{box-sizing:border-box}.lds-default{display:inline-block;position:relative;width:80px;height:80px}.lds-default div{position:absolute;width:6.4px;height:6.4px;background:currentColor;border-radius:50%;animation:lds-default 1.2s linear infinite}.lds-default div:nth-child(1){animation-delay:0s;top:36.8px;left:66.24px}.lds-default div:nth-child(2){animation-delay:-0.1s;top:22.08px;left:62.29579px}.lds-default div:nth-child(3){animation-delay:-0.2s;top:11.30421px;left:51.52px}.lds-default div:nth-child(4){animation-delay:-0.3s;top:7.36px;left:36.8px}.lds-default div:nth-child(5){animation-delay:-0.4s;top:11.30421px;left:22.08px}.lds-default div:nth-child(6){animation-delay:-0.5s;top:22.08px;left:11.30421px}.lds-default div:nth-child(7){animation-delay:-0.6s;top:36.8px;left:7.36px}.lds-default div:nth-child(8){animation-delay:-0.7s;top:51.52px;left:11.30421px}.lds-default div:nth-child(9){animation-delay:-0.8s;top:62.29579px;left:22.08px}.lds-default div:nth-child(10){animation-delay:-0.9s;top:66.24px;left:36.8px}.lds-default div:nth-child(11){animation-delay:-1s;top:62.29579px;left:51.52px}.lds-default div:nth-child(12){animation-delay:-1.1s;top:51.52px;left:62.29579px}@keyframes lds-default{0%,20%,80%,100%{transform:scale(1)}50%{transform:scale(1.5)}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/dual-ring/index.css: -------------------------------------------------------------------------------- 1 | .lds-dual-ring, 2 | .lds-dual-ring:after { 3 | box-sizing: border-box; 4 | } 5 | .lds-dual-ring { 6 | display: inline-block; 7 | width: 80px; 8 | height: 80px; 9 | } 10 | .lds-dual-ring:after { 11 | content: " "; 12 | display: block; 13 | width: 64px; 14 | height: 64px; 15 | margin: 8px; 16 | border-radius: 50%; 17 | border: 6.4px solid currentColor; 18 | border-color: currentColor transparent currentColor transparent; 19 | animation: lds-dual-ring 1.2s linear infinite; 20 | } 21 | @keyframes lds-dual-ring { 22 | 0% { 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | transform: rotate(360deg); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/dual-ring/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/dual-ring/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-dual-ring,.lds-dual-ring:after{box-sizing:border-box}.lds-dual-ring{display:inline-block;width:80px;height:80px}.lds-dual-ring:after{content:" ";display:block;width:64px;height:64px;margin:8px;border-radius:50%;border:6.4px solid currentColor;border-color:currentColor transparent currentColor transparent;animation:lds-dual-ring 1.2s linear infinite}@keyframes lds-dual-ring{0%{transform:rotate(0)}100%{transform:rotate(360deg)}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/ellipsis/index.css: -------------------------------------------------------------------------------- 1 | .lds-ellipsis, 2 | .lds-ellipsis div { 3 | box-sizing: border-box; 4 | } 5 | .lds-ellipsis { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-ellipsis div { 12 | position: absolute; 13 | top: 33.33333px; 14 | width: 13.33333px; 15 | height: 13.33333px; 16 | border-radius: 50%; 17 | background: currentColor; 18 | animation-timing-function: cubic-bezier(0, 1, 1, 0); 19 | } 20 | .lds-ellipsis div:nth-child(1) { 21 | left: 8px; 22 | animation: lds-ellipsis1 0.6s infinite; 23 | } 24 | .lds-ellipsis div:nth-child(2) { 25 | left: 8px; 26 | animation: lds-ellipsis2 0.6s infinite; 27 | } 28 | .lds-ellipsis div:nth-child(3) { 29 | left: 32px; 30 | animation: lds-ellipsis2 0.6s infinite; 31 | } 32 | .lds-ellipsis div:nth-child(4) { 33 | left: 56px; 34 | animation: lds-ellipsis3 0.6s infinite; 35 | } 36 | @keyframes lds-ellipsis1 { 37 | 0% { 38 | transform: scale(0); 39 | } 40 | 100% { 41 | transform: scale(1); 42 | } 43 | } 44 | @keyframes lds-ellipsis3 { 45 | 0% { 46 | transform: scale(1); 47 | } 48 | 100% { 49 | transform: scale(0); 50 | } 51 | } 52 | @keyframes lds-ellipsis2 { 53 | 0% { 54 | transform: translate(0, 0); 55 | } 56 | 100% { 57 | transform: translate(24px, 0); 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/ellipsis/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/ellipsis/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-ellipsis,.lds-ellipsis div{box-sizing:border-box}.lds-ellipsis{display:inline-block;position:relative;width:80px;height:80px}.lds-ellipsis div{position:absolute;top:33.33333px;width:13.33333px;height:13.33333px;border-radius:50%;background:currentColor;animation-timing-function:cubic-bezier(0,1,1,0)}.lds-ellipsis div:nth-child(1){left:8px;animation:lds-ellipsis1 .6s infinite}.lds-ellipsis div:nth-child(2){left:8px;animation:lds-ellipsis2 .6s infinite}.lds-ellipsis div:nth-child(3){left:32px;animation:lds-ellipsis2 .6s infinite}.lds-ellipsis div:nth-child(4){left:56px;animation:lds-ellipsis3 .6s infinite}@keyframes lds-ellipsis1{0%{transform:scale(0)}100%{transform:scale(1)}}@keyframes lds-ellipsis3{0%{transform:scale(1)}100%{transform:scale(0)}}@keyframes lds-ellipsis2{0%{transform:translate(0,0)}100%{transform:translate(24px,0)}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/facebook/index.css: -------------------------------------------------------------------------------- 1 | .lds-facebook, 2 | .lds-facebook div { 3 | box-sizing: border-box; 4 | } 5 | .lds-facebook { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-facebook div { 12 | display: inline-block; 13 | position: absolute; 14 | left: 8px; 15 | width: 16px; 16 | background: currentColor; 17 | animation: lds-facebook 1.2s cubic-bezier(0, 0.5, 0.5, 1) infinite; 18 | } 19 | .lds-facebook div:nth-child(1) { 20 | left: 8px; 21 | animation-delay: -0.24s; 22 | } 23 | .lds-facebook div:nth-child(2) { 24 | left: 32px; 25 | animation-delay: -0.12s; 26 | } 27 | .lds-facebook div:nth-child(3) { 28 | left: 56px; 29 | animation-delay: 0s; 30 | } 31 | @keyframes lds-facebook { 32 | 0% { 33 | top: 8px; 34 | height: 64px; 35 | } 36 | 50%, 100% { 37 | top: 24px; 38 | height: 32px; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/facebook/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/facebook/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-facebook,.lds-facebook div{box-sizing:border-box}.lds-facebook{display:inline-block;position:relative;width:80px;height:80px}.lds-facebook div{display:inline-block;position:absolute;left:8px;width:16px;background:currentColor;animation:lds-facebook 1.2s cubic-bezier(0,0.5,0.5,1) infinite}.lds-facebook div:nth-child(1){left:8px;animation-delay:-0.24s}.lds-facebook div:nth-child(2){left:32px;animation-delay:-0.12s}.lds-facebook div:nth-child(3){left:56px;animation-delay:0s}@keyframes lds-facebook{0%{top:8px;height:64px}50%,100%{top:24px;height:32px}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/grid/index.css: -------------------------------------------------------------------------------- 1 | .lds-grid, 2 | .lds-grid div { 3 | box-sizing: border-box; 4 | } 5 | .lds-grid { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-grid div { 12 | position: absolute; 13 | width: 16px; 14 | height: 16px; 15 | border-radius: 50%; 16 | background: currentColor; 17 | animation: lds-grid 1.2s linear infinite; 18 | } 19 | .lds-grid div:nth-child(1) { 20 | top: 8px; 21 | left: 8px; 22 | animation-delay: 0s; 23 | } 24 | .lds-grid div:nth-child(2) { 25 | top: 8px; 26 | left: 32px; 27 | animation-delay: -0.4s; 28 | } 29 | .lds-grid div:nth-child(3) { 30 | top: 8px; 31 | left: 56px; 32 | animation-delay: -0.8s; 33 | } 34 | .lds-grid div:nth-child(4) { 35 | top: 32px; 36 | left: 8px; 37 | animation-delay: -0.4s; 38 | } 39 | .lds-grid div:nth-child(5) { 40 | top: 32px; 41 | left: 32px; 42 | animation-delay: -0.8s; 43 | } 44 | .lds-grid div:nth-child(6) { 45 | top: 32px; 46 | left: 56px; 47 | animation-delay: -1.2s; 48 | } 49 | .lds-grid div:nth-child(7) { 50 | top: 56px; 51 | left: 8px; 52 | animation-delay: -0.8s; 53 | } 54 | .lds-grid div:nth-child(8) { 55 | top: 56px; 56 | left: 32px; 57 | animation-delay: -1.2s; 58 | } 59 | .lds-grid div:nth-child(9) { 60 | top: 56px; 61 | left: 56px; 62 | animation-delay: -1.6s; 63 | } 64 | @keyframes lds-grid { 65 | 0%, 100% { 66 | opacity: 1; 67 | } 68 | 50% { 69 | opacity: 0.5; 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/grid/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/grid/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-grid,.lds-grid div{box-sizing:border-box}.lds-grid{display:inline-block;position:relative;width:80px;height:80px}.lds-grid div{position:absolute;width:16px;height:16px;border-radius:50%;background:currentColor;animation:lds-grid 1.2s linear infinite}.lds-grid div:nth-child(1){top:8px;left:8px;animation-delay:0s}.lds-grid div:nth-child(2){top:8px;left:32px;animation-delay:-0.4s}.lds-grid div:nth-child(3){top:8px;left:56px;animation-delay:-0.8s}.lds-grid div:nth-child(4){top:32px;left:8px;animation-delay:-0.4s}.lds-grid div:nth-child(5){top:32px;left:32px;animation-delay:-0.8s}.lds-grid div:nth-child(6){top:32px;left:56px;animation-delay:-1.2s}.lds-grid div:nth-child(7){top:56px;left:8px;animation-delay:-0.8s}.lds-grid div:nth-child(8){top:56px;left:32px;animation-delay:-1.2s}.lds-grid div:nth-child(9){top:56px;left:56px;animation-delay:-1.6s}@keyframes lds-grid{0%,100%{opacity:1}50%{opacity:.5}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/heart/index.css: -------------------------------------------------------------------------------- 1 | .lds-heart, 2 | .lds-heart div, 3 | .lds-heart div:after, 4 | .lds-heart div:before { 5 | box-sizing: border-box; 6 | } 7 | .lds-heart { 8 | display: inline-block; 9 | position: relative; 10 | width: 80px; 11 | height: 80px; 12 | transform: rotate(45deg); 13 | transform-origin: 40px 40px; 14 | } 15 | .lds-heart div { 16 | top: 28px; 17 | left: 28px; 18 | position: absolute; 19 | width: 32px; 20 | height: 32px; 21 | background: currentColor; 22 | animation: lds-heart 1.2s infinite cubic-bezier(0.215, 0.61, 0.355, 1); 23 | } 24 | .lds-heart div:after, 25 | .lds-heart div:before { 26 | content: " "; 27 | position: absolute; 28 | display: block; 29 | width: 32px; 30 | height: 32px; 31 | background: currentColor; 32 | } 33 | .lds-heart div:before { 34 | left: -24px; 35 | border-radius: 50% 0 0 50%; 36 | } 37 | .lds-heart div:after { 38 | top: -24px; 39 | border-radius: 50% 50% 0 0; 40 | } 41 | @keyframes lds-heart { 42 | 0% { 43 | transform: scale(0.95); 44 | } 45 | 5% { 46 | transform: scale(1.1); 47 | } 48 | 39% { 49 | transform: scale(0.85); 50 | } 51 | 45% { 52 | transform: scale(1); 53 | } 54 | 60% { 55 | transform: scale(0.95); 56 | } 57 | 100% { 58 | transform: scale(0.9); 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/heart/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/heart/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-heart,.lds-heart div,.lds-heart div:after,.lds-heart div:before{box-sizing:border-box}.lds-heart{display:inline-block;position:relative;width:80px;height:80px;transform:rotate(45deg);transform-origin:40px 40px}.lds-heart div{top:28px;left:28px;position:absolute;width:32px;height:32px;background:currentColor;animation:lds-heart 1.2s infinite cubic-bezier(0.215,0.61,0.355,1)}.lds-heart div:after,.lds-heart div:before{content:" ";position:absolute;display:block;width:32px;height:32px;background:currentColor}.lds-heart div:before{left:-24px;border-radius:50% 0 0 50%}.lds-heart div:after{top:-24px;border-radius:50% 50% 0 0}@keyframes lds-heart{0%{transform:scale(0.95)}5%{transform:scale(1.1)}39%{transform:scale(0.85)}45%{transform:scale(1)}60%{transform:scale(0.95)}100%{transform:scale(0.9)}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/hourglass/index.css: -------------------------------------------------------------------------------- 1 | .lds-hourglass, 2 | .lds-hourglass:after { 3 | box-sizing: border-box; 4 | } 5 | .lds-hourglass { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-hourglass:after { 12 | content: " "; 13 | display: block; 14 | border-radius: 50%; 15 | width: 0; 16 | height: 0; 17 | margin: 8px; 18 | box-sizing: border-box; 19 | border: 32px solid currentColor; 20 | border-color: currentColor transparent currentColor transparent; 21 | animation: lds-hourglass 1.2s infinite; 22 | } 23 | @keyframes lds-hourglass { 24 | 0% { 25 | transform: rotate(0); 26 | animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); 27 | } 28 | 50% { 29 | transform: rotate(900deg); 30 | animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); 31 | } 32 | 100% { 33 | transform: rotate(1800deg); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/hourglass/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/hourglass/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-hourglass,.lds-hourglass:after{box-sizing:border-box}.lds-hourglass{display:inline-block;position:relative;width:80px;height:80px}.lds-hourglass:after{content:" ";display:block;border-radius:50%;width:0;height:0;margin:8px;box-sizing:border-box;border:32px solid currentColor;border-color:currentColor transparent currentColor transparent;animation:lds-hourglass 1.2s infinite}@keyframes lds-hourglass{0%{transform:rotate(0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}50%{transform:rotate(900deg);animation-timing-function:cubic-bezier(0.215,0.61,0.355,1)}100%{transform:rotate(1800deg)}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/ring/index.css: -------------------------------------------------------------------------------- 1 | .lds-ring, 2 | .lds-ring div { 3 | box-sizing: border-box; 4 | } 5 | .lds-ring { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-ring div { 12 | box-sizing: border-box; 13 | display: block; 14 | position: absolute; 15 | width: 64px; 16 | height: 64px; 17 | margin: 8px; 18 | border: 8px solid currentColor; 19 | border-radius: 50%; 20 | animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite; 21 | border-color: currentColor transparent transparent transparent; 22 | } 23 | .lds-ring div:nth-child(1) { 24 | animation-delay: -0.45s; 25 | } 26 | .lds-ring div:nth-child(2) { 27 | animation-delay: -0.3s; 28 | } 29 | .lds-ring div:nth-child(3) { 30 | animation-delay: -0.15s; 31 | } 32 | @keyframes lds-ring { 33 | 0% { 34 | transform: rotate(0deg); 35 | } 36 | 100% { 37 | transform: rotate(360deg); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/ring/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/ring/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-ring,.lds-ring div{box-sizing:border-box}.lds-ring{display:inline-block;position:relative;width:80px;height:80px}.lds-ring div{box-sizing:border-box;display:block;position:absolute;width:64px;height:64px;margin:8px;border:8px solid currentColor;border-radius:50%;animation:lds-ring 1.2s cubic-bezier(0.5,0,0.5,1) infinite;border-color:currentColor transparent transparent transparent}.lds-ring div:nth-child(1){animation-delay:-0.45s}.lds-ring div:nth-child(2){animation-delay:-0.3s}.lds-ring div:nth-child(3){animation-delay:-0.15s}@keyframes lds-ring{0%{transform:rotate(0)}100%{transform:rotate(360deg)}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/ripple/index.css: -------------------------------------------------------------------------------- 1 | .lds-ripple, 2 | .lds-ripple div { 3 | box-sizing: border-box; 4 | } 5 | .lds-ripple { 6 | display: inline-block; 7 | position: relative; 8 | width: 80px; 9 | height: 80px; 10 | } 11 | .lds-ripple div { 12 | position: absolute; 13 | border: 4px solid currentColor; 14 | opacity: 1; 15 | border-radius: 50%; 16 | animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite; 17 | } 18 | .lds-ripple div:nth-child(2) { 19 | animation-delay: -0.5s; 20 | } 21 | @keyframes lds-ripple { 22 | 0% { 23 | top: 36px; 24 | left: 36px; 25 | width: 8px; 26 | height: 8px; 27 | opacity: 0; 28 | } 29 | 4.9% { 30 | top: 36px; 31 | left: 36px; 32 | width: 8px; 33 | height: 8px; 34 | opacity: 0; 35 | } 36 | 5% { 37 | top: 36px; 38 | left: 36px; 39 | width: 8px; 40 | height: 8px; 41 | opacity: 1; 42 | } 43 | 100% { 44 | top: 0; 45 | left: 0; 46 | width: 80px; 47 | height: 80px; 48 | opacity: 0; 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/ripple/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/ripple/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-ripple,.lds-ripple div{box-sizing:border-box}.lds-ripple{display:inline-block;position:relative;width:80px;height:80px}.lds-ripple div{position:absolute;border:4px solid currentColor;opacity:1;border-radius:50%;animation:lds-ripple 1s cubic-bezier(0,0.2,0.8,1) infinite}.lds-ripple div:nth-child(2){animation-delay:-0.5s}@keyframes lds-ripple{0%{top:36px;left:36px;width:8px;height:8px;opacity:0}4.9%{top:36px;left:36px;width:8px;height:8px;opacity:0}5%{top:36px;left:36px;width:8px;height:8px;opacity:1}100%{top:0;left:0;width:80px;height:80px;opacity:0}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/roller/index.css: -------------------------------------------------------------------------------- 1 | .lds-roller, 2 | .lds-roller div, 3 | .lds-roller div:after { 4 | box-sizing: border-box; 5 | } 6 | .lds-roller { 7 | display: inline-block; 8 | position: relative; 9 | width: 80px; 10 | height: 80px; 11 | } 12 | .lds-roller div { 13 | animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite; 14 | transform-origin: 40px 40px; 15 | } 16 | .lds-roller div:after { 17 | content: " "; 18 | display: block; 19 | position: absolute; 20 | width: 7.2px; 21 | height: 7.2px; 22 | border-radius: 50%; 23 | background: currentColor; 24 | margin: -3.6px 0 0 -3.6px; 25 | } 26 | .lds-roller div:nth-child(1) { 27 | animation-delay: -0.036s; 28 | } 29 | .lds-roller div:nth-child(1):after { 30 | top: 62.62742px; 31 | left: 62.62742px; 32 | } 33 | .lds-roller div:nth-child(2) { 34 | animation-delay: -0.072s; 35 | } 36 | .lds-roller div:nth-child(2):after { 37 | top: 67.71281px; 38 | left: 56px; 39 | } 40 | .lds-roller div:nth-child(3) { 41 | animation-delay: -0.108s; 42 | } 43 | .lds-roller div:nth-child(3):after { 44 | top: 70.90963px; 45 | left: 48.28221px; 46 | } 47 | .lds-roller div:nth-child(4) { 48 | animation-delay: -0.144s; 49 | } 50 | .lds-roller div:nth-child(4):after { 51 | top: 72px; 52 | left: 40px; 53 | } 54 | .lds-roller div:nth-child(5) { 55 | animation-delay: -0.18s; 56 | } 57 | .lds-roller div:nth-child(5):after { 58 | top: 70.90963px; 59 | left: 31.71779px; 60 | } 61 | .lds-roller div:nth-child(6) { 62 | animation-delay: -0.216s; 63 | } 64 | .lds-roller div:nth-child(6):after { 65 | top: 67.71281px; 66 | left: 24px; 67 | } 68 | .lds-roller div:nth-child(7) { 69 | animation-delay: -0.252s; 70 | } 71 | .lds-roller div:nth-child(7):after { 72 | top: 62.62742px; 73 | left: 17.37258px; 74 | } 75 | .lds-roller div:nth-child(8) { 76 | animation-delay: -0.288s; 77 | } 78 | .lds-roller div:nth-child(8):after { 79 | top: 56px; 80 | left: 12.28719px; 81 | } 82 | @keyframes lds-roller { 83 | 0% { 84 | transform: rotate(0deg); 85 | } 86 | 100% { 87 | transform: rotate(360deg); 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/roller/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/roller/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-roller,.lds-roller div,.lds-roller div:after{box-sizing:border-box}.lds-roller{display:inline-block;position:relative;width:80px;height:80px}.lds-roller div{animation:lds-roller 1.2s cubic-bezier(0.5,0,0.5,1) infinite;transform-origin:40px 40px}.lds-roller div:after{content:" ";display:block;position:absolute;width:7.2px;height:7.2px;border-radius:50%;background:currentColor;margin:-3.6px 0 0 -3.6px}.lds-roller div:nth-child(1){animation-delay:-0.036s}.lds-roller div:nth-child(1):after{top:62.62742px;left:62.62742px}.lds-roller div:nth-child(2){animation-delay:-0.072s}.lds-roller div:nth-child(2):after{top:67.71281px;left:56px}.lds-roller div:nth-child(3){animation-delay:-0.108s}.lds-roller div:nth-child(3):after{top:70.90963px;left:48.28221px}.lds-roller div:nth-child(4){animation-delay:-0.144s}.lds-roller div:nth-child(4):after{top:72px;left:40px}.lds-roller div:nth-child(5){animation-delay:-0.18s}.lds-roller div:nth-child(5):after{top:70.90963px;left:31.71779px}.lds-roller div:nth-child(6){animation-delay:-0.216s}.lds-roller div:nth-child(6):after{top:67.71281px;left:24px}.lds-roller div:nth-child(7){animation-delay:-0.252s}.lds-roller div:nth-child(7):after{top:62.62742px;left:17.37258px}.lds-roller div:nth-child(8){animation-delay:-0.288s}.lds-roller div:nth-child(8):after{top:56px;left:12.28719px}@keyframes lds-roller{0%{transform:rotate(0)}100%{transform:rotate(360deg)}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/spinner/index.css: -------------------------------------------------------------------------------- 1 | .lds-spinner, 2 | .lds-spinner div, 3 | .lds-spinner div:after { 4 | box-sizing: border-box; 5 | } 6 | .lds-spinner { 7 | color: currentColor; 8 | display: inline-block; 9 | position: relative; 10 | width: 80px; 11 | height: 80px; 12 | } 13 | .lds-spinner div { 14 | transform-origin: 40px 40px; 15 | animation: lds-spinner 1.2s linear infinite; 16 | } 17 | .lds-spinner div:after { 18 | content: " "; 19 | display: block; 20 | position: absolute; 21 | top: 3.2px; 22 | left: 36.8px; 23 | width: 6.4px; 24 | height: 17.6px; 25 | border-radius: 20%; 26 | background: currentColor; 27 | } 28 | .lds-spinner div:nth-child(1) { 29 | transform: rotate(0deg); 30 | animation-delay: -1.1s; 31 | } 32 | .lds-spinner div:nth-child(2) { 33 | transform: rotate(30deg); 34 | animation-delay: -1s; 35 | } 36 | .lds-spinner div:nth-child(3) { 37 | transform: rotate(60deg); 38 | animation-delay: -0.9s; 39 | } 40 | .lds-spinner div:nth-child(4) { 41 | transform: rotate(90deg); 42 | animation-delay: -0.8s; 43 | } 44 | .lds-spinner div:nth-child(5) { 45 | transform: rotate(120deg); 46 | animation-delay: -0.7s; 47 | } 48 | .lds-spinner div:nth-child(6) { 49 | transform: rotate(150deg); 50 | animation-delay: -0.6s; 51 | } 52 | .lds-spinner div:nth-child(7) { 53 | transform: rotate(180deg); 54 | animation-delay: -0.5s; 55 | } 56 | .lds-spinner div:nth-child(8) { 57 | transform: rotate(210deg); 58 | animation-delay: -0.4s; 59 | } 60 | .lds-spinner div:nth-child(9) { 61 | transform: rotate(240deg); 62 | animation-delay: -0.3s; 63 | } 64 | .lds-spinner div:nth-child(10) { 65 | transform: rotate(270deg); 66 | animation-delay: -0.2s; 67 | } 68 | .lds-spinner div:nth-child(11) { 69 | transform: rotate(300deg); 70 | animation-delay: -0.1s; 71 | } 72 | .lds-spinner div:nth-child(12) { 73 | transform: rotate(330deg); 74 | animation-delay: 0s; 75 | } 76 | @keyframes lds-spinner { 77 | 0% { 78 | opacity: 1; 79 | } 80 | 100% { 81 | opacity: 0; 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/spinner/index.html: -------------------------------------------------------------------------------- 1 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/entries/spinner/index.min.css: -------------------------------------------------------------------------------- 1 | .lds-spinner,.lds-spinner div,.lds-spinner div:after{box-sizing:border-box}.lds-spinner{color:currentColor;display:inline-block;position:relative;width:80px;height:80px}.lds-spinner div{transform-origin:40px 40px;animation:lds-spinner 1.2s linear infinite}.lds-spinner div:after{content:" ";display:block;position:absolute;top:3.2px;left:36.8px;width:6.4px;height:17.6px;border-radius:20%;background:currentColor}.lds-spinner div:nth-child(1){transform:rotate(0);animation-delay:-1.1s}.lds-spinner div:nth-child(2){transform:rotate(30deg);animation-delay:-1s}.lds-spinner div:nth-child(3){transform:rotate(60deg);animation-delay:-0.9s}.lds-spinner div:nth-child(4){transform:rotate(90deg);animation-delay:-0.8s}.lds-spinner div:nth-child(5){transform:rotate(120deg);animation-delay:-0.7s}.lds-spinner div:nth-child(6){transform:rotate(150deg);animation-delay:-0.6s}.lds-spinner div:nth-child(7){transform:rotate(180deg);animation-delay:-0.5s}.lds-spinner div:nth-child(8){transform:rotate(210deg);animation-delay:-0.4s}.lds-spinner div:nth-child(9){transform:rotate(240deg);animation-delay:-0.3s}.lds-spinner div:nth-child(10){transform:rotate(270deg);animation-delay:-0.2s}.lds-spinner div:nth-child(11){transform:rotate(300deg);animation-delay:-0.1s}.lds-spinner div:nth-child(12){transform:rotate(330deg);animation-delay:0s}@keyframes lds-spinner{0%{opacity:1}100%{opacity:0}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/facebook.html: -------------------------------------------------------------------------------- 1 | 44 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/grid.html: -------------------------------------------------------------------------------- 1 | 75 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/heart.html: -------------------------------------------------------------------------------- 1 | 64 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/hourglass.html: -------------------------------------------------------------------------------- 1 | 39 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/mixin.pug: -------------------------------------------------------------------------------- 1 | mixin lds-circle() 2 | .lds-circle&attributes(attributes): div 3 | mixin lds-default() 4 | .lds-default&attributes(attributes) #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 5 | mixin lds-dual-ring() 6 | .lds-dual-ring 7 | mixin lds-ellipsis() 8 | .lds-ellipsis&attributes(attributes) #[div]#[div]#[div]#[div] 9 | mixin lds-facebook() 10 | .lds-facebook&attributes(attributes) #[div]#[div]#[div] 11 | mixin lds-grid() 12 | .lds-grid&attributes(attributes) #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 13 | mixin lds-heart() 14 | .lds-heart&attributes(attributes): div 15 | mixin lds-hourglass() 16 | .lds-hourglass 17 | mixin lds-ring() 18 | .lds-ring&attributes(attributes) #[div]#[div]#[div]#[div] 19 | mixin lds-ripple() 20 | .lds-ripple&attributes(attributes) #[div]#[div] 21 | mixin lds-roller() 22 | .lds-roller&attributes(attributes) #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 23 | mixin lds-spinner() 24 | .lds-spinner&attributes(attributes) #[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div]#[div] 25 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/ring.html: -------------------------------------------------------------------------------- 1 | 43 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/css-spinner/dev/ripple.html: -------------------------------------------------------------------------------- 1 | 54 |
-------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/ldcolorpicker/3.0.1/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | ## v3.0.1 4 | 5 | - keeps only 3 decimal places in opacity when picking opacity with picker 6 | 7 | 8 | ## v3.0.0 9 | 10 | - upgrade modules 11 | - release with compact directory structure 12 | - rename `ldcp.js` to `index.js`, `ldcp.min.js` to `index.min.js` 13 | - rename `ldcp.css` to `index.css`, `ldcp.min.css` to `index.min.css` 14 | - update `style`, `main` and `browser` field in `package.json`. 15 | - further minimize generated js file with mangling and compression 16 | 17 | 18 | ## v2.0.5 19 | 20 | - only insert ldcp DOM when toggling on to improve performance. 21 | 22 | 23 | ## v2.0.4 24 | 25 | - improve popup boundary check 26 | - add `vertical`, `horizontal` class for automatically popup direction detection. 27 | 28 | 29 | ## v2.0.3 30 | 31 | - fix bug: typo during palette initialization 32 | - make building faster 33 | - depenedency to ldcolor should be peerDependency. upgrade ldcolor 34 | 35 | 36 | ## v2.0.2 37 | 38 | - fix bug: if getColor returns a color object, a copy of the object should be returned instead. 39 | 40 | ## v2.0.1 41 | 42 | - remove postinstall to prevent from breaking dependency installation 43 | 44 | 45 | ## v2.0.0 46 | 47 | - upgrade ldcolor which deprecate the use of `ldColor` variable. 48 | - rename `ldColorPicker` to `ldcolorpicker` 49 | - fix typo which causes custom palettes in HTML not work. 50 | - support oncolorchange and onpalettechange correctly. 51 | - parse custom palette with space separated colors correctly. 52 | - bind palpool later when @elem inited 53 | 54 | 55 | ## v1.1.1 56 | 57 | - upgrade modules for fixing vulnerabilities 58 | - upgrade livescript version 59 | 60 | 61 | ## v1.1.0 62 | 63 | - rename package. 64 | - limit distributed files. 65 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/ldcolorpicker/3.0.1/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015, Kirby T. Wu 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/ldcolorpicker/3.0.1/README.md: -------------------------------------------------------------------------------- 1 | ![ldcolorpicker Banner](https://loadingio.github.io/ldcolorpicker/img/banner.png) 2 | 3 | Palette-Aware Color Picker. [Demo + docs here](http://loadingio.github.io/ldcolorpicker/). 4 | 5 | Features: 6 | * Load palette on the fly 7 | * Share palette across pickers 8 | * vanilla JS / jQuery / AngularJS compatible 9 | * highly configurable 10 | 11 | 12 | Usage 13 | -------- 14 | 15 | Download and include [dist/ldcp.min.js](https://raw.githubusercontent.com/loadingio/ldcolorpicker/master/dist/ldcp.min.js) and [dist/ldcp.css](https://raw.githubusercontent.com/loadingio/ldcolorpicker/master/dist/ldcp.css) file of ldcolorpicker: 16 | 17 | 18 | 19 | 20 | 21 | Add data-toggle="colorpicker" in the input box you want to apply ldcolorpicker, e.g.: 22 | 23 | 24 | 25 | 26 | and initialize with following script: 27 | 28 | 31 | 32 | 33 | Documentation 34 | --------------- 35 | 36 | check [this url](http://loadingio.github.io/ldcolorpicker/) for documentation and demos. 37 | 38 | 39 | 40 | Todo 41 | --------------- 42 | 43 | * add 'pinned' indicator 44 | * mobile support 45 | 46 | 47 | Naming Issue 48 | --------------- 49 | 50 | Due to naming conflict with `ld-color-picker`, this package is named "@loadingio/ldcolorpicker" instead of "ldcolorpicker". 51 | 52 | 53 | License 54 | --------- 55 | 56 | MIT License 57 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/ldcolorpicker/3.0.1/package.json: -------------------------------------------------------------------------------- 1 | {"author":"zbryikt","name":"@loadingio/ldcolorpicker","description":"ldcolorpicker - Palette-Aware Color Picker","version":"3.0.1","style":"index.min.css","browser":"index.min.js","main":"index.min.js","homepage":"https://github.com/loadingio/ldcolorpicker","repository":{"type":"git","url":"https://github.com/loadingio/ldcolorpicker"},"engines":{"node":">=10.14.1","npm":">=6.4.1"},"scripts":{"start":"npx server -r web -o true","deploy":"npx deploy web/static"},"frontendDependencies":{"root":"web/static/assets/lib","modules":["bootstrap","@loadingio/bootstrap.ext","bootstrap.native","ldcolor","@loadingio/ldquery"]},"devDependencies":{"@loadingio/ldquery":"^3.0.1","bootstrap":"^4.5.2","@loadingio/bootstrap.ext":"^0.0.4","bootstrap.native":"^3.0.15","@zbryikt/deploy":"^0.0.1","fedep":"^1.1.0","livescript":"^1.6.0","stylus":"^0.55.0","@zbryikt/template":"^2.3.33","uglify-js":"^3.13.1","uglifycss":"^0.0.29"},"peerDependencies":{"ldcolor":"^1.0.0"}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/ldcolorpicker/main: -------------------------------------------------------------------------------- 1 | 3.0.1 -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/ldquery/3.0.3/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Logs 2 | 3 | ## v3.0.3 4 | 5 | - downgrade `node-fetch` to `2.6.7` for working with `require` 6 | - upgrade modules for vulnerabilities fixing 7 | 8 | 9 | ## v3.0.2 10 | 11 | - upgrade `node-fetch` to `3.2.0` to resolve vulnerability. 12 | 13 | 14 | ## v3.0.1 15 | 16 | - release with compact directory structure 17 | 18 | 19 | ## v3.0.0 20 | 21 | - remove `ldq.js`, `ldq.min.js`, use `index.js`, `index.min.js` instead 22 | - use minimized dist file as main / browser default file 23 | - further minimize minimized file 24 | - update dev dependencies 25 | 26 | 27 | ## v2.2.1 28 | 29 | - fix bug: should check against `null` of ending element in `parent` before accessing it. 30 | 31 | 32 | ## v2.2.0 33 | 34 | - support positive and negative list in `cls`. 35 | - make build faster 36 | 37 | 38 | ## v2.1.0 39 | 40 | - let `parent` by default search up to null to support isolated DOM tree. 41 | 42 | 43 | ## v2.0.0 44 | 45 | - use `lderror` instead `ldError` ( need lderror >=0.1.0 ) 46 | 47 | 48 | ## v1.1.3 49 | 50 | - release dist files only. 51 | 52 | 53 | ## v1.1.2 54 | 55 | - fix bug: `fetch` rejection should be handled and pass to upper rejection function. 56 | - upgrade modules 57 | 58 | 59 | ## v1.1.1 60 | 61 | - add xhr as fetch counterpart for supporting progressive upload 62 | - add node-fetch for nodeJS support 63 | - parent() test if contained if selector is ignored 64 | - use ldError style error ( without dependency ) in ajax error 65 | - add option to ignore default-header for using ajax. 66 | - update node-fetch version for vulnerability fixing. 67 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/ldquery/3.0.3/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2018, Kirby T. Wu 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | 23 | 24 | -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/ldquery/3.0.3/package.json: -------------------------------------------------------------------------------- 1 | {"author":"zbryikt","name":"@loadingio/ldquery","description":"lite jQuery-like HTMLElement shorthands","license":"MIT","version":"3.0.3","browser":"index.min.js","main":"index.min.js","homepage":"https://github.com/loadingio/ldquery","repository":{"type":"git","url":"https://github.com/loadingio/ldquery"},"engines":{"node":">=10.14.1","npm":">=6.4.1"},"devDependencies":{"fedep":"^1.1.0","livescript":"^1.6.0","uglify-js":"^3.13.1"},"dependencies":{"node-fetch":"^2.6.7"}} -------------------------------------------------------------------------------- /web/static/assets/lib/@loadingio/ldquery/main: -------------------------------------------------------------------------------- 1 | 3.0.3 -------------------------------------------------------------------------------- /web/static/assets/lib/@plotdb/block/4.6.0/package.json: -------------------------------------------------------------------------------- 1 | {"author":"zbryikt","name":"@plotdb/block","license":"MIT","description":"block","version":"4.6.0","browser":"index.min.js","main":"index.min.js","homepage":"https://github.com/plotdb/block","repository":{"type":"git","url":"https://github.com/plotdb/block"},"engines":{"node":">=10.14.1","npm":">=6.4.1"},"scripts":{"start":"npx server -r web -o true"},"devDependencies":{"@loadingio/bootstrap.ext":"^0.0.4","@loadingio/debounce.js":"^1.0.1","@loadingio/ldquery":"^3.0.2","@loadingio/loading.css":"^3.0.0","@plotdb/csscope":"^4.0.0","@plotdb/datadom":"^0.2.0","@plotdb/json0":"^0.0.5","@plotdb/rescope":"^4.1.0","@zbryikt/template":"^2.3.33","body-parser":"^1.19.0","bootstrap":"^4.5.2","bootstrap.native":"^3.0.15","d3":"^4.0.0","d3-array":"^3.0.0","d3-geo":"^2.0.0","fedep":"^1.1.2","jsdom":"^19.0.0","jsoneditor":"^9.1.1","ldbutton":"^2.0.0","ldcover":"^3.0.1","ldfile":"^2.0.0","ldiconfont":"^0.1.10","ldloader":"^3.0.0","ldview":"^1.1.0","livescript":"^1.6.0","proxise":"^1.0.1","sharedb-wrapper":"^1.0.0","stylus":"^0.55.0","uglify-js":"^3.13.1","uglifycss":"^0.0.29"},"peerDependencies":{"@plotdb/csscope":"^4.0.0","@plotdb/rescope":"^4.1.0","proxise":"^1.0.1"},"frontendDependencies":{"root":"web/static/assets/lib","modules":["bootstrap","bootstrap.native","@loadingio/ldquery","@loadingio/debounce.js","@loadingio/loading.css","@loadingio/bootstrap.ext","ldview","ldloader","ldfile","ldbutton","ldcover","jsoneditor","ldiconfont","proxise","@plotdb/datadom","@plotdb/csscope","@plotdb/rescope","@plotdb/semver","sharedb-wrapper","@plotdb/json0","d3","d3-array","d3-geo"]},"dependencies":{"@plotdb/semver":"^0.0.2","node-fetch":"^2.6.7"}} -------------------------------------------------------------------------------- /web/static/assets/lib/@plotdb/block/main: -------------------------------------------------------------------------------- 1 | 4.6.0 -------------------------------------------------------------------------------- /web/static/assets/lib/@plotdb/csscope/4.0.5/package.json: -------------------------------------------------------------------------------- 1 | {"author":"zbryikt","name":"@plotdb/csscope","license":"MIT","description":"add scope to any css code","version":"4.0.5","homepage":"https://github.com/plotdb/csscope","browser":"index.min.js","main":"index.min.js","repository":{"type":"git","url":"https://github.com/plotdb/csscope"},"engines":{"node":">=10.14.1","npm":">=6.4.1"},"scripts":{"start":"npx server -r web -o true"},"devDependencies":{"@loadingio/bootstrap.ext":"^0.0.4","@loadingio/debounce.js":"^1.0.1","@loadingio/ldquery":"^3.0.2","@zbryikt/template":"^2.3.33","bootstrap":"^4.5.2","bootstrap.native":"^3.0.13","fedep":"^1.1.5","jsdom":"^19.0.0","ldcover":"^3.0.1","ldview":"^1.0.0","livescript":"^1.6.0","puppeteer-core":"^13.2.0","uglify-js":"^3.13.1"},"frontendDependencies":{"root":"web/static/assets/lib","modules":["bootstrap","bootstrap.native","@loadingio/bootstrap.ext","@loadingio/ldquery","@loadingio/debounce.js","@plotdb/semver","ldview","ldcover"]},"dependencies":{"@plotdb/semver":"^0.0.2","node-fetch":"^2.6.7"}} -------------------------------------------------------------------------------- /web/static/assets/lib/@plotdb/csscope/main: -------------------------------------------------------------------------------- 1 | 4.0.5 -------------------------------------------------------------------------------- /web/static/assets/lib/@plotdb/rescope/4.1.3/package.json: -------------------------------------------------------------------------------- 1 | {"author":"zbryikt","name":"@plotdb/rescope","license":"MIT","description":"rescope your code with any JS libraries","version":"4.1.3","homepage":"https://github.com/plotdb/rescope","browser":"index.min.js","main":"index.min.js","repository":{"type":"git","url":"https://github.com/plotdb/rescope"},"engines":{"node":">=10.14.1","npm":">=6.4.1"},"scripts":{"start":"npx server -r web -o true","deploy":"npx deploy web/static"},"devDependencies":{"@loadingio/bootstrap.ext":"^0.0.4","@loadingio/debounce.js":"^1.0.1","@loadingio/ldquery":"^3.0.1","@plotdb/pdmap-world":"^0.0.5","@plotdb/semver":"^0.0.2","@zbryikt/deploy":"^0.0.1","@zbryikt/template":"^2.3.33","bootstrap":"^4.5.3","bootstrap.native":"^3.0.13","fedep":"^1.1.2","ldcover":"^3.0.1","ldfile":"^2.0.0","ldiconfont":"^0.1.10","ldview":"^1.0.0","livescript":"^1.6.0","proxise":"^1.0.1","yargs":"^16.1.0"},"frontendDependencies":{"root":"web/static/assets/lib","modules":["bootstrap","bootstrap.native","@loadingio/ldquery","@loadingio/debounce.js","@loadingio/bootstrap.ext","@plotdb/pdmap-world","@plotdb/semver","ldcover","ldfile","ldview","proxise","ldiconfont"]},"dependencies":{"node-fetch":"^2.6.7"}} -------------------------------------------------------------------------------- /web/static/assets/lib/@plotdb/rescope/main: -------------------------------------------------------------------------------- 1 | 4.1.3 -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap.ldui/0.0.1/bootstrap.ldui.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap.ldui/0.0.1/bootstrap.ldui.min.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap.ldui/0.0.1/pug/base64-image.pug: -------------------------------------------------------------------------------- 1 | - var b64img = {}; 2 | - b64img.px1 = "data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAAAAAAALAAAAAABAAEAQAICRAEAOw==" 3 | 4 | -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap.ldui/0.0.1/pug/loader.pug: -------------------------------------------------------------------------------- 1 | //- load script / css without worrying about loading them multiple times. 2 | - if(!scriptLoader) { scriptLoader = {url: {}, config: {}}; } 3 | - if(!decache) { decache = (version? "?v=" + version : ""); } 4 | mixin script(url,config) 5 | - scriptLoader.config = (config ? config : {}); 6 | if !scriptLoader.url[url] 7 | - scriptLoader.url[url] = true; 8 | if /^https?:\/\/./.exec(url) 9 | script(type="text/javascript",src=url, 10 | defer=!!scriptLoader.config.defer,async=!!scriptLoader.config.async) 11 | else 12 | script(type="text/javascript",src=url + decache, 13 | defer=!!scriptLoader.config.defer,async=!!scriptLoader.config.async) 14 | 15 | - if(!cssLoader) { cssLoader = {url: {}}; } 16 | mixin css(url,config) 17 | - cssLoader.config = (config ? config : {}); 18 | if !cssLoader.url[url] 19 | - cssLoader.url[url] = true; 20 | link(rel="stylesheet",type="text/css",href=url + decache) 21 | 22 | - if(!blockLoader) { blockLoader = {name: {}, config: {}}; } 23 | mixin block(name) 24 | if !blockLoader.name[name] 25 | - blockLoader.name[name] = true; 26 | block 27 | -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap.ldui/0.0.1/pug/lorem-ipsum.pug: -------------------------------------------------------------------------------- 1 | - 2 | var loremtext = { 3 | zh: "料何緊許團人受間口語日是藝一選去,得系目、再驗現表爸示片球法中轉國想我樹我,色生早都沒方上情精一廣發!能生運想毒一生人一身德接地,說張在未安人、否臺重壓車亞是我!終力邊技的大因全見起?切問去火極性現中府會行多他千時,來管表前理不開走於展長因,現多上我,工行他眼。總務離子方區面人話同下,這國當非視後得父能民觀基作影輕印度民雖主他是一,星月死較以太就而開後現:國這作有,他你地象的則,引管戰照十都是與行求證來亞電上地言裡先保。大去形上樹。計太風何不先歡的送但假河線己綠?計像因在……初人快政爭連合多考超的得麼此是間不跟代光離制不主政重造的想高據的意臺月飛可成可有時情乎為灣臺我養家小,叫轉於可!錢因其他節,物如盡男府我西上事是似個過孩而過要海?更神施一關王野久沒玩動一趣庭顧倒足要集我民雲能信爸合以物頭容戰度系士我多學一、區作一,過業手:大不結獨星科表小黨上千法值之兒聲價女去大著把己。", 4 | en: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." 5 | }; 6 | 7 | mixin lorem(len,ln) 8 | span #{loremtext[ln || 'en'].substring(0,len)} 9 | mixin lorems(c,len,variant,ln) 10 | - for(var i=0;i': '>', '"': '"', "'": ''' }; var repl = function(c) { return MAP[c]; }; return function(s) { return s.replace(/[&<>'"]/g, repl); }; })(); 5 | 6 | //- add br x n 7 | mixin nbr(count) 8 | - for (var i = 0; i < count; i++) 9 | br 10 | -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap.ldui/main: -------------------------------------------------------------------------------- 1 | 0.0.1 -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap/4.6.0/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2011-2021 Twitter, Inc. 4 | Copyright (c) 2011-2021 The Bootstrap Authors 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap/4.6.0/js/dist/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * -------------------------------------------------------------------------- 3 | * Bootstrap (v4.6.0): index.js 4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) 5 | * -------------------------------------------------------------------------- 6 | */ 7 | (function ($) { 8 | if (typeof $ === 'undefined') { 9 | throw new TypeError('Bootstrap\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\'s JavaScript.'); 10 | } 11 | 12 | var version = $.fn.jquery.split(' ')[0].split('.'); 13 | var minMajor = 1; 14 | var ltMajor = 2; 15 | var minMinor = 9; 16 | var minPatch = 1; 17 | var maxMajor = 4; 18 | 19 | if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >= maxMajor) { 20 | throw new Error('Bootstrap\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0'); 21 | } 22 | })($); 23 | -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap/4.6.0/scss/_alert.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Base styles 3 | // 4 | 5 | .alert { 6 | position: relative; 7 | padding: $alert-padding-y $alert-padding-x; 8 | margin-bottom: $alert-margin-bottom; 9 | border: $alert-border-width solid transparent; 10 | @include border-radius($alert-border-radius); 11 | } 12 | 13 | // Headings for larger alerts 14 | .alert-heading { 15 | // Specified to prevent conflicts of changing $headings-color 16 | color: inherit; 17 | } 18 | 19 | // Provide class for links that match alerts 20 | .alert-link { 21 | font-weight: $alert-link-font-weight; 22 | } 23 | 24 | 25 | // Dismissible alerts 26 | // 27 | // Expand the right padding and account for the close button's positioning. 28 | 29 | .alert-dismissible { 30 | padding-right: $close-font-size + $alert-padding-x * 2; 31 | 32 | // Adjust close link position 33 | .close { 34 | position: absolute; 35 | top: 0; 36 | right: 0; 37 | z-index: 2; 38 | padding: $alert-padding-y $alert-padding-x; 39 | color: inherit; 40 | } 41 | } 42 | 43 | 44 | // Alternate styles 45 | // 46 | // Generate contextual modifier classes for colorizing the alert. 47 | 48 | @each $color, $value in $theme-colors { 49 | .alert-#{$color} { 50 | @include alert-variant(theme-color-level($color, $alert-bg-level), theme-color-level($color, $alert-border-level), theme-color-level($color, $alert-color-level)); 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap/4.6.0/scss/_badge.scss: -------------------------------------------------------------------------------- 1 | // Base class 2 | // 3 | // Requires one of the contextual, color modifier classes for `color` and 4 | // `background-color`. 5 | 6 | .badge { 7 | display: inline-block; 8 | padding: $badge-padding-y $badge-padding-x; 9 | @include font-size($badge-font-size); 10 | font-weight: $badge-font-weight; 11 | line-height: 1; 12 | text-align: center; 13 | white-space: nowrap; 14 | vertical-align: baseline; 15 | @include border-radius($badge-border-radius); 16 | @include transition($badge-transition); 17 | 18 | @at-root a#{&} { 19 | @include hover-focus() { 20 | text-decoration: none; 21 | } 22 | } 23 | 24 | // Empty badges collapse automatically 25 | &:empty { 26 | display: none; 27 | } 28 | } 29 | 30 | // Quick fix for badges in buttons 31 | .btn .badge { 32 | position: relative; 33 | top: -1px; 34 | } 35 | 36 | // Pill badges 37 | // 38 | // Make them extra rounded with a modifier to replace v3's badges. 39 | 40 | .badge-pill { 41 | padding-right: $badge-pill-padding-x; 42 | padding-left: $badge-pill-padding-x; 43 | @include border-radius($badge-pill-border-radius); 44 | } 45 | 46 | // Colors 47 | // 48 | // Contextual variations (linked badges get darker on :hover). 49 | 50 | @each $color, $value in $theme-colors { 51 | .badge-#{$color} { 52 | @include badge-variant($value); 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /web/static/assets/lib/bootstrap/4.6.0/scss/_breadcrumb.scss: -------------------------------------------------------------------------------- 1 | .breadcrumb { 2 | display: flex; 3 | flex-wrap: wrap; 4 | padding: $breadcrumb-padding-y $breadcrumb-padding-x; 5 | margin-bottom: $breadcrumb-margin-bottom; 6 | @include font-size($breadcrumb-font-size); 7 | list-style: none; 8 | background-color: $breadcrumb-bg; 9 | @include border-radius($breadcrumb-border-radius); 10 | } 11 | 12 | .breadcrumb-item { 13 | // The separator between breadcrumbs (by default, a forward-slash: "/") 14 | + .breadcrumb-item { 15 | padding-left: $breadcrumb-item-padding; 16 | 17 | &::before { 18 | float: left; // Suppress inline spacings and underlining of the separator 19 | padding-right: $breadcrumb-item-padding; 20 | color: $breadcrumb-divider-color; 21 | content: escape-svg($breadcrumb-divider); 22 | } 23 | } 24 | 25 | // IE9-11 hack to properly handle hyperlink underlines for breadcrumbs built 26 | // without `