{ "version": 3, "file": "expanded.css", "sources": [ "../global.scss", "../constants.scss", "../panel-list.scss", "../timeline-form.scss" ], "sourcesContent": [ "@import 'constants';\n\n/* [1] Panel list (tokens, utilisateurs, etc)\n=========================================================*/\n@import 'panel-list';\n\n/* [2] Formulaire de type 'timeline'\n=========================================================*/\n@import 'timeline-form';\n", "/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #333333;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #399ced;\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n transform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n -webkit-transition: $value;\n transition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n @return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n", "@import 'constants';\n\n/* [1] Panneau d'ajout/suppression d'elements\n=========================================================*/\n#WRAPPER > #CONTAINER section[data-panel-list]{\n\tdisplay: block;\n\tposition: relative;\n\n\tborder-radius: 3px;\n\tborder: 1px solid #ccc;\n\n\tbackground-color: #fff;\n\n\tfont-size: .9em;\n\tcolor: #000;\n\n\n\t/* (1) Header (titre + ajout) */\n\t& > div[data-header]{\n\t\tdisplay: flex;\n\t\tposition: relative;\n\n\t\t// flex properties\n\t\tflex-direction: row;\n\t\tflex-wrap: nowrap;\n\t\tjustify-content: space-between;\n\t\talign-items: center;\n\n\t\tpadding: .5em .7em;\n\n\t\tborder-radius: 3px 3px 0 0;\n\t\tborder-bottom: 1px solid #ccc;\n\n\t\tbackground-color: #f5f5f5;\n\t\tbox-shadow: inset 0 0 5px #eee;\n\n\t\t// Libelle du panel\n\t\t& > span,\n\t\t& > button{\n\t\t\tcolor: #333;\n\t\t\tfont-weight: bold;\n\t\t\tline-height: 2em;\n\t\t}\n\n\t\t// Bouton ajouter\n\t\t& > button{\n\t\t\tpadding: .1em .7em;\n\n\t\t\tborder-radius: 3px;\n\t\t\tborder: 1px solid #777;\n\n\t\t\tbackground: #ecf0f1;\n\n\t\t\t@include transition( all .1s ease-in-out );\n\n\t\t\tcolor: #777;\n\n\t\t\t// Animation de @hover\n\t\t\t&:hover{\n\t\t\t\tbackground: $theme-fg-primary;\n\t\t\t\tborder-color: darken($theme-fg-primary, 10);\n\t\t\t\tcolor: #fff;\n\t\t\t}\n\t\t}\n\n\t}\n\n\n\t/* (2) Description (sous le header) */\n\t& > div[data-description]{\n\t\tdisplay: block;\n\t\tposition: relative;\n\n\t\tborder-bottom: 1px solid #ccc;\n\n\t\tpadding: .7em .7em;\n\n\t\tcolor: #555;\n\t}\n\n\n\n\t/* (3) Liste des elements */\n\t& > ul[data-list]{\n\t\tdisplay: flex;\n\t\tposition: relative;\n\n\t\t// flex properties\n\t\tflex-direction: column;\n\t\tjustify-content: flex-start;\n\t\tflex-wrap: nowrap;\n\n\t\tmargin: 0;\n\t\tpadding: 0;\n\n\t\tlist-style: none;\n\n\n\t\t/* (4) Chaque element de la liste */\n\t\t& > li[data-element]{\n\t\t\tdisplay: flex;\n\n\t\t\t// flex properties\n\t\t\tflex-direction: row;\n\t\t\tjustify-content: space-between;\n\t\t\talign-items: center;\n\t\t\tflex-wrap: nowrap;\n\n\t\t\tpadding: 1em;\n\n\t\t\t// rebord en bas sauf dernier\n\t\t\t&:not(:last-child){\n\t\t\t\tborder-bottom: 1px solid #ccc;\n\t\t\t}\n\n\t\t\t/* (4.1) Logo et type d'element */\n\t\t\t& > div:nth-child(1){\n\t\t\t\tdisplay: flex;\n\t\t\t\t\twidth: 10em;\n\t\t\t\t\theight: 6em;\n\n\t\t\t\t// flex properties\n\t\t\t\tflex-direction: column;\n\t\t\t\tjustify-content: flex-end;\n\t\t\t\talign-items: center;\n\n\t\t\t\t// Image pour token\n\t\t\t\t&[data-token]{\n\t\t\t\t\tbackground: url('/f/svg/token/st/container/666666') center 1em no-repeat;\n\t\t\t\t\t// Si le token est actif\n\t\t\t\t\t&.active{\n\t\t\t\t\t\tbackground-image: url('/f/svg/token/st/container/${color-str($theme-fg-primary)');\n\t\t\t\t\t}\n\t\t\t\t}\n\n\n\t\t\t\t// Image pour utilisateur\n\t\t\t\t&[data-user]{\n\t\t\t\t\tbackground: url('/f/svg/user/st/container/666666') center 1em no-repeat;\n\t\t\t\t\t// Si le token est actif\n\t\t\t\t\t&.active{\n\t\t\t\t\t\tbackground-image: url('/f/svg/user/st/container/${color-str($theme-fg-primary)');\n\t\t\t\t\t}\n\t\t\t\t}\n\n\n\t\t\t\t// Image pour utilisateur\n\t\t\t\t&[data-number]{\n\t\t\t\t\tbackground: url('/f/svg/phone_number/st/container/666666') center 1em no-repeat;\n\t\t\t\t\t// Si le token est actif\n\t\t\t\t\t&.active{\n\t\t\t\t\t\tbackground-image: url('/f/svg/phone_number/st/container/${color-str($theme-fg-primary)');\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tbackground-size: auto 50%;\n\n\n\n\t\t\t\t// Texte pour le type d'element\n\t\t\t\t& > span{\n\t\t\t\t\tdisplay: block;\n\n\t\t\t\t\tpadding: 0 .4em;\n\n\t\t\t\t\tborder-radius: 3px;\n\t\t\t\t\tborder: 1px solid #ddd;\n\n\t\t\t\t\tfont-size: .8em;\n\t\t\t\t\tcolor: #555;\n\t\t\t\t\ttext-transform: uppercase;\n\t\t\t\t\tfont-weight: bold;\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t\t/* (4.2) Donnees descriptives */\n\t\t\t& > div:nth-child(n+2){\n\t\t\t\tdisplay: flex;\n\t\t\t\tposition: relative;\n\n\t\t\t\tflex: 10em;\n\n\t\t\t\tpadding: 1em;\n\n\t\t\t\t// flex properties\n\t\t\t\tflex-direction: column;\n\t\t\t\tjustify-content: flex-start;\n\t\t\t\talign-items: flex-start;\n\n\t\t\t\tfont-size: 1em;\n\t\t\t\tcolor: #000;\n\t\t\t\tfont-weight: bold;\n\n\t\t\t\t// On prefixe chaque donnee\n\t\t\t\t& > span[data-prefix]:before{\n\t\t\t\t\tcontent: attr(data-prefix) \": \";\n\t\t\t\t\tfont-weight: normal;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/* (4.3) Bouton de suppression */\n\t\t\t& > button{\n\t\t\t\tpadding: .1em .7em;\n\t\t\t\t\theight: 2em;\n\n\t\t\t\tborder-radius: 3px;\n\t\t\t\tborder: 1px solid #de2b08;\n\n\t\t\t\tbackground: #fff;\n\n\t\t\t\tcolor: #de2b08;\n\t\t\t\tfont-weight: bold;\n\n\t\t\t\t@include transition( all .2s ease-in-out );\n\n\t\t\t\t// Animation de @hover\n\t\t\t\t&:hover{\n\t\t\t\t\tbackground: #de2b08;\n\t\t\t\t\tcolor: #fff;\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t}\n\n\n\t/* (5) Formulaire d'ajout d'un nouvel element */\n\t& > div[data-add]{\n\t\tdisplay: none;\n\n\t\t// Affichage quand .active\n\t\t&.active{\n\t\t\tdisplay: block;\n\t\t}\n\n\t\tposition: relative;\n\n\t\tpadding: 1em;\n\n\t\tborder-bottom: 1px solid #ccc;\n\n\t\tbackground-color: #ecf0f1;\n\n\t\t// font-weight: bold;\n\n\t\t/* (5.1) Description du champ de texte */\n\t\t& > .label{\n\t\t\tdisplay: inline-block;\n\t\t\twidth: 18em;\n\t\t\tpadding-right: 2em;\n\t\t\ttext-align: right;\n\t\t\tcolor: #3b494c;\n\t\t}\n\n\n\t\t/* (5.2) Champs de texte */\n\t\t& > input[type='text'],\n\t\t& > input[type='email'],\n\t\t& > input[type='password']{\n\t\t\tmargin: 1em 0;\n\t\t\tpadding: .5em .7em;\n\n\t\t\tborder-radius: 3px;\n\t\t\tborder: 1px solid #ddd;\n\n\t\t\tbackground-color: #fff;\n\n\t\t\tcolor: #000;\n\t\t\tfont-weight: normal;\n\n\t\t\t// Animation de @focus\n\t\t\t&:focus{\n\t\t\t\tborder-color: $theme-fg-primary;\n\t\t\t\tbox-shadow: inset 0 0 2px #ddd;\n\t\t\t}\n\t\t}\n\n\n\t\t/* (5.3) Bouton de creation animation de @hover*/\n\t\t& > input[type='submit']:hover{\n\t\t\tbackground: $theme-fg-primary;\n\t\t\tborder-color: darken($theme-fg-primary, 10);\n\t\t\tcolor: #fff;\n\t\t}\n\t}\n\n}\n", "@import 'constants';\n\n/* [1] Formulaire de type timeline\n=========================================================*/\n#WRAPPER > #CONTAINER section[data-timeline]{\n\tdisplay: block;\n\tposition: relative;\n\n\tbackground-color: #fff;\n\n\tfont-size: .9em;\n\tcolor: #000;\n\n\t/* (1) On ajoute le liseré à droite pour TOUS les éléments */\n\t& h5,\n\t& h4,\n\t& h3,\n\t& *.line{\n\t\tdisplay: block;\n\n\t\tcolor: #333;\n\n\t\tmargin: 0 40px;\n\t\tpadding: 5px 60px;\n\n border-left: 2px solid $timeline-color;\n\n\t}\n\n\n\t/* (2) Titres de sections */\n\t& h3{\n\t\tdisplay: block;\n\t\tpadding: 20px 40px;\n\n\t\tfont-size: 1.4em;\n\t\tcolor: #fff;\n\t\tfont-weight: bold;\n\n background-color: $timeline-color;\n\n\t\t/* TODO: Transformer les background en ::before pour que ca soit juste un cercle avec bg et border*/\n\t\t/* FIXME: Corriger le liseré pour les autres navigateurs que FF*/\n\n\t\t/* Gestion du before (compteur css) //*/\n\t\t&[data-n]:before{\n content: attr(data-n);\n\n display: inline-block;\n position: absolute;\n margin-top: .48em;\n margin-left: -41px;\n padding: 3px 12px;\n\n border-radius: 50%;\n /* Contour blanc*/\n box-shadow: 0 0 0 3px #fff;\n\n background-color: $timeline-color;\n\n\t\t\tfont-size: 1.3em;\n\t\t\tcolor: #fff;\n\t\t\tfont-weight: bold;\n\n /* On centre sur la ligne*/\n @include transform( translateX(-50%) translateY(-50%) );\n\n\t\t}\n\t}\n\n\t/* (3) Titres des sous-sections */\n\t& h4{\n\t\tdisplay: block;\n\n\t\tpadding: 20px 40px;\n\n\t\tfont-size: 1.2em;\n\t\tcolor: darken($timeline-color, 20);\n\t\tfont-weight: bold;\n\n\t\t/* Gestion du before (compteur css) //*/\n\t\t&[data-icon]:before{\n\t\t\tcontent: attr(data-icon);\n\n display: inline-block;\n position: absolute;\n margin-top: .8em;\n margin-left: -41px;\n padding: 7px;\n\n border-radius: 50%;\n /* Contour blanc*/\n box-shadow: 0 0 0 2px #fff;\n\n background-color: $timeline-color;\n\n\t\t\tfont-size: 1em;\n\t\t\tfont-family: 'icomoon';\n\t\t\tcolor: #fff;\n\t\t\tfont-weight: bold;\n\n /* On centre sur la ligne*/\n @include transform( translateX(-50%) translateY(-50%) );\n\t\t}\n\t}\n\n\t/* (4) Titres genre text message */\n\t& h5{\n\t\tdisplay: block;\n\n\t\tpadding: 20px 40px;\n\n\t\tfont-size: 1.2em;\n\t\tcolor: darken($timeline-color, 20);\n\t\tfont-weight: bold;\n\n\t\t/* Gestion du before (compteur css) //*/\n\t\t&:before{\n\t\t\tcontent: '';\n\n display: inline-block;\n position: absolute;\n margin-top: .7em;\n margin-left: -41px;\n padding: 7px;\n\n border-radius: 50%;\n /* Contour blanc*/\n box-shadow: 0 0 0 2px #fff;\n\n background-color: $timeline-color;\n\n /* On centre sur la ligne*/\n @include transform( translateX(-50%) translateY(-50%) );\n\t\t}\n\n /* Texte genre text message*/\n &[data-text]:after{\n content: attr(data-text);\n padding: 6px 10px;\n\n border-radius: 3px;\n\n background: $theme-fg-primary;\n\n color: #fff;\n font-weight: normal;\n }\n\t}\n\n\t/* (5) 'Tags' -> textes sur le liseré gauche */\n\t& [data-tag]{\n\t\tdisplay: block;\n\n\t\tpadding: 40px 60px;\n\n &:before{\n \t\tcontent: attr(data-tag);\n\n display: inline-block;\n position: absolute;\n margin-top: .5em;\n margin-left: -41px;\n padding: 2px;\n\n background-color: #fff;\n\n font-size: 1.2em;\n color: $timeline-color;\n font-weight: bold;\n\n /* On centre sur la ligne*/\n @include transform( translateX(-50%) translateY(-50%) );\n }\n\t}\n\n /* (6) Input d'upload de fichier (css hack) */\n & input[type='file']{\n position: relative;\n opacity: 0;\n\n z-index: 8;\n\n cursor: pointer;\n\n }\n\n /* Contiendra l'input*/\n & input[type='file'] + span.file-input{\n display: inline-block;\n position: absolute;\n margin-top: -1px;\n margin-left: -290px;\n width: calc( 290px - 2*15px );\n height: 30px;\n\n padding: 0 15px;\n\n border-radius: 3px;\n background: #ddd;\n\n color: #333;\n line-height: 30px;\n font-weight: normal;\n\n z-index: 9;\n\n cursor: pointer;\n\n\t\tpointer-events: none;\n\n /* Icone d'upload*/\n &:before{\n content: 'e ';\n\n font-size: 1em;\n\t\t\tfont-family: 'icomoon';\n\t\t\tcolor: #333;\n\t\t\tfont-weight: bold;\n }\n\n\t\t@include transition( background .1s ease-in-out );\n }\n\n\n\t/* Animation de hover*/\n\t& input[type='file']:hover + span.file-input{\n\t\tbackground: #bbb;\n\t\tbox-shadow: inset 0 0 5px #888;\n\t}\n\n\n\t/* Animation de .active*/\n\t& input[type='file'].active + span.file-input{\n\t\tbackground: $timeline-color;\n\t\tcolor: #fff;\n\t\t// On change l'icône\n\t\t&:before{\n content: 'v ';\n\t\t\tcolor: #fff;\n\t\t}\n\t}\n\n\t/* (7) Inputs de type text */\n\t& input[type='text'],\n\t& input[type='password'],\n\t& input[type='number'],\n\t& input[type='button'],\n\t& input[type='submit'],\n\t& input[type='mail']{\n\t\tdisplay: inline;\n\t\twidth: auto;\n\n\t\tmargin: unset;\n\t\tpadding: 5px 10px;\n\t\tmargin-bottom: 5px;\n\t\tmargin-right: 15px;\n\n\t\tborder-radius: 0;\n\t\tborder: 0;\n\t\tborder-bottom: 1px solid #555;\n\n\t\tfont-size: .8em;\n\t\tfont-weight: normal;\n\t\tcolor: #333;\n\n\t\t@include transition( border .2s ease-in-out );\n\n\t\t/* Animation de @focus*/\n\t\t&:focus{\n\t\t\tborder-color: $timeline-color;\n\t\t}\n\t}\n\n\t& label{\n\t\tcolor: #555;\n\t}\n\n\t/* (8) Gestion des espacements */\n\t& [data-space]{\n\t\t@extend *.line;\n\n\t\tpadding-top: 20px;\n\t\tpadding-bottom: 20px;\n\t}\n\n\t/* (9)
sert uniquement à regrouper */\n\t& article{\n\t\tall: unset !important;\n\t}\n\n\t/* (10) Gestion des espacements verticaux */\n\t& .spacetop{ margin-top: 20px !important; }\n\t& .spacebtm{ margin-bottom: 20px !important; }\n\n\t& .spaced{\n\t\t@extend .spacetop;\n\t\t@extend .spacebtm;\n\t}\n\n\t& .nobold,\n\t& .nobold *{\n\t\tfont-weight: normal !important;\n\t}\n\n\t/* (11) Gestion des custom