Merge pull request #5884 from betagouv/dev

2021-02-08-01
This commit is contained in:
LeSim 2021-02-08 11:31:19 +01:00 committed by GitHub
commit 6349406334
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
242 changed files with 989 additions and 2765 deletions

View file

@ -1,7 +1,6 @@
exclude:
- 'app/assets/stylesheets/new_design/reset.scss'
- 'app/assets/stylesheets/reset.scss'
- 'app/assets/stylesheets/direct_uploads.scss'
- 'app/assets/stylesheets/new_design/direct_uploads.scss'
linters:
BangFormat:

11
Gemfile
View file

@ -9,8 +9,6 @@ gem 'administrate'
gem 'after_party'
gem 'anchored'
gem 'bcrypt'
gem 'bootstrap-sass', '>= 3.4.1'
gem 'bootstrap-wysihtml5-rails', '~> 0.3.3.8'
gem 'browser'
gem 'chartkick'
gem 'chunky_png'
@ -30,7 +28,6 @@ gem 'ffi-geos', require: false
gem 'flipper'
gem 'flipper-active_record'
gem 'flipper-ui'
gem 'font-awesome-rails'
gem 'fugit'
gem 'geocoder'
gem 'geo_coord', require: "geo/coord"
@ -43,9 +40,9 @@ gem 'groupdate'
gem 'haml-rails'
gem 'hashie'
gem 'http_accept_language'
gem 'i18n-tasks'
gem 'iban-tools'
gem 'image_processing'
gem 'jquery-rails' # Use jquery as the JavaScript library
gem 'json_schemer'
gem 'jwt'
gem 'kaminari', '1.2.1' # Pagination
@ -70,7 +67,8 @@ gem 'rqrcode'
gem 'ruby-saml-idp'
gem 'sanitize-url'
gem 'sassc-rails' # Use SCSS for stylesheets
gem 'sentry-raven'
gem 'sentry-rails'
gem 'sentry-ruby'
gem 'sib-api-v3-sdk'
gem 'skylight'
gem 'smart_listing'
@ -118,10 +116,9 @@ end
group :development, :test do
gem 'axe-matchers' # accessibility rspec matchers
gem 'byebug' # Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'graphql-schema_comparator'
gem 'mina', git: 'https://github.com/mina-deploy/mina.git', require: false # Deploy
gem 'pry-byebug'
gem 'pry-byebug' # Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'rspec_junit_formatter', require: false
gem 'rspec-rails'
gem 'ruby-debug-ide', require: false

View file

