123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465 |
- @import "vars";
- @import "mixins";
- .artifact {
- .selection-actions {display: none; }
- &.selected {
- .selection-actions {display: block; }
- }
- }
- .selection-actions {
- position: absolute;
- right: 0;
- top: 0;
- padding: 10px;
- pointer-events: auto;
- }
- @mixin tri-s {
- &:after {
- top: 100%;
- margin-left: -13px;
- left: 50%;
- margin-top: -5px;
- border-left: 13px solid transparent;
- border-right: 13px solid transparent;
- border-top: 13px solid $dark;
- }
- }
- @mixin tri-n {
- &:after {
- bottom: 100%;
- margin-left: -13px;
- left: 50%;
- margin-bottom: -5px;
- border-left: 13px solid transparent;
- border-right: 13px solid transparent;
- border-bottom: 13px solid $dark;
- }
- }
- @mixin tri-e {
- &:after {
- left: 100%;
- margin-top: -13px;
- top: 50%;
- margin-left: -5px;
- border-top: 13px solid transparent;
- border-bottom: 13px solid transparent;
- border-left: 13px solid $dark;
- }
- }
- @mixin tri-w {
- &:after {
- right: 100%;
- margin-top: -13px;
- top: 50%;
- margin-right: -5px;
- border-top: 13px solid transparent;
- border-bottom: 13px solid transparent;
- border-right: 13px solid $dark;
- }
- }
- .selected .handles {
- display: block;
- // box-shadow: 0 0 0 1px rgba(41,41,41,0.4);
- }
- .handles {
- // background-color: rgba(40,140,215,0.45);
- border: 1px solid rgba(255,255,255,0.5);
- position: absolute;
- left: 0;
- top: 0;
- bottom: 0;
- right: 0;
- z-index: 800;
- pointer-events: none;
-
- &:after{
- border: 1px dotted rgba(40,140,215,1);
- content: "";
- display: block;
- position: absolute;
- height: auto;
- width: auto;
- top: -1px;
- left: -1px;
- right: -1px;
- bottom: -1px;
- }
- }
- .extreme-zoom .handles {
- border: 8px solid rgba(255,255,255,0.5);
-
- &:after{
- border: 8px dotted rgba(40,140,215,1);
- top: -4px;
- left: -4px;
- right: -4px;
- bottom: -4px;
- }
- }
- .extreme-zoom .handle {
- @include scale(8,8);
-
- &:hover {
- @include scale(12,12);
- }
- }
- .mouse-scribble, .mouse-vector_transform {
- .handles, .handles:after {
- display: none !important;
- }
- }
- // .n-resize { cursor: n-resize; }
- // .e-resize { cursor: e-resize; }
- // .s-resize { cursor: s-resize; }
- // .w-resize { cursor: w-resize; }
- // .ns-resize { cursor: ns-resize; }
- // .ew-resize { cursor: ew-resize; }
- // .ne-resize { cursor: ne-resize; }
- // .nw-resize { cursor: nw-resize; }
- // .se-resize { cursor: se-resize; }
- // .sw-resize { cursor: sw-resize; }
- // .nesw-resize { cursor: nesw-resize; }
- // .nwse-resize { cursor: nwse-resize; }
- .resize-nw {
- .value-w {
- right: 35px;
- top: -10px;
- @include transform-origin(center right);
- @include tri-e;
- }
- .value-h {
- left: -10px;
- bottom: 35px;
- @include transform-origin(bottom center);
- @include tri-s;
- }
- }
- .resize-ne {
- .value-w {
- left: 35px;
- top: -10px;
- @include tri-w;
- @include transform-origin(center left);
- }
- .value-h {
- right: -10px;
- bottom: 35px;
- @include transform-origin(bottom center);
- @include tri-s;
- }
- }
- .resize-se {
- .value-w {
- left: 35px;
- bottom: -10px;
- @include tri-w;
- @include transform-origin(center left);
- }
- .value-h {
- right: -10px;
- top: 35px;
- @include transform-origin(top center);
- @include tri-n;
- pointer-events: none;
- }
- }
- .resize-sw {
- .value-w {
- right: 35px;
- bottom: -10px;
- @include tri-e;
- @include transform-origin(center right);
- // border-top-left-radius: 5px;
- // border-bottom-left-radius: 5px;
- }
- .value-h {
- left: -10px;
- top: 35px;
- @include transform-origin(top center);
- @include tri-n;
- // border-bottom-left-radius: 5px;
- // border-bottom-right-radius: 5px;
- }
- }
- .resize-n {
- .value-h {
- margin-left: -20px;
- left: 50%;
- bottom: 20px;
- @include transform-origin(bottom center);
- @include tri-s;
- }
- }
- .resize-e {
- .value-w {
- left: 20px;
- top: 50%;
- margin-top: -20px;
- @include tri-w;
- @include transform-origin(center left);
- }
- }
- .resize-s {
- .value-h {
- left: 50%;
- margin-left: -20px;
- top: 20px;
- @include transform-origin(top center);
- @include tri-n;
- }
- }
- .resize-w {
- .value-w {
- right: 20px;
- top: 50%;
- margin-top: -20px;
- @include tri-e;
- @include transform-origin(center right);
- }
- }
- .value-h,
- .value-w {
- z-index: 1;
- line-height: 40px;
- width: 40px;
- height: 40px;
- display: inline-block;
- position: absolute;
- border-radius: 100%;
- // border-radius: $radius;
- @include scale(0,0);
- // opacity: 0;
- pointer-events: none !important;
- @include transition( all 0.1s 0.05s ease-in-out);
- text-align: center;
- background-color: $dark;
- color: $light;
- font-size: 10px;
- &:after {
- @include transition( all 0.3s ease-in-out);
- content: "";
- position: absolute;
- width: 0;
- height: 0;
- pointer-events: none !important;
- }
- }
- .handle > div > div > div:active .value-w,
- .handle:active .value-h{
- @include transition( all 0.05s 0s cubic-bezier(0, 0, 0.7, 1.7));
- opacity: 1;
- @include scale(1,1);
- }
- .edge-handle:active .value-w,
- .edge-handle:active .value-h{
- @include transition( all 0.05s 0s cubic-bezier(0, 0, 0.7, 1.7));
- opacity: 1;
- @include scale(1,1);
- }
- .edge-handle {
- @include user-select(none);
- pointer-events:auto;
-
- z-index: 1000;
- position: absolute;
- background-clip: content-box;
-
- @include transition( background-color 0.05s ease-in-out);
- &:active,
- &:hover {
- background-color: $blue;
- @include transition( background-color 0s ease-in-out);
- }
- &.resize-n,
- &.resize-s {
- width: 100%;
- height: 10px;
- }
- &.resize-w,
- &.resize-e {
- width: 10px;
- height: 100%;
- }
- &.resize-n:active { border-top: 3px solid transparent; border-bottom: 3px solid transparent; }
- &.resize-s:active { border-top: 3px solid transparent; border-bottom: 3px solid transparent; }
- &.resize-w:active { border-left: 3px solid transparent; border-right: 3px solid transparent; }
- &.resize-e:active { border-left: 3px solid transparent; border-right: 3px solid transparent; }
- &.resize-n { &:active,&:hover, { cursor: ns-resize;}}
- &.resize-s { &:active,&:hover, { cursor: ns-resize;}}
- &.resize-w { &:active,&:hover, { cursor: ew-resize;}}
- &.resize-e { &:active,&:hover, { cursor: ew-resize;}}
- &.resize-n { border-top: 4px solid transparent; border-bottom: 4px solid transparent; bottom: 100%; margin-bottom: -5px; }
- &.resize-s { border-top: 4px solid transparent; border-bottom: 4px solid transparent; top: 100%; margin-top: -5px; }
- &.resize-w { border-left: 4px solid transparent; border-right: 4px solid transparent; right: 100%; margin-right: -5px; }
- &.resize-e { border-left: 4px solid transparent; border-right: 4px solid transparent; left: 100%; margin-left: -5px; }
- }
- .vector-handle {
- @include user-select(none);
- pointer-events:auto;
- z-index: 2000;
- position: absolute;
- width: 30px !important;
- height: 30px !important;
- border-radius: 100%;
- margin: -15px;
- border: 1px solid rgba(0,0,0,0.25);
- &:hover {
- background-color: rgba(255,255,255,0.5);
- cursor: move;
- }
- }
- .handles-vector {
- .handle, .edge-handle {
- display: none !important;
- }
- }
- .handles:not(.handles-vector) .vector-handle {
- display: none;
- }
- .handle {
- @include user-select(none);
- pointer-events:auto;
- z-index: 2000;
- position: absolute;
- width: 60px !important;
- height: 60px !important;
- border-radius: 100%;
- margin: -30px;
- @include transition(all 0.1s ease-in-out);
- @include scale(0.5,0.5);
-
- &:hover {
- @include scale(1,1);
- .value-h,
- .value-w {
- display: block;
- }
- }
-
- // &:after {
- // @include transition( all 0.3s ease-in-out);
- // content: "";
- // position: absolute;
- // top: 0px;
- // margin-left: -20px;
- // width: 0;
- // height: 0;
- // border-left: 20px solid transparent;
- // border-right: 20px solid transparent;
- // border-top: 20px solid $dark;
- // pointer-events: none !important;
- // left: 50%;
- // }
- &.resize-nw { top: 0%; left: 0%;}
- &.resize-n { top: 0%; left: 50%;}
- &.resize-ne { top: 0%; left: 100%;}
- &.resize-e { top: 50%; left: 100%;}
- &.resize-se { top: 100%; left: 100%;}
- &.resize-s { top: 100%; left: 50%;}
- &.resize-sw { top: 100%; left: 0%;}
- &.resize-w { top: 50%; left: 0%;}
- &.resize-nw > div > div > div { cursor: nwse-resize; }
- &.resize-n > div > div > div { cursor: ns-resize;}
- &.resize-ne > div > div > div { cursor: nesw-resize; }
- &.resize-e > div > div > div { cursor: ew-resize; }
- &.resize-se > div > div > div { cursor: nwse-resize; }
- &.resize-s > div > div > div { cursor: ns-resize; }
- &.resize-sw > div > div > div { cursor: nesw-resize; }
- &.resize-w > div > div > div { cursor: ew-resize; }
- &.resize-n { display: none;}
- &.resize-e { display: none;}
- &.resize-s { display: none;}
- &.resize-w { display: none;}
- &:hover > div > div > div { border-width: 9px; }
- > div:hover > div > div { border-width: 8px; }
- > div > div:hover > div { border-width: 7px; }
- > div > div > div:hover { border-width: 6px; }
- > div > div > div:active { border-width: 6px; }
- > div > div > div {
- background-color: $dark;
- border-style: solid;
- border-width: 10px;
- border-color: transparent;
- -webkit-background-clip: padding-box;
- -moz-background-clip: padding-box;
- background-clip: padding-box;
- -webkit-transition: all .05s ease-in-out;
- -moz-transition: all .05s ease-in-out;
- -ms-transition: all .05s ease-in-out;
- -o-transition: all .05s ease-in-out;
- transition: all .05s ease-in-out;
- }
- div {
- position: relative;
- border-radius: 100%;
- top: 5px;
- left: 5px;
- @include transition( all 0.5s ease-in-out);
- }
- > div {
- width: 50px;
- height: 50px;
- }
- > div > div {
- width: 40px;
- height: 40px;
- }
- > div > div > div {
- z-index: 10;
- width: 30px;
- height: 30px;
- }
- }
|