pyupgrade and prettifier doing their job

This commit is contained in:
Oliver Falk
2025-10-22 14:05:44 +02:00
parent b4f224cd4d
commit d9c3c512f4
68 changed files with 365 additions and 375 deletions

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Configuration overrides for settings.py Configuration overrides for settings.py
""" """

View File

@@ -1,3 +1,2 @@
# -*- coding: utf-8 -*-
# Test configuration to verify LOGS_DIR override # Test configuration to verify LOGS_DIR override
LOGS_DIR = "/tmp/ivatar_test_logs" LOGS_DIR = "/tmp/ivatar_test_logs"

View File

@@ -1,5 +1,4 @@
#!/usr/bin/env python #!/usr/bin/env python
# -*- coding: utf-8 -*-
""" """
Import the whole libravatar export Import the whole libravatar export
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Module init Module init
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Default: useful variables for the base page templates. Default: useful variables for the base page templates.
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
File upload security utilities for ivatar File upload security utilities for ivatar
""" """

View File

@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
""" """
Module init Module init
""" """
app_label = __name__ # pylint: disable=invalid-name app_label = __name__ # pylint: disable=invalid-name

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
""" """
Register models in admin Register models in admin
""" """
from django.contrib import admin from django.contrib import admin
from .models import Photo, ConfirmedEmail, UnconfirmedEmail from .models import Photo, ConfirmedEmail, UnconfirmedEmail

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
from social_core.backends.open_id_connect import OpenIdConnectAuth from social_core.backends.open_id_connect import OpenIdConnectAuth
from ivatar.ivataraccount.models import ConfirmedEmail, Photo from ivatar.ivataraccount.models import ConfirmedEmail, Photo

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
""" """
Classes for our ivatar.ivataraccount.forms Classes for our ivatar.ivataraccount.forms
""" """
from urllib.parse import urlsplit, urlunsplit from urllib.parse import urlsplit, urlunsplit
from django import forms from django import forms

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
""" """
Helper method to fetch Gravatar image Helper method to fetch Gravatar image
""" """
from ssl import SSLError from ssl import SSLError
from urllib.request import HTTPError, URLError from urllib.request import HTTPError, URLError
from ivatar.utils import urlopen from ivatar.utils import urlopen

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.0.5 on 2018-05-07 07:13 # Generated by Django 2.0.5 on 2018-05-07 07:13
from django.conf import settings from django.conf import settings

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.0.5 on 2018-05-07 07:23 # Generated by Django 2.0.5 on 2018-05-07 07:23
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.0.5 on 2018-05-08 06:37 # Generated by Django 2.0.5 on 2018-05-08 06:37
import datetime import datetime

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.0.5 on 2018-05-08 07:42 # Generated by Django 2.0.5 on 2018-05-08 07:42
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.0.5 on 2018-05-22 11:55 # Generated by Django 2.0.5 on 2018-05-22 11:55
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.0.6 on 2018-06-26 14:45 # Generated by Django 2.0.6 on 2018-06-26 14:45
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.0.6 on 2018-06-27 06:24 # Generated by Django 2.0.6 on 2018-06-27 06:24
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# pylint: disable=invalid-name,missing-docstring # pylint: disable=invalid-name,missing-docstring
# Generated by Django 2.0.6 on 2018-07-04 12:32 # Generated by Django 2.0.6 on 2018-07-04 12:32

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.0.6 on 2018-07-05 11:52 # Generated by Django 2.0.6 on 2018-07-05 11:52
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.0.6 on 2018-07-05 12:01 # Generated by Django 2.0.6 on 2018-07-05 12:01
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.1.3 on 2018-11-07 15:50 # Generated by Django 2.1.3 on 2018-11-07 15:50
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.1.3 on 2018-11-07 17:32 # Generated by Django 2.1.3 on 2018-11-07 17:32
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.1.3 on 2018-12-03 14:21 # Generated by Django 2.1.3 on 2018-12-03 14:21
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 2.1.5 on 2019-02-18 16:02 # Generated by Django 2.1.5 on 2019-02-18 16:02
from django.db import migrations from django.db import migrations

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 3.0.3 on 2020-02-25 09:34 # Generated by Django 3.0.3 on 2020-02-25 09:34
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 3.1.7 on 2021-04-13 09:04 # Generated by Django 3.1.7 on 2021-04-13 09:04
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 3.2.3 on 2021-05-28 13:14 # Generated by Django 3.2.3 on 2021-05-28 13:14
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 5.0 on 2024-05-31 15:00 # Generated by Django 5.0 on 2024-05-31 15:00
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 5.1.5 on 2025-01-27 10:54 # Generated by Django 5.1.5 on 2025-01-27 10:54
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated by Django 5.1.5 on 2025-01-27 13:33 # Generated by Django 5.1.5 on 2025-01-27 13:33
from django.db import migrations, models from django.db import migrations, models

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Generated manually for performance optimization # Generated manually for performance optimization
from typing import Any, List, Tuple, Optional from typing import Any, List, Tuple, Optional

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Our models for ivatar.ivataraccount Our models for ivatar.ivataraccount
""" """
@@ -404,7 +403,7 @@ class ConfirmedEmail(BaseAccountModel):
logger.debug("Successfully cleaned up cached page: %s" % cache_key) logger.debug("Successfully cleaned up cached page: %s" % cache_key)
except Exception as exc: except Exception as exc:
logger.warning( logger.warning(
"Failed to clean up cached page %s: %s" % (cache_key, exc) "Failed to clean up cached page {}: {}".format(cache_key, exc)
) )
# Invalidate Bluesky avatar URL cache if bluesky_handle changed # Invalidate Bluesky avatar URL cache if bluesky_handle changed
@@ -455,9 +454,7 @@ class UnconfirmedEmail(BaseAccountModel):
+ self.user.username.encode("utf-8") # pylint: disable=no-member + self.user.username.encode("utf-8") # pylint: disable=no-member
) # pylint: disable=no-member ) # pylint: disable=no-member
self.verification_key = hash_object.hexdigest() self.verification_key = hash_object.hexdigest()
super(UnconfirmedEmail, self).save( super().save(force_insert, force_update, using, update_fields)
force_insert, force_update, using, update_fields
)
def send_confirmation_mail(self, url=SECURE_BASE_URL): def send_confirmation_mail(self, url=SECURE_BASE_URL):
""" """
@@ -602,7 +599,7 @@ class ConfirmedOpenId(BaseAccountModel):
logger.debug("Successfully cleaned up cached page: %s" % cache_key) logger.debug("Successfully cleaned up cached page: %s" % cache_key)
except Exception as exc: except Exception as exc:
logger.warning( logger.warning(
"Failed to clean up cached page %s: %s" % (cache_key, exc) "Failed to clean up cached page {}: {}".format(cache_key, exc)
) )
# Invalidate Bluesky avatar URL cache if bluesky_handle exists # Invalidate Bluesky avatar URL cache if bluesky_handle exists

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Reading libravatar export Reading libravatar export
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
from unittest import mock from unittest import mock
from django.test import TestCase from django.test import TestCase

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Test our views in ivatar.ivataraccount.views and ivatar.views Test our views in ivatar.ivataraccount.views and ivatar.views
""" """
@@ -53,9 +52,9 @@ class Tester(TestCase): # pylint: disable=too-many-public-methods
user = None user = None
username = random_string() username = random_string()
password = random_string() password = random_string()
email = "%s@%s.org" % (username, random_string()) email = "{}@{}.org".format(username, random_string())
# Dunno why random tld doesn't work, but I'm too lazy now to investigate # Dunno why random tld doesn't work, but I'm too lazy now to investigate
openid = "http://%s.%s.%s/" % (username, random_string(), "org") openid = "http://{}.{}.{}/".format(username, random_string(), "org")
first_name = random_string() first_name = random_string()
last_name = random_string() last_name = random_string()

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Test our views in ivatar.ivataraccount.views and ivatar.views Test our views in ivatar.ivataraccount.views and ivatar.views
""" """
@@ -37,9 +36,9 @@ class Tester(TestCase): # pylint: disable=too-many-public-methods
user = None user = None
username = random_string() username = random_string()
password = random_string() password = random_string()
email = "%s@%s.%s" % (username, random_string(), random_string(2)) email = "{}@{}.{}".format(username, random_string(), random_string(2))
# Dunno why random tld doesn't work, but I'm too lazy now to investigate # Dunno why random tld doesn't work, but I'm too lazy now to investigate
openid = "http://%s.%s.%s/" % (username, random_string(), "org") openid = "http://{}.{}.{}/".format(username, random_string(), "org")
first_name = random_string() first_name = random_string()
last_name = random_string() last_name = random_string()
bsky_test_account = "libravatar.org" bsky_test_account = "libravatar.org"

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
""" """
URLs for ivatar.ivataraccount URLs for ivatar.ivataraccount
""" """
from django.urls import path, re_path from django.urls import path, re_path
from django.contrib.auth.views import LogoutView from django.contrib.auth.views import LogoutView

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
View classes for ivatar/ivataraccount/ View classes for ivatar/ivataraccount/
""" """
@@ -140,7 +139,7 @@ class PasswordSetView(SuccessMessageMixin, FormView):
success_url = reverse_lazy("profile") success_url = reverse_lazy("profile")
def get_form_kwargs(self): def get_form_kwargs(self):
kwargs = super(PasswordSetView, self).get_form_kwargs() kwargs = super().get_form_kwargs()
kwargs["user"] = self.request.user kwargs["user"] = self.request.user
return kwargs return kwargs
@@ -712,7 +711,9 @@ class RemoveUnconfirmedOpenIDView(View):
) )
openid.delete() openid.delete()
messages.success(request, _("ID removed")) messages.success(request, _("ID removed"))
except self.model.DoesNotExist: # pragma: no cover pylint: disable=no-member,line-too-long except (
self.model.DoesNotExist
): # pragma: no cover pylint: disable=no-member,line-too-long
messages.error(request, _("ID does not exist")) messages.error(request, _("ID does not exist"))
return HttpResponseRedirect(reverse_lazy("profile")) return HttpResponseRedirect(reverse_lazy("profile"))
@@ -766,7 +767,9 @@ class RedirectOpenIDView(View):
unconfirmed = self.model.objects.get( # pylint: disable=no-member unconfirmed = self.model.objects.get( # pylint: disable=no-member
user=request.user, id=kwargs["openid_id"] user=request.user, id=kwargs["openid_id"]
) )
except self.model.DoesNotExist: # pragma: no cover pylint: disable=no-member,line-too-long except (
self.model.DoesNotExist
): # pragma: no cover pylint: disable=no-member,line-too-long
messages.error(request, _("ID does not exist")) messages.error(request, _("ID does not exist"))
return HttpResponseRedirect(reverse_lazy("profile")) return HttpResponseRedirect(reverse_lazy("profile"))
@@ -1321,7 +1324,7 @@ class ExportView(SuccessMessageMixin, TemplateView):
def xml_account(user): def xml_account(user):
escaped_username = saxutils.quoteattr(user.username) escaped_username = saxutils.quoteattr(user.username)
escaped_password = saxutils.quoteattr(user.password) escaped_password = saxutils.quoteattr(user.password)
return " <account username=%s password=%s/>\n" % ( return " <account username={} password={}/>\n".format(
escaped_username, escaped_username,
escaped_password, escaped_password,
) )
@@ -1387,8 +1390,8 @@ class ExportView(SuccessMessageMixin, TemplateView):
bytesobj.seek(0) bytesobj.seek(0)
response = HttpResponse(content_type="application/gzip") response = HttpResponse(content_type="application/gzip")
response[ response["Content-Disposition"] = (
"Content-Disposition" f'attachment; filename="libravatar-export_{user.username}.xml.gz"'
] = f'attachment; filename="libravatar-export_{user.username}.xml.gz"' )
response.write(bytesobj.read()) response.write(bytesobj.read())
return response return response

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Middleware classes Middleware classes
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
OpenTelemetry configuration for ivatar project. OpenTelemetry configuration for ivatar project.

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
OpenTelemetry middleware and custom instrumentation for ivatar. OpenTelemetry middleware and custom instrumentation for ivatar.
@@ -94,9 +93,9 @@ class OpenTelemetryMiddleware(MiddlewareMixin):
span.set_attributes( span.set_attributes(
{ {
"http.status_code": response.status_code, "http.status_code": response.status_code,
"http.response_size": len(response.content) "http.response_size": (
if hasattr(response, "content") len(response.content) if hasattr(response, "content") else 0
else 0, ),
"http.request.duration": duration, "http.request.duration": duration,
} }
) )

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Django settings for ivatar project. Django settings for ivatar project.
""" """