@ -22,38 +22,38 @@ GEM
specs:
aasm (5.1.1)
concurrent-ruby (~> 1.0)
actioncable (6.0.3.3)
actionpack (= 6.0.3.3)
actioncable (6.0.3.4)
actionpack (= 6.0.3.4)
nio4r (~> 2.0)
websocket-driver (>= 0.6.1)
actionmailbox (6.0.3.3)
actionpack (= 6.0.3.3)
activejob (= 6.0.3.3)
activerecord (= 6.0.3.3)
activestorage (= 6.0.3.3)
activesupport (= 6.0.3.3)
actionmailbox (6.0.3.4)
actionpack (= 6.0.3.4)
activejob (= 6.0.3.4)
activerecord (= 6.0.3.4)
activestorage (= 6.0.3.4)
activesupport (= 6.0.3.4)
mail (>= 2.7.1)
actionmailer (6.0.3.3)
actionpack (= 6.0.3.3)
actionview (= 6.0.3.3)
activejob (= 6.0.3.3)
actionmailer (6.0.3.4)
actionpack (= 6.0.3.4)
actionview (= 6.0.3.4)
activejob (= 6.0.3.4)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 2.0)
actionpack (6.0.3.3)
actionview (= 6.0.3.3)
activesupport (= 6.0.3.3)
actionpack (6.0.3.4)
actionview (= 6.0.3.4)
activesupport (= 6.0.3.4)
rack (~> 2.0, >= 2.0.8)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.2.0)
actiontext (6.0.3.3)
actionpack (= 6.0.3.3)
activerecord (= 6.0.3.3)
activestorage (= 6.0.3.3)
activesupport (= 6.0.3.3)
actiontext (6.0.3.4)
actionpack (= 6.0.3.4)
activerecord (= 6.0.3.4)
activestorage (= 6.0.3.4)
activesupport (= 6.0.3.4)
nokogiri (>= 1.8.5)
actionview (6.0.3.3)
activesupport (= 6.0.3.3)
actionview (6.0.3.4)
activesupport (= 6.0.3.4)
builder (~> 3.1)
erubi (~> 1.4)
rails-dom-testing (~> 2.0)
@ -68,25 +68,25 @@ GEM
jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
active_storage_validations (0.9.0)
rails (>= 5.2.0)
activejob (6.0.3.3)
activesupport (= 6.0.3.3)
activejob (6.0.3.4)
activesupport (= 6.0.3.4)
globalid (>= 0.3.6)
activemodel (6.0.3.3)
activesupport (= 6.0.3.3)
activerecord (6.0.3.3)
activemodel (= 6.0.3.3)
activesupport (= 6.0.3.3)
activestorage (6.0.3.3)
actionpack (= 6.0.3.3)
activejob (= 6.0.3.3)
activerecord (= 6.0.3.3)
activemodel (6.0.3.4)
activesupport (= 6.0.3.4)
activerecord (6.0.3.4)
activemodel (= 6.0.3.4)
activesupport (= 6.0.3.4)
activestorage (6.0.3.4)
actionpack (= 6.0.3.4)
activejob (= 6.0.3.4)
activerecord (= 6.0.3.4)
marcel (~> 0.3.1)
activestorage-openstack (1.4.1)
fog-openstack (~> 1.0)
marcel
mime-types
rails (>= 5.2.2)
activesupport (6.0.3.3)
activesupport (6.0.3.4)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 0.7, < 2)
minitest (~> 5.1)
@ -134,11 +134,6 @@ GEM
bcrypt (3.1.16)
bindata (2.4.8)
bindex (0.8.1)
bootstrap-sass (3.4.1)
autoprefixer-rails (>= 5.2.1)
sassc (>= 2.0.0)
bootstrap-wysihtml5-rails (0.3.3.8)
railties (>= 3.0)
brakeman (4.9.1)
browser (5.0.0)
builder (3.2.4)
@ -182,7 +177,7 @@ GEM
coffee-script-source
execjs
coffee-script-source (1.12.2)
concurrent-ruby (1.1.7)
concurrent-ruby (1.1.8)
connection_pool (2.2.3)
crack (0.4.4)
crass (1.0.6)
@ -237,7 +232,7 @@ GEM
http_parser.rb (~> 0.6.0)
encryptor (3.0.0)
equalizer (0.0.11)
erubi (1.9.0)
erubi (1.10.0)
erubis (2.7.0)
et-orbi (1.2.4)
tzinfo
@ -248,8 +243,11 @@ GEM
execjs (2.7.0)
factory_bot (5.1.2)
activesupport (>= 4.2.0)
faraday (1.0.1)
faraday (1.3.0)
faraday-net_http (~> 1.0)
multipart-post (>= 1.2, < 3)
ruby2_keywords
faraday-net_http (1.0.1)
ffi (1.13.1)
ffi-geos (2.1.0)
ffi (>= 1.0.0)
@ -274,8 +272,6 @@ GEM
fog-core (~> 2.1)
fog-json (>= 1.0)
ipaddress (>= 0.8)
font-awesome-rails (4.7.0.5)
railties (>= 3.2, < 6.1)
formatador (0.2.5)
fugit (1.3.4)
et-orbi (~> 1.1, >= 1.1.8)
@ -344,6 +340,7 @@ GEM
hana (1.3.7)
hashdiff (1.0.1)
hashie (4.1.0)
highline (2.0.3)
html2haml (2.2.0)
erubis (~> 2.7.0)
haml (>= 4.0, < 6)
@ -356,8 +353,18 @@ GEM
http_accept_language (2.1.1)
http_parser.rb (0.6.0)
httpclient (2.8.3)
i18n (1.8.5)
i18n (1.8.7)
concurrent-ruby (~> 1.0)
i18n-tasks (0.9.33)
activesupport (>= 4.0.2)
ast (>= 2.1.0)
erubi
highline (>= 2.0.0)
i18n
parser (>= 2.2.3.0)
rails-i18n
rainbow (>= 2.2.2, < 4.0)
terminal-table (>= 1.5.1)
iban-tools (1.1.0)
ice_nine (0.11.2)
image_processing (1.12.1)
@ -409,7 +416,7 @@ GEM
railties (>= 4)
request_store (~> 1.0)
logstash-event (1.2.02)
loofah (2.7.0)
loofah (2.9.0)
crass (~> 1.0.2)
nokogiri (>= 1.5.9)
lumberjack (1.2.4)
@ -429,7 +436,7 @@ GEM
mini_magick (4.11.0)
mini_mime (1.0.2)
mini_portile2 (2.5.0)
minitest (5.14.2)
minitest (5.14.3)
momentjs-rails (2.20.1)
railties (>= 3.1)
multi_json (1.15.0)
@ -513,20 +520,20 @@ GEM
rack
rack-test (1.1.0)
rack (>= 1.0, < 3)
rails (6.0.3.3)
actioncable (= 6.0.3.3)
actionmailbox (= 6.0.3.3)
actionmailer (= 6.0.3.3)
actionpack (= 6.0.3.3)
actiontext (= 6.0.3.3)
actionview (= 6.0.3.3)
activejob (= 6.0.3.3)
activemodel (= 6.0.3.3)
activerecord (= 6.0.3.3)
activestorage (= 6.0.3.3)
activesupport (= 6.0.3.3)
rails (6.0.3.4)
actioncable (= 6.0.3.4)
actionmailbox (= 6.0.3.4)
actionmailer (= 6.0.3.4)
actionpack (= 6.0.3.4)
actiontext (= 6.0.3.4)
actionview (= 6.0.3.4)
activejob (= 6.0.3.4)
activemodel (= 6.0.3.4)
activerecord (= 6.0.3.4)
activestorage (= 6.0.3.4)
activesupport (= 6.0.3.4)
bundler (>= 1.3.0)
railties (= 6.0.3.3)
railties (= 6.0.3.4)
sprockets-rails (>= 2.0.0)
rails-controller-testing (1.0.5)
actionpack (>= 5.0.1.rc1)
@ -545,14 +552,14 @@ GEM
rails-i18n (6.0.0)
i18n (>= 0.7, < 2)
railties (>= 6.0.0, < 7)
railties (6.0.3.3)
actionpack (= 6.0.3.3)
activesupport (= 6.0.3.3)
railties (6.0.3.4)
actionpack (= 6.0.3.4)
activesupport (= 6.0.3.4)
method_source
rake (>= 0.8.7)
thor (>= 0.20.3, < 2.0)
rainbow (3.0.0)
rake (13.0.1)
rake (13.0.3)
rake-progressbar (0.0.5)
rb-fsevent (0.10.4)
rb-inotify (0.10.1)
@ -646,7 +653,7 @@ GEM
ruby-saml-idp (0.3.5)
ruby-vips (2.0.17)
ffi (~> 1.9)
ruby2_keywords (0.0.2)
ruby2_keywords (0.0.4)
ruby_parser (3.15.0)
sexp_processor (~> 4.9)
rubyzip (2.3.0)
@ -671,8 +678,16 @@ GEM
childprocess (>= 0.5, < 4.0)
rubyzip (>= 1.2.2)
semantic_range (2.3.0)
sentry-raven (3.1.0)
sentry-rails (4.1.6)
rails (>= 5.0)
sentry-ruby-core (~> 4.1.2)
sentry-ruby (4.1.5)
concurrent-ruby (~> 1.0, >= 1.0.2)
faraday (>= 1.0)
sentry-ruby-core (= 4.1.5)
sentry-ruby-core (4.1.5)
concurrent-ruby
faraday
sexp_processor (4.15.1)
shellany (0.0.1)
shoulda-matchers (4.4.1)
@ -718,14 +733,16 @@ GEM
httpclient (>= 2.4)
sysexits (1.2.0)
temple (0.8.2)
thor (1.0.1)
terminal-table (3.0.0)
unicode-display_width (~> 1.1, >= 1.1.1)
thor (1.1.0)
thread_safe (0.3.6)
tilt (2.0.10)
timecop (0.9.1)
ttfunk (1.6.2.1)
typhoeus (1.4.0)
ethon (>= 0.9.0)
tzinfo (1.2.7)
tzinfo (1.2.9)
thread_safe (~> 0.1)
unf (0.1.4)
unf_ext
@ -774,7 +791,7 @@ GEM
nokogiri (~> 1.8)
xray-rails (0.3.2)
rails (>= 3.1.0)
zeitwerk (2.4.0)
zeitwerk (2.4.2)
zip_tricks (5.3.1)
zipline (1.2.1)
rails (>= 3.2.1, < 6.1)
@ -796,11 +813,8 @@ DEPENDENCIES
annotate
axe-matchers
bcrypt
bootstrap-sass (>= 3.4.1)
bootstrap-wysihtml5-rails (~> 0.3.3.8)
brakeman
browser
byebug
capybara
capybara-email
capybara-screenshot
@ -825,7 +839,6 @@ DEPENDENCIES
flipper
flipper-active_record
flipper-ui
font-awesome-rails
fugit
geo_coord
geocoder
@ -843,9 +856,9 @@ DEPENDENCIES
haml-rails
hashie
http_accept_language
i18n-tasks
iban-tools
image_processing
jquery-rails
json_schemer
jwt
kaminari (= 1.2.1)
@ -884,7 +897,8 @@ DEPENDENCIES
sanitize-url
sassc-rails
scss_lint
sentry-raven
sentry-rails
sentry-ruby
shoulda-matchers
sib-api-v3-sdk
simple_xlsx_reader

