ui(right panel): #issue84 CSS - Right panel
Transform svg files + add them as font. Review and correct HTML architecture. Review and add styles. Open/close menu on right + expand content.
This commit is contained in:
parent
ed50a26380
commit
5bf9568e2f
@ -1,51 +0,0 @@
|
|||||||
// Scripts
|
|
||||||
//- script(src="https://unpkg.com/@webcomponents/webcomponentsjs@1.2.7/webcomponents-loader.js")
|
|
||||||
//script(src="/lib/webcomponentsjs/webcomponents-loader.js")
|
|
||||||
//- script(src="lib/html-imports.js")
|
|
||||||
|
|
||||||
script(src="/lib/oidc-client.js")
|
|
||||||
script(
|
|
||||||
src="https://cdn.happy-dev.fr/sib-oidc/sib-oidc.js"
|
|
||||||
data-authority=`${sdn}/openid/`,
|
|
||||||
data-client_id=`${client_id}`,
|
|
||||||
data-response_type='id_token token',
|
|
||||||
data-scope='openid profile email',
|
|
||||||
data-automaticSilentRenew='true',
|
|
||||||
data-loadUserInfo='true'
|
|
||||||
)
|
|
||||||
|
|
||||||
script(src="/scripts/index.js")
|
|
||||||
script(type="module" src="/scripts/hd-widgets.js")
|
|
||||||
|
|
||||||
// Stylesheets
|
|
||||||
link(rel='stylesheet', href='/lib/normalize.css')
|
|
||||||
link(rel='stylesheet', href='/styles/index.css')
|
|
||||||
link(
|
|
||||||
rel='stylesheet'
|
|
||||||
href='https://fonts.googleapis.com/css?family=Open+Sans:300,400,400i,600,700&subset=latin-ext'
|
|
||||||
)
|
|
||||||
link(href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i,800,800i" rel="stylesheet")
|
|
||||||
|
|
||||||
// Web components
|
|
||||||
|
|
||||||
//- local
|
|
||||||
//script(type="module" src="/lib/sib-core/sib-display.js")
|
|
||||||
//script(type="module" src="/lib/sib-router/sib-router.js")
|
|
||||||
//script(type="module" src="/lib/sib-core/sib-form.js")
|
|
||||||
|
|
||||||
link(rel='import', href='/lib/sib-chat/sib-chat.html')
|
|
||||||
|
|
||||||
//- cdn
|
|
||||||
<<<<<<< HEAD
|
|
||||||
script(type="module" src="https://cdn.happy-dev.fr/sib-core/sib-display.js")
|
|
||||||
script(type="module" src="https://cdn.happy-dev.fr/sib-router/sib-router.js")
|
|
||||||
script(type="module" src="https://cdn.happy-dev.fr/sib-core/sib-form.js")
|
|
||||||
=======
|
|
||||||
script(type='module' src='https://cdn.happy-dev.fr/sib-core/sib-display.js')
|
|
||||||
script(type='module' src='https://cdn.happy-dev.fr/sib-router/sib-router.js')
|
|
||||||
script(type='module' src='https://cdn.happy-dev.fr/sib-chat/sib-chat.js')
|
|
||||||
script(type='module' src='https://cdn.happy-dev.fr/sib-chat/sib-form.js')
|
|
||||||
//- link(rel='import', href="https://cdn.happy-dev.fr/sib-core/sib-display.html")
|
|
||||||
//- link(rel='import', href="https://cdn.happy-dev.fr/sib-router/sib-router.html")
|
|
||||||
//- link(rel='import', href="https://cdn.happy-dev.fr/sib-chat/sib-chat.html")
|
|
||||||
>>>>>>> e595053... pug syntax for scripts
|
|
368
src/error.log
368
src/error.log
@ -1,368 +0,0 @@
|
|||||||
ImproperlyConfigured at /members/
|
|
||||||
Could not resolve URL for hyperlinked relationship using view name "member-detail". You may have failed to include the related model in your API, or incorrectly configured the `lookup_field` attribute on this field.
|
|
||||||
|
|
||||||
Request Method: GET
|
|
||||||
Request URL: http://127.0.0.1:8000/members/
|
|
||||||
Django Version: 1.11
|
|
||||||
Python Executable: /home/ubuntu/dev/test/ldpserverhdparis/env/bin/python
|
|
||||||
Python Version: 3.6.6
|
|
||||||
Python Path: ['/home/ubuntu/dev/test/ldpserverhdparis', '/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python36.zip', '/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6', '/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/lib-dynload', '/usr/lib/python3.6', '/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages']
|
|
||||||
Server time: Tue, 30 Oct 2018 16:22:14 +0000
|
|
||||||
Installed Applications:
|
|
||||||
['ldpserverhdparis',
|
|
||||||
'djangoldp',
|
|
||||||
'django.contrib.admin',
|
|
||||||
'django.contrib.auth',
|
|
||||||
'django.contrib.contenttypes',
|
|
||||||
'django.contrib.sessions',
|
|
||||||
'django.contrib.messages',
|
|
||||||
'django.contrib.staticfiles',
|
|
||||||
'oidc_provider',
|
|
||||||
'guardian']
|
|
||||||
Installed Middleware:
|
|
||||||
['django.middleware.security.SecurityMiddleware',
|
|
||||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
|
||||||
'django.middleware.common.CommonMiddleware',
|
|
||||||
'django.middleware.csrf.CsrfViewMiddleware',
|
|
||||||
'django.contrib.auth.middleware.AuthenticationMiddleware',
|
|
||||||
'django.contrib.messages.middleware.MessageMiddleware',
|
|
||||||
'django.middleware.clickjacking.XFrameOptionsMiddleware']
|
|
||||||
|
|
||||||
|
|
||||||
Traceback:
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/relations.py" in to_representation
|
|
||||||
400. url = self.get_url(value, self.view_name, request, format)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/relations.py" in get_url
|
|
||||||
338. return self.reverse(view_name, kwargs=kwargs, request=request, format=format)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/reverse.py" in reverse
|
|
||||||
50. url = _reverse(viewname, args, kwargs, request, format, **extra)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/reverse.py" in _reverse
|
|
||||||
63. url = django_reverse(viewname, args=args, kwargs=kwargs, **extra)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/django/urls/base.py" in reverse
|
|
||||||
91. return force_text(iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs)))
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/django/urls/resolvers.py" in _reverse_with_prefix
|
|
||||||
497. raise NoReverseMatch(msg)
|
|
||||||
|
|
||||||
|
|
||||||
During handling of the above exception (Reverse for 'member-detail' with keyword arguments '{'pseudo': 'alex.bourlier'}' not found. 1 pattern(s) tried: ['members/(?P<pseudo>[\\w-]+)/$']), another exception occurred:
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/django/core/handlers/exception.py" in inner
|
|
||||||
41. response = get_response(request)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
|
|
||||||
187. response = self.process_exception_by_middleware(e, request)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
|
|
||||||
185. response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/django/views/decorators/csrf.py" in wrapped_view
|
|
||||||
58. return view_func(*args, **kwargs)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/viewsets.py" in view
|
|
||||||
116. return self.dispatch(request, *args, **kwargs)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/djangoldp/views.py" in dispatch
|
|
||||||
126. response = super(LDPViewSet, self).dispatch(request, *args, **kwargs)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/views.py" in dispatch
|
|
||||||
495. response = self.handle_exception(exc)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/views.py" in handle_exception
|
|
||||||
455. self.raise_uncaught_exception(exc)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/views.py" in dispatch
|
|
||||||
492. response = handler(request, *args, **kwargs)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/mixins.py" in list
|
|
||||||
48. return Response(serializer.data)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/djangoldp/serializers.py" in data
|
|
||||||
16. return ReturnDict(super(ListSerializer, self).data, serializer=self)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/serializers.py" in data
|
|
||||||
262. self._data = self.to_representation(self.instance)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/djangoldp/serializers.py" in to_representation
|
|
||||||
13. return {'@id': '', 'ldp:contains':super(ContainerSerializer, self).to_representation(data)}
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/serializers.py" in to_representation
|
|
||||||
683. self.child.to_representation(item) for item in iterable
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/serializers.py" in <listcomp>
|
|
||||||
683. self.child.to_representation(item) for item in iterable
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/djangoldp/serializers.py" in to_representation
|
|
||||||
77. data = super().to_representation(obj)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/serializers.py" in to_representation
|
|
||||||
527. ret[field.field_name] = field.to_representation(attribute)
|
|
||||||
|
|
||||||
File "/home/ubuntu/dev/test/ldpserverhdparis/env/lib/python3.6/site-packages/rest_framework/relations.py" in to_representation
|
|
||||||
415. raise ImproperlyConfigured(msg % self.view_name)
|
|
||||||
|
|
||||||
Exception Type: ImproperlyConfigured at /members/
|
|
||||||
Exception Value: Could not resolve URL for hyperlinked relationship using view name "member-detail". You may have failed to include the related model in your API, or incorrectly configured the `lookup_field` attribute on this field.
|
|
||||||
Request information:
|
|
||||||
USER: clement
|
|
||||||
|
|
||||||
GET: No GET data
|
|
||||||
|
|
||||||
POST: No POST data
|
|
||||||
|
|
||||||
FILES: No FILES data
|
|
||||||
|
|
||||||
COOKIES:
|
|
||||||
csrftoken = 'rJoY6gBfXiXUzx2vt44C3jpidX61XuS8d33rk6bsGTOwM4qdsTo3YOU21aXLPMbG'
|
|
||||||
sessionid = 'a7j0mj6zjnv7i2mko5bs17mynvy12rcc'
|
|
||||||
io = 'F3hWNi2N9qwA7YiDAABT'
|
|
||||||
|
|
||||||
META:
|
|
||||||
CHROME_DESKTOP = 'code-url-handler.desktop'
|
|
||||||
CONTENT_LENGTH = ''
|
|
||||||
CONTENT_TYPE = 'text/plain'
|
|
||||||
CSRF_COOKIE = 'rJoY6gBfXiXUzx2vt44C3jpidX61XuS8d33rk6bsGTOwM4qdsTo3YOU21aXLPMbG'
|
|
||||||
DBUS_SESSION_BUS_ADDRESS = 'unix:path=/run/user/1000/bus'
|
|
||||||
DEFAULTS_PATH = '/usr/share/gconf/plasma.default.path'
|
|
||||||
DESKTOP_SESSION = 'plasma'
|
|
||||||
DESKTOP_STARTUP_ID = 'ubuntu-N7x0WU;1540892856;943495;1492_TIME14942764'
|
|
||||||
DISPLAY = ':0'
|
|
||||||
DJANGO_SETTINGS_MODULE = 'ldpserverhdparis.settings'
|
|
||||||
GATEWAY_INTERFACE = 'CGI/1.1'
|
|
||||||
GPG_AGENT_INFO = '/run/user/1000/gnupg/S.gpg-agent:0:1'
|
|
||||||
GS_LIB = '/home/ubuntu/.fonts'
|
|
||||||
GTK_MODULES = 'gail:atk-bridge'
|
|
||||||
HOME = '/home/ubuntu'
|
|
||||||
HTTP_ACCEPT = 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
|
|
||||||
HTTP_ACCEPT_ENCODING = 'gzip, deflate'
|
|
||||||
HTTP_ACCEPT_LANGUAGE = 'en-US,en;q=0.8,fr;q=0.5,fr-FR;q=0.3'
|
|
||||||
HTTP_CONNECTION = 'keep-alive'
|
|
||||||
HTTP_COOKIE = 'csrftoken=rJoY6gBfXiXUzx2vt44C3jpidX61XuS8d33rk6bsGTOwM4qdsTo3YOU21aXLPMbG; sessionid=a7j0mj6zjnv7i2mko5bs17mynvy12rcc; io=F3hWNi2N9qwA7YiDAABT'
|
|
||||||
HTTP_DNT = '1'
|
|
||||||
HTTP_HOST = '127.0.0.1:8000'
|
|
||||||
HTTP_UPGRADE_INSECURE_REQUESTS = '1'
|
|
||||||
HTTP_USER_AGENT = 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:63.0) Gecko/20100101 Firefox/63.0'
|
|
||||||
KDE_FULL_SESSION = 'true'
|
|
||||||
KDE_SESSION_UID = '1000'
|
|
||||||
KDE_SESSION_VERSION = '5'
|
|
||||||
LANG = 'en_US.UTF-8'
|
|
||||||
LANGUAGE = 'fr'
|
|
||||||
LOGNAME = 'ubuntu'
|
|
||||||
MAKEFLAGS = ''
|
|
||||||
MAKELEVEL = '1'
|
|
||||||
MAKE_TERMERR = '/dev/pts/4'
|
|
||||||
MAKE_TERMOUT = '/dev/pts/4'
|
|
||||||
MANDATORY_PATH = '/usr/share/gconf/plasma.mandatory.path'
|
|
||||||
MFLAGS = ''
|
|
||||||
PATH = '/home/ubuntu/dev/test/ldpserverhdparis/env/bin:.deno/bin/:/home/ubuntu/.deno/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games'
|
|
||||||
PATH_INFO = '/members/'
|
|
||||||
PWD = '/home/ubuntu/dev/test/ldpserverhdparis'
|
|
||||||
QT_ACCESSIBILITY = '1'
|
|
||||||
QT_AUTO_SCREEN_SCALE_FACTOR = '0'
|
|
||||||
QUERY_STRING = ''
|
|
||||||
REMOTE_ADDR = '127.0.0.1'
|
|
||||||
REMOTE_HOST = ''
|
|
||||||
REQUEST_METHOD = 'GET'
|
|
||||||
RUN_MAIN = 'true'
|
|
||||||
SCRIPT_NAME = ''
|
|
||||||
SERVER_NAME = 'localhost'
|
|
||||||
SERVER_PORT = '8000'
|
|
||||||
SERVER_PROTOCOL = 'HTTP/1.1'
|
|
||||||
SERVER_SOFTWARE = 'WSGIServer/0.2'
|
|
||||||
SESSION_MANAGER = 'local/ubuntu-N7x0WU:@/tmp/.ICE-unix/1459,unix/ubuntu-N7x0WU:/tmp/.ICE-unix/1459'
|
|
||||||
SHELL = '/usr/bin/fish'
|
|
||||||
SHLVL = '3'
|
|
||||||
SSH_AGENT_PID = '1383'
|
|
||||||
SSH_AUTH_SOCK = '/tmp/ssh-RgoHoRBUgMlY/agent.1318'
|
|
||||||
TERM = 'xterm-256color'
|
|
||||||
TERM_PROGRAM = 'vscode'
|
|
||||||
TERM_PROGRAM_VERSION = '1.28.2'
|
|
||||||
TZ = 'UTC'
|
|
||||||
USER = 'ubuntu'
|
|
||||||
VIRTUAL_ENV = '/home/ubuntu/dev/test/ldpserverhdparis/env'
|
|
||||||
XAUTHORITY = '/home/ubuntu/.Xauthority'
|
|
||||||
XCURSOR_SIZE = '0'
|
|
||||||
XCURSOR_THEME = 'ComixCursors-Opaque-Black'
|
|
||||||
XDG_CONFIG_DIRS = '/etc/xdg/xdg-plasma:/etc/xdg:/usr/share/kubuntu-default-settings/kf5-settings'
|
|
||||||
XDG_CURRENT_DESKTOP = 'KDE'
|
|
||||||
XDG_DATA_DIRS = '/usr/share/plasma:/home/ubuntu/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share'
|
|
||||||
XDG_RUNTIME_DIR = '/run/user/1000'
|
|
||||||
XDG_SEAT = 'seat0'
|
|
||||||
XDG_SEAT_PATH = '/org/freedesktop/DisplayManager/Seat0'
|
|
||||||
XDG_SESSION_CLASS = 'user'
|
|
||||||
XDG_SESSION_DESKTOP = 'KDE'
|
|
||||||
XDG_SESSION_ID = '1'
|
|
||||||
XDG_SESSION_PATH = '/org/freedesktop/DisplayManager/Session0'
|
|
||||||
XDG_SESSION_TYPE = 'x11'
|
|
||||||
XDG_VTNR = '1'
|
|
||||||
_OLD_FISH_PROMPT_OVERRIDE = '/home/ubuntu/dev/test/ldpserverhdparis/env'
|
|
||||||
_OLD_VIRTUAL_PATH = '.deno/bin/\x1e/home/ubuntu/.deno/bin/\x1e/usr/local/sbin\x1e/usr/local/bin\x1e/usr/sbin\x1e/usr/bin\x1e/sbin\x1e/bin\x1e/usr/games\x1e/usr/local/games'
|
|
||||||
wsgi.errors = <_io.TextIOWrapper name='<stderr>' mode='w' encoding='UTF-8'>
|
|
||||||
wsgi.file_wrapper = ''
|
|
||||||
wsgi.input = <_io.BufferedReader name=5>
|
|
||||||
wsgi.multiprocess = False
|
|
||||||
wsgi.multithread = True
|
|
||||||
wsgi.run_once = False
|
|
||||||
wsgi.url_scheme = 'http'
|
|
||||||
wsgi.version =
|
|
||||||
|
|
||||||
Settings:
|
|
||||||
Using settings module ldpserverhdparis.settings
|
|
||||||
ABSOLUTE_URL_OVERRIDES = {}
|
|
||||||
ADMINS = []
|
|
||||||
ALLOWED_HOSTS = ['127.0.0.1', 'test-paris.happy-dev.fr']
|
|
||||||
APPEND_SLASH = True
|
|
||||||
AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.ModelBackend', 'guardian.backends.ObjectPermissionBackend']
|
|
||||||
AUTH_PASSWORD_VALIDATORS = '********************'
|
|
||||||
AUTH_USER_MODEL = 'auth.User'
|
|
||||||
BASE_DIR = '/home/ubuntu/dev/test/ldpserverhdparis'
|
|
||||||
CACHES = {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}}
|
|
||||||
CACHE_MIDDLEWARE_ALIAS = 'default'
|
|
||||||
CACHE_MIDDLEWARE_KEY_PREFIX = '********************'
|
|
||||||
CACHE_MIDDLEWARE_SECONDS = 600
|
|
||||||
CSRF_COOKIE_AGE = 31449600
|
|
||||||
CSRF_COOKIE_DOMAIN = None
|
|
||||||
CSRF_COOKIE_HTTPONLY = False
|
|
||||||
CSRF_COOKIE_NAME = 'csrftoken'
|
|
||||||
CSRF_COOKIE_PATH = '/'
|
|
||||||
CSRF_COOKIE_SECURE = False
|
|
||||||
CSRF_FAILURE_VIEW = 'django.views.csrf.csrf_failure'
|
|
||||||
CSRF_HEADER_NAME = 'HTTP_X_CSRFTOKEN'
|
|
||||||
CSRF_TRUSTED_ORIGINS = []
|
|
||||||
CSRF_USE_SESSIONS = False
|
|
||||||
DATABASES = {'default': {'ENGINE': 'django.db.backends.sqlite3', 'NAME': '/home/ubuntu/dev/test/ldpserverhdparis/db.sqlite3', 'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'OPTIONS': {}, 'TIME_ZONE': None, 'USER': '', 'PASSWORD': '********************', 'HOST': '', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'NAME': None, 'MIRROR': None}}}
|
|
||||||
DATABASE_ROUTERS = []
|
|
||||||
DATA_UPLOAD_MAX_MEMORY_SIZE = 2621440
|
|
||||||
DATA_UPLOAD_MAX_NUMBER_FIELDS = 1000
|
|
||||||
DATETIME_FORMAT = 'N j, Y, P'
|
|
||||||
DATETIME_INPUT_FORMATS = ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y']
|
|
||||||
DATE_FORMAT = 'N j, Y'
|
|
||||||
DATE_INPUT_FORMATS = ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']
|
|
||||||
DEBUG = True
|
|
||||||
DEBUG_PROPAGATE_EXCEPTIONS = False
|
|
||||||
DECIMAL_SEPARATOR = '.'
|
|
||||||
DEFAULT_CHARSET = 'utf-8'
|
|
||||||
DEFAULT_CONTENT_TYPE = 'text/html'
|
|
||||||
DEFAULT_EXCEPTION_REPORTER_FILTER = 'django.views.debug.SafeExceptionReporterFilter'
|
|
||||||
DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage'
|
|
||||||
DEFAULT_FROM_EMAIL = 'webmaster@localhost'
|
|
||||||
DEFAULT_INDEX_TABLESPACE = ''
|
|
||||||
DEFAULT_TABLESPACE = ''
|
|
||||||
DISALLOWED_USER_AGENTS = []
|
|
||||||
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
|
|
||||||
EMAIL_HOST = 'localhost'
|
|
||||||
EMAIL_HOST_PASSWORD = '********************'
|
|
||||||
EMAIL_HOST_USER = ''
|
|
||||||
EMAIL_PORT = 25
|
|
||||||
EMAIL_SSL_CERTFILE = None
|
|
||||||
EMAIL_SSL_KEYFILE = '********************'
|
|
||||||
EMAIL_SUBJECT_PREFIX = '[Django] '
|
|
||||||
EMAIL_TIMEOUT = None
|
|
||||||
EMAIL_USE_LOCALTIME = False
|
|
||||||
EMAIL_USE_SSL = False
|
|
||||||
EMAIL_USE_TLS = False
|
|
||||||
FILE_CHARSET = 'utf-8'
|
|
||||||
FILE_UPLOAD_DIRECTORY_PERMISSIONS = None
|
|
||||||
FILE_UPLOAD_HANDLERS = ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler']
|
|
||||||
FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440
|
|
||||||
FILE_UPLOAD_PERMISSIONS = None
|
|
||||||
FILE_UPLOAD_TEMP_DIR = None
|
|
||||||
FIRST_DAY_OF_WEEK = 0
|
|
||||||
FIXTURE_DIRS = []
|
|
||||||
FORCE_SCRIPT_NAME = None
|
|
||||||
FORMAT_MODULE_PATH = None
|
|
||||||
FORM_RENDERER = 'django.forms.renderers.DjangoTemplates'
|
|
||||||
IGNORABLE_404_URLS = []
|
|
||||||
INSTALLED_APPS = ['ldpserverhdparis', 'djangoldp', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'oidc_provider', 'guardian']
|
|
||||||
INTERNAL_IPS = []
|
|
||||||
LANGUAGES = [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')]
|
|
||||||
LANGUAGES_BIDI = ['he', 'ar', 'fa', 'ur']
|
|
||||||
LANGUAGE_CODE = 'en-us'
|
|
||||||
LANGUAGE_COOKIE_AGE = None
|
|
||||||
LANGUAGE_COOKIE_DOMAIN = None
|
|
||||||
LANGUAGE_COOKIE_NAME = 'django_language'
|
|
||||||
LANGUAGE_COOKIE_PATH = '/'
|
|
||||||
LDP_RDF_CONTEXT = 'https://cdn.happy-dev.fr/owl/hdcontext.jsonld'
|
|
||||||
LOCALE_PATHS = []
|
|
||||||
LOGGING = {}
|
|
||||||
LOGGING_CONFIG = 'logging.config.dictConfig'
|
|
||||||
LOGIN_REDIRECT_URL = '/accounts/profile/'
|
|
||||||
LOGIN_URL = '/accounts/login/'
|
|
||||||
LOGOUT_REDIRECT_URL = None
|
|
||||||
MANAGERS = []
|
|
||||||
MEDIA_ROOT = ''
|
|
||||||
MEDIA_URL = ''
|
|
||||||
MESSAGE_STORAGE = 'django.contrib.messages.storage.fallback.FallbackStorage'
|
|
||||||
MIDDLEWARE = ['django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware']
|
|
||||||
MIDDLEWARE_CLASSES = ['django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware']
|
|
||||||
MIGRATION_MODULES = {}
|
|
||||||
MONTH_DAY_FORMAT = 'F j'
|
|
||||||
NUMBER_GROUPING = 0
|
|
||||||
OIDC_USERINFO = 'ldpserverhdparis.oidc_provider_settings.userinfo'
|
|
||||||
PASSWORD_HASHERS = '********************'
|
|
||||||
PASSWORD_RESET_TIMEOUT_DAYS = '********************'
|
|
||||||
PREPEND_WWW = False
|
|
||||||
ROOT_URLCONF = 'ldpserverhdparis.urls'
|
|
||||||
SECRET_KEY = '********************'
|
|
||||||
SECURE_BROWSER_XSS_FILTER = False
|
|
||||||
SECURE_CONTENT_TYPE_NOSNIFF = False
|
|
||||||
SECURE_HSTS_INCLUDE_SUBDOMAINS = False
|
|
||||||
SECURE_HSTS_PRELOAD = False
|
|
||||||
SECURE_HSTS_SECONDS = 0
|
|
||||||
SECURE_PROXY_SSL_HEADER = None
|
|
||||||
SECURE_REDIRECT_EXEMPT = []
|
|
||||||
SECURE_SSL_HOST = None
|
|
||||||
SECURE_SSL_REDIRECT = False
|
|
||||||
SERVER_EMAIL = 'root@localhost'
|
|
||||||
SESSION_CACHE_ALIAS = 'default'
|
|
||||||
SESSION_COOKIE_AGE = 1209600
|
|
||||||
SESSION_COOKIE_DOMAIN = None
|
|
||||||
SESSION_COOKIE_HTTPONLY = True
|
|
||||||
SESSION_COOKIE_NAME = 'sessionid'
|
|
||||||
SESSION_COOKIE_PATH = '/'
|
|
||||||
SESSION_COOKIE_SECURE = False
|
|
||||||
SESSION_ENGINE = 'django.contrib.sessions.backends.db'
|
|
||||||
SESSION_EXPIRE_AT_BROWSER_CLOSE = False
|
|
||||||
SESSION_FILE_PATH = None
|
|
||||||
SESSION_SAVE_EVERY_REQUEST = False
|
|
||||||
SESSION_SERIALIZER = 'django.contrib.sessions.serializers.JSONSerializer'
|
|
||||||
SETTINGS_MODULE = 'ldpserverhdparis.settings'
|
|
||||||
SHORT_DATETIME_FORMAT = 'm/d/Y P'
|
|
||||||
SHORT_DATE_FORMAT = 'm/d/Y'
|
|
||||||
SIGNING_BACKEND = 'django.core.signing.TimestampSigner'
|
|
||||||
SILENCED_SYSTEM_CHECKS = []
|
|
||||||
STATICFILES_DIRS = []
|
|
||||||
STATICFILES_FINDERS = ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder']
|
|
||||||
STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.StaticFilesStorage'
|
|
||||||
STATIC_ROOT = '/home/ubuntu/dev/test/static'
|
|
||||||
STATIC_URL = '/static/'
|
|
||||||
TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [], 'APP_DIRS': True, 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages']}}]
|
|
||||||
TEST_NON_SERIALIZED_APPS = []
|
|
||||||
TEST_RUNNER = 'django.test.runner.DiscoverRunner'
|
|
||||||
THOUSAND_SEPARATOR = ','
|
|
||||||
TIME_FORMAT = 'P'
|
|
||||||
TIME_INPUT_FORMATS = ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
|
|
||||||
TIME_ZONE = 'UTC'
|
|
||||||
USE_ETAGS = False
|
|
||||||
USE_I18N = True
|
|
||||||
USE_L10N = True
|
|
||||||
USE_THOUSAND_SEPARATOR = False
|
|
||||||
USE_TZ = True
|
|
||||||
USE_X_FORWARDED_HOST = False
|
|
||||||
USE_X_FORWARDED_PORT = False
|
|
||||||
WSGI_APPLICATION = 'ldpserverhdparis.wsgi.application'
|
|
||||||
X_FRAME_OPTIONS = 'SAMEORIGIN'
|
|
||||||
YEAR_MONTH_FORMAT = 'F Y'
|
|
||||||
|
|
||||||
|
|
||||||
You're seeing this error because you have DEBUG = True in your
|
|
||||||
Django settings file. Change that to False, and Django will
|
|
||||||
display a standard page generated by the handler for this status code.
|
|
||||||
|
|
@ -12,8 +12,8 @@ html(lang="en")
|
|||||||
div.layer
|
div.layer
|
||||||
header#header
|
header#header
|
||||||
include header.pug
|
include header.pug
|
||||||
#subContainer
|
#content
|
||||||
include menu.pug
|
include menu-left.pug
|
||||||
main#mainContainer
|
main#mainContainer
|
||||||
//- #dashboard(hidden)
|
//- #dashboard(hidden)
|
||||||
include page-dashboard.pug
|
include page-dashboard.pug
|
||||||
@ -27,8 +27,6 @@ html(lang="en")
|
|||||||
include page-job-offers.pug
|
include page-job-offers.pug
|
||||||
#job-offer-create(hidden)
|
#job-offer-create(hidden)
|
||||||
include page-job-offer-create.pug
|
include page-job-offer-create.pug
|
||||||
#projects(hidden)
|
|
||||||
include page-projects.pug
|
|
||||||
#project(hidden)
|
#project(hidden)
|
||||||
include page-project.pug
|
include page-project.pug
|
||||||
//- #client-creation(hidden)
|
//- #client-creation(hidden)
|
||||||
|
@ -1,13 +1,20 @@
|
|||||||
sib-router#project-router(default-route='project-chat')
|
nav#jsRightMenu(role='navigation')
|
||||||
|
sib-router(default-route='project-chat')
|
||||||
|
ul
|
||||||
|
li#jsOffsiteToggle
|
||||||
|
a Fold menu
|
||||||
sib-route(name='project-chat')
|
sib-route(name='project-chat')
|
||||||
div Chat
|
li
|
||||||
|
a Chat
|
||||||
sib-route(name='project-profile')
|
sib-route(name='project-profile')
|
||||||
div Project
|
li
|
||||||
|
a Information
|
||||||
sib-route(name='project-edit')
|
sib-route(name='project-edit')
|
||||||
div Edit
|
li
|
||||||
|
a Edit
|
||||||
sib-route(name='project-create')
|
sib-route(name='project-create')
|
||||||
div Add new
|
li
|
||||||
div.scrollY
|
a Add new
|
||||||
#project-views-container
|
#project-views-container
|
||||||
#project-chat
|
#project-chat
|
||||||
include page-project-chat.pug
|
include page-project-chat.pug
|
||||||
|
@ -2,6 +2,9 @@ document.addEventListener('DOMContentLoaded', function (event) {
|
|||||||
const navBar = document.querySelector('#navbar');
|
const navBar = document.querySelector('#navbar');
|
||||||
const btnToggle = document.querySelector('#button-toggle');
|
const btnToggle = document.querySelector('#button-toggle');
|
||||||
const menuWrappers = Array.from(document.querySelectorAll('.menu-wrapper'));
|
const menuWrappers = Array.from(document.querySelectorAll('.menu-wrapper'));
|
||||||
|
const btnRightMenu = document.querySelector('#jsOffsiteToggle');
|
||||||
|
const rightMenu = document.querySelector('#jsRightMenu');
|
||||||
|
|
||||||
if (!navBar || !btnToggle) return;
|
if (!navBar || !btnToggle) return;
|
||||||
|
|
||||||
btnToggle.addEventListener('click', e => {
|
btnToggle.addEventListener('click', e => {
|
||||||
@ -35,4 +38,8 @@ document.addEventListener('DOMContentLoaded', function (event) {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Open/close menu on the right
|
||||||
|
btnRightMenu.addEventListener('click', e => {
|
||||||
|
rightMenu.classList.toggle('offsite-is-closed');
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
115
src/styles/icons/custom-icons.scss
Normal file
115
src/styles/icons/custom-icons.scss
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
/* Custom icons */
|
||||||
|
|
||||||
|
$ci-filename: "custom-icons";
|
||||||
|
$ci-font-name: "custom-icons";
|
||||||
|
$ci-font-family: "custom-icons";
|
||||||
|
$ci-font-weight: "regular";
|
||||||
|
$ci-font-path: "../fonts" !default;
|
||||||
|
$ci-css-prefix: ci !default;
|
||||||
|
$ci-version: "tlnzh2" !default;
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: '#{$ci-font-name}';
|
||||||
|
src: url('#{$ci-font-path}/#{$ci-filename}.eot?#{$ci-version}');
|
||||||
|
src: url('#{$ci-font-path}/#{$ci-filename}.eot?#{$ci-version}#iefix') format('embedded-opentype'),
|
||||||
|
url('#{$ci-font-path}/#{$ci-filename}.ttf?#{$ci-version}') format('truetype'),
|
||||||
|
url('#{$ci-font-path}/#{$ci-filename}.woff?#{$ci-version}') format('woff'),
|
||||||
|
url('#{$ci-font-path}/#{$ci-filename}.svg?#{$ci-version}##{$ci-filename}') format('svg');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
$ci-icons: (
|
||||||
|
awareness: '\e900',
|
||||||
|
businessman: '\e901',
|
||||||
|
information: '\e902',
|
||||||
|
list-1: '\e903',
|
||||||
|
sale: '\e904',
|
||||||
|
armor: '\e905',
|
||||||
|
chat: '\e906',
|
||||||
|
list: '\e907',
|
||||||
|
network: '\e908',
|
||||||
|
offer: '\e909',
|
||||||
|
reaction: '\e90a',
|
||||||
|
add: '\e90b',
|
||||||
|
appointment: '\e90c',
|
||||||
|
desk: '\e90d',
|
||||||
|
file: '\e90e',
|
||||||
|
premium: '\e90f',
|
||||||
|
team: '\e910',
|
||||||
|
beer: '\e911',
|
||||||
|
networking: '\e912',
|
||||||
|
receipt: '\e913',
|
||||||
|
robot: '\e914',
|
||||||
|
team-1: '\e915',
|
||||||
|
croupier: '\e916',
|
||||||
|
learning: '\e917',
|
||||||
|
review: '\e918',
|
||||||
|
surf: '\e919',
|
||||||
|
document: '\e91a',
|
||||||
|
code: '\e91b',
|
||||||
|
hat: '\e91c',
|
||||||
|
beer1: '\e91d',
|
||||||
|
alien: '\e91e',
|
||||||
|
drawing: '\e91f',
|
||||||
|
feedback: '\e920',
|
||||||
|
globe: '\e921'
|
||||||
|
);
|
||||||
|
|
||||||
|
%ci,
|
||||||
|
[class^='ci-']::before,
|
||||||
|
[class*='ci-']::before {
|
||||||
|
display: inline-block;
|
||||||
|
/* use !important to prevent issues with browser extensions that change fonts */
|
||||||
|
font-family: '#{$ci-font-name}' !important;
|
||||||
|
font-size: 25px;
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: normal;
|
||||||
|
line-height: 1;
|
||||||
|
speak: none;
|
||||||
|
text-align: center;
|
||||||
|
text-decoration: inherit;
|
||||||
|
width: 1em;
|
||||||
|
|
||||||
|
/* For safety - reset parent styles, that can break glyph codes*/
|
||||||
|
font-variant: normal;
|
||||||
|
text-transform: none;
|
||||||
|
|
||||||
|
/* Better Font Rendering */
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
-moz-osx-font-smoothing: grayscale;
|
||||||
|
}
|
||||||
|
|
||||||
|
@function char($character-code) {
|
||||||
|
@if function-exists("selector-append") {
|
||||||
|
@return unquote("\"\\#{$character-code}\"");
|
||||||
|
}
|
||||||
|
|
||||||
|
@if "\\#{'x'}" == "\\x" {
|
||||||
|
@return str-slice("\x", 1, 1) + $character-code;
|
||||||
|
}
|
||||||
|
@else {
|
||||||
|
@return #{"\"\\"}#{$character-code + "\""};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@function ci($name) {
|
||||||
|
@if map-has-key($ci-icons, $name) == false {
|
||||||
|
@warn "Icon #{$name} not found.";
|
||||||
|
@return "";
|
||||||
|
}
|
||||||
|
@return char(map-get($ci-icons, $name));
|
||||||
|
}
|
||||||
|
|
||||||
|
@each $key, $value in $ci-icons {
|
||||||
|
.#{$ci-css-prefix}-#{$key}:before {
|
||||||
|
content: char($value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin ci($value) {
|
||||||
|
&:before {
|
||||||
|
@extend %ci;
|
||||||
|
@extend .#{$ci-css-prefix}-#{$value};
|
||||||
|
}
|
||||||
|
}
|
@ -58,16 +58,7 @@
|
|||||||
// text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3);
|
// text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3);
|
||||||
}
|
}
|
||||||
|
|
||||||
%outline-person {
|
|
||||||
background-image: url(/images/svg/icon-outline-person.svg);
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
background-position: left top;
|
|
||||||
padding-top: 20px;
|
|
||||||
margin-left: 1.35em;;
|
|
||||||
}
|
|
||||||
|
|
||||||
$icons: (
|
$icons: (
|
||||||
/* outline-person: '\f206', */
|
|
||||||
user-female: '\e000',
|
user-female: '\e000',
|
||||||
people: '\e001',
|
people: '\e001',
|
||||||
user-follow: '\e002',
|
user-follow: '\e002',
|
@ -28,10 +28,10 @@ $mdi-icons: (
|
|||||||
);
|
);
|
||||||
|
|
||||||
%mdi,
|
%mdi,
|
||||||
[class^='mdi-']:before,
|
[class^='mdi-']::before,
|
||||||
[class*='mdi-']:before {
|
[class*='mdi-']::before {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
font-family: '#{$mdi-font-name}';
|
font-family: '#{$mdi-font-name}' !important;
|
||||||
font-size: 25px;
|
font-size: 25px;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
@ -1,8 +1,10 @@
|
|||||||
@charset "UTF-8";
|
@charset "UTF-8";
|
||||||
|
|
||||||
@import '../../node_modules/include-media/dist/include-media';
|
@import '../../node_modules/include-media/dist/include-media';
|
||||||
@import 'material-design-icons';
|
@import 'icons/custom-icons';
|
||||||
@import 'icons';
|
@import 'icons/icons';
|
||||||
|
@import 'icons/material-design-icons';
|
||||||
|
|
||||||
@import 'variables';
|
@import 'variables';
|
||||||
@import 'mixins';
|
@import 'mixins';
|
||||||
@import 'main';
|
@import 'main';
|
||||||
@ -18,4 +20,5 @@
|
|||||||
|
|
||||||
// @import 'members';
|
// @import 'members';
|
||||||
@import 'header';
|
@import 'header';
|
||||||
@import 'menu';
|
@import 'menu-left';
|
||||||
|
@import 'menu-right';
|
@ -112,11 +112,8 @@ h5 {
|
|||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
#subContainer {
|
#content {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-grow: 1;
|
|
||||||
align-items: stretch;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#mainContainer {
|
#mainContainer {
|
||||||
@ -137,50 +134,7 @@ h5 {
|
|||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row-reverse;
|
flex-direction: row-reverse;
|
||||||
align-items: stretch;
|
align-items: stretch;
|
||||||
|
overflow-x: hidden;
|
||||||
> sib-router {
|
|
||||||
font-family: monospace;
|
|
||||||
color: $color-dark-lava;
|
|
||||||
background-color: $color-timberwolf;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
|
|
||||||
sib-route {
|
|
||||||
cursor: pointer;
|
|
||||||
|
|
||||||
> div {
|
|
||||||
position: relative;
|
|
||||||
padding: 1.5em 3em;
|
|
||||||
border-bottom: 1px solid $color-taupe-gray;
|
|
||||||
}
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
background-color: $color-taupe-gray;
|
|
||||||
}
|
|
||||||
|
|
||||||
&[active] {
|
|
||||||
font-weight: bold;
|
|
||||||
background-color: $color-dark-lava;
|
|
||||||
color: $color-selective-yellow;
|
|
||||||
|
|
||||||
> div:before {
|
|
||||||
opacity: 1;
|
|
||||||
transform: translateX(-150%);
|
|
||||||
transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
> div {
|
|
||||||
@include icon(arrow-left);
|
|
||||||
|
|
||||||
&:before {
|
|
||||||
position: absolute;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
> div {
|
> div {
|
||||||
//display: flex;
|
//display: flex;
|
||||||
@ -278,8 +232,8 @@ sib-link.back {
|
|||||||
flex-direction: row-reverse;
|
flex-direction: row-reverse;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#project-views-container {
|
||||||
.scrollY {
|
flex: 1 0 0;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
207
src/styles/menu-left.scss
Normal file
207
src/styles/menu-left.scss
Normal file
@ -0,0 +1,207 @@
|
|||||||
|
#navbar {
|
||||||
|
background-color: $color-purple-dark;
|
||||||
|
color: $color-white;
|
||||||
|
// max-width: 16rem;
|
||||||
|
// position: relative;
|
||||||
|
// min-height: 100%;
|
||||||
|
transition: flex-basis 0.5s ease-in-out;
|
||||||
|
display: block;
|
||||||
|
flex-grow: 0;
|
||||||
|
flex-shrink: 0;
|
||||||
|
flex-basis: 16em;
|
||||||
|
overflow: auto;
|
||||||
|
flex-direction: column;
|
||||||
|
font-size: 16px;
|
||||||
|
|
||||||
|
&.open {
|
||||||
|
transform: translateX(0);
|
||||||
|
}
|
||||||
|
//@include border-shadow(right);
|
||||||
|
|
||||||
|
sib-router {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
|
.menu-wrapper {
|
||||||
|
&.is-closed {
|
||||||
|
.sub-menu {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.menu-chevron {
|
||||||
|
transform: rotate(180deg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.divider {
|
||||||
|
height: 1px;
|
||||||
|
background-color: $color-gainsboro-a02;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sub-menu {
|
||||||
|
padding-left: 1.8em;
|
||||||
|
|
||||||
|
div {
|
||||||
|
color: $color-spun-pearl;
|
||||||
|
padding-bottom: 0.7em;
|
||||||
|
font-size: 15px;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
div[name='project'] {
|
||||||
|
display: flex;
|
||||||
|
|
||||||
|
sib-display-div[name='dash'] {
|
||||||
|
margin: 0 0.4em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row-reverse;
|
||||||
|
padding: 1em;
|
||||||
|
// border-top: 1px solid #ddd;
|
||||||
|
// &:last-child {
|
||||||
|
// border-bottom: 1px solid #ddd;
|
||||||
|
// }
|
||||||
|
cursor: pointer;
|
||||||
|
font-weight: bold;
|
||||||
|
|
||||||
|
&[active] {
|
||||||
|
background-color: $color-mustard;
|
||||||
|
color: $color-purple-dark;
|
||||||
|
|
||||||
|
.menu-icon:before {
|
||||||
|
background-color: $color-purple-dark;
|
||||||
|
color: $color-white;
|
||||||
|
// transform: perspective(1000px) translateZ(1px) scale(0.8);
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-notification > sib-display > div:first-child {
|
||||||
|
background-color: $color-purple-dark;
|
||||||
|
color: $color-mustard;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-icon {
|
||||||
|
//flex-basis: 2em;
|
||||||
|
width: 4em;
|
||||||
|
flex-shrink: 0;
|
||||||
|
flex-grow: 0;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
font-size: 11px;
|
||||||
|
|
||||||
|
&:before {
|
||||||
|
width: 1.9em;
|
||||||
|
height: 1.9em;
|
||||||
|
line-height: 1.9em;
|
||||||
|
font-size: 1.6em;
|
||||||
|
border-radius: 100%;
|
||||||
|
// transform: perspective(1000px) translateZ(1px) scale(1);
|
||||||
|
// will-change: transform;
|
||||||
|
// transition: all 0.3s ease, transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.4);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-chevron {
|
||||||
|
width: 2em;
|
||||||
|
flex-shrink: 0;
|
||||||
|
flex-grow: 0;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
> div {
|
||||||
|
color: $color-spun-pearl;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu-label {
|
||||||
|
//flex-basis: 8em;
|
||||||
|
width: 8em;
|
||||||
|
flex-shrink: 0;
|
||||||
|
flex-grow: 1;
|
||||||
|
justify-content: center;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
text-transform: uppercase;
|
||||||
|
font-weight: 600;
|
||||||
|
letter-spacing: 0.17px;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*Fix: presque doublon avec main.scss ligne 71 qui gère le nombre de notifications sur la cloche */
|
||||||
|
.menu-notification {
|
||||||
|
//flex-basis: 3em;
|
||||||
|
width: 2em;
|
||||||
|
flex-shrink: 0;
|
||||||
|
flex-grow: 0;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
> sib-display {
|
||||||
|
> div:first-of-type {
|
||||||
|
color: $color-dark-lava;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
width: 1.7em;
|
||||||
|
height: 1.7em;
|
||||||
|
border-radius: 100%;
|
||||||
|
background-color: $color-mustard;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&[id-prefix] {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
> sib-display {
|
||||||
|
display: block;
|
||||||
|
font-size: 0.9em;
|
||||||
|
color: #aaa;
|
||||||
|
|
||||||
|
> div {
|
||||||
|
margin-bottom: 1.5em;
|
||||||
|
|
||||||
|
> sib-display {
|
||||||
|
cursor: pointer;
|
||||||
|
display: block;
|
||||||
|
padding: 0.5em 2em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@include media('width<phone') {
|
||||||
|
#button-toggle {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
#navbar {
|
||||||
|
//transform: translateX(-120%);
|
||||||
|
transition: flex-basis 0.5s ease-in-out;
|
||||||
|
flex-basis: 0;
|
||||||
|
//position: absolute;
|
||||||
|
//top: auto;
|
||||||
|
//display: none;
|
||||||
|
//z-index: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
92
src/styles/menu-right.scss
Normal file
92
src/styles/menu-right.scss
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
#mainContainer {
|
||||||
|
|
||||||
|
> div {
|
||||||
|
|
||||||
|
nav {
|
||||||
|
|
||||||
|
> sib-router {
|
||||||
|
background-color: $color-link-water;
|
||||||
|
color: $color-purple-dark;
|
||||||
|
flex: 0 0 auto;
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: 600;
|
||||||
|
|
||||||
|
> ul {
|
||||||
|
cursor: pointer;
|
||||||
|
list-style: none;
|
||||||
|
margin: 0;
|
||||||
|
padding-left: 0;
|
||||||
|
|
||||||
|
li {
|
||||||
|
align-items: center;
|
||||||
|
border-bottom: 1px solid $color-lavender-gray;
|
||||||
|
display: flex;
|
||||||
|
margin-bottom: 0;
|
||||||
|
margin-left: 0;
|
||||||
|
margin-top: 0;
|
||||||
|
padding: 1.5em 1.5em;
|
||||||
|
position: relative;
|
||||||
|
width: 12em;
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
float: left;
|
||||||
|
font-size: 40px;
|
||||||
|
margin-left: 0;
|
||||||
|
margin-right: 1.5rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
> li {
|
||||||
|
@include icon('arrow-right-circle');
|
||||||
|
}
|
||||||
|
|
||||||
|
> sib-route {
|
||||||
|
|
||||||
|
&[active] {
|
||||||
|
background-color: $color-purple-dark;
|
||||||
|
color: $color-mustard;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
&[name^='circle'],
|
||||||
|
&[name^='project'] {
|
||||||
|
|
||||||
|
> li::before {
|
||||||
|
font-size: 40px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&[name$='chat'] > li {
|
||||||
|
@include ci('chat');
|
||||||
|
}
|
||||||
|
|
||||||
|
&[name$='create'] > li {
|
||||||
|
@include ci('offer');
|
||||||
|
}
|
||||||
|
|
||||||
|
&[name$='edit'] > li {
|
||||||
|
@include ci('list');
|
||||||
|
}
|
||||||
|
|
||||||
|
&[name$='profile'] > li {
|
||||||
|
@include ci('information');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&.offsite-is-closed {
|
||||||
|
transform: translate(12rem);
|
||||||
|
|
||||||
|
& #jsOffsiteToggle::before {
|
||||||
|
transform: rotate(180deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
& ~ #project-views-container {
|
||||||
|
flex-basis: 95%;
|
||||||
|
transform: translate(12rem);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,208 +0,0 @@
|
|||||||
// #navbar{}
|
|
||||||
// #navbar-router{}
|
|
||||||
|
|
||||||
#navbar {
|
|
||||||
background-color: $color-purple-dark;
|
|
||||||
color: $color-white;
|
|
||||||
// max-width: 16rem;
|
|
||||||
// position: relative;
|
|
||||||
// min-height: 100%;
|
|
||||||
transition: flex-basis 0.5s ease-in-out;
|
|
||||||
display: block;
|
|
||||||
flex-grow: 0;
|
|
||||||
flex-shrink: 0;
|
|
||||||
flex-basis: 16em;
|
|
||||||
overflow: auto;
|
|
||||||
flex-direction: column;
|
|
||||||
font-size: 16px;
|
|
||||||
|
|
||||||
&.open {
|
|
||||||
transform: translateX(0);
|
|
||||||
}
|
|
||||||
//@include border-shadow(right);
|
|
||||||
}
|
|
||||||
@include media('width<phone') {
|
|
||||||
#button-toggle {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
#navbar {
|
|
||||||
//transform: translateX(-120%);
|
|
||||||
transition: flex-basis 0.5s ease-in-out;
|
|
||||||
flex-basis: 0;
|
|
||||||
//position: absolute;
|
|
||||||
//top: auto;
|
|
||||||
//display: none;
|
|
||||||
//z-index: 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sib-router {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
|
|
||||||
.menu-wrapper {
|
|
||||||
&.is-closed {
|
|
||||||
.sub-menu {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
.menu-chevron {
|
|
||||||
transform: rotate(180deg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.divider {
|
|
||||||
height: 1px;
|
|
||||||
background-color: $color-gainsboro-a02;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sub-menu {
|
|
||||||
padding-left: 1.8em;
|
|
||||||
|
|
||||||
div {
|
|
||||||
color: $color-spun-pearl;
|
|
||||||
padding-bottom: 0.7em;
|
|
||||||
font-size: 15px;
|
|
||||||
cursor: pointer;
|
|
||||||
|
|
||||||
div[name='project'] {
|
|
||||||
display: flex;
|
|
||||||
|
|
||||||
sib-display-div[name='dash'] {
|
|
||||||
margin: 0 0.4em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.menu {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: row-reverse;
|
|
||||||
padding: 1em;
|
|
||||||
// border-top: 1px solid #ddd;
|
|
||||||
// &:last-child {
|
|
||||||
// border-bottom: 1px solid #ddd;
|
|
||||||
// }
|
|
||||||
cursor: pointer;
|
|
||||||
font-weight: bold;
|
|
||||||
|
|
||||||
&[active] {
|
|
||||||
background-color: $color-mustard;
|
|
||||||
color: $color-purple-dark;
|
|
||||||
|
|
||||||
.menu-icon:before {
|
|
||||||
background-color: $color-purple-dark;
|
|
||||||
color: $color-white;
|
|
||||||
// transform: perspective(1000px) translateZ(1px) scale(0.8);
|
|
||||||
}
|
|
||||||
|
|
||||||
.menu-notification > sib-display > div:first-child {
|
|
||||||
background-color: $color-purple-dark;
|
|
||||||
color: $color-mustard;
|
|
||||||
font-size: 12px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.menu-icon {
|
|
||||||
//flex-basis: 2em;
|
|
||||||
width: 4em;
|
|
||||||
flex-shrink: 0;
|
|
||||||
flex-grow: 0;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
font-size: 11px;
|
|
||||||
|
|
||||||
&:before {
|
|
||||||
width: 1.9em;
|
|
||||||
height: 1.9em;
|
|
||||||
line-height: 1.9em;
|
|
||||||
font-size: 1.6em;
|
|
||||||
border-radius: 100%;
|
|
||||||
// transform: perspective(1000px) translateZ(1px) scale(1);
|
|
||||||
// will-change: transform;
|
|
||||||
// transition: all 0.3s ease, transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.4);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.menu-chevron {
|
|
||||||
width: 2em;
|
|
||||||
flex-shrink: 0;
|
|
||||||
flex-grow: 0;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
|
|
||||||
> div {
|
|
||||||
color: $color-spun-pearl;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
font-size: 11px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.menu-label {
|
|
||||||
//flex-basis: 8em;
|
|
||||||
width: 8em;
|
|
||||||
flex-shrink: 0;
|
|
||||||
flex-grow: 1;
|
|
||||||
justify-content: center;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
text-transform: uppercase;
|
|
||||||
font-weight: 600;
|
|
||||||
letter-spacing: 0.17px;
|
|
||||||
font-size: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*Fix: presque doublon avec main.scss ligne 71 qui gère le nombre de notifications sur la cloche */
|
|
||||||
.menu-notification {
|
|
||||||
//flex-basis: 3em;
|
|
||||||
width: 2em;
|
|
||||||
flex-shrink: 0;
|
|
||||||
flex-grow: 0;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
|
|
||||||
> sib-display {
|
|
||||||
> div:first-of-type {
|
|
||||||
color: $color-dark-lava;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
width: 1.7em;
|
|
||||||
height: 1.7em;
|
|
||||||
border-radius: 100%;
|
|
||||||
background-color: $color-mustard;
|
|
||||||
font-size: 12px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&[id-prefix] {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
> sib-display {
|
|
||||||
display: block;
|
|
||||||
font-size: 0.9em;
|
|
||||||
color: #aaa;
|
|
||||||
|
|
||||||
> div {
|
|
||||||
margin-bottom: 1.5em;
|
|
||||||
|
|
||||||
> sib-display {
|
|
||||||
cursor: pointer;
|
|
||||||
display: block;
|
|
||||||
padding: 0.5em 2em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -18,6 +18,7 @@ $color-bombay: hsl(215, 9%, 73%);
|
|||||||
$color-dark-lava: hsl(216, 4%, 22%);
|
$color-dark-lava: hsl(216, 4%, 22%);
|
||||||
$color-link-water: hsl(221, 51%, 90%);
|
$color-link-water: hsl(221, 51%, 90%);
|
||||||
$color-glitter: hsl(222, 57%, 95%);
|
$color-glitter: hsl(222, 57%, 95%);
|
||||||
|
$color-lavender-gray: hsl(229, 25%, 79%);
|
||||||
$color-purple-dark: hsl(233, 18%, 29%);
|
$color-purple-dark: hsl(233, 18%, 29%);
|
||||||
$color-spun-pearl: hsl(244, 10%, 70%);
|
$color-spun-pearl: hsl(244, 10%, 70%);
|
||||||
$color-majorelle-blue: hsl(244, 73%, 62%);
|
$color-majorelle-blue: hsl(244, 73%, 62%);
|
||||||
|
BIN
www/fonts/custom-icons.eot
Normal file
BIN
www/fonts/custom-icons.eot
Normal file
Binary file not shown.
46
www/fonts/custom-icons.svg
Normal file
46
www/fonts/custom-icons.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 144 KiB |
BIN
www/fonts/custom-icons.ttf
Normal file
BIN
www/fonts/custom-icons.ttf
Normal file
Binary file not shown.
BIN
www/fonts/custom-icons.woff
Normal file
BIN
www/fonts/custom-icons.woff
Normal file
Binary file not shown.
@ -1,3 +0,0 @@
|
|||||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" baseProfile="full" width="24" height="24" viewBox="0 0 24.00 24.00" enable-background="new 0 0 24.00 24.00" xml:space="preserve">
|
|
||||||
<path fill="#000000" fill-opacity="1" stroke-width="0.2" stroke-linejoin="round" d="M 11.9994,3.99807C 14.2074,3.99807 15.9994,5.79006 15.9994,7.99807C 15.9994,10.2051 14.2074,11.9981 11.9994,11.9981C 9.79138,11.9981 7.99939,10.2051 7.99939,7.99807C 7.99939,5.79006 9.79138,3.99807 11.9994,3.99807 Z M 11.9994,5.99808C 10.8966,5.99808 9.99943,6.89522 9.99943,7.99807C 9.99943,9.10092 10.8966,9.99806 11.9994,9.99806C 13.1023,9.99806 13.9994,9.10092 13.9994,7.99807C 13.9994,6.89522 13.1023,5.99808 11.9994,5.99808 Z M 11.9994,12.9981C 14.6664,12.9981 19.9994,14.3331 19.9994,16.9981L 19.9994,19.9981L 3.99939,19.9981L 3.99939,16.9981C 3.99939,14.3331 9.3324,12.9981 11.9994,12.9981 Z M 11.9994,14.8981C 9.02539,14.8981 5.89937,16.3551 5.89937,16.9981L 5.89937,18.0981L 18.0994,18.0981L 18.0994,16.9981C 18.0994,16.3551 14.9734,14.8981 11.9994,14.8981 Z "/>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 1.1 KiB |
Loading…
Reference in New Issue
Block a user