diff --git a/.gitignore b/.gitignore index 2cac5b61..3b640fb4 100755 --- a/.gitignore +++ b/.gitignore @@ -3,7 +3,6 @@ node_modules npm-debug.log .sass-cache lib/app/js/components -lib/app/css/styleguide-app.css lib/dist demo-output phantomjs.log diff --git a/lib/app/css/styleguide-app.css b/lib/app/css/styleguide-app.css new file mode 100644 index 00000000..aad0f0df --- /dev/null +++ b/lib/app/css/styleguide-app.css @@ -0,0 +1,1723 @@ +$fa-font-path: '{{{appRoot}}}/assets/fonts'; +$fa-version: '4.2.0'; +@import 'components/font-awesome/font-awesome.css'; +/*@import 'bourbon';*/ + +@define-mixin styleguide_custom_styles { + /* User can re-define this mixin to create custom style overrides + This mixin is included in the end of the application stylesheet */ +} + +@import '_styleguide_custom_variables.css'; +@import '_styleguide_variables.css'; +@import '_styleguide_mixins.css'; +@import 'styleguide_helper_elements.css'; + +@import 'components/colorpicker.css'; +@import 'components/github.css'; + +$footer-padding: 2em; +$footer-logo-height: 42px; + +html, +body.sg { + width: 100%; + height: 100%; +} + +.sg.view-index { + height: 100%; +} + +.sg { + box-sizing: border-box; + margin: 0; + padding: 0; + border: 0; +} + +/* +Colors and typography + +This section describes base colors and typography + +Styleguide 1.0 +*/ + +/* +Main colors + +$primary-color - Primary color +$secondary-color - Secondary color +$primary-action-color - Primary button color +$default-action-color - Default button color and link color +$tertiary-color - Used for input hovers and hilights + +markup: +
{$modifiers}
+ +Styleguide 1.1 +*/ + +/* +Calculated colors + +.color_lighten - Lighter than default action color +.color_darken - Darker than default action color + +markup: +
+ +Styleguide 1.1.1 +*/ + +$default-action-light: lighten($default-action-color, $action-color-change); + +.color_lighten { + background-color: $default-action-light; +} + +$default-action-dark: color($default-action-color blackness($action-color-change)); + +.color_darken { + background-color: $default-action-dark; +} + +/* +Headings + +These are our headings + +markup: +

Heading 1

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque massa ipsum, tincidunt vel convallis in, suscipit et risus. Morbi erat dolor, mattis at dignissim sed, feugiat sed lorem. +

Heading 2

+

Mauris feugiat suscipit turpis, ut rhoncus lectus finibus sed. Etiam suscipit consectetur eros vitae venenatis.

+

Heading 3

+

Ut leo ipsum, tincidunt vel mauris eget, convallis egestas justo. Nunc ligula neque, porta ac lorem id, ultrices dapibus dolor.

+

Heading 4

+

Phasellus interdum massa ante, ac placerat felis ultricies at. Fusce vulputate, odio sed convallis laoreet, tortor orci venenatis massa, a placerat ligula nisl vitae felis. In pellentesque ornare eleifend. Suspendisse potenti. Quisque eget mauris enim.

+
Heading 5
+ +Styleguide 1.2 +*/ + +h1.sg, +h2.sg, +h3.sg, +h4.sg, +h5.sg { + @mixin default-font; + font-family: var(--primary-font); + font-family: $primary-font; + font-weight: normal; + font-style: normal; + line-height: 1.2; + margin: 1.414em 0 .5em; + color: #444; +} + +h1.sg { + font-size: 3.157em; + + margin-top: .5em; +} + +h2.sg { + font-size: 2.369em; +} + +h3.sg { + font-size: 1.777em; +} + +h4.sg { + font-size: 1.333em; +} + +h4.sg, +h5.sg { + font-weight: 500; +} + +/* +Buttons and inputs + +Links, buttons, input boxes etc. + +Styleguide 2.0 + */ + +/* +Links + +Link styles used in the styleguide + +.sg - Normal link +:hover - Hover + +markup: +Link text + +Styleguide 2.1 + */ + +/* TODO +:active - Active +:visited - Visited +*/ + +a.sg { + @mixin default-font; + display: inline; + cursor: pointer; + text-decoration: none; + color: var(--default-action-color); + color: $default-action-color; +} + +a.sg:hover { + color: $default-action-light; +} + +a.sg:active { + color: $default-action-dark; +} + +p.sg { + @mixin default-font; + line-height: 1.5em; + margin-top: 1.3em; + margin-bottom: 1.3em; + color: #333; +} + +code.sg, +pre.sg { + @mixin default-font; + font-family: 'Lucida Console', Monaco, monospace; + font-size: 1.0em; + white-space: pre-wrap; +} + +li.sg { + @mixin default-font; + margin-left: 1em; + padding: .2em 0; +} + +strong.sg { + @mixin default-font; + font-weight: 700; +} + +small.sg { + @mixin default-font; + color: #888; +} + +/* +Buttons + +Button styles used in the styleguide + +default - Default button +.sg-primary - Primary button +:disabled - Disabled button + +markup: + + +Styleguide 2.3 + */ + + +button.sg { + @mixin default-font; + display: inline; + + margin-right: 8px; + padding: 8px; + + cursor: pointer; + + color: white; + border-radius: 5px; + background-color: var(--default-action-color); + background-color: $default-action-color; + + &:hover { + background-color: color($default-action-color lightness($action-color-change)); + } + &:active { + background-color: color($default-action-color blackness($action-color-change)); + } + + &.sg-primary { + color: white; + background-color: var(--primary-action-color); + background-color: $primary-action-color; + &:hover { + background-color: color($primary-action-color lightness($action-color-change)); + } + &:active { + background-color: color($primary-action-color blackness($action-color-change)); + } + } + + &:disabled { + cursor: default; + + color: #999; + background-color: var(--secondary-color); + background-color: $secondary-color; + } +} + +/* +Input boxes + +Styles for input boxes + +default - Default input +:hover - Hovered input + +markup: + + + + +Styleguide 2.4 + */ + +/* TODO +:focus - Focused input +:active - Active input +*/ + +input.sg { + @mixin default-font; + font-family: var(--secondary-font); + font-family: $secondary-font; + font-weight: 300; + + margin: 8px; + padding: 8px; + padding: .5em; + + border: 1px solid var(--secondary-color); + border: 1px solid $secondary-color; + + &:focus { + background-color: var(--tertiary-color); + background-color: $tertiary-color; + border: 1px solid $secondary-color; + } +} + +/* +Structure + +Styleguide 3.0 + */ + +/* +Grid + +Our grid is built using Bourbon's Neat grid framework. We use the default +12 column layout. + +Styleguide 3.1 + */ + +/* +Main layout + +.sg.wrapper acts as a container for .sg.nav and .sg.body + +markup: +
Header
+
+
Body
+
+ +Styleguide 3.1.1 + */ + +.sg.full-height { + min-height: 100vh; +} + +.sg.sg-wrapper { + align-items: stretch; + display: flex; + position: relative; + overflow: hidden; + max-width: $content-max-width; + margin: 0 auto; + padding: $wrapper-vertical-padding $content-margin $wrapper-vertical-padding $min-content-margin; + @media (--mobile) { + display: block; + padding: 0; + } + &.designerToolVisible { + margin-right: var(--designer-tool-width); + margin-right: $designer-tool-width; + } + + .sg.sg-body { + display: inline-block; + width: 70%; + min-height: 680px; + height: 100%; + @media (--mobile) { + padding: 0.25em; + padding-top: 30px; + width: 100%; + } + // Remove top margin from first header in markdown + .sg.sg-heading:nth-of-type(1) { + margin-top: 0; + padding-top: 0; + } + } + + .sg.full-width { + width: 100%; + } + + .sg.sg-side-nav { + display: inline-block; + max-width: 0; + opacity: 0; + overflow-y: auto; + transition: max-height .4s ease-in; + transition: max-width .4s ease-in; + @media (--mobile) { + max-height: 1000px; + width: 100%; + max-width: 100%; + opacity: 1; + padding-top: 30px; + z-index: 99999; + background: #8b8b8b; + transition: all .4s cubic-bezier(0.820, 0.000, 0.100, 1); + } + + &--toggle { + opacity: 1; + max-width: 30%; + z-index: 99999; + @media (--mobile) { + max-height: 0; + width: 100%; + max-width: 100%; + padding: 0; + } + } + + .sg.option { + text-align: center; + a { + color: white; + } + } + + li { + list-style: none; + @media (--mobile) { + background: #8b8b8b; + border-bottom: 1px solid #d4d4d4; + } + } + + & .sg-nav-section { + list-style: none; + margin: 2em 0 0 0; + @media (--mobile) { + margin: 0; + } + padding: 0; + background: rgba(#fff, 1); + & .sg-nav-subsection:before { + position: absolute; + top: 0; + left: -1em; + + display: block; + + width: 5px; + height: 100%; + + content: ''; + + background: lighten($primary-color, 75%); + + transition: all .4s ease-out; + } + } + + & .sg-nav-subsection .plus { + &:before { + position: absolute; + margin-top: 0; + margin-left: -1em; + display: block; + + width: 5px; + height: 100%; + + content: '+'; + + background: lighten($primary-color, 75%); + + transition: all .4s ease-out; + } + } + + & .sg-nav-subsection .minus { + &:before { + position: absolute; + margin-top: 0; + margin-left: -1em; + display: block; + + width: 5px; + height: 100%; + + content: '-'; + + background: lighten($primary-color, 75%); + + transition: all .4s ease-out; + } + } + + & .sg-nav-section li { + margin-bottom: .3em; + @media (--mobile) { + margin-bottom: 0; + } + } + + & .sg-nav-section li a { + @media (--mobile) { + color: $header-text-color; + margin-left: 5px; + } + } + + & .sg-nav-section > li > a { + font-family: $secondary-font; + line-height: 2em; + + position: relative; + + display: block; + + padding: .5em; + + &:before { + position: absolute; + top: 0; + left: -1em; + + display: block; + + width: 5px; + height: 100%; + + content: ''; + + background: lighten($primary-color, 75%); + + transition: all .4s ease-out; + } + + &:after { + position: absolute; + bottom: -.25em; + left: 0; + + display: block; + + width: 100%; + height: 1px; + + content: ''; + + background: rgba($secondary-color, 1); + } + + &:hover, + &.active { + &:before { + background: $primary-color; + } + } + } + .sg-nav-subsubsection { + padding-left: 10px; + } + .sg-nav-subsection { + padding-left: 30px; + & li { + border: none; + & a { + line-height: 2em; + position: relative; + display: block; + color: #23485f; + } + } + } + } + + .sg.side-nav-toggle { + font-family: var(--secondary-font); + font-style: normal; + position: absolute; + top: 2.0em; + cursor: pointer; + color: rgba(var(--primary-color), .2); + border-radius: 5px; + user-select: none; + transition: color .3s ease-in; + display: block; + @media (--mobile) { + display: none; + } + + &:before { + position: absolute; + top: -1.5em; + width: 10em; + content: 'Toggle navigation'; + opacity: 0; + color: rgba($primary-color, .2); + transition: opacity .3s ease-in; + } + + &:hover { + color: rgba($primary-color, .7); + &:before { + opacity: 1; + } + } + } +} +/* +Header and footer + +The header and footer are included in all styleguide pages + +Styleguide 3.2 + */ + +/* +Header + +Header bar description + +default - Default header +.error - Error state + +markup: +
+
+
+

Title

+
+
+
+ +Styleguide 3.2.1 + */ + + +.sg.sg-header { + width: 100%; + padding: 0; + color: #fff; + background: var(--header-background-color); + background: $header-background-color; + + pre { + clear: both; + } + + .sg-inner { + box-sizing: border-box; + padding: 0 var(--min-content-margin) 0 var(--min-content-margin); + padding: 0 $min-content-margin 0 $min-content-margin; + height: 100%; + padding-right: calc(var(--content-margin) - var($min-content-margin)); + padding-right: calc($content-margin - $min-content-margin); + max-width: var(--content-max-width); + max-width: $content-max-width; + margin-left: auto; + margin-right: auto; + + @media (--mobile) { + padding-right: 0; + } + + &:after { + visibility: hidden; + display: block; + font-size: 0; + content: " "; + clear: both; + height: 0; + } + } + + .sg-title { + min-height: 70px; + float: left; + padding-bottom: 20px; + white-space: nowrap; + padding: 0; + height: 100%; + + h1 { + font-family: var(--secondary-font); + font-family: $secondary-font; + font-style: normal; + font-size: 1.8em; + font-weight: 100; + margin: 0; + color: var(--header-text-color); + color: $header-text-color; + line-height: var(--header-height); + line-height: $header-height; + + span { + font-size: .9em; + } + } + } + + &.error { + height: auto; + background-color: #d2301c; + } + + &.designerToolVisible .sg-inner { + margin-right: var(--designer-tool-width); + margin-right: $designer-tool-width; + } + + @media (--mobile) { + height: auto; + } + + .sg.sg-search-container { + + @media (--mobile) { + clear: both; + display: flex; + } + .sg-hamburger { + display: none; + float: left; + cursor: pointer; + position: relative; + + @media (--mobile) { + display: block; + padding-top: 2px; + padding-bottom: 3px; + } + + &-item { + position: relative; + width: 40px; + height: 4px; + background: white; + margin-bottom: 9px; + top: 0; + transition: transform 0.15s ease-in-out, top 0.1s ease-in-out 0.2s, opacity 0.25s ease-in-out 0.1s; + transform-origin: center; + } + + &-active { + .sg-hamburger-item { + transition: transform 0.15s ease-in-out 0.2s, top 0.1s ease-in-out, opacity 0.25s ease-in-out; + } + .top { + top: 13px; + transform: rotate(135deg); + } + .middle { + opacity: 0; + transform: rotate(135deg); + } + .bottom { + top: -13px; + transform: rotate(225deg); + } + } + } + + .sg.sg-search-field { + box-sizing : border-box; + float: right; + @media (--mobile) { + margin-top: 0; + margin-left: 0; + margin-right: 40px; + float: none; + width: 100%; + } + } + } + .sg.side-nav-search .sg.sg-search-field { + @media (--mobile) { + margin-left: 13px; + } + } +} + +/* +Footer + +markup: + + +Styleguide 3.2.2 + */ + +.sg.sg-footer { + @mixin default-font; + box-sizing: border-box; + font-weight: 300; + + padding: var(--footer-padding); + padding: $footer-padding; + + text-align: center; + border-top: 2px solid #333; + margin: 0 20px 0 20px; + background: #FFF; +} + +.sg.sg-footer .sg-logo { + width: 42px; + height: var(--footer-logo-height); + height: $footer-logo-height; + margin-top: -5px; + + vertical-align: middle; +} + +/* +Navigation + +Navigation provides navigation menu between different sections + +markup: + + +Styleguide 3.3 + */ + +/* +Navigation item + +default - Default state +.active - Active item +.sub-active - Item with active subsection +:hover - Hover + +markup: +
  • + 1.0 First section +
  • + +sg-wrapper: + + +Styleguide 3.3.1 + */ + +.sg.sg-top-nav { + display: none; + clear: both; + background-color: var(--nav-background-color); + background-color: $nav-background-color; + z-index: 8000; + width: 100%; +} + +.sg.sg-nav-visible { + display: block; +} + +.sg.sg-top-nav-menu { + padding: 0 var(--min-content-margin) 0 var(--min-content-margin); + padding: 0 $min-content-margin 0 $min-content-margin; + margin: 0; + max-width: $content-max-width; + margin-left: auto; + margin-right: auto; + list-style-type: none; + + .designerToolVisible & { + margin-right: var(--designer-tool-width); + margin-right: $designer-tool-width; + } + + li { + @mixin default-font; + background-color: var(--nav-button-color); + background-color: $nav-button-color; + float:left; + } + li a { + padding: 0 20px; + display: block; + text-decoration: none; + } + & > li > a { + color: var(--nav-button-text-color); + color: $nav-button-text-color; + + &:hover, &.active { + color: var(--active-nav-button-text-color); + color: $active-nav-button-text-color; + background: var(--active-nav-button-color); + background: $active-nav-button-color; + } + &.sub-active { + border: var(--active-nav-button-color) solid; + border: $active-nav-button-color solid; + border-width: 0 0 3px; + line-height: calc(var(--menu-height) - 3px); + line-height: calc($menu-height - 3px); + } + line-height: var(--menu-height); + line-height: $menu-height; + .sg-ref { + color: $nav-button-ref-color; + } + } + + /* Submenu */ + ul { + z-index: 8000; + position: absolute; + left: -9999px; + top: -9999px; + list-style-type: none; + } + li:hover { + position:relative; + // Button should still have background color when sub-menu item is hovered + & > a { + color: var(--active-nav-button-text-color); + color: $active-nav-button-text-color; + background: var(--active-nav-button-color); + background: $active-nav-button-color; + } + ul { + left: 0px; + top: $menu-height; + padding: 0px; + } + .sg-ref { + color: var(--active-nav-button-ref-color); + color: $active-nav-button-ref-color; + } + } + + li:hover ul li a, li ul li a.active { + line-height: var(--sub-menu-height); + line-height: $sub-menu-height; + background: var(--nav-item-color); + background: $nav-item-color; + color: var(--nav-item-text-color); + color: $nav-item-text-color; + display: block; + width: 260px; + border-top: 1px solid white; + .sg-ref { + color: var(--nav-item-ref-color); + color: $nav-item-ref-color; + } + } + + a:hover, a.active, li:hover ul li a:hover, li ul li a.active { + background: var(--active-nav-button-color); + background: $active-nav-button-color; + color: var(--active-nav-button-text-color); + color: $active-nav-button-text-color; + .sg-ref { + color: $active-nav-button-ref-color; + } + } + + @media (--mobile) { + padding: 0; + li { + float: none; + } + } + + &:after { + visibility: hidden; + display: block; + font-size: 0; + content: " "; + clear: both; + height: 0; + } +} + +.sg.toggle { + font-family: var(--secondary-font); + font-family: $secondary-font; + font-weight: 300; + + cursor: pointer; + + color: var(--secondary-color); + color: $secondary-color; + + &.all-markup { + margin: 0; + padding: 1em; + } + &.hide-markup { + position: absolute; + top: 0; + right: 0; + + padding: 1em; + } + &.show-markup { + display: block; + + padding: 0; + } +} + +/* +Sections header + +Sections can be used to structure content. Sections are generated from +KSS reference numbers. + +Markup: +
    +

    1.0 Section title

    +
    + +Styleguide 3.4 + */ + +.sg.sg-section-header { + @mixin default-font; + background-color: var(--section-header-color); + background-color: $section-header-color; + border-top-left-radius: 5px; + border-top-right-radius: 5px; + + a { + text-decoration: none; + display: block; + } + + a:hover { + i.fa { + color: var(--secondary-color); + color: $secondary-color; + } + } + + h1 { + color: var(--section-header-text-color); + color: $section-header-text-color; + padding: 13px; + margin: 0; + font-size: 1.777em; + + .sg-reference-number { + color: var(--section-header-ref-color); + color: $section-header-ref-color; + } + + .sg-section-source { + float: right; + color: var(--section-header-source-text-color); + color: $section-header-source-text-color; + font-size: 60%; + line-height: 1.777em; + } + + } + + .sg-section-source-ref { + float: right; + color: var(--section-header-source-text-color); + color: $section-header-source-text-color; + font-size: 60%; + line-height: 1.777em; + margin-left: 0.3em; + } + + i.fa { + font-size: 14px; + padding: 0.4em 0.7em; + float: right; + color: $section-header-text-color.6; + transition: all .4s ease-out; + } + + /* Active header styles */ + .sg.designerToolVisible .sg.section.active:not(.main) & { + background-color: var(--active-section-header-color); + background-color: $active-section-header-color; + h1 { + color: var(--active-section-header-text-color); + color: $active-section-header-text-color; + .sg-reference-number { + color: $active-section-header-ref-color; + } + + .sg-section-source { + color: var(--active-section-header-source-text-color); + color: $active-section-header-source-text-color; + } + } + i.fa { + color: $active-section-header-text-color.6; + } + } + +} + +.sg.sg-section.main { + .sg-section-header { + background-color: transparent; + + h1 { + padding-top: 0; + font-size: 2.369em; + color: #333; + + .sg-section-source { + color: var(--main-section-header-source-text-color); + color: $main-section-header-source-text-color; + } + } + + i.fa { + display: none; + } + } + + .sg-reference-number { + display: none; + } + + .sg.sg-section-partial, .sg.sg-section-partial:last-child { + padding-top: 0; + padding-bottom: 0; + border: none; + } +} + +/* +Sections blocks + +Sections can be used to structure content. Sections are generated from +KSS reference numbers. + +Markup: +
    +
    +

    Section description

    + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + + + +
    +
    +      
    +
    +
    +
    + +Styleguide 3.5 + */ + +.sg.sg-section { + margin-bottom: 20px; + + .sg.sg-section-partial { + position: relative; + + overflow: auto; + + padding: 1em; + + border: 1px solid var(--secondary-color); + border: 1px solid $secondary-color; + border-bottom: none; + background: #fff; + width: 100%; + } + + .sg.sg-section-partial:last-child { + border-bottom: 1px solid $secondary-color; + } + + .sg.sg-code-listing { + padding: 0; + background-color: #f8f8f8; + + pre { + padding: 1em; + } + + .hljs { + overflow-y: auto; + + max-height: 400px; + } + + a.sg-show-section { + display: block; + + padding: .8em 1.2em; + + cursor: pointer; + } + } + .sg.modifier-list { + @mixin default-font; + list-style: none; + padding: 1em; + > .sg-item { + line-height: 1.8em; + > strong { + font-weight: bold; + } + } + } +} + +.sg.sg-body section.sg.sg-section:last-of-type { + margin-bottom: 0; + min-height: calc(100vh - #{$header_height} - #{$footer-logo-height} - #{$wrapper-vertical-padding}); +} + +.sg.designerToolVisible .sg.sg-section.active:not(.main) .sg.sg-section-header { + background-color: var(--primary-color); + background-color: color($primary-color lightness(17%)); +} + +.sg.sg-label { + @mixin default-font; + position: absolute; + z-index: 7000; + top: 0; + right: 0; + + border: 1px solid var(--secondary-color); + border: 1px solid $secondary-color; + border-top: none; + border-right: none; + background: #fff.9; + + span, + p { + @mixin default-font; + font-weight: 500; + + display: inline; + + padding: 0 .8em 0 0; + + text-decoration: none; + } + + a { + @mixin default-font; + display: inline-block; + + padding: .4em .7em; + + cursor: pointer; + text-decoration: none; + } + + a:hover { + i.fa { + color: $primary-color.7; + &:after { + opacity: 1; + } + } + } + + i.fa { + cursor: pointer; + + color: $primary-color.2; + + transition: all .4s ease-out; + } +} + +/* +Variable sections header + +Header for listing all sections which use the selected variable + +markup: +

    + Sections using variable + variable name +

    + +Styleguide 3.6. + */ + +.sg.sg-heading .sg-current-variable { + display: inline; + color: #009926; + font-weight: 700; +} + +/* +Designer tool + +Styles for styleguide designer tool + +Styleguide 4.0 + */ + +/* +Variable listing + +markup: +
    +

    All variables

    + +
    + +Styleguide 4.1 + */ + + +.sg.sg-design { + position: fixed; + top: 0; + left: 100%; + + width: var(--designer-tool-width); + width: $designer-tool-width; + height: 100%; + + z-index: 9000; + + @media (--mobile) { + width: var(--designer-tool-width-mobile); + width: $designer-tool-width-mobile; + } + + border-left: 1px solid #000.3; + + transition: left .3s ease-out; + + .sg-handle { + @mixin default-font; + position: absolute; + top: 220px; + left: -30px; + + width: 150px; + height: 30px; + padding: 5px 10px; + + cursor: pointer; + text-align: center; + + color: #000.4; + border-top: 1px solid #000.3; + border-right: 1px solid #000.3; + border-left: 1px solid #000.3; + border-radius: 3px 3px 0 0; + background: #fff; + + transition: left .3s ease-out; + transition-delay: .3s; + transform: rotate(-90deg); + transform-origin: left top; + } + + .close { + position: absolute; + top: 0; + right: 0; + + padding: 10px; + } + + &.sg-hidden { + left: 100%; + } + + &.sg-visible { + left: calc(100% - $designer-tool-width); + @media (--mobile) { + left: calc(100% - $designer-tool-width-mobile); + } + + .sg-handle { + left: 0; + } + } + + .sg-info-text { + margin-top: 10px; + } +} + +.sg.sg-design-content { + @mixin default-font; + position: relative; + z-index: 9000; + + overflow-x: auto; + overflow-y: auto; + + width: 100%; + height: 100%; + padding: 1em; + + background: white; + + ul { + margin: 0; + padding: 0; + list-style: none; + } + + label { + display: block; + + i.fa { + padding-left: 8px; + color: red; + } + + a { + i.fa.fa-eye { + font-size: 16px; + padding-left: 4px; + color: var(--primary-color); + color: $primary-color.2; + transition: all .4s ease-out; + } + + &:hover { + i.fa.fa-eye { + color: $primary-color.8; + } + } + } + + .sg-variable-source { + display: block; + opacity: 0.5; + font-size: 80%; + } + + } + + input { + display: inline; + } + + input[type='text'] { + box-sizing: border-box; + width: 100%; + } + + input[type='color'] { + background: transparent; + position: absolute; + right: 0; + + box-sizing: border-box; + width: 36px; + height: 36px; + padding: 0; + + cursor: pointer; + + border: none; + } +} + +/* +Action footer + +markup: + + +Styleguide 4.2 +*/ + +.sg.sg-action-footer { + margin-top: 16px; + margin-bottom: 16px; + padding-top: 8px; + + border-top: 1px solid var(--secondary-color); + border-top: 1px solid $secondary-color; +} + + +/* +Progress bar + +markup: +
    + +Styleguide 4.3 + */ + +#ngProgress { + z-index: 99998; + + height: 4px; + margin: 0; + padding: 0; + /* Add CSS3 styles for transition smoothing */ + + -webkit-transition: all .5s ease-in-out; + -moz-transition: all .5s ease-in-out; + -o-transition: all .5s ease-in-out; + transition: all .5s ease-in-out; + + opacity: 0; + color: var(--primary-action-color); + color: $primary-action-color; + background-color: $primary-action-color; + box-shadow: 0 0 3px 0; /* Inherits the font color */ +} + +#ngProgress-container { + position: fixed; + z-index: 99999; + top: 0; + right: 0; + left: 0; + + margin: 0; + padding: 0; +} + +/* +Socket disconnection icon + +markup: +
    + +
    + +Styleguide 4.4 +*/ + +.sg#socketDisconnection { + position: fixed; + z-index: 9100; + top: 0; + right: calc(var(--designer-tool-width) + 2)%; + right: calc($designer-tool-width + 2%); + + transition: top .2s ease-in; +} + +.sg#socketDisconnection.ng-hide { + top: -60px; +} + +.sg-navigation-section { + padding: 10px; + position: fixed; + z-index: 99999; + right: 0; + @if $navigation-arrows-visible == true { + display: inline; + } @else { + display: none; + } + .next-nav, .prev-nav { + float: left; + cursor: pointer; + } + .sg-navigation-link, + .sg-navigation-link:link, + .sg-navigation-link:visited + { + color: $default-action-color; + text-decoration: none; + } +} + +.sg.disconnection-icon { + line-height: 32px; + + width: 32px; + height: 32px; + padding-top: 3px; + + text-align: center; + vertical-align: middle; + + color: #fff; + border-radius: 3px; + border-top-left-radius: 0; + border-top-right-radius: 0; + background-color: #d20000; + i.fa { + font-size: 20px; + + animation: socket-disconnect-pulse 3s linear infinite; + } +} + +@keyframes socket-disconnect-pulse { + 80% { + color: rgba(255, 255, 255, 1); + } + 90% { + color: rgba(255, 255, 255, .35); + } + 100% { + color: rgba(255, 255, 255, 1); + } +} + + +/* +Angular Directives + +Example of lazy loaded AngularJS directive from external project + +Styleguide 6.0 + */ + +/* +Test directive + +markup: +
    If you see this something is wrong
    + +sg-angular-directive: +name: sgAppTest +file: demo/testDirectiveInit.js +file: demo/testDirective.js + +Styleguide 6.1 + */ + +.sg.demo-click-area { + user-select: none; + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + padding: 0.2em; + border: 2px solid red; + display: initial; + cursor: pointer; +} + + +/* +Test directive2 + +markup: +
    If you see this something is wrong
    + +sg-angular-directive: +name: sgAppTest +file: demo/testDirectiveInit.js +file: demo/testDirectiveTwo.js + +Styleguide 6.2 + */ + + /* styleguide:ignore:start */ +@mixin styleguide_custom_styles; +/* styleguide:ignore:end */