View file

@ -118,6 +118,7 @@ Pour exécuter les tests de l'application, plusieurs possibilités :
Le projet utilise plusieurs linters pour vérifier la lisibilité et la qualité du code.
- Faire tourner tous les linters : `bin/rake lint`
- Vérifier l'état des traductions : `bundle exec i18n-tasks health`
- [AccessLint](http://accesslint.com/) tourne automatiquement sur les PRs
### Régénérer les binstubs

View file

@ -1,18 +0,0 @@
// This is a manifest file that'll be compiled into application.js, which will include all the files
// listed below.
//
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
//
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// compiled file.
//
// Read Sprockets README (https://github.com/sstephenson/sprockets#sprockets-directives) for details
// about supported directives.
//
//= require_tree ./old_design
//= require bootstrap-sprockets
//= require smart_listing
//= require bootstrap-wysihtml5
//= require bootstrap-wysihtml5/locales/fr-FR

View file

@ -1,11 +0,0 @@
/* globals $ */
$(document).on('click', '.delete', function () {
$(this).hide();
$(this).closest('td').find('.confirm').show();
});
$(document).on('click', '.cancel', function () {
$(this).closest('td').find('.delete').show();
$(this).closest('td').find('.confirm').hide();
});

View file

@ -1,11 +0,0 @@
/* globals $ */
$(document).on('click', 'button#archive-procedure', function () {
$('button#archive-procedure').hide();
$('#confirm').show();
});
$(document).on('click', '#confirm #cancel', function () {
$('button#archive-procedure').show();
$('#confirm').hide();
});

View file

@ -1,39 +0,0 @@
/* globals $ */
$(document).on('DOMContentLoaded', wysihtml5_active);
function wysihtml5_active() {
$('.wysihtml5').each(function (i, elem) {
$(elem).wysihtml5({
toolbar: {
fa: true,
link: false,
color: false
},
parserRules: {
tags: {
p: {},
h1: {},
h2: {},
h3: {},
h4: {},
h5: {},
h6: {},
b: {},
i: {},
u: {},
small: {},
blockquote: {},
ul: {},
ol: {},
li: {},
img: {},
code: {
unwrap: 1
}
}
},
locale: 'fr-FR'
});
});
}

View file

@ -1,38 +0,0 @@
/* globals $ */
$(document).on('DOMContentLoaded', init_default_data_block);
function init_default_data_block() {
$('.default-data-block #dossier .body').toggle();
$('.default-data-block #dossier .carret-right').toggle();
$('.default-data-block #dossier .carret-down').toggle();
$('.default-data-block .title').click(function () {
toggle_default_data_bloc(this, 400);
});
$('.new-action').click(function () {
var messages_block = $(this)
.parents()
.closest('.default-data-block')
.find('.title');
toggle_default_data_bloc(messages_block, 400);
});
$('.default-data-block.default_visible').each(function () {
toggle_default_data_bloc($(this).find('.title'), 0);
});
function toggle_default_data_bloc(element, duration) {
var block = $(element).parents('.show-block');
if (block.attr('id') == 'messages') {
block.children('.last-commentaire').toggle();
$('.commentaires').animate({ scrollTop: $(this).height() }, 'slow');
}
block.children('.body').slideToggle(duration);
block.find('.carret-right').toggle();
block.find('.carret-down').toggle();
}
}

View file

@ -1,46 +0,0 @@
/* globals $ */
$(document).on('DOMContentLoaded', filters_init);
function filters_init() {
$('html').click(function (event) {
var visible_filter = $('.filter_framed:visible');
if (visible_filter.length) {
if (!$(event.target).closest('.filter_framed').is(':visible')) {
visible_filter.hide();
}
}
});
$('.filter').on('click', function (event) {
filter_framed_show(event);
filter_framed_close_all_excepted(framed_id(event));
event.stopPropagation();
});
$('.erase-filter').on('click', function () {
$(this).parent().find('.filter_input').val('');
});
}
function filter_framed_close_all_excepted(id) {
$('.filter_framed:not(' + id + ')').hide();
$(id).toggle();
}
function framed_id(event) {
return '#framed_' + event.target.id;
}
function filter_framed_show(event) {
var dom_object = $(framed_id(event));
var offset = $('#main-container').offset();
var y = event.pageY - offset.top;
var x = event.pageX - offset.left;
dom_object.css('top', y + 7 + 'px');
dom_object.css('left', x + 7 + 'px');
}

View file

@ -1,8 +0,0 @@
/* globals $ */
$(document).on('click', '#dossiers-list tr', function (event) {
var href = $(this).data('href');
if (href && event.target.tagName !== 'A') {
location.href = href;
}
});

View file

@ -1,44 +0,0 @@
/* globals $ */
$(document).on('DOMContentLoaded', action_type_de_champs);
function action_type_de_champs() {
$("input[type='email']").on('change', function () {
toggleErrorClass(this, validateEmail($(this).val()));
});
$("input[type='number']").on('change', function () {
toggleErrorClass(this, validateNumber($(this).val()));
});
$("input[type='phone']").on('change', function () {
var val = $(this).val();
val = val.replace(/[ ]/g, '');
toggleErrorClass(this, validatePhone(val));
});
}
function toggleErrorClass(node, boolean) {
if (boolean) $(node).removeClass('input-error');
else $(node).addClass('input-error');
}
function validatePhone(phone) {
var re = /^(0|(\+[1-9]{2})|(00[1-9]{2}))[1-9][0-9]{8}$/;
return validateInput(phone, re);
}
function validateEmail(email) {
var re = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return validateInput(email, re);
}
function validateNumber(number) {
var re = /^[0-9]+$/;
return validateInput(number, re);
}
function validateInput(input, regex) {
return regex.test(input);
}

View file

@ -1,17 +0,0 @@
/* globals $ */
$(document).on('DOMContentLoaded', modal_action);
function modal_action() {
$('#pj-modal').on('show.bs.modal', function (event) {
$('#pj-modal .modal-body .table .tr-content').hide();
var button = $(event.relatedTarget); // Button that triggered the modal
var modal_title = button.data('modal_title'); // Extract info from data-* attributes
var modal_index = button.data('modal_index'); // Extract info from data-* attributes
var modal = $(this);
modal.find('#pj-modal-title').html(modal_title);
$('#pj-modal .modal-body .table #' + modal_index).show();
});
}

View file

@ -1,26 +0,0 @@
/* globals $ */
$(document).on('DOMContentLoaded', button_edit_procedure_init);
function button_edit_procedure_init() {
buttons_api_carto();
button_individual();
}
function buttons_api_carto() {
$('#procedure-module-api-carto-use-api-carto').on('change', function () {
$('#modules-api-carto').toggle();
});
if ($('#procedure-module-api-carto-use-api-carto').is(':checked'))
$('#modules-api-carto').show();
}
function button_individual() {
$('#procedure_for_individual').on('change', function () {
$('#individual-with-siret').toggle();
});
if ($('#procedure_for_individual').is(':checked'))
$('#individual-with-siret').show();
}

View file

@ -1,6 +0,0 @@
.card {
background: #FFFFFF;
padding: 15px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
border-radius: 2px;
}

View file

@ -1,5 +1,14 @@
// colors
$light-blue: #F2F6FA;
$page-width: 1040px;
$small-page-width: 840px;
// Bootstrap constants
$font-size-base: 16px;
$default-spacer: 8px;
$default-padding: 2 * $default-spacer;
$default-fields-spacer: 5 * $default-spacer;
// layouts
$two-columns-padding: 60px;
$two-columns-breakpoint: 980px;
$sub-header-bottom-margin: 3 * $default-spacer;
// z-order
$alert-z-index: 100;

View file

@ -1,21 +0,0 @@
$default-spacer: 15px;
.m-1 {
margin: $default-spacer;
}
.mt-1 {
margin-top: $default-spacer;
}
.mr-1 {
margin-right: $default-spacer;
}
.mb-1 {
margin-bottom: $default-spacer;
}
.ml-1 {
margin-left: $default-spacer;
}

View file

@ -1,52 +0,0 @@
.header-section {
background-color: rgb(0, 49, 137);
margin-top: 20px;
margin-bottom: 10px;
margin-left: 0;
margin-right: 0;
text-align: center;
padding-bottom: 8px;
color: #FFFFFF;
.form-control.libelle {
font-weight: bold;
}
.form-group.description {
display: none;
}
.form-group.mandatory {
display: none;
}
}
#liste-champ {
.form-inline {
margin-bottom: 30px;
}
.show-inline {
display: inline-block !important;
}
.form-group.drop-down-list,
.form-group.pj-template,
.form-group.carte-options {
display: none;
}
.form-group {
vertical-align: top;
margin-right: 15px;
}
.description {
padding: 0;
textarea {
padding: 6px 12px;
}
}
}