View File

@@ -260,7 +260,8 @@ th {
@font-face { @font-face {
font-family: "Glyphicons Halflings"; font-family: "Glyphicons Halflings";
src: url(../fonts/glyphicons-halflings-regular.eot); src: url(../fonts/glyphicons-halflings-regular.eot);
src: url(../fonts/glyphicons-halflings-regular.eot?#iefix) src:
url(../fonts/glyphicons-halflings-regular.eot?#iefix)
format("embedded-opentype"), format("embedded-opentype"),
url(../fonts/glyphicons-halflings-regular.woff2) format("woff2"), url(../fonts/glyphicons-halflings-regular.woff2) format("woff2"),
url(../fonts/glyphicons-halflings-regular.woff) format("woff"), url(../fonts/glyphicons-halflings-regular.woff) format("woff"),
@@ -2651,17 +2652,24 @@ output {
border-radius: 4px; border-radius: 4px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-webkit-transition: border-color ease-in-out 0.15s, -webkit-transition:
border-color ease-in-out 0.15s,
-webkit-box-shadow ease-in-out 0.15s; -webkit-box-shadow ease-in-out 0.15s;
-o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; -o-transition:
transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; border-color ease-in-out 0.15s,
box-shadow ease-in-out 0.15s;
transition:
border-color ease-in-out 0.15s,
box-shadow ease-in-out 0.15s;
} }
.form-control:focus { .form-control:focus {
border-color: #66afe9; border-color: #66afe9;
outline: 0; outline: 0;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), -webkit-box-shadow:
inset 0 1px 1px rgba(0, 0, 0, 0.075),
0 0 8px rgba(102, 175, 233, 0.6); 0 0 8px rgba(102, 175, 233, 0.6);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), box-shadow:
inset 0 1px 1px rgba(0, 0, 0, 0.075),
0 0 8px rgba(102, 175, 233, 0.6); 0 0 8px rgba(102, 175, 233, 0.6);
} }
.form-control::-moz-placeholder { .form-control::-moz-placeholder {
@@ -2923,8 +2931,12 @@ textarea.input-lg {
} }
.has-success .form-control:focus { .has-success .form-control:focus {
border-color: #2b542c; border-color: #2b542c;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; -webkit-box-shadow:
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; inset 0 1px 1px rgba(0, 0, 0, 0.075),
0 0 6px #67b168;
box-shadow:
inset 0 1px 1px rgba(0, 0, 0, 0.075),
0 0 6px #67b168;
} }
.has-success .input-group-addon { .has-success .input-group-addon {
color: #3c763d; color: #3c763d;
@@ -2953,8 +2965,12 @@ textarea.input-lg {
} }
.has-warning .form-control:focus { .has-warning .form-control:focus {
border-color: #66512c; border-color: #66512c;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; -webkit-box-shadow:
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; inset 0 1px 1px rgba(0, 0, 0, 0.075),
0 0 6px #c0a16b;
box-shadow:
inset 0 1px 1px rgba(0, 0, 0, 0.075),
0 0 6px #c0a16b;
} }
.has-warning .input-group-addon { .has-warning .input-group-addon {
color: #8a6d3b; color: #8a6d3b;
@@ -2983,8 +2999,12 @@ textarea.input-lg {
} }
.has-error .form-control:focus { .has-error .form-control:focus {
border-color: #843534; border-color: #843534;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; -webkit-box-shadow:
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; inset 0 1px 1px rgba(0, 0, 0, 0.075),
0 0 6px #ce8483;
box-shadow:
inset 0 1px 1px rgba(0, 0, 0, 0.075),
0 0 6px #ce8483;
} }
.has-error .input-group-addon { .has-error .input-group-addon {
color: #a94442; color: #a94442;
@@ -4470,9 +4490,11 @@ textarea.input-group-sm > .input-group-btn > .btn {
margin-left: -15px; margin-left: -15px;
border-top: 1px solid transparent; border-top: 1px solid transparent;
border-bottom: 1px solid transparent; border-bottom: 1px solid transparent;
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), -webkit-box-shadow:
inset 0 1px 0 rgba(255, 255, 255, 0.1),
0 1px 0 rgba(255, 255, 255, 0.1); 0 1px 0 rgba(255, 255, 255, 0.1);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), box-shadow:
inset 0 1px 0 rgba(255, 255, 255, 0.1),
0 1px 0 rgba(255, 255, 255, 0.1); 0 1px 0 rgba(255, 255, 255, 0.1);
} }
@media (min-width: 768px) { @media (min-width: 768px) {

View File

@@ -4,7 +4,9 @@
font-style: normal; font-style: normal;
font-weight: 300; font-weight: 300;
src: url("../fonts/lato-v15-latin-300.eot"); /* IE9 Compat Modes */ src: url("../fonts/lato-v15-latin-300.eot"); /* IE9 Compat Modes */
src: local("Lato Light"), local("Lato-Light"), src:
local("Lato Light"),
local("Lato-Light"),
url("../fonts/LatoLatin-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/LatoLatin-Light.eot?#iefix") format("embedded-opentype"),
/* IE6-IE8 */ url("../fonts/LatoLatin-Light.woff2") format("woff2"), /* IE6-IE8 */ url("../fonts/LatoLatin-Light.woff2") format("woff2"),
/* Super Modern Browsers */ url("../fonts/LatoLatin-Light.woff") /* Super Modern Browsers */ url("../fonts/LatoLatin-Light.woff")
@@ -19,7 +21,9 @@
font-style: normal; font-style: normal;
font-weight: 400; font-weight: 400;
src: url("../fonts/lato-v15-latin-regular.eot"); /* IE9 Compat Modes */ src: url("../fonts/lato-v15-latin-regular.eot"); /* IE9 Compat Modes */
src: local("Lato Regular"), local("Lato-Regular"), src:
local("Lato Regular"),
local("Lato-Regular"),
url("../fonts/LatoLatin-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/LatoLatin-Regular.eot?#iefix") format("embedded-opentype"),
/* IE6-IE8 */ url("../fonts/LatoLatin-Regular.woff2") format("woff2"), /* IE6-IE8 */ url("../fonts/LatoLatin-Regular.woff2") format("woff2"),
/* Super Modern Browsers */ url("../fonts/LatoLatin-Regular.woff") /* Super Modern Browsers */ url("../fonts/LatoLatin-Regular.woff")
@@ -35,7 +39,9 @@
font-style: normal; font-style: normal;
font-weight: 700; font-weight: 700;
src: url("../fonts/lato-v15-latin-700.eot"); /* IE9 Compat Modes */ src: url("../fonts/lato-v15-latin-700.eot"); /* IE9 Compat Modes */
src: local("Lato Bold"), local("Lato-Bold"), src:
local("Lato Bold"),
local("Lato-Bold"),
url("../fonts/LatoLatin-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/LatoLatin-Bold.eot?#iefix") format("embedded-opentype"),
/* IE6-IE8 */ url("../fonts/LatoLatin-Bold.woff2") format("woff2"), /* IE6-IE8 */ url("../fonts/LatoLatin-Bold.woff2") format("woff2"),
/* Super Modern Browsers */ url("../fonts/LatoLatin-Bold.woff") /* Super Modern Browsers */ url("../fonts/LatoLatin-Bold.woff")
@@ -50,7 +56,9 @@
font-style: normal; font-style: normal;
font-weight: 400; font-weight: 400;
src: url("../fonts/open-sans-v16-latin-regular.eot"); /* IE9 Compat Modes */ src: url("../fonts/open-sans-v16-latin-regular.eot"); /* IE9 Compat Modes */
src: local("Open Sans Regular"), local("OpenSans-Regular"), src:
local("Open Sans Regular"),
local("OpenSans-Regular"),
url("../fonts/open-sans-v16-latin-regular.eot?#iefix") url("../fonts/open-sans-v16-latin-regular.eot?#iefix")
format("embedded-opentype"), format("embedded-opentype"),
/* IE6-IE8 */ url("../fonts/open-sans-v16-latin-regular.woff2") /* IE6-IE8 */ url("../fonts/open-sans-v16-latin-regular.woff2")

View File

@@ -199,8 +199,8 @@ if ("undefined" == typeof jQuery)
"number" == typeof b "number" == typeof b
? e.to(b) ? e.to(b)
: g : g
? e[g]() ? e[g]()
: f.interval && e.pause().cycle(); : f.interval && e.pause().cycle();
}); });
} }
var c = function (b, c) { var c = function (b, c) {
@@ -278,8 +278,8 @@ if ("undefined" == typeof jQuery)
b.to(a); b.to(a);
}) })
: c == a : c == a
? this.pause().cycle() ? this.pause().cycle()
: this.slide(a > c ? "next" : "prev", this.$items.eq(a)); : this.slide(a > c ? "next" : "prev", this.$items.eq(a));
}), }),
(c.prototype.pause = function (b) { (c.prototype.pause = function (b) {
return ( return (
@@ -1106,12 +1106,12 @@ if ("undefined" == typeof jQuery)
"bottom" == h && k.bottom + m > o.bottom "bottom" == h && k.bottom + m > o.bottom
? "top" ? "top"
: "top" == h && k.top - m < o.top : "top" == h && k.top - m < o.top
? "bottom" ? "bottom"
: "right" == h && k.right + l > o.width : "right" == h && k.right + l > o.width
? "left" ? "left"
: "left" == h && k.left - l < o.left : "left" == h && k.left - l < o.left
? "right" ? "right"
: h), : h),
f.removeClass(n).addClass(h); f.removeClass(n).addClass(h);
} }
var p = this.getCalculatedOffset(h, k, l, m); var p = this.getCalculatedOffset(h, k, l, m);
@@ -1233,10 +1233,10 @@ if ("undefined" == typeof jQuery)
return "bottom" == a return "bottom" == a
? { top: b.top + b.height, left: b.left + b.width / 2 - c / 2 } ? { top: b.top + b.height, left: b.left + b.width / 2 - c / 2 }
: "top" == a : "top" == a
? { top: b.top - d, left: b.left + b.width / 2 - c / 2 } ? { top: b.top - d, left: b.left + b.width / 2 - c / 2 }
: "left" == a : "left" == a
? { top: b.top + b.height / 2 - d / 2, left: b.left - c } ? { top: b.top + b.height / 2 - d / 2, left: b.left - c }
: { top: b.top + b.height / 2 - d / 2, left: b.left + b.width }; : { top: b.top + b.height / 2 - d / 2, left: b.left + b.width };
}), }),
(c.prototype.getViewportAdjustedDelta = function (a, b, c, d) { (c.prototype.getViewportAdjustedDelta = function (a, b, c, d) {
var e = { top: 0, left: 0 }; var e = { top: 0, left: 0 };
@@ -1308,8 +1308,8 @@ if ("undefined" == typeof jQuery)
? ((c.inState.click = !c.inState.click), ? ((c.inState.click = !c.inState.click),
c.isInStateTrue() ? c.enter(c) : c.leave(c)) c.isInStateTrue() ? c.enter(c) : c.leave(c))
: c.tip().hasClass("in") : c.tip().hasClass("in")
? c.leave(c) ? c.leave(c)
: c.enter(c); : c.enter(c);
}), }),
(c.prototype.destroy = function () { (c.prototype.destroy = function () {
var a = this; var a = this;

View File

@@ -11,9 +11,10 @@
"object" == typeof exports && "undefined" != typeof module "object" == typeof exports && "undefined" != typeof module
? (module.exports = e()) ? (module.exports = e())
: "function" == typeof define && define.amd : "function" == typeof define && define.amd
? define(e) ? define(e)
: ((t = "undefined" != typeof globalThis ? globalThis : t || self).Cropper = : ((t =
e()); "undefined" != typeof globalThis ? globalThis : t || self).Cropper =
e());
})(this, function () { })(this, function () {
"use strict"; "use strict";
function C(e, t) { function C(e, t) {
@@ -48,10 +49,14 @@
: (e[t] = i); : (e[t] = i);
}) })
: Object.getOwnPropertyDescriptors : Object.getOwnPropertyDescriptors
? Object.defineProperties(a, Object.getOwnPropertyDescriptors(n)) ? Object.defineProperties(a, Object.getOwnPropertyDescriptors(n))
: C(Object(n)).forEach(function (t) { : C(Object(n)).forEach(function (t) {
Object.defineProperty(a, t, Object.getOwnPropertyDescriptor(n, t)); Object.defineProperty(
}); a,
t,
Object.getOwnPropertyDescriptor(n, t),
);
});
} }
return a; return a;
} }
@@ -107,17 +112,17 @@
return "string" == typeof t return "string" == typeof t
? a(t, e) ? a(t, e)
: "Map" === : "Map" ===
(i = (i =
"Object" === "Object" ===
(i = Object.prototype.toString.call(t).slice(8, -1)) && (i = Object.prototype.toString.call(t).slice(8, -1)) &&
t.constructor t.constructor
? t.constructor.name ? t.constructor.name
: i) || "Set" === i : i) || "Set" === i
? Array.from(t) ? Array.from(t)
: "Arguments" === i || : "Arguments" === i ||
/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i) /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)
? a(t, e) ? a(t, e)
: void 0; : void 0;
})(t) || })(t) ||
(function () { (function () {
throw new TypeError( throw new TypeError(
@@ -304,10 +309,10 @@
v(t, e); v(t, e);
}) })
: t.classList : t.classList
? t.classList.add(e) ? t.classList.add(e)
: (i = t.className.trim()) : (i = t.className.trim())
? i.indexOf(e) < 0 && (t.className = "".concat(i, " ").concat(e)) ? i.indexOf(e) < 0 && (t.className = "".concat(i, " ").concat(e))
: (t.className = e)); : (t.className = e));
} }
function X(t, e) { function X(t, e) {
e && e &&
@@ -316,9 +321,9 @@
X(t, e); X(t, e);
}) })
: t.classList : t.classList
? t.classList.remove(e) ? t.classList.remove(e)
: 0 <= t.className.indexOf(e) && : 0 <= t.className.indexOf(e) &&
(t.className = t.className.replace(e, ""))); (t.className = t.className.replace(e, "")));
} }
function r(t, e, i) { function r(t, e, i) {
e && e &&
@@ -336,15 +341,15 @@
return o(t[e]) return o(t[e])
? t[e] ? t[e]
: t.dataset : t.dataset
? t.dataset[e] ? t.dataset[e]
: t.getAttribute("data-".concat(Dt(e))); : t.getAttribute("data-".concat(Dt(e)));
} }
function w(t, e, i) { function w(t, e, i) {
o(i) o(i)
? (t[e] = i) ? (t[e] = i)
: t.dataset : t.dataset
? (t.dataset[e] = i) ? (t.dataset[e] = i)
: t.setAttribute("data-".concat(Dt(e)), i); : t.setAttribute("data-".concat(Dt(e)), i);
} }
var kt, var kt,
Ot, Ot,
@@ -478,8 +483,8 @@
? (n = t / a) ? (n = t / a)
: (t = n * a)) : (t = n * a))
: o : o
? (n = t / a) ? (n = t / a)
: h && (t = n * a), : h && (t = n * a),
{ width: t, height: n } { width: t, height: n }
); );
} }
@@ -572,8 +577,8 @@
? (o = t.height * e) ? (o = t.height * e)
: (h = t.width / e) : (h = t.width / e)
: 3 === i : 3 === i
? (h = t.width / e) ? (h = t.width / e)
: (o = t.height * e), : (o = t.height * e),
{ {
aspectRatio: e, aspectRatio: e,
naturalWidth: n, naturalWidth: n,
@@ -611,11 +616,11 @@
(t (t
? (t = Math.max(t, s ? o.width : 0)) ? (t = Math.max(t, s ? o.width : 0))
: i : i
? (i = Math.max(i, s ? o.height : 0)) ? (i = Math.max(i, s ? o.height : 0))
: s && : s &&
((t = o.width) < (i = o.height) * r ((t = o.width) < (i = o.height) * r
? (t = i * r) ? (t = i * r)
: (i = t / r))), : (i = t / r))),
(t = (r = R({ aspectRatio: r, width: t, height: i })).width), (t = (r = R({ aspectRatio: r, width: t, height: i })).width),
(i = r.height), (i = r.height),
(n.minWidth = t), (n.minWidth = t),
@@ -770,8 +775,8 @@
? (n = t / c) ? (n = t / c)
: (t = n * c) : (t = n * c)
: t : t
? (n = t / c) ? (n = t / c)
: n && (t = n * c), : n && (t = n * c),
i < a * c ? (a = i / c) : (i = a * c)), i < a * c ? (a = i / c) : (i = a * c)),
(r.minWidth = Math.min(t, i)), (r.minWidth = Math.min(t, i)),
(r.minHeight = Math.min(n, a)), (r.minHeight = Math.min(n, a)),
@@ -1011,8 +1016,8 @@
t.deltaY t.deltaY
? (a = 0 < t.deltaY ? 1 : -1) ? (a = 0 < t.deltaY ? 1 : -1)
: t.wheelDelta : t.wheelDelta
? (a = -t.wheelDelta / 120) ? (a = -t.wheelDelta / 120)
: t.detail && (a = 0 < t.detail ? 1 : -1), : t.detail && (a = 0 < t.detail ? 1 : -1),
this.zoom(-a * i, t)); this.zoom(-a * i, t));
}, },
cropStart: function (t) { cropStart: function (t) {
@@ -1176,8 +1181,8 @@
u < 0 && g < 0 u < 0 && g < 0
? ((d = N), (m -= g = -g), (p -= u = -u)) ? ((d = N), (m -= g = -g), (p -= u = -u))
: u < 0 : u < 0
? ((d = W), (p -= u = -u)) ? ((d = W), (p -= u = -u))
: g < 0 && ((d = H), (m -= g = -g)); : g < 0 && ((d = H), (m -= g = -g));
break; break;
case W: case W:
if (l) { if (l) {
@@ -1196,8 +1201,8 @@
u < 0 && g < 0 u < 0 && g < 0
? ((d = H), (m -= g = -g), (p -= u = -u)) ? ((d = H), (m -= g = -g), (p -= u = -u))
: u < 0 : u < 0
? ((d = E), (p -= u = -u)) ? ((d = E), (p -= u = -u))
: g < 0 && ((d = N), (m -= g = -g)); : g < 0 && ((d = N), (m -= g = -g));
break; break;
case N: case N:
if (l) { if (l) {
@@ -1216,8 +1221,8 @@
u < 0 && g < 0 u < 0 && g < 0
? ((d = E), (m -= g = -g), (p -= u = -u)) ? ((d = E), (m -= g = -g), (p -= u = -u))
: u < 0 : u < 0
? ((d = H), (p -= u = -u)) ? ((d = H), (p -= u = -u))
: g < 0 && ((d = W), (m -= g = -g)); : g < 0 && ((d = W), (m -= g = -g));
break; break;
case H: case H:
if (l) { if (l) {
@@ -1236,8 +1241,8 @@
u < 0 && g < 0 u < 0 && g < 0
? ((d = W), (m -= g = -g), (p -= u = -u)) ? ((d = W), (m -= g = -g), (p -= u = -u))
: u < 0 : u < 0
? ((d = N), (p -= u = -u)) ? ((d = N), (p -= u = -u))
: g < 0 && ((d = E), (m -= g = -g)); : g < 0 && ((d = E), (m -= g = -g));
break; break;
case q: case q:
this.move(D.x, D.y), (M = !1); this.move(D.x, D.y), (M = !1);
@@ -1458,9 +1463,9 @@
(r.left -= (h - s) * ((t.pageX - d.left - r.left) / s)), (r.left -= (h - s) * ((t.pageX - d.left - r.left) / s)),
(r.top -= (l - c) * ((t.pageY - d.top - r.top) / c))) (r.top -= (l - c) * ((t.pageY - d.top - r.top) / c)))
: u(e) && p(e.x) && p(e.y) : u(e) && p(e.x) && p(e.y)
? ((r.left -= (h - s) * ((e.x - r.left) / s)), ? ((r.left -= (h - s) * ((e.x - r.left) / s)),
(r.top -= (l - c) * ((e.y - r.top) / c))) (r.top -= (l - c) * ((e.y - r.top) / c)))
: ((r.left -= (h - s) / 2), (r.top -= (l - c) / 2)), : ((r.left -= (h - s) / 2), (r.top -= (l - c) / 2)),
(r.width = h), (r.width = h),
(r.height = l), (r.height = l),
this.renderCanvas(!0); this.renderCanvas(!0);
@@ -1777,13 +1782,13 @@
(v = e) <= -a || g < v (v = e) <= -a || g < v
? (C = x = b = v = 0) ? (C = x = b = v = 0)
: v <= 0 : v <= 0
? ((x = -v), (v = 0), (C = b = Math.min(g, a + v))) ? ((x = -v), (v = 0), (C = b = Math.min(g, a + v)))
: v <= g && ((x = 0), (C = b = Math.min(a, g - v))), : v <= g && ((x = 0), (C = b = Math.min(a, g - v))),
b <= 0 || w <= -n || f < w b <= 0 || w <= -n || f < w
? (D = M = y = w = 0) ? (D = M = y = w = 0)
: w <= 0 : w <= 0
? ((M = -w), (w = 0), (D = y = Math.min(f, n + w))) ? ((M = -w), (w = 0), (D = y = Math.min(f, n + w)))
: w <= f && ((M = 0), (D = y = Math.min(n, f - w))), : w <= f && ((M = 0), (D = y = Math.min(n, f - w))),
(B = [v, w, b, y]), (B = [v, w, b, y]),
0 < C && 0 < D && B.push(x * (k = c / a), M * k, C * k, D * k), 0 < C && 0 < D && B.push(x * (k = c / a), M * k, C * k, D * k),
p.drawImage.apply( p.drawImage.apply(
@@ -2151,12 +2156,12 @@
this.ready this.ready
? (this.unbuild(), (this.ready = !1), (this.cropped = !1)) ? (this.unbuild(), (this.ready = !1), (this.cropped = !1))
: this.sizing : this.sizing
? ((this.sizingImage.onload = null), ? ((this.sizingImage.onload = null),
(this.sizing = !1), (this.sizing = !1),
(this.sized = !1)) (this.sized = !1))
: this.reloading : this.reloading
? ((this.xhr.onabort = null), this.xhr.abort()) ? ((this.xhr.onabort = null), this.xhr.abort())
: this.image && this.stop(); : this.image && this.stop();
}, },
}, },
]) && A(t.prototype, e), ]) && A(t.prototype, e),

