diff --git a/js/notebook/src/Spinner.ts b/js/notebook/src/Spinner.ts
index 23758049a3..d0729bcd3b 100644
--- a/js/notebook/src/Spinner.ts
+++ b/js/notebook/src/Spinner.ts
@@ -34,119 +34,12 @@ export class SpinnerView extends widgets.DOMWidgetView {
public render() {
let title = this.model.get('title');
- this.el.innerHTML = `
'
+ this.el.innerHTML = `
+`;
}
}
diff --git a/js/notebook/src/shared/style/spark.scss b/js/notebook/src/shared/style/spark.scss
index 6530f030c8..8c993ba1c3 100644
--- a/js/notebook/src/shared/style/spark.scss
+++ b/js/notebook/src/shared/style/spark.scss
@@ -226,3 +226,113 @@
line-height: 14px;
}
}
+
+@keyframes lds-spinner {
+ 0% {
+ opacity: 1;
+ }
+ 100% {
+ opacity: 0;
+ }
+}
+@-webkit-keyframes lds-spinner {
+ 0% {
+ opacity: 1;
+ }
+ 100% {
+ opacity: 0;
+ }
+}
+.lds-spinner {
+ position: relative;
+ width: 30px !important;
+ height: 30px !important;
+ -webkit-transform: translate(-15px, -15px) scale(0.15) translate(15px, 15px);
+ transform: translate(-15px, -15px) scale(0.15) translate(15px, 15px);
+
+ div {
+ left: 94px;
+ top: 48px;
+ position: absolute;
+ -webkit-animation: lds-spinner linear 1s infinite;
+ animation: lds-spinner linear 1s infinite;
+ background: #0055a5;
+ width: 12px;
+ height: 24px;
+ border-radius: 40%;
+ -webkit-transform-origin: 6px 52px;
+ transform-origin: 6px 52px;
+ &:nth-child(1) {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ -webkit-animation-delay: -0.916666666666667s;
+ animation-delay: -0.916666666666667s;
+ }
+ &:nth-child(2) {
+ -webkit-transform: rotate(30deg);
+ transform: rotate(30deg);
+ -webkit-animation-delay: -0.833333333333333s;
+ animation-delay: -0.833333333333333s;
+ }
+ &:nth-child(3) {
+ -webkit-transform: rotate(60deg);
+ transform: rotate(60deg);
+ -webkit-animation-delay: -0.75s;
+ animation-delay: -0.75s;
+ }
+ &:nth-child(4) {
+ -webkit-transform: rotate(90deg);
+ transform: rotate(90deg);
+ -webkit-animation-delay: -0.666666666666667s;
+ animation-delay: -0.666666666666667s;
+ }
+ &:nth-child(5) {
+ -webkit-transform: rotate(120deg);
+ transform: rotate(120deg);
+ -webkit-animation-delay: -0.583333333333333s;
+ animation-delay: -0.583333333333333s;
+ }
+ &:nth-child(6) {
+ -webkit-transform: rotate(150deg);
+ transform: rotate(150deg);
+ -webkit-animation-delay: -0.5s;
+ animation-delay: -0.5s;
+ }
+ &:nth-child(7) {
+ -webkit-transform: rotate(180deg);
+ transform: rotate(180deg);
+ -webkit-animation-delay: -0.416666666666667s;
+ animation-delay: -0.416666666666667s;
+ }
+ &:nth-child(8) {
+ -webkit-transform: rotate(210deg);
+ transform: rotate(210deg);
+ -webkit-animation-delay: -0.333333333333333s;
+ animation-delay: -0.333333333333333s;
+ }
+ &:nth-child(9) {
+ -webkit-transform: rotate(240deg);
+ transform: rotate(240deg);
+ -webkit-animation-delay: -0.25s;
+ animation-delay: -0.25s;
+ }
+ &:nth-child(10) {
+ -webkit-transform: rotate(270deg);
+ transform: rotate(270deg);
+ -webkit-animation-delay: -0.166666666666667s;
+ animation-delay: -0.166666666666667s;
+ }
+ &:nth-child(11) {
+ -webkit-transform: rotate(300deg);
+ transform: rotate(300deg);
+ -webkit-animation-delay: -0.083333333333333s;
+ animation-delay: -0.083333333333333s;
+ }
+ &:nth-child(12) {
+ -webkit-transform: rotate(330deg);
+ transform: rotate(330deg);
+ -webkit-animation-delay: 0s;
+ animation-delay: 0s;
+ }
+ }
+}