View file

@ -1,237 +1,9 @@
// This is a manifest file that'll be compiled into application.css, which will include all the files
// listed below.
//
// Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
// or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
//
// You're free to add application-wide styles to this file and they'll appear at the bottom of the
// compiled file so the styles you add here take precedence over styles defined in any styles
// defined in the other CSS/SCSS files in this directory. It is generally better to create a new
// file per style scope.
//
// = require _card
// = require _helpers
// = require admin_type_de_champ
// = require carte
// = require custom_mails
// = require default_data_block
// = require direct_uploads
// = require dossiers
// = require france_connect_particulier
// = require left_panel
// = require login
// = require main_container
// = require navbar
// = require pj_modal
// = require print
// = require procedure
// = require search
// = require site_banner
// = require switch_menu
// = require users
// = require attestation_template_edit
// = require_self
// = require font-awesome
// = require ./reset
// = require ./custom_reset
// = require ./common
// = require ./utils
// = require ./fonts
// = require leaflet
// = require franceconnect
// = require bootstrap-wysihtml5
@import "constants";
@import "bootstrap-sprockets";
@import "bootstrap";
body {
background-color: $light-blue;
}
html,
body {
height: 100%;
}
body {
padding-top: 60px;
}
form {
margin-bottom: 0.3em;
}
.wysihtml5-sandbox {
resize: vertical;
width: 100% !important;
}
#wrap {
min-height: 100%;
margin-bottom: -50px;
overflow: hidden;
}
// Mobile Safari doesn't bubble mouse events by default, unless:
//
// - the target element of the event is a link or a form field.
// - the target element, or any of its ancestors up to but not including the <body>, has an explicit event handler set for any of the mouse events. This event handler may be an empty function.
// - the target element, or any of its ancestors up to and including the document has a cursor: pointer CSS declarations.
//
// (See https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html)
//
// This is a problem for us, because we bind a lot of click events as
// `document.on('click', '.my-element', )` which requires proper bubbling.
.ios #wrap {
cursor: pointer;
}
#wrap::after {
content: "";
display: block;
}
#footer,
#wrap::after {
height: 50px;
}
#footer {
background-color: $light-blue;
text-align: center;
padding: 0;
a,
p {
color: #000000;
}
a:hover {
color: #000000;
}
p {
line-height: 40px;
padding: 0;
}
}
.text-purple {
color: #8B008B;
}
.text-default {
color: #808080;
}
.progress-bar-purple {
background-color: #800080;
}
.btn {
box-shadow: none !important;
}
.description {
padding: 10px;
}
.btn-file {
position: relative;
overflow: hidden;
}
.btn-file input[type=file] {
position: absolute;
top: 0;
right: 0;
min-width: 100%;
min-height: 100%;
font-size: 100px;
text-align: right;
filter: alpha(opacity = 0);
opacity: 0;
outline: none;
background: #FFFFFF;
cursor: inherit;
display: block;
}
.vr {
border-left: 1px solid #808080;
}
.center {
text-align: center;
}
textarea#description {
width: 100%;
}
div.pagination {
padding-top: 20px;
display: block;
text-align: center;
}
.alert {
margin-bottom: 0px;
}
.alert.alert-success.move-up,
.alert.alert-danger.siret,
.alert.sticky {
position: fixed;
top: 0px;
left: 0;
height: 52px;
width: 100%;
margin-top: 0px;
z-index: 10;
}
.archived {
float: right;
margin-top: 10px;
.confirm {
display: none;
}
}
#confirm {
display: none;
}
.confirm {
display: none;
}
.fa {
width: 15px;
text-align: center;
}
.off-fc-link {
font-size: 15px !important;
margin-top: -4px;
}
#fconnect-access {
right: 50px;
}
#fconnect-access::before {
left: 22.7% !important;
}
#fconnect-access::after {
left: 23% !important;
}
.no-padding {
padding: 0;
}
.no-margin {
margin: 0;
}
// = require select2
// = require_tree .
// = stub ./print.scss

View file

@ -1,31 +1,56 @@
@import "colors";
@import "constants";
#attestation-template-edit {
.notice {
margin-bottom: 30px;
.text-active {
color: $green;
}
.image-upload {
.text-inactive {
color: $grey;
}
}
#tags-table {
margin-top: -20px;
margin-bottom: 40px;
.add-tag-title {
font-size: 18px;
margin-bottom: 16px;
}
.head {
padding: 10px 0px;
font-weight: bold;
display: flex;
align-items: center;
}
input {
margin: 10px 0;
.items {
max-height: 210px;
overflow-y: auto;
border-bottom: 1px solid $border-grey;
}
.item {
display: flex;
padding: 10px 0;
border-bottom: solid 1px $border-grey;
.tag {
font-weight: bold;
}
&:last-child {
border-bottom: none;
}
}
.thumbnail {
width: 90px;
margin-right: 15px;
.tag {
width: 35%;
}
.balises {
max-height: 180px;
overflow-y: scroll;
margin-bottom: 20px;
}
.table {
border: 1px solid #DDDDDD;
margin-bottom: 0px;
.description {
width: 65%;
}
}

View file

@ -1,31 +1,17 @@
// Place all the styles related to the carte controller here.
// They will automatically be included in application.css.
// You can use Sass (SCSS) here: http://sass-lang.com/
@import "bootstrap";
.leaflet-container path {
cursor: url("/assets/edit.png"), default !important;
.areas-title {
font-weight: bold;
margin-top: 5px;
margin-bottom: 5px;
}
.info {
padding: 6px 8px;
font: 14px/16px Arial, Helvetica, sans-serif;
background: rgba(255, 255, 255, 0.8);
box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
border-radius: 5px;
.areas {
margin-bottom: 10px;
input {
margin-top: 5px;
}
}
.info h4 {
margin: 0 0 5px;
color: #777777;
}
#search-by-address {
.algolia-autocomplete {
width: 555px;
}
.aa-dropdown-menu {
width: 555px;
}
.form [data-react-class='MapEditor'] [data-reach-combobox-input] {
margin-bottom: 0;
}

View file

@ -1,11 +0,0 @@
#custom-mails {
padding: 20px;
.wrapper {
background-color: #FFFFFF;
box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
margin: 15px auto;
max-width: 800px;
padding: 20px;
}
}

View file

@ -1,88 +0,0 @@
@import "constants";
.default-data-block {
font-family: Arial;
.show-block {
margin-left: auto;
margin-right: auto;
box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
margin-bottom: 40px;
}
.carret-right {
float: left;
width: 0;
height: 0;
border-top: 7px solid transparent;
border-bottom: 7px solid transparent;
border-left: 14px solid #FFFFFF;
margin: 12px 12px 0 15px;
}
.carret-down {
float: left;
width: 0;
height: 0;
display: none;
border-left: 7px solid transparent;
border-right: 7px solid transparent;
border-top: 14px solid #FFFFFF;
margin: 12px 12px 0 15px;
}
.header {
background-color: #003C92;
min-height: 40px;
color: #FFFFFF;
font-size: 18px;
font-weight: bold;
.title,
.title-no-expanse,
.action,
.count {
line-height: 40px;
padding: 0px;
text-transform: uppercase;
}
.title-no-expanse {
cursor: not-allowed;
}
.title,
.action,
.count {
cursor: pointer;
}
.title-content {
width: calc(100% - 50px);
float: left;
}
.action {
background-color: #E45B51;
text-align: center;
line-height: 40px;
font-size: 15px;
text-decoration: none;
color: #FFFFFF;
}
.action:hover {
color: $light-blue;
}
.count {
font-size: 16px;
text-align: center;
}
}
.body {
background-color: #FFFFFF;
display: none;
}
}

View file

@ -1,12 +1,13 @@
@import "colors";
.direct-upload {
display: inline-block;
position: relative;
padding: 2px 4px;
padding: 4px 15px;
margin: 0 3px 3px 0;
border: 1px solid rgba(0, 0, 0, 0.3);
border: 1px solid $border-grey;
border-radius: 3px;
font-size: 11px;
line-height: 13px;
font-size: 14px;
}
.direct-upload--pending {
@ -32,6 +33,7 @@
border-color: red;
}
input[type=file][data-direct-upload-url][disabled] {
input[type=file][data-direct-upload-url][disabled],
input[type=file][data-auto-attach-url][disabled] {
display: none;
}

View file

@ -1,76 +0,0 @@
// Place all the styles related to the dossiers controller here.
// They will automatically be included in application.css.
// You can use Sass (SCSS) here: http://sass-lang.com/
h5 span {
font-weight: normal;
}
#insee-infogreffe {
font-size: 17px;
}
.flag {
display: inline;
margin-left: auto;
margin-right: auto;
padding-right: 20px;
padding-left: 20px;
img {
max-width: 150px;
max-height: 60px;
}
}
#dossiers-list {
.filter {
cursor: pointer;
font-size: 1.1em;
display: inline;
}
}
#dossiers-list tr:hover {
background-color: #EEEEEE;
cursor: pointer;
}
#procedure-list {
margin-left: -10px;
margin-top: 20px;
a,
a:hover {
color: #FFFFFF;
text-decoration: none;
}
.procedure-list-element.active {
background-color: #668ABD;
}
.procedure-list-element {
padding: 15px 40px 15px 20px;
cursor: pointer;
line-height: 1.8em;
.progress-bar-warning {
background-color: #E4594F;
}
.missing-steps {
color: #FFA500;
}
}
.procedure-list-element:hover {
background-color: #668ABD;
cursor: pointer;
}
}
.split-hr-left {
border-bottom: 1px solid #FFFFFF;
margin: 20px 10px 0px 10px;
}

View file

@ -1,5 +0,0 @@
#france-connect-particulier-email {
width: 300px;
margin-left: auto;
margin-right: auto;
}

View file

@ -1,292 +0,0 @@
#left-panel {
margin-top: 60px;
padding: 0;
background-color: #003189;
height: calc(100% - 60px);
position: fixed;
top: 0;
left: 0;
bottom: 0;
color: #FFFFFF;
overflow-y: scroll;
.link-to-dossiers {
padding: 15px 0 0 15px;
a {
color: #FFFFFF;
}
}
#first-block {
font-family: Arial;
font-size: 16px;
line-height: 18px;
margin-top: 20px;
.infos {
font-size: 25px;
text-align: center;
margin: 10px 10px 30px 0;
.projet-name {
font-size: 25px;
line-height: normal;
padding: 5px;
}
}
.count {
display: inline-block;
padding: 3px;
border-radius: 25px;
min-width: 40px;
text-align: center;
line-height: 23px;
}
.text {
display: inline-block;
width: 30px;
margin: 0 0 0 8px;
}
.dossiers-en-cours,
.en-cours {
margin-top: 20px;
}
.dossiers-en-cours {
.count {
border: 1px solid #FFFFFF;
}
}
.nouveaux-dossiers {
.count {
background-color: #5CB85C;
}
}
.nouvelles-notifications {
.count {
background-color: #E4594F;
}
}
.dossiers-en-cours,
.nouveaux-dossiers,
.nouvelles-notifications,
.en-cours {
margin: 5px auto 0 20px;
width: 150px;
}
img {
background-color: #FFFFFF;
}
}
#action-block {
text-align: center;
margin: 10px;
.action {
background-color: #E45B51;
text-align: center;
cursor: pointer;
color: #FFFFFF;
margin: 0 10px 0 0;
min-height: 40px;
padding: 5px;
font-family: Arial;
font-size: 16px;
font-weight: bold;
border: none;
width: 100%;
}
.close-dossier,
.refuse-dossier,
.forget-dossier {
border: 1px solid #FFFFFF;
border-radius: 25px;
margin: 5px;
margin-left: auto;
margin-right: auto;
width: 60px;
}
.close-dossier:hover,
.refuse-dossier:hover,
.forget-dossier:hover {
color: #000000;
border-color: #000000;
}
.close-dossier {
background-color: #2A9E2A;
}
.refuse-dossier {
background-color: #E4594F;
}
.forget-dossier {
background-color: #FF8300;
}
}
#menu-block {
#switch-buttons {
height: 30px;
line-height: 30px;
font-size: 16px;
margin-top: 20px;
margin-left: auto;
margin-right: auto;
width: 205px;
border: 1px solid;
padding: 0 0 0 10px;
border-radius: 25px;
cursor: pointer;
.active {
background-color: #668ABD !important;
cursor: default;
}
.separator {
height: 26px;
width: 1px;
display: inline-block;
background-color: #FFFFFF;
}
#switch-procedures:hover,
#switch-notifications:hover {
background-color: #668AEA;
}
#switch-procedures {
height: 28px;
margin: 0 0 0 -10px;
padding-left: 10px;
width: 100px;
display: inline-block;
border-radius: 25px 0 0 25px;
}
#switch-notifications {
width: 103px;
display: inline-block;
border-radius: 0 25px 25px 0;
height: 28px;
margin: 0 0 0 -5px;
padding: 0 0 0 5px;
}
}
.split-hr {
border-bottom: 1px solid #FFFFFF;
width: 200px;
margin: 20px 0 20px 0;
}
}
#infos-block {
.split-hr {
border-bottom: 1px solid #FFFFFF;
width: 200px;
margin: 20px 0 20px 0;
}
.dossier-state {
text-align: center;
font-size: 25px;
margin-top: 20px;
width: 200px;
margin-left: auto;
margin-right: auto;
}
#notifications-list {
.no-notification {
margin: 0 30px 0 30px;
}
.notification {
padding: 10px 2px 10px 15px;
.dossier,
.updated-at {
display: inline-block;
color: #CCCCCC;
font-size: 12px;
text-align: left;
}
.dossier-index,
.updated-at-index,
.count {
display: inline-block;
color: #FFFFFF;
font-size: 14px;
text-align: left;
}
.count {
background-color: #F0AD4E;
border-radius: 25px;
padding: 0 5px 0 5px;
width: 25px;
text-align: center;
}
.type-notif {
font-size: 16px;
}
}
}
.notifications {
margin: 20px 10px 0 5px;
.fa {
font-size: 25px;
width: 100%;
margin: 0 0 15px 0;
}
.type-notif {
font-size: 16px;
float: right;
width: 30px;
}
.notification {
margin: 10px 0 10px 10px;
.type {
margin-bottom: 20px;
}
.updated-at {
color: #CCCCCC;
font-size: 12px;
text-align: left;
}
.split-hr {
width: 40px;
margin: auto;
}
}
}
}
}
.motivation-text-area {
color: #000000;
margin-bottom: 15px;
}

View file

@ -1,33 +0,0 @@
#form-login {
text-align: center;
max-width: 500px;
margin-left: auto;
margin-right: auto;
padding: 20px;
.btn-fc {
img {
height: 100px;
}
}
#new-user {
width: 80%;
margin-left: auto;
margin-right: auto;
}
hr {
margin-bottom: 40px;
border: none;
height: 1px;
background-image: linear-gradient(to right, rgba(100, 100, 100, 0), rgba(100, 100, 100, 0.75), rgba(100, 100, 100, 0));
}
h4 {
text-align: left;
}
}

View file

@ -1,3 +0,0 @@
#main-container {
float: right;
}

View file

@ -1,219 +0,0 @@
@import "constants";
#header {
top: 0;
left: 0;
position: fixed;
width: 100%;
z-index: 10;
border-radius: 0;
height: 60px;
#title-navbar {
color: #FFFFFF;
font-weight: bold;
font-size: 1.8em;
z-index: 10;
overflow: hidden;
}
#title-navbar:hover {
text-decoration: none;
}
#home {
text-align: center;
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.5);
background-color: #003189;
height: 60px;
.logo {
margin-top: 10px;
height: 40px;
}
#tps-title {
font-family: Arial;
font-size: 16px;
font-weight: bold;
line-height: 20px;
margin-top: 10px;
}
}
#navbar-body {
min-height: 60px;
background-color: #FFFFFF;
box-shadow: 0 1px 2px 0 rgba(50, 50, 50, 0.5);
padding-left: 50px;
.main-info {
font-family: Arial;
font-size: 18px;
font-weight: bold;
line-height: 58px;
min-height: 58px;
color: #000000;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.options {
font-family: Arial;
font-size: 14px;
text-align: right;
line-height: 22px;
color: #666666;
padding: 8px;
border-right: 1px solid #C8C6C8;
min-height: 60px;
.dropdown-toggle {
cursor: pointer;
}
.dropdown-pannel {
min-height: 100px;
width: 400px;
padding-left: 10px;
}
.centered-option {
line-height: 40px;
height: 40px;
}
.caret-right {
border-bottom: 4px solid transparent;
border-top: 4px solid transparent;
border-left: 4px solid;
display: inline-block;
height: 0;
margin: 8px 2px 0 5px;
vertical-align: top;
width: 0;
}
}
#sign-in {
margin-top: 7px;
.btn {
float: right;
margin-right: 15px;
}
}
#sign-out {
text-align: center;
height: 60px;
a {
line-height: 60px;
}
}
}
}
#download-menu {
.btn-sm {
color: #000000;
font-size: 14px;
}
}
.btn-nav {
color: #FFFFFF;
background-color: transparent;
margin-top: 6px;
height: 36px;
}
.btn-nav:hover {
background-color: #EEEEEE;
border-color: #EEEEEE #EEEEEE #DDDDDD;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
.btn-nav.text-info:hover {
color: #23527C;
}
.btn-nav.text-success:hover {
color: #3C763D;
}
.btn-nav.text-danger:hover {
color: #A10005;
}
.navbar {
border: 0 !important;
}
#beta {
text-align: center;
text-transform: uppercase;
position: fixed;
bottom: 26px;
right: -35px;
transform: rotate(-45deg);
width: 150px;
background-color: #008CBA;
color: #FFFFFF;
padding: 5px;
font-size: 15px;
font-weight: 700;
z-index: 10;
}
.button-navbar {
color: #666666;
cursor: pointer;
}
.button-navbar-action {
background-color: #E4594F;
color: #FFFFFF;
cursor: pointer;
display: block;
width: 150px;
text-align: center;
padding: 2px;
float: right;
.fa {
font-size: 20px;
margin-right: 10px;
}
}
.lien-demarche {
p.alert {
margin-bottom: 8px;
}
}
.button-navbar-action:hover {
color: $light-blue;
}
.button-navbar:hover,
.button-navbar-action:hover {
text-decoration: none;
}
#credentials {
display: none;
width: initial;
padding: 10px;
left: -130px;
text-align: center;
.description {
font-weight: bold;
font-size: 20px;
}
}

View file

@ -1,14 +0,0 @@
$page-width: 1040px;
$small-page-width: 840px;
$default-spacer: 8px;
$default-padding: 2 * $default-spacer;
$default-fields-spacer: 5 * $default-spacer;
// layouts
$two-columns-padding: 60px;
$two-columns-breakpoint: 980px;
$sub-header-bottom-margin: 3 * $default-spacer;
// z-order
$alert-z-index: 100;

View file

@ -1,56 +0,0 @@
@import "colors";
@import "constants";
#attestation-template-edit {
.text-active {
color: $green;
}
.text-inactive {
color: $grey;
}
}
#tags-table {
margin-top: -20px;
margin-bottom: 40px;
.add-tag-title {
font-size: 18px;
margin-bottom: 16px;
}
.head {
padding: 10px 0px;
font-weight: bold;
display: flex;
}
.items {
max-height: 210px;
overflow-y: auto;
border-bottom: 1px solid $border-grey;
}
.item {
display: flex;
padding: 10px 0;
border-bottom: solid 1px $border-grey;
.tag {
font-weight: bold;
}
&:last-child {
border-bottom: none;
}
}
.tag {
width: 35%;
}
.description {
width: 65%;
}
}

View file

@ -1,17 +0,0 @@
.areas-title {
font-weight: bold;
margin-top: 5px;
margin-bottom: 5px;
}
.areas {
margin-bottom: 10px;
input {
margin-top: 5px;
}
}
.form [data-react-class='MapEditor'] [data-reach-combobox-input] {
margin-bottom: 0;
}

View file

@ -1,39 +0,0 @@
@import "colors";
.direct-upload {
display: inline-block;
position: relative;
padding: 4px 15px;
margin: 0 3px 3px 0;
border: 1px solid $border-grey;
border-radius: 3px;
font-size: 14px;
}
.direct-upload--pending {
opacity: 0.6;
}
.direct-upload__progress {
position: absolute;
top: 0;
left: 0;
bottom: 0;
opacity: 0.2;
background: #0076ff;
transition: width 120ms ease-out, opacity 60ms 60ms ease-in;
transform: translate3d(0, 0, 0);
}
.direct-upload--complete .direct-upload__progress {
opacity: 0.4;
}
.direct-upload--error {
border-color: red;
}
input[type=file][data-direct-upload-url][disabled],
input[type=file][data-auto-attach-url][disabled] {
display: none;
}

View file

@ -1,9 +0,0 @@
// = require ./reset
// = require ./custom_reset
// = require ./common
// = require ./utils
// = require ./fonts
// = require leaflet
// = require select2
// = require_tree .
// = stub ./print.scss

View file

@ -1,63 +0,0 @@
@import "colors";
@import "fonts";
.new-header,
.sub-header,
footer {
display: none;
}
.print-header {
display: block;
margin-top: 30px;
font-size: 30px;
line-height: 50px;
font-weight: bold;
}
body {
font-family: "Muli";
}
.subtitle {
margin-top: -20px;
color: $dark-grey;
}
th,
td {
vertical-align: top;
}
th {
text-align: left;
&.header-section {
padding-top: 1.2em;
font-size: 1.2em;
}
}
.messagerie {
.messages-list {
list-style: none;
padding-left: 0;
max-height: none;
h2 {
font-size: 110%;
}
.person-icon {
display: none;
}
}
}
.message {
margin-bottom: 40px;
}
.updated-at {
display: none;
}

View file

@ -1,35 +0,0 @@
@import "colors";
@import "constants";
.site-banner {
width: 100%;
margin: 0;
padding: $default-padding;
color: $black;
background-color: $yellow;
border-bottom: 1px dashed rgba(0, 0, 0, 0.6);
&.warning {
background-color: $orange-bg;
}
.container {
display: flex;
align-items: center;
}
}
.site-banner-icon {
margin-right: $default-padding;
font-size: 30px;
opacity: 0.7;
}
.site-banner-actions {
display: flex;
margin-left: auto;
.button {
margin-left: $default-spacer;
}
}

Some files were not shown because too many files have changed in this diff Show more