View File

@@ -115,13 +115,13 @@
return options.disabled return options.disabled
? !1 ? !1
: "move" !== ord || options.allowMove : "move" !== ord || options.allowMove
? ((docOffset = getPos($img)), ? ((docOffset = getPos($img)),
(btndown = !0), (btndown = !0),
startDragMode(ord, mouseAbs(e)), startDragMode(ord, mouseAbs(e)),
e.stopPropagation(), e.stopPropagation(),
e.preventDefault(), e.preventDefault(),
!1) !1)
: !1; : !1;
}; };
} }
function presize($obj, w, h) { function presize($obj, w, h) {
@@ -463,13 +463,13 @@
return options.disabled return options.disabled
? !1 ? !1
: "move" !== ord || options.allowMove : "move" !== ord || options.allowMove
? ((docOffset = getPos($img)), ? ((docOffset = getPos($img)),
(btndown = !0), (btndown = !0),
startDragMode(ord, mouseAbs(Touch.cfilter(e)), !0), startDragMode(ord, mouseAbs(Touch.cfilter(e)), !0),
e.stopPropagation(), e.stopPropagation(),
e.preventDefault(), e.preventDefault(),
!1) !1)
: !1; : !1;
}; };
}, },
newSelection: function (e) { newSelection: function (e) {

View File

@@ -56,8 +56,8 @@
return null == e return null == e
? e + "" ? e + ""
: "object" == typeof e || "function" == typeof e : "object" == typeof e || "function" == typeof e
? n[i.call(e)] || "object" ? n[i.call(e)] || "object"
: typeof e; : typeof e;
} }
var t = "3.7.1", var t = "3.7.1",
l = /HTML$/i, l = /HTML$/i,
@@ -90,8 +90,8 @@
return null == e return null == e
? ae.call(this) ? ae.call(this)
: e < 0 : e < 0
? this[e + this.length] ? this[e + this.length]
: this[e]; : this[e];
}, },
pushStack: function (e) { pushStack: function (e) {
var t = ce.merge(this.constructor(), e); var t = ce.merge(this.constructor(), e);
@@ -172,8 +172,8 @@
i && !Array.isArray(n) i && !Array.isArray(n)
? [] ? []
: i || ce.isPlainObject(n) : i || ce.isPlainObject(n)
? n ? n
: {}), : {}),
(i = !1), (i = !1),
(a[t] = ce.extend(l, o, r))) (a[t] = ce.extend(l, o, r)))
: void 0 !== r && (a[t] = r)); : void 0 !== r && (a[t] = r));
@@ -222,10 +222,10 @@
return 1 === i || 11 === i return 1 === i || 11 === i
? e.textContent ? e.textContent
: 9 === i : 9 === i
? e.documentElement.textContent ? e.documentElement.textContent
: 3 === i || 4 === i : 3 === i || 4 === i
? e.nodeValue ? e.nodeValue
: n; : n;
}, },
makeArray: function (e, t) { makeArray: function (e, t) {
var n = t || []; var n = t || [];
@@ -666,13 +666,13 @@
? e === T || (e.ownerDocument == ye && I.contains(ye, e)) ? e === T || (e.ownerDocument == ye && I.contains(ye, e))
? -1 ? -1
: t === T || (t.ownerDocument == ye && I.contains(ye, t)) : t === T || (t.ownerDocument == ye && I.contains(ye, t))
? 1 ? 1
: o : o
? se.call(o, e) - se.call(o, t) ? se.call(o, e) - se.call(o, t)
: 0 : 0
: 4 & n : 4 & n
? -1 ? -1
: 1) : 1)
); );
})), })),
T T
@@ -813,17 +813,19 @@
"=" === r "=" === r
? t === i ? t === i
: "!=" === r : "!=" === r
? t !== i ? t !== i
: "^=" === r : "^=" === r
? i && 0 === t.indexOf(i) ? i && 0 === t.indexOf(i)
: "*=" === r : "*=" === r
? i && -1 < t.indexOf(i) ? i && -1 < t.indexOf(i)
: "$=" === r : "$=" === r
? i && t.slice(-i.length) === i ? i && t.slice(-i.length) === i
: "~=" === r : "~=" === r
? -1 < (" " + t.replace(v, " ") + " ").indexOf(i) ? -1 <
: "|=" === r && (" " + t.replace(v, " ") + " ").indexOf(i)
(t === i || t.slice(0, i.length + 1) === i + "-")); : "|=" === r &&
(t === i ||
t.slice(0, i.length + 1) === i + "-"));
}; };
}, },
CHILD: function (d, e, t, h, g) { CHILD: function (d, e, t, h, g) {
@@ -894,18 +896,18 @@
return a[S] return a[S]
? a(o) ? a(o)
: 1 < a.length : 1 < a.length
? ((t = [e, e, "", o]), ? ((t = [e, e, "", o]),
b.setFilters.hasOwnProperty(e.toLowerCase()) b.setFilters.hasOwnProperty(e.toLowerCase())
? F(function (e, t) { ? F(function (e, t) {
var n, var n,
r = a(e, o), r = a(e, o),
i = r.length; i = r.length;
while (i--) e[(n = se.call(e, r[i]))] = !(t[n] = r[i]); while (i--) e[(n = se.call(e, r[i]))] = !(t[n] = r[i]);
}) })
: function (e) { : function (e) {
return a(e, 0, t); return a(e, 0, t);
}) })
: a; : a;
}, },
}, },
pseudos: { pseudos: {
@@ -1372,14 +1374,14 @@
return !!n.call(e, t, e) !== r; return !!n.call(e, t, e) !== r;
}) })
: n.nodeType : n.nodeType
? ce.grep(e, function (e) { ? ce.grep(e, function (e) {
return (e === n) !== r; return (e === n) !== r;
}) })
: "string" != typeof n : "string" != typeof n
? ce.grep(e, function (e) { ? ce.grep(e, function (e) {
return -1 < se.call(n, e) !== r; return -1 < se.call(n, e) !== r;
}) })
: ce.filter(n, e, r); : ce.filter(n, e, r);
} }
(ce.filter = function (e, t, n) { (ce.filter = function (e, t, n) {
var r = t[0]; var r = t[0];
@@ -1459,10 +1461,10 @@
return e.nodeType return e.nodeType
? ((this[0] = e), (this.length = 1), this) ? ((this[0] = e), (this.length = 1), this)
: v(e) : v(e)
? void 0 !== n.ready ? void 0 !== n.ready
? n.ready(e) ? n.ready(e)
: e(ce) : e(ce)
: ce.makeArray(e, this); : ce.makeArray(e, this);
}).prototype = ce.fn), }).prototype = ce.fn),
(k = ce(C)); (k = ce(C));
var E = /^(?:parents|prev(?:Until|All))/, var E = /^(?:parents|prev(?:Until|All))/,
@@ -1505,8 +1507,8 @@
? se.call(ce(e), this[0]) ? se.call(ce(e), this[0])
: se.call(this, e.jquery ? e[0] : e) : se.call(this, e.jquery ? e[0] : e)
: this[0] && this[0].parentNode : this[0] && this[0].parentNode
? this.first().prevAll().length ? this.first().prevAll().length
: -1; : -1;
}, },
add: function (e, t) { add: function (e, t) {
return this.pushStack(ce.uniqueSort(ce.merge(this.get(), ce(e, t)))); return this.pushStack(ce.uniqueSort(ce.merge(this.get(), ce(e, t))));
@@ -1584,8 +1586,8 @@
e && v((i = e.promise)) e && v((i = e.promise))
? i.call(e).done(t).fail(n) ? i.call(e).done(t).fail(n)
: e && v((i = e.then)) : e && v((i = e.then))
? i.call(e, t, n) ? i.call(e, t, n)
: t.apply(void 0, [e].slice(r)); : t.apply(void 0, [e].slice(r));
} catch (e) { } catch (e) {
n.apply(void 0, [e]); n.apply(void 0, [e]);
} }
@@ -1974,8 +1976,8 @@
n = (t = Array.isArray(t) n = (t = Array.isArray(t)
? t.map(F) ? t.map(F)
: (t = F(t)) in r : (t = F(t)) in r
? [t] ? [t]
: t.match(D) || []).length; : t.match(D) || []).length;
while (n--) delete r[t[n]]; while (n--) delete r[t[n]];
} }
(void 0 === t || ce.isEmptyObject(r)) && (void 0 === t || ce.isEmptyObject(r)) &&
@@ -2005,10 +2007,10 @@
("null" === i ("null" === i
? null ? null
: i === +i + "" : i === +i + ""
? +i ? +i
: X.test(i) : X.test(i)
? JSON.parse(i) ? JSON.parse(i)
: i)); : i));
} catch (e) {} } catch (e) {}
z.set(e, t, n); z.set(e, t, n);
} else n = void 0; } else n = void 0;
@@ -2064,8 +2066,8 @@
return void 0 !== (t = z.get(o, n)) return void 0 !== (t = z.get(o, n))
? t ? t
: void 0 !== (t = V(o, n)) : void 0 !== (t = V(o, n))
? t ? t
: void 0; : void 0;
this.each(function () { this.each(function () {
z.set(this, n, e); z.set(this, n, e);
}); });
@@ -2136,12 +2138,12 @@
arguments.length < e arguments.length < e
? ce.queue(this[0], t) ? ce.queue(this[0], t)
: void 0 === n : void 0 === n
? this ? this
: this.each(function () { : this.each(function () {
var e = ce.queue(this, t, n); var e = ce.queue(this, t, n);
ce._queueHooks(this, t), ce._queueHooks(this, t),
"fx" === t && "inprogress" !== e[0] && ce.dequeue(this, t); "fx" === t && "inprogress" !== e[0] && ce.dequeue(this, t);
}) })
); );
}, },
dequeue: function (e) { dequeue: function (e) {
@@ -2293,8 +2295,8 @@
"undefined" != typeof e.getElementsByTagName "undefined" != typeof e.getElementsByTagName
? e.getElementsByTagName(t || "*") ? e.getElementsByTagName(t || "*")
: "undefined" != typeof e.querySelectorAll : "undefined" != typeof e.querySelectorAll
? e.querySelectorAll(t || "*") ? e.querySelectorAll(t || "*")
: []), : []),
void 0 === t || (t && fe(e, t)) ? ce.merge([e], n) : n void 0 === t || (t && fe(e, t)) ? ce.merge([e], n) : n
); );
} }
@@ -3522,16 +3524,16 @@
(null != e.elem[e.prop] && null == e.elem.style[e.prop]) (null != e.elem[e.prop] && null == e.elem.style[e.prop])
? e.elem[e.prop] ? e.elem[e.prop]
: (t = ce.css(e.elem, e.prop, "")) && "auto" !== t : (t = ce.css(e.elem, e.prop, "")) && "auto" !== t
? t ? t
: 0; : 0;
}, },
set: function (e) { set: function (e) {
ce.fx.step[e.prop] ce.fx.step[e.prop]
? ce.fx.step[e.prop](e) ? ce.fx.step[e.prop](e)
: 1 !== e.elem.nodeType || : 1 !== e.elem.nodeType ||
(!ce.cssHooks[e.prop] && null == e.elem.style[Ze(e.prop)]) (!ce.cssHooks[e.prop] && null == e.elem.style[Ze(e.prop)])
? (e.elem[e.prop] = e.now) ? (e.elem[e.prop] = e.now)
: ce.style(e.elem, e.prop, e.now + e.unit); : ce.style(e.elem, e.prop, e.now + e.unit);
}, },
}, },
}).scrollTop = at.propHooks.scrollLeft = }).scrollTop = at.propHooks.scrollLeft =
@@ -3982,13 +3984,13 @@
? null === n ? null === n
? void ce.removeAttr(e, t) ? void ce.removeAttr(e, t)
: i && "set" in i && void 0 !== (r = i.set(e, n, t)) : i && "set" in i && void 0 !== (r = i.set(e, n, t))
? r ? r
: (e.setAttribute(t, n + ""), n) : (e.setAttribute(t, n + ""), n)
: i && "get" in i && null !== (r = i.get(e, t)) : i && "get" in i && null !== (r = i.get(e, t))
? r ? r
: null == (r = ce.find.attr(e, t)) : null == (r = ce.find.attr(e, t))
? void 0 ? void 0
: r); : r);
}, },
attrHooks: { attrHooks: {
type: { type: {
@@ -4063,8 +4065,8 @@
? r ? r
: (e[t] = n) : (e[t] = n)
: i && "get" in i && null !== (r = i.get(e, t)) : i && "get" in i && null !== (r = i.get(e, t))
? r ? r
: e[t] : e[t]
); );
}, },
propHooks: { propHooks: {
@@ -4074,8 +4076,8 @@
return t return t
? parseInt(t, 10) ? parseInt(t, 10)
: bt.test(e.nodeName) || (wt.test(e.nodeName) && e.href) : bt.test(e.nodeName) || (wt.test(e.nodeName) && e.href)
? 0 ? 0
: -1; : -1;
}, },
}, },
}, },
@@ -4117,16 +4119,17 @@
ce(this).addClass(t.call(this, e, Ct(this))); ce(this).addClass(t.call(this, e, Ct(this)));
}) })
: (e = kt(t)).length : (e = kt(t)).length
? this.each(function () { ? this.each(function () {
if ( if (
((r = Ct(this)), (n = 1 === this.nodeType && " " + Tt(r) + " ")) ((r = Ct(this)),
) { (n = 1 === this.nodeType && " " + Tt(r) + " "))
for (o = 0; o < e.length; o++) ) {
(i = e[o]), n.indexOf(" " + i + " ") < 0 && (n += i + " "); for (o = 0; o < e.length; o++)
(a = Tt(n)), r !== a && this.setAttribute("class", a); (i = e[o]), n.indexOf(" " + i + " ") < 0 && (n += i + " ");
} (a = Tt(n)), r !== a && this.setAttribute("class", a);
}) }
: this; })
: this;
}, },
removeClass: function (t) { removeClass: function (t) {
var e, n, r, i, o, a; var e, n, r, i, o, a;
@@ -4135,22 +4138,22 @@
ce(this).removeClass(t.call(this, e, Ct(this))); ce(this).removeClass(t.call(this, e, Ct(this)));
}) })
: arguments.length : arguments.length
? (e = kt(t)).length ? (e = kt(t)).length
? this.each(function () { ? this.each(function () {
if ( if (
((r = Ct(this)), ((r = Ct(this)),
(n = 1 === this.nodeType && " " + Tt(r) + " ")) (n = 1 === this.nodeType && " " + Tt(r) + " "))
) { ) {
for (o = 0; o < e.length; o++) { for (o = 0; o < e.length; o++) {
i = e[o]; i = e[o];
while (-1 < n.indexOf(" " + i + " ")) while (-1 < n.indexOf(" " + i + " "))
n = n.replace(" " + i + " ", " "); n = n.replace(" " + i + " ", " ");
}
(a = Tt(n)), r !== a && this.setAttribute("class", a);
} }
(a = Tt(n)), r !== a && this.setAttribute("class", a); })
} : this
}) : this.attr("class", "");
: this
: this.attr("class", "");
}, },
toggleClass: function (t, n) { toggleClass: function (t, n) {
var e, var e,
@@ -4164,23 +4167,24 @@
ce(this).toggleClass(t.call(this, e, Ct(this), n), n); ce(this).toggleClass(t.call(this, e, Ct(this), n), n);
}) })
: "boolean" == typeof n && s : "boolean" == typeof n && s
? n ? n
? this.addClass(t) ? this.addClass(t)
: this.removeClass(t) : this.removeClass(t)
: ((e = kt(t)), : ((e = kt(t)),
this.each(function () { this.each(function () {
if (s) if (s)
for (o = ce(this), i = 0; i < e.length; i++) for (o = ce(this), i = 0; i < e.length; i++)
(r = e[i]), o.hasClass(r) ? o.removeClass(r) : o.addClass(r); (r = e[i]),
else o.hasClass(r) ? o.removeClass(r) : o.addClass(r);
(void 0 !== t && "boolean" !== a) || else
((r = Ct(this)) && _.set(this, "__className__", r), (void 0 !== t && "boolean" !== a) ||
this.setAttribute && ((r = Ct(this)) && _.set(this, "__className__", r),
this.setAttribute( this.setAttribute &&
"class", this.setAttribute(
r || !1 === t ? "" : _.get(this, "__className__") || "", "class",
)); r || !1 === t ? "" : _.get(this, "__className__") || "",
})); ));
}));
}, },
hasClass: function (e) { hasClass: function (e) {
var t, var t,
@@ -4208,11 +4212,11 @@
(null == (t = i ? n.call(this, e, ce(this).val()) : n) (null == (t = i ? n.call(this, e, ce(this).val()) : n)
? (t = "") ? (t = "")
: "number" == typeof t : "number" == typeof t
? (t += "") ? (t += "")
: Array.isArray(t) && : Array.isArray(t) &&
(t = ce.map(t, function (e) { (t = ce.map(t, function (e) {
return null == e ? "" : e + ""; return null == e ? "" : e + "";
})), })),
((r = ((r =
ce.valHooks[this.type] || ce.valHooks[this.type] ||
ce.valHooks[this.nodeName.toLowerCase()]) && ce.valHooks[this.nodeName.toLowerCase()]) &&
@@ -4221,16 +4225,17 @@
(this.value = t)); (this.value = t));
})) }))
: t : t
? (r = ce.valHooks[t.type] || ce.valHooks[t.nodeName.toLowerCase()]) && ? (r =
"get" in r && ce.valHooks[t.type] || ce.valHooks[t.nodeName.toLowerCase()]) &&
void 0 !== (e = r.get(t, "value")) "get" in r &&
? e void 0 !== (e = r.get(t, "value"))
: "string" == typeof (e = t.value) ? e
? e.replace(St, "") : "string" == typeof (e = t.value)
: null == e ? e.replace(St, "")
? "" : null == e
: e ? ""
: void 0; : e
: void 0;
}, },
}), }),
ce.extend({ ce.extend({
@@ -4470,10 +4475,10 @@
return null == n return null == n
? null ? null
: Array.isArray(n) : Array.isArray(n)
? ce.map(n, function (e) { ? ce.map(n, function (e) {
return { name: t.name, value: e.replace(Lt, "\r\n") }; return { name: t.name, value: e.replace(Lt, "\r\n") };
}) })
: { name: t.name, value: n.replace(Lt, "\r\n") }; : { name: t.name, value: n.replace(Lt, "\r\n") };
}) })
.get(); .get();
}, },
@@ -4826,8 +4831,8 @@
204 === e || "HEAD" === v.type 204 === e || "HEAD" === v.type
? (l = "nocontent") ? (l = "nocontent")
: 304 === e : 304 === e
? (l = "notmodified") ? (l = "notmodified")
: ((l = s.state), (o = s.data), (i = !(a = s.error)))) : ((l = s.state), (o = s.data), (i = !(a = s.error))))
: ((a = l), (!e && l) || ((l = "error"), e < 0 && (e = 0))), : ((a = l), (!e && l) || ((l = "error"), e < 0 && (e = 0))),
(T.status = e), (T.status = e),
(T.statusText = (t || l) + ""), (T.statusText = (t || l) + ""),
@@ -4977,18 +4982,18 @@
"abort" === e "abort" === e
? r.abort() ? r.abort()
: "error" === e : "error" === e
? "number" != typeof r.status ? "number" != typeof r.status
? t(0, "error") ? t(0, "error")
: t(r.status, r.statusText) : t(r.status, r.statusText)
: t( : t(
Yt[r.status] || r.status, Yt[r.status] || r.status,
r.statusText, r.statusText,
"text" !== (r.responseType || "text") || "text" !== (r.responseType || "text") ||
"string" != typeof r.responseText "string" != typeof r.responseText
? { binary: r.response } ? { binary: r.response }
: { text: r.responseText }, : { text: r.responseText },
r.getAllResponseHeaders(), r.getAllResponseHeaders(),
)); ));
}; };
}), }),
(r.onload = o()), (r.onload = o()),
@@ -5290,17 +5295,17 @@
? e["inner" + a] ? e["inner" + a]
: e.document.documentElement["client" + a] : e.document.documentElement["client" + a]
: 9 === e.nodeType : 9 === e.nodeType
? ((r = e.documentElement), ? ((r = e.documentElement),
Math.max( Math.max(
e.body["scroll" + a], e.body["scroll" + a],
r["scroll" + a], r["scroll" + a],
e.body["offset" + a], e.body["offset" + a],
r["offset" + a], r["offset" + a],
r["client" + a], r["client" + a],
)) ))
: void 0 === n : void 0 === n
? ce.css(e, t, i) ? ce.css(e, t, i)
: ce.style(e, t, n, i); : ce.style(e, t, n, i);
}, },
s, s,
n ? e : void 0, n ? e : void 0,

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Test various other parts of ivatar/libravatar in order Test various other parts of ivatar/libravatar in order
to increase the overall test coverage. Test in here, didn't to increase the overall test coverage. Test in here, didn't

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Tests for file upload security enhancements Tests for file upload security enhancements
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Tests for OpenTelemetry integration in ivatar. Tests for OpenTelemetry integration in ivatar.

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
""" """
Test our views in ivatar.ivataraccount.views and ivatar.views Test our views in ivatar.ivataraccount.views and ivatar.views
""" """
# pylint: disable=too-many-lines # pylint: disable=too-many-lines
import os import os
import django import django
@@ -25,9 +25,9 @@ class Tester(TestCase): # pylint: disable=too-many-public-methods
user = None user = None
username = random_string() username = random_string()
password = random_string() password = random_string()
email = "%s@%s.%s" % (username, random_string(), random_string(2)) email = "{}@{}.{}".format(username, random_string(), random_string(2))
# Dunno why random tld doesn't work, but I'm too lazy now to investigate # Dunno why random tld doesn't work, but I'm too lazy now to investigate
openid = "http://%s.%s.%s/" % (username, random_string(), "org") openid = "http://{}.{}.{}/".format(username, random_string(), "org")
def login(self): def login(self):
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Test our utils from ivatar.utils Test our utils from ivatar.utils
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Test our views in ivatar.ivataraccount.views and ivatar.views Test our views in ivatar.ivataraccount.views and ivatar.views
""" """
@@ -31,9 +30,9 @@ class Tester(TestCase): # pylint: disable=too-many-public-methods
user = None user = None
username = random_string() username = random_string()
password = random_string() password = random_string()
email = "%s@%s.%s" % (username, random_string(), random_string(2)) email = "{}@{}.{}".format(username, random_string(), random_string(2))
# Dunno why random tld doesn't work, but I'm too lazy now to investigate # Dunno why random tld doesn't work, but I'm too lazy now to investigate
openid = "http://%s.%s.%s/" % (username, random_string(), "org") openid = "http://{}.{}.{}/".format(username, random_string(), "org")
def login(self): def login(self):
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Test our StatsView in ivatar.views Test our StatsView in ivatar.views
""" """

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
""" """
Unit tests for WSGI Unit tests for WSGI
""" """
import unittest import unittest
import os import os

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
""" """
Classes for our ivatar.tools.forms Classes for our ivatar.tools.forms
""" """
from django import forms from django import forms
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
from django.core.exceptions import ValidationError from django.core.exceptions import ValidationError

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
""" """
Test our views in ivatar.ivataraccount.views and ivatar.views Test our views in ivatar.ivataraccount.views and ivatar.views
""" """
# pylint: disable=too-many-lines # pylint: disable=too-many-lines
import os import os
import django import django
@@ -28,9 +28,9 @@ class Tester(TestCase): # pylint: disable=too-many-public-methods
user = None user = None
username = random_string() username = random_string()
password = random_string() password = random_string()
email = "%s@%s.%s" % (username, random_string(), random_string(2)) email = "{}@{}.{}".format(username, random_string(), random_string(2))
# Dunno why random tld doesn't work, but I'm too lazy now to investigate # Dunno why random tld doesn't work, but I'm too lazy now to investigate
openid = "http://%s.%s.%s/" % (username, random_string(), "org") openid = "http://{}.{}.{}/".format(username, random_string(), "org")
def login(self): def login(self):
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
ivatar/tools URL configuration ivatar/tools URL configuration
""" """

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
""" """
View classes for ivatar/tools/ View classes for ivatar/tools/
""" """
from socket import inet_ntop, AF_INET6 from socket import inet_ntop, AF_INET6
import hashlib import hashlib
import random import random

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
ivatar URL configuration ivatar URL configuration
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
Simple module providing reusable random_string function Simple module providing reusable random_string function
""" """

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
views under / views under /
""" """
@@ -762,9 +761,9 @@ class StatsView(TemplateView, JsonResponse):
) )
retval["photo_size_stats"] = { retval["photo_size_stats"] = {
"average_size_bytes": round(avg_size_bytes, 2) "average_size_bytes": (
if avg_size_bytes round(avg_size_bytes, 2) if avg_size_bytes else 0
else 0, ),
"average_size_kb": avg_size_kb, "average_size_kb": avg_size_kb,
"average_size_mb": avg_size_mb, "average_size_mb": avg_size_mb,
"total_photos_analyzed": photo_count, "total_photos_analyzed": photo_count,
@@ -839,7 +838,7 @@ def _get_git_info_from_files():
if not path.exists(head_file): if not path.exists(head_file):
return None return None
with open(head_file, "r") as f: with open(head_file) as f:
head_content = f.read().strip() head_content = f.read().strip()
# Parse HEAD content # Parse HEAD content
@@ -851,7 +850,7 @@ def _get_git_info_from_files():
# Read the commit hash from the ref # Read the commit hash from the ref
ref_file = path.join(git_dir, branch_ref) ref_file = path.join(git_dir, branch_ref)
if path.exists(ref_file): if path.exists(ref_file):
with open(ref_file, "r") as f: with open(ref_file) as f:
commit_hash = f.read().strip() commit_hash = f.read().strip()
else: else:
return None return None

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
""" """
WSGI config for ivatar project. WSGI config for ivatar project.

View File

@@ -1,5 +1,4 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
# -*- coding: utf-8 -*-
import urllib.request import urllib.request
import sys import sys

View File

@@ -1,5 +1,4 @@
#!/usr/bin/env python #!/usr/bin/env python
# -*- coding: utf-8 -*-
import os import os
import sys import sys

View File

@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
from setuptools import setup, find_packages from setuptools import setup, find_packages
setup( setup(