karrio-server-core 2025.5rc13__py3-none-any.whl → 2025.5rc15__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of karrio-server-core might be problematic. Click here for more details.
- karrio/server/core/serializers.py +6 -0
- karrio/server/iam/serializers.py +9 -0
- karrio/server/providers/migrations/0084_alter_servicelevel_currency.py +168 -0
- karrio/server/providers/models/__init__.py +1 -2
- karrio/server/providers/models/carrier.py +7 -2
- karrio/server/user/models.py +11 -12
- {karrio_server_core-2025.5rc13.dist-info → karrio_server_core-2025.5rc15.dist-info}/METADATA +1 -1
- {karrio_server_core-2025.5rc13.dist-info → karrio_server_core-2025.5rc15.dist-info}/RECORD +10 -53
- karrio/server/providers/extension/__init__.py +0 -1
- karrio/server/providers/extension/models/__init__.py +0 -1
- karrio/server/providers/extension/models/allied_express.py +0 -22
- karrio/server/providers/extension/models/allied_express_local.py +0 -22
- karrio/server/providers/extension/models/amazon_shipping.py +0 -27
- karrio/server/providers/extension/models/aramex.py +0 -25
- karrio/server/providers/extension/models/asendia_us.py +0 -21
- karrio/server/providers/extension/models/australiapost.py +0 -20
- karrio/server/providers/extension/models/boxknight.py +0 -19
- karrio/server/providers/extension/models/bpost.py +0 -21
- karrio/server/providers/extension/models/canadapost.py +0 -21
- karrio/server/providers/extension/models/canpar.py +0 -19
- karrio/server/providers/extension/models/chronopost.py +0 -22
- karrio/server/providers/extension/models/colissimo.py +0 -22
- karrio/server/providers/extension/models/dhl_express.py +0 -23
- karrio/server/providers/extension/models/dhl_parcel_de.py +0 -25
- karrio/server/providers/extension/models/dhl_poland.py +0 -22
- karrio/server/providers/extension/models/dhl_universal.py +0 -19
- karrio/server/providers/extension/models/dicom.py +0 -20
- karrio/server/providers/extension/models/dpd.py +0 -37
- karrio/server/providers/extension/models/dpdhl.py +0 -26
- karrio/server/providers/extension/models/easypost.py +0 -20
- karrio/server/providers/extension/models/eshipper.py +0 -21
- karrio/server/providers/extension/models/fedex.py +0 -25
- karrio/server/providers/extension/models/fedex_ws.py +0 -24
- karrio/server/providers/extension/models/freightcom.py +0 -21
- karrio/server/providers/extension/models/generic.py +0 -35
- karrio/server/providers/extension/models/geodis.py +0 -22
- karrio/server/providers/extension/models/hay_post.py +0 -22
- karrio/server/providers/extension/models/laposte.py +0 -19
- karrio/server/providers/extension/models/locate2u.py +0 -22
- karrio/server/providers/extension/models/nationex.py +0 -22
- karrio/server/providers/extension/models/purolator.py +0 -21
- karrio/server/providers/extension/models/roadie.py +0 -18
- karrio/server/providers/extension/models/royalmail.py +0 -19
- karrio/server/providers/extension/models/sendle.py +0 -22
- karrio/server/providers/extension/models/tge.py +0 -63
- karrio/server/providers/extension/models/tnt.py +0 -23
- karrio/server/providers/extension/models/ups.py +0 -23
- karrio/server/providers/extension/models/usps.py +0 -23
- karrio/server/providers/extension/models/usps_international.py +0 -23
- karrio/server/providers/extension/models/usps_wt.py +0 -24
- karrio/server/providers/extension/models/usps_wt_international.py +0 -24
- karrio/server/providers/extension/models/zoom2u.py +0 -23
- {karrio_server_core-2025.5rc13.dist-info → karrio_server_core-2025.5rc15.dist-info}/WHEEL +0 -0
- {karrio_server_core-2025.5rc13.dist-info → karrio_server_core-2025.5rc15.dist-info}/top_level.txt +0 -0
|
@@ -613,6 +613,12 @@ class Charge(serializers.Serializer):
|
|
|
613
613
|
allow_null=True,
|
|
614
614
|
help_text="The charge amount currency",
|
|
615
615
|
)
|
|
616
|
+
id = serializers.CharField(
|
|
617
|
+
required=False,
|
|
618
|
+
allow_blank=True,
|
|
619
|
+
allow_null=True,
|
|
620
|
+
help_text="A surcharge id",
|
|
621
|
+
)
|
|
616
622
|
|
|
617
623
|
|
|
618
624
|
@serializers.allow_model_id(
|
karrio/server/iam/serializers.py
CHANGED
|
@@ -20,6 +20,15 @@ PERMISSION_GROUPS = [(p.name, p.name) for p in list(PermissionGroup)]
|
|
|
20
20
|
ROLES_GROUPS: typing.Dict[str, typing.List[str]] = {
|
|
21
21
|
"owner": [
|
|
22
22
|
PermissionGroup.manage_org_owner.value,
|
|
23
|
+
PermissionGroup.manage_team.value,
|
|
24
|
+
PermissionGroup.manage_apps.value,
|
|
25
|
+
PermissionGroup.manage_carriers.value,
|
|
26
|
+
PermissionGroup.manage_webhooks.value,
|
|
27
|
+
PermissionGroup.manage_data.value,
|
|
28
|
+
PermissionGroup.manage_orders.value,
|
|
29
|
+
PermissionGroup.manage_pickups.value,
|
|
30
|
+
PermissionGroup.manage_trackers.value,
|
|
31
|
+
PermissionGroup.manage_shipments.value,
|
|
23
32
|
],
|
|
24
33
|
"admin": [
|
|
25
34
|
PermissionGroup.manage_team.value,
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
# Generated by Django 5.2.5 on 2025-08-19 19:09
|
|
2
|
+
|
|
3
|
+
from django.db import migrations, models
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class Migration(migrations.Migration):
|
|
7
|
+
|
|
8
|
+
dependencies = [
|
|
9
|
+
("providers", "0083_add_optimized_rate_sheet_structure"),
|
|
10
|
+
]
|
|
11
|
+
|
|
12
|
+
operations = [
|
|
13
|
+
migrations.AlterField(
|
|
14
|
+
model_name="servicelevel",
|
|
15
|
+
name="currency",
|
|
16
|
+
field=models.CharField(
|
|
17
|
+
blank=True,
|
|
18
|
+
choices=[
|
|
19
|
+
("EUR", "EUR"),
|
|
20
|
+
("AED", "AED"),
|
|
21
|
+
("USD", "USD"),
|
|
22
|
+
("XCD", "XCD"),
|
|
23
|
+
("AMD", "AMD"),
|
|
24
|
+
("ANG", "ANG"),
|
|
25
|
+
("AOA", "AOA"),
|
|
26
|
+
("ARS", "ARS"),
|
|
27
|
+
("AUD", "AUD"),
|
|
28
|
+
("AWG", "AWG"),
|
|
29
|
+
("AZN", "AZN"),
|
|
30
|
+
("BAM", "BAM"),
|
|
31
|
+
("BBD", "BBD"),
|
|
32
|
+
("BDT", "BDT"),
|
|
33
|
+
("XOF", "XOF"),
|
|
34
|
+
("BGN", "BGN"),
|
|
35
|
+
("BHD", "BHD"),
|
|
36
|
+
("BIF", "BIF"),
|
|
37
|
+
("BMD", "BMD"),
|
|
38
|
+
("BND", "BND"),
|
|
39
|
+
("BOB", "BOB"),
|
|
40
|
+
("BRL", "BRL"),
|
|
41
|
+
("BSD", "BSD"),
|
|
42
|
+
("BTN", "BTN"),
|
|
43
|
+
("BWP", "BWP"),
|
|
44
|
+
("BYN", "BYN"),
|
|
45
|
+
("BZD", "BZD"),
|
|
46
|
+
("CAD", "CAD"),
|
|
47
|
+
("CDF", "CDF"),
|
|
48
|
+
("XAF", "XAF"),
|
|
49
|
+
("CHF", "CHF"),
|
|
50
|
+
("NZD", "NZD"),
|
|
51
|
+
("CLP", "CLP"),
|
|
52
|
+
("CNY", "CNY"),
|
|
53
|
+
("COP", "COP"),
|
|
54
|
+
("CRC", "CRC"),
|
|
55
|
+
("CUC", "CUC"),
|
|
56
|
+
("CVE", "CVE"),
|
|
57
|
+
("CZK", "CZK"),
|
|
58
|
+
("DJF", "DJF"),
|
|
59
|
+
("DKK", "DKK"),
|
|
60
|
+
("DOP", "DOP"),
|
|
61
|
+
("DZD", "DZD"),
|
|
62
|
+
("EGP", "EGP"),
|
|
63
|
+
("ERN", "ERN"),
|
|
64
|
+
("ETB", "ETB"),
|
|
65
|
+
("FJD", "FJD"),
|
|
66
|
+
("GBP", "GBP"),
|
|
67
|
+
("GEL", "GEL"),
|
|
68
|
+
("GHS", "GHS"),
|
|
69
|
+
("GMD", "GMD"),
|
|
70
|
+
("GNF", "GNF"),
|
|
71
|
+
("GTQ", "GTQ"),
|
|
72
|
+
("GYD", "GYD"),
|
|
73
|
+
("HKD", "HKD"),
|
|
74
|
+
("HNL", "HNL"),
|
|
75
|
+
("HRK", "HRK"),
|
|
76
|
+
("HTG", "HTG"),
|
|
77
|
+
("HUF", "HUF"),
|
|
78
|
+
("IDR", "IDR"),
|
|
79
|
+
("ILS", "ILS"),
|
|
80
|
+
("INR", "INR"),
|
|
81
|
+
("IRR", "IRR"),
|
|
82
|
+
("ISK", "ISK"),
|
|
83
|
+
("JMD", "JMD"),
|
|
84
|
+
("JOD", "JOD"),
|
|
85
|
+
("JPY", "JPY"),
|
|
86
|
+
("KES", "KES"),
|
|
87
|
+
("KGS", "KGS"),
|
|
88
|
+
("KHR", "KHR"),
|
|
89
|
+
("KMF", "KMF"),
|
|
90
|
+
("KPW", "KPW"),
|
|
91
|
+
("KRW", "KRW"),
|
|
92
|
+
("KWD", "KWD"),
|
|
93
|
+
("KYD", "KYD"),
|
|
94
|
+
("KZT", "KZT"),
|
|
95
|
+
("LAK", "LAK"),
|
|
96
|
+
("LKR", "LKR"),
|
|
97
|
+
("LRD", "LRD"),
|
|
98
|
+
("LSL", "LSL"),
|
|
99
|
+
("LYD", "LYD"),
|
|
100
|
+
("MAD", "MAD"),
|
|
101
|
+
("MDL", "MDL"),
|
|
102
|
+
("MGA", "MGA"),
|
|
103
|
+
("MKD", "MKD"),
|
|
104
|
+
("MMK", "MMK"),
|
|
105
|
+
("MNT", "MNT"),
|
|
106
|
+
("MOP", "MOP"),
|
|
107
|
+
("MRO", "MRO"),
|
|
108
|
+
("MUR", "MUR"),
|
|
109
|
+
("MVR", "MVR"),
|
|
110
|
+
("MWK", "MWK"),
|
|
111
|
+
("MXN", "MXN"),
|
|
112
|
+
("MYR", "MYR"),
|
|
113
|
+
("MZN", "MZN"),
|
|
114
|
+
("NAD", "NAD"),
|
|
115
|
+
("XPF", "XPF"),
|
|
116
|
+
("NGN", "NGN"),
|
|
117
|
+
("NIO", "NIO"),
|
|
118
|
+
("NOK", "NOK"),
|
|
119
|
+
("NPR", "NPR"),
|
|
120
|
+
("OMR", "OMR"),
|
|
121
|
+
("PEN", "PEN"),
|
|
122
|
+
("PGK", "PGK"),
|
|
123
|
+
("PHP", "PHP"),
|
|
124
|
+
("PKR", "PKR"),
|
|
125
|
+
("PLN", "PLN"),
|
|
126
|
+
("PYG", "PYG"),
|
|
127
|
+
("QAR", "QAR"),
|
|
128
|
+
("RON", "RON"),
|
|
129
|
+
("RSD", "RSD"),
|
|
130
|
+
("RUB", "RUB"),
|
|
131
|
+
("RWF", "RWF"),
|
|
132
|
+
("SAR", "SAR"),
|
|
133
|
+
("SBD", "SBD"),
|
|
134
|
+
("SCR", "SCR"),
|
|
135
|
+
("SDG", "SDG"),
|
|
136
|
+
("SEK", "SEK"),
|
|
137
|
+
("SGD", "SGD"),
|
|
138
|
+
("SHP", "SHP"),
|
|
139
|
+
("SLL", "SLL"),
|
|
140
|
+
("SOS", "SOS"),
|
|
141
|
+
("SRD", "SRD"),
|
|
142
|
+
("SSP", "SSP"),
|
|
143
|
+
("STD", "STD"),
|
|
144
|
+
("SYP", "SYP"),
|
|
145
|
+
("SZL", "SZL"),
|
|
146
|
+
("THB", "THB"),
|
|
147
|
+
("TJS", "TJS"),
|
|
148
|
+
("TND", "TND"),
|
|
149
|
+
("TOP", "TOP"),
|
|
150
|
+
("TRY", "TRY"),
|
|
151
|
+
("TTD", "TTD"),
|
|
152
|
+
("TWD", "TWD"),
|
|
153
|
+
("TZS", "TZS"),
|
|
154
|
+
("UAH", "UAH"),
|
|
155
|
+
("UYU", "UYU"),
|
|
156
|
+
("UZS", "UZS"),
|
|
157
|
+
("VEF", "VEF"),
|
|
158
|
+
("VND", "VND"),
|
|
159
|
+
("VUV", "VUV"),
|
|
160
|
+
("WST", "WST"),
|
|
161
|
+
("YER", "YER"),
|
|
162
|
+
("ZAR", "ZAR"),
|
|
163
|
+
],
|
|
164
|
+
max_length=4,
|
|
165
|
+
null=True,
|
|
166
|
+
),
|
|
167
|
+
),
|
|
168
|
+
]
|
|
@@ -3,9 +3,8 @@ from karrio.server.providers.models.sheet import RateSheet
|
|
|
3
3
|
from karrio.server.providers.models.config import CarrierConfig
|
|
4
4
|
from karrio.server.providers.models.service import ServiceLevel
|
|
5
5
|
from karrio.server.providers.models.template import LabelTemplate
|
|
6
|
-
import karrio.server.providers.extension.models as extensions
|
|
7
|
-
from karrio.server.core.models.base import register_model
|
|
8
6
|
from karrio.server.providers.models.utils import has_rate_sheet
|
|
7
|
+
from karrio.server.core.models.base import register_model
|
|
9
8
|
from karrio.server.providers.models.carrier import (
|
|
10
9
|
Carrier,
|
|
11
10
|
COUNTRIES,
|
|
@@ -4,8 +4,8 @@ import django.conf as conf
|
|
|
4
4
|
import django.forms as forms
|
|
5
5
|
import django.db.models as models
|
|
6
6
|
|
|
7
|
-
import karrio.sdk as karrio
|
|
8
7
|
import karrio.lib as lib
|
|
8
|
+
import karrio.sdk as karrio
|
|
9
9
|
import karrio.core.units as units
|
|
10
10
|
import django.core.cache as caching
|
|
11
11
|
import karrio.api.gateway as gateway
|
|
@@ -148,10 +148,15 @@ class Carrier(core.OwnedEntity):
|
|
|
148
148
|
@property
|
|
149
149
|
def carrier_name(self):
|
|
150
150
|
return (
|
|
151
|
-
|
|
151
|
+
"generic"
|
|
152
152
|
if "custom_carrier_name" in self.credentials
|
|
153
153
|
else lib.failsafe(lambda: self.carrier_code) or "generic"
|
|
154
154
|
)
|
|
155
|
+
# return (
|
|
156
|
+
# self.credentials.get("custom_carrier_name")
|
|
157
|
+
# if "custom_carrier_name" in self.credentials
|
|
158
|
+
# else lib.failsafe(lambda: self.carrier_code) or "generic"
|
|
159
|
+
# )
|
|
155
160
|
|
|
156
161
|
@property
|
|
157
162
|
def display_name(self):
|
karrio/server/user/models.py
CHANGED
|
@@ -75,29 +75,28 @@ class User(auth.AbstractUser):
|
|
|
75
75
|
ctx = middleware.SessionContext.get_current_request()
|
|
76
76
|
_permissions = []
|
|
77
77
|
|
|
78
|
-
if conf.settings.MULTI_ORGANIZATIONS and ctx.org is not None:
|
|
78
|
+
if conf.settings.MULTI_ORGANIZATIONS and ctx is not None and hasattr(ctx, 'org') and ctx.org is not None:
|
|
79
79
|
org_user = ctx.org.organization_users.filter(user_id=self.pk)
|
|
80
|
-
|
|
81
|
-
|
|
80
|
+
if org_user.exists():
|
|
81
|
+
try:
|
|
82
|
+
context_permission = iam.ContextPermission.objects.get(
|
|
82
83
|
object_pk=org_user.first().pk,
|
|
83
84
|
content_type=ContentType.objects.get_for_model(org_user.first()),
|
|
84
85
|
)
|
|
85
|
-
|
|
86
|
-
.
|
|
87
|
-
|
|
88
|
-
else []
|
|
89
|
-
)
|
|
86
|
+
_permissions = list(context_permission.groups.all().values_list("name", flat=True))
|
|
87
|
+
except iam.ContextPermission.DoesNotExist:
|
|
88
|
+
pass
|
|
90
89
|
|
|
91
90
|
if not any(_permissions):
|
|
92
|
-
_permissions = self.groups.all().values_list("name", flat=True)
|
|
91
|
+
_permissions = list(self.groups.all().values_list("name", flat=True))
|
|
93
92
|
|
|
94
93
|
if not any(_permissions) and self.is_superuser:
|
|
95
|
-
return Group.objects.all().values_list("name", flat=True)
|
|
94
|
+
return list(Group.objects.all().values_list("name", flat=True))
|
|
96
95
|
|
|
97
96
|
if not any(_permissions) and self.is_staff:
|
|
98
|
-
return Group.objects.exclude(
|
|
97
|
+
return list(Group.objects.exclude(
|
|
99
98
|
name__in=["manage_system", "manage_team", "manage_org_owner"]
|
|
100
|
-
).values_list("name", flat=True)
|
|
99
|
+
).values_list("name", flat=True))
|
|
101
100
|
|
|
102
101
|
return _permissions
|
|
103
102
|
|
|
@@ -17,7 +17,7 @@ karrio/server/core/oauth_validators.py,sha256=5JxDkXB_HX4a4xJltZcFGukO7o2cUl9h2t
|
|
|
17
17
|
karrio/server/core/permissions.py,sha256=JY3_hTEnyDTWG-weAWPx8xMoaRZwpNL2HaSssBzjH7Y,1189
|
|
18
18
|
karrio/server/core/renderers.py,sha256=IUEUhvvrk_CeqnmnYQgWKHiH3uQhNc0eqDxyO9CuUS4,290
|
|
19
19
|
karrio/server/core/router.py,sha256=IBUR7rfBkdEHQzWxYOPcVSM8NBp3fte9G6Q5BVTUNNw,95
|
|
20
|
-
karrio/server/core/serializers.py,sha256=-
|
|
20
|
+
karrio/server/core/serializers.py,sha256=-FYHCuMk-XIFJjeyK6jDydytd3lcM0VmZszLZpVNcv0,60223
|
|
21
21
|
karrio/server/core/signals.py,sha256=thHh4K4uP3smWuy9kWavFfdOAttH9xN3og_j4lDWdKM,1742
|
|
22
22
|
karrio/server/core/tests.py,sha256=rmZoZfPBRoMO-U3HtDxeKofnzsfijYeDVQrnw5Mb_dU,3164
|
|
23
23
|
karrio/server/core/urls.py,sha256=JQrN6dI7A7c_M498EcDKdjDqlp_d64Ov-RS4HHmssRk,337
|
|
@@ -49,7 +49,7 @@ karrio/server/iam/admin.py,sha256=suMo4x8I3JBxAFBVIdE-5qnqZ6JAZV0FESABHOSc-vg,63
|
|
|
49
49
|
karrio/server/iam/apps.py,sha256=4nW48R38s1uHckn6smnDDyDBU39pTPMBUHjYFNmuRRo,620
|
|
50
50
|
karrio/server/iam/models.py,sha256=A2IbnKtoXq3ocXhYBCRUpqXz5dVoSOBPM04SbuQf7gA,1536
|
|
51
51
|
karrio/server/iam/permissions.py,sha256=7MmJmJt0o1SOjn0buBC6GR6hNYXERgA_4TWazi9klIE,4066
|
|
52
|
-
karrio/server/iam/serializers.py,sha256
|
|
52
|
+
karrio/server/iam/serializers.py,sha256=-m7vle-BMwHsrLmv3Tg01Y1RcXpV63j8W_PRiD8xops,1573
|
|
53
53
|
karrio/server/iam/signals.py,sha256=BaTIgdhDWUhvPrSUCyjHPL5J82JzG3rh9Ry_gK3TF1Q,603
|
|
54
54
|
karrio/server/iam/tests.py,sha256=mrbGGRNg5jwbTJtWWa7zSKdDyeB4vmgZCRc2nk6VY-g,60
|
|
55
55
|
karrio/server/iam/views.py,sha256=xc1IQHrsij7j33TUbo-_oewy3vs03pw_etpBWaMYJl0,63
|
|
@@ -62,50 +62,6 @@ karrio/server/providers/router.py,sha256=IBUR7rfBkdEHQzWxYOPcVSM8NBp3fte9G6Q5BVT
|
|
|
62
62
|
karrio/server/providers/signals.py,sha256=4WXTVhPuI1z5MgVdqzHz0FdKXGHN_gdP9Fc13QQbuh8,748
|
|
63
63
|
karrio/server/providers/tests.py,sha256=NLkDTvAQ0tDq6-kk3ZuipLpZXrk68pGCrWDeixiKQqQ,67
|
|
64
64
|
karrio/server/providers/urls.py,sha256=5whUqyPA9q5tfowr2Z-ilvfMwFUOEXkd_HuoFNs4a2E,278
|
|
65
|
-
karrio/server/providers/extension/__init__.py,sha256=iOEMwnlORWezdO8-2vxBIPSR37D7JGjluZ8f55vzxls,81
|
|
66
|
-
karrio/server/providers/extension/models/__init__.py,sha256=bpT73UG7mZL_JjEqMwbYx6q69jA8J5Jcoul1LcDokhA,81
|
|
67
|
-
karrio/server/providers/extension/models/allied_express.py,sha256=Fk0D4aDSOqyW5RPI4jcJ4CG6BTwDVr8r_oCzp28-uaQ,665
|
|
68
|
-
karrio/server/providers/extension/models/allied_express_local.py,sha256=j-XsbsujEG1dN92s5u9f9_Ql_K0hJRmDAtegpipBU2w,699
|
|
69
|
-
karrio/server/providers/extension/models/amazon_shipping.py,sha256=Y6AhO9xmkWdMiCJQieG-3RCaYdVCN5IzieNW792Xm2s,784
|
|
70
|
-
karrio/server/providers/extension/models/aramex.py,sha256=NKOvuNd-WbUW1Fn03QJgomGgUy8SZU95KllbTXYtdhk,746
|
|
71
|
-
karrio/server/providers/extension/models/asendia_us.py,sha256=4iV95aN4scmcQmT-g28LRTh5EDOEPwmA7h4gg9KGUMw,612
|
|
72
|
-
karrio/server/providers/extension/models/australiapost.py,sha256=IDHSYBoD2xpmHo8L4PNKwaQgOKsC3Cq84wuYA6EmEIE,560
|
|
73
|
-
karrio/server/providers/extension/models/boxknight.py,sha256=hihKJcxbDmxsihmYVTCAMzY2-MTehlM6o3XsyjUOjrc,493
|
|
74
|
-
karrio/server/providers/extension/models/bpost.py,sha256=-PmkRYxXVqgEt68ZY7fu19eUBpf2U3ubhBCVH9SoiHQ,596
|
|
75
|
-
karrio/server/providers/extension/models/canadapost.py,sha256=-YeC14u5KPR-OEamnVqtmh5HEubFl2kKVBtAGloCTAI,648
|
|
76
|
-
karrio/server/providers/extension/models/canpar.py,sha256=iqyes3lWN2UEB2DEJUphJKnKCXEJDgpOTwB6rDAcOTc,462
|
|
77
|
-
karrio/server/providers/extension/models/chronopost.py,sha256=5K162hrmU-9E4ZZ4ApqOy_BsDvoJ30jK6Kt_MtzbXc0,639
|
|
78
|
-
karrio/server/providers/extension/models/colissimo.py,sha256=iL6a7kCa17d8cMcN_SJnHQeTqnvjEDf7-G7tWxjTK0o,668
|
|
79
|
-
karrio/server/providers/extension/models/dhl_express.py,sha256=ZLhkl3NFWiK9srqV0rYW8rtxEpO3saWu672gXP25W9c,692
|
|
80
|
-
karrio/server/providers/extension/models/dhl_parcel_de.py,sha256=CGxr7anMMkkXHRmxa5YbBYwQWTWVMIbtLW2tolYaRx4,894
|
|
81
|
-
karrio/server/providers/extension/models/dhl_poland.py,sha256=iZsBmHpLqWekaytu0vEO6NXMJJuFAT_f9udsjcbu324,665
|
|
82
|
-
karrio/server/providers/extension/models/dhl_universal.py,sha256=Zbpi2FWVNXZfdWP-GrzzOqEnEikwQg0YT09v572HHDA,531
|
|
83
|
-
karrio/server/providers/extension/models/dicom.py,sha256=51F14KSa8FSq8Q-1XLcDKsB0KlWNU1C3lQOuUbNdfGg,531
|
|
84
|
-
karrio/server/providers/extension/models/dpd.py,sha256=RzM5Y8wPsBPTW1s8YGtPSdpK8IPldyy21GV-bcuoBBM,1100
|
|
85
|
-
karrio/server/providers/extension/models/dpdhl.py,sha256=TdvQxX-XT_k5h_UD_HvmRpzrfv2PNsNztALZHLMiun8,1010
|
|
86
|
-
karrio/server/providers/extension/models/easypost.py,sha256=MR9Gh3WAQXyAm7MvVKsWzUrnyDmHx76ynVViBioSZHI,463
|
|
87
|
-
karrio/server/providers/extension/models/eshipper.py,sha256=BXlgzCR_JUBnSDP_dvPaD06gY_EVC_lxDTAkTGLsWjM,522
|
|
88
|
-
karrio/server/providers/extension/models/fedex.py,sha256=vwZIdHxIU-Kg0B7BhLEgF2z5Ala-2qBjBzUT6Fb5rkg,865
|
|
89
|
-
karrio/server/providers/extension/models/fedex_ws.py,sha256=6Zk9Ep7GLzaAr9nBRTTkP4qp7E7rPeg2xgM3Uil-5AI,730
|
|
90
|
-
karrio/server/providers/extension/models/freightcom.py,sha256=sv32d19ijmJGwqZrb8Bn16OGDcc2j8eLyhjO8dumLcM,524
|
|
91
|
-
karrio/server/providers/extension/models/generic.py,sha256=sX8_R_BV13JtS9FOFq7mJLlOghnyxo3ZFHpdDKVaBI0,1254
|
|
92
|
-
karrio/server/providers/extension/models/geodis.py,sha256=O4zKQtLfaffSrpb_5KQhEiLddSROHJzIqy78mM6u-xM,600
|
|
93
|
-
karrio/server/providers/extension/models/hay_post.py,sha256=ep4Bdvk2kWYFp0mScJMOptogK4ANz-IcC-Am13lrsJc,592
|
|
94
|
-
karrio/server/providers/extension/models/laposte.py,sha256=Incnqxs8tf_Ii3CEUrQwQ57DWTfDFH0UfM_HufRpspE,505
|
|
95
|
-
karrio/server/providers/extension/models/locate2u.py,sha256=7hLIAuyjnX-FJOBr_4mh7HA4KHfSdsgaPJWaxJ2BGHM,619
|
|
96
|
-
karrio/server/providers/extension/models/nationex.py,sha256=KdaDbYqkvu16rhRPH4dMYM3bviOg90Y2o3RirDdaxZA,640
|
|
97
|
-
karrio/server/providers/extension/models/purolator.py,sha256=-PjcZFBRw4qRfbH5F0xnDqH3Eyf3_kskfGJ3VsWNsNk,595
|
|
98
|
-
karrio/server/providers/extension/models/roadie.py,sha256=ULznpZ701H1p5ouO4mDIxoYcd8lz3NjYJfsTw2L8b_Q,428
|
|
99
|
-
karrio/server/providers/extension/models/royalmail.py,sha256=MpyQL5VhaBWJNbOEcZQ76MvTvUIiOaEDpkh6yONpEa8,488
|
|
100
|
-
karrio/server/providers/extension/models/sendle.py,sha256=4K3AATNFYnEvnkSuQEP202BE4RcH5qJGUMCBunr92gs,593
|
|
101
|
-
karrio/server/providers/extension/models/tge.py,sha256=N_gUh9_vwe5Trs36pVadAsdyN0rLyZoLjgsJDR1ALpU,1958
|
|
102
|
-
karrio/server/providers/extension/models/tnt.py,sha256=s_dg5hHv4So_yT_ZspfGQTxLqv_bjsFzDYuOKeLySiM,637
|
|
103
|
-
karrio/server/providers/extension/models/ups.py,sha256=ruDfBCb0ZKb7g0rrP5DRIbROwOfymKx0bRH94jujqNA,658
|
|
104
|
-
karrio/server/providers/extension/models/usps.py,sha256=LO-yYVg68wLvIlfesmH2EvOXCZV5fu4dT1fdHZq2Yh4,653
|
|
105
|
-
karrio/server/providers/extension/models/usps_international.py,sha256=k3opE3W4svC5MNqp398xtSYpet2YFSOSbgjHT80r3L4,728
|
|
106
|
-
karrio/server/providers/extension/models/usps_wt.py,sha256=6RkR8mnFT9AWMEtW7l-ZB1BY9TkEYnLKtIiLyhwIqw0,731
|
|
107
|
-
karrio/server/providers/extension/models/usps_wt_international.py,sha256=5QJdeNeshl1KCbQ6ravoh3vrU94QEN89noYZEF9kAW0,825
|
|
108
|
-
karrio/server/providers/extension/models/zoom2u.py,sha256=3RvkZkAYvpXDW9fCmViOJB5NrSPo2_d_qpjcsWuCVtQ,585
|
|
109
65
|
karrio/server/providers/management/commands/migrate_rate_sheets.py,sha256=piRV1n0itHQR4HZiWXVSjJKzHZPnFGKlrCjWOcy723A,3814
|
|
110
66
|
karrio/server/providers/migrations/0001_initial.py,sha256=DkKU91a1tMqRisLoarYndyKX3PJplT4Bor6tT53yETw,6772
|
|
111
67
|
karrio/server/providers/migrations/0002_carrier_active.py,sha256=zW_6cFEKmsZIbiuLimcUlwzVvpckYroJmzkCwep-D2A,378
|
|
@@ -190,9 +146,10 @@ karrio/server/providers/migrations/0080_alter_aramexsettings_account_country_cod
|
|
|
190
146
|
karrio/server/providers/migrations/0081_remove_alliedexpresssettings_carrier_ptr_and_more.py,sha256=Lb8w5LEnJgCd-a4suFAdZ3-gWHlIbLIJLahTGlUmi_U,9557
|
|
191
147
|
karrio/server/providers/migrations/0082_add_zone_identifiers.py,sha256=0gRIFemNGNRkvV_pt0u3e-wL2LI89AKwaFWoqOqjAsA,1509
|
|
192
148
|
karrio/server/providers/migrations/0083_add_optimized_rate_sheet_structure.py,sha256=K9jj1LGEs5WQvIUxWac1wbCI6YnrrzTIcD3PzjZZcHA,1057
|
|
149
|
+
karrio/server/providers/migrations/0084_alter_servicelevel_currency.py,sha256=o5_wiQ7dbqSG-OfLgJQPRj48Jmi573s5LweikF9oq5E,5726
|
|
193
150
|
karrio/server/providers/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
194
|
-
karrio/server/providers/models/__init__.py,sha256=
|
|
195
|
-
karrio/server/providers/models/carrier.py,sha256=
|
|
151
|
+
karrio/server/providers/models/__init__.py,sha256=yeFm9ZdtiEpMCZpY0dhP3TY9ndWut-BDxtN5qiL8VOQ,566
|
|
152
|
+
karrio/server/providers/models/carrier.py,sha256=1Dev8SI_vJL1EYShcAdMexx8l3HC4NlOnaeZnSvE2U4,9622
|
|
196
153
|
karrio/server/providers/models/config.py,sha256=8zuDXFGXBrC4fj2dW1-NpLAtFYPunEJi8uK-PezD7eo,759
|
|
197
154
|
karrio/server/providers/models/service.py,sha256=XTkZKyzE2g0I7HxGluty6Nk4El7iSyj2Ze0YXnrF7WQ,7038
|
|
198
155
|
karrio/server/providers/models/sheet.py,sha256=Fuy8KIA719ZOeoqe-VfL6ZjLjhzdYS6Jp-hgE9680u4,9943
|
|
@@ -222,7 +179,7 @@ karrio/server/user/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuF
|
|
|
222
179
|
karrio/server/user/admin.py,sha256=psRIcm1IjR6K_69cJJCDBUQT226I9gPvfFhHoAeA_3Q,2514
|
|
223
180
|
karrio/server/user/apps.py,sha256=hCTQ-YXuDd7eW4ZMkVf6OcmmFCu5uVpFWCxfb1lzdCw,209
|
|
224
181
|
karrio/server/user/forms.py,sha256=hgEbEs17Cwib5KsckVweapEmAQvE0fWpwxkJMDc__Y0,1049
|
|
225
|
-
karrio/server/user/models.py,sha256=
|
|
182
|
+
karrio/server/user/models.py,sha256=j9Oh9MOGfnX2SKkWe72nxaVW8018tzUtSr2gw2dMQmM,6380
|
|
226
183
|
karrio/server/user/serializers.py,sha256=tdTB0g4q3EIY2Uv7rrpWlkKEuHms-fTK6XXUr_Z6hBY,1557
|
|
227
184
|
karrio/server/user/tests.py,sha256=mrbGGRNg5jwbTJtWWa7zSKdDyeB4vmgZCRc2nk6VY-g,60
|
|
228
185
|
karrio/server/user/urls.py,sha256=3p-ZivD78caBDDeV63XJjMuILdr258JXED788OJ_hLQ,243
|
|
@@ -238,7 +195,7 @@ karrio/server/user/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5N
|
|
|
238
195
|
karrio/server/user/templates/registration/login.html,sha256=3_tj-0rKfwkCk-fp_GT8xFQhLqjGcJs3uZzOAaI40Sw,3690
|
|
239
196
|
karrio/server/user/templates/registration/registration_confirm_email.html,sha256=zFDkNN_BHMQyrBv_mU8aoqXxYxG91TGuf6pKwRa5jxE,247
|
|
240
197
|
karrio/server/user/templates/registration/registration_confirm_email.txt,sha256=I_zN_pJTRigfyiYbyQK0wFfrI5Zq1JG8lf0TyLA9fN0,94
|
|
241
|
-
karrio_server_core-2025.
|
|
242
|
-
karrio_server_core-2025.
|
|
243
|
-
karrio_server_core-2025.
|
|
244
|
-
karrio_server_core-2025.
|
|
198
|
+
karrio_server_core-2025.5rc15.dist-info/METADATA,sha256=YUVTif7wZev8h5ivD124n2_RhT18ZTytwf2UIdjOVsg,797
|
|
199
|
+
karrio_server_core-2025.5rc15.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
200
|
+
karrio_server_core-2025.5rc15.dist-info/top_level.txt,sha256=D1D7x8R3cTfjF_15mfiO7wCQ5QMtuM4x8GaPr7z5i78,12
|
|
201
|
+
karrio_server_core-2025.5rc15.dist-info/RECORD,,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__path__ = __import__('pkgutil').extend_path(__path__, __name__) # type: ignore
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import django.db.models as models
|
|
2
|
-
|
|
3
|
-
import karrio.server.providers.models.carrier as providers
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
class AlliedExpressSettings(providers.Carrier):
|
|
7
|
-
class Meta:
|
|
8
|
-
db_table = "allied-express-settings"
|
|
9
|
-
verbose_name = "Allied Express Settings"
|
|
10
|
-
verbose_name_plural = "Allied Express Settings"
|
|
11
|
-
|
|
12
|
-
username = models.CharField(max_length=50)
|
|
13
|
-
password = models.CharField(max_length=50)
|
|
14
|
-
account = models.CharField(max_length=50, null=True, blank=True)
|
|
15
|
-
service_type = models.CharField(max_length=50, null=True, blank=True)
|
|
16
|
-
|
|
17
|
-
@property
|
|
18
|
-
def carrier_name(self) -> str:
|
|
19
|
-
return "allied_express"
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
SETTINGS = AlliedExpressSettings
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import django.db.models as models
|
|
2
|
-
|
|
3
|
-
import karrio.server.providers.models.carrier as providers
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
class AlliedExpressLocalSettings(providers.Carrier):
|
|
7
|
-
class Meta:
|
|
8
|
-
db_table = "allied-express-local-settings"
|
|
9
|
-
verbose_name = "Allied Express Local Settings"
|
|
10
|
-
verbose_name_plural = "Allied Express Local Settings"
|
|
11
|
-
|
|
12
|
-
username = models.CharField(max_length=50)
|
|
13
|
-
password = models.CharField(max_length=50)
|
|
14
|
-
account = models.CharField(max_length=50, null=True, blank=True)
|
|
15
|
-
service_type = models.CharField(max_length=50, null=True, blank=True)
|
|
16
|
-
|
|
17
|
-
@property
|
|
18
|
-
def carrier_name(self) -> str:
|
|
19
|
-
return "allied_express_local"
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
SETTINGS = AlliedExpressLocalSettings
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
from django.db import models
|
|
2
|
-
from karrio.server.providers.models.carrier import Carrier
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
class AmazonShippingSettings(Carrier):
|
|
6
|
-
CARRIER_NAME = "amazon_shipping"
|
|
7
|
-
|
|
8
|
-
class Meta:
|
|
9
|
-
db_table = "amazon_shipping-settings"
|
|
10
|
-
verbose_name = "Amazon Shipping Settings"
|
|
11
|
-
verbose_name_plural = "Amazon Shipping Settings"
|
|
12
|
-
|
|
13
|
-
seller_id = models.CharField(max_length=50)
|
|
14
|
-
developer_id = models.CharField(max_length=50)
|
|
15
|
-
mws_auth_token = models.CharField(max_length=50)
|
|
16
|
-
aws_region = models.CharField(max_length=50, default="us-east-1")
|
|
17
|
-
|
|
18
|
-
@property
|
|
19
|
-
def carrier_name(self) -> str:
|
|
20
|
-
return self.CARRIER_NAME
|
|
21
|
-
|
|
22
|
-
@property
|
|
23
|
-
def x_amz_access_token(self) -> str:
|
|
24
|
-
return "" # Setup the access token here.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
SETTINGS = AmazonShippingSettings
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
from django.db import models
|
|
2
|
-
from karrio.server.providers.models.carrier import Carrier, COUNTRIES
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
class AramexSettings(Carrier):
|
|
6
|
-
class Meta:
|
|
7
|
-
db_table = "aramex-settings"
|
|
8
|
-
verbose_name = "Aramex Settings"
|
|
9
|
-
verbose_name_plural = "Aramex Settings"
|
|
10
|
-
|
|
11
|
-
username = models.CharField(max_length=200)
|
|
12
|
-
password = models.CharField(max_length=200)
|
|
13
|
-
account_pin = models.CharField(max_length=200)
|
|
14
|
-
account_entity = models.CharField(max_length=200)
|
|
15
|
-
account_number = models.CharField(max_length=200)
|
|
16
|
-
account_country_code = models.CharField(
|
|
17
|
-
max_length=3, blank=True, null=True, choices=COUNTRIES
|
|
18
|
-
)
|
|
19
|
-
|
|
20
|
-
@property
|
|
21
|
-
def carrier_name(self) -> str:
|
|
22
|
-
return "aramex"
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
SETTINGS = AramexSettings
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import django.db.models as models
|
|
2
|
-
import karrio.server.providers.models.carrier as providers
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
class AsendiaUSSettings(providers.Carrier):
|
|
6
|
-
class Meta:
|
|
7
|
-
db_table = "asendia-us-settings"
|
|
8
|
-
verbose_name = "Asendia US Settings"
|
|
9
|
-
verbose_name_plural = "Asendia US Settings"
|
|
10
|
-
|
|
11
|
-
username = models.CharField(max_length=100)
|
|
12
|
-
password = models.CharField(max_length=100)
|
|
13
|
-
api_key = models.CharField(max_length=100)
|
|
14
|
-
account_number = models.CharField(max_length=100, blank=True)
|
|
15
|
-
|
|
16
|
-
@property
|
|
17
|
-
def carrier_name(self) -> str:
|
|
18
|
-
return "asendia_us"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
SETTINGS = AsendiaUSSettings
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
from django.db import models
|
|
2
|
-
from karrio.server.providers.models.carrier import Carrier
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
class AustraliaPostSettings(Carrier):
|
|
6
|
-
class Meta:
|
|
7
|
-
db_table = "australia-post-settings"
|
|
8
|
-
verbose_name = "Australia Post Settings"
|
|
9
|
-
verbose_name_plural = "Australia Post Settings"
|
|
10
|
-
|
|
11
|
-
api_key = models.CharField(max_length=200)
|
|
12
|
-
password = models.CharField(max_length=200)
|
|
13
|
-
account_number = models.CharField(max_length=200)
|
|
14
|
-
|
|
15
|
-
@property
|
|
16
|
-
def carrier_name(self) -> str:
|
|
17
|
-
return "australiapost"
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
SETTINGS = AustraliaPostSettings
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import django.db.models as models
|
|
2
|
-
import karrio.server.providers.models.carrier as providers
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
class BoxKnightSettings(providers.Carrier):
|
|
6
|
-
class Meta:
|
|
7
|
-
db_table = "boxknight-settings"
|
|
8
|
-
verbose_name = "BoxKnight Settings"
|
|
9
|
-
verbose_name_plural = "BoxKnight Settings"
|
|
10
|
-
|
|
11
|
-
username = models.CharField(max_length=50)
|
|
12
|
-
password = models.CharField(max_length=50)
|
|
13
|
-
|
|
14
|
-
@property
|
|
15
|
-
def carrier_name(self) -> str:
|
|
16
|
-
return "boxknight"
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
SETTINGS = BoxKnightSettings
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import django.db.models as models
|
|
2
|
-
import karrio.server.providers.models as providers
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
# @providers.has_rate_sheet("bpost")
|
|
6
|
-
class BelgianPostSettings(providers.Carrier):
|
|
7
|
-
class Meta:
|
|
8
|
-
db_table = "bpost-settings"
|
|
9
|
-
verbose_name = "Belgian Post Settings"
|
|
10
|
-
verbose_name_plural = "Belgian Post Settings"
|
|
11
|
-
|
|
12
|
-
account_id = models.CharField(max_length=100)
|
|
13
|
-
passphrase = models.CharField(max_length=100)
|
|
14
|
-
services = models.ManyToManyField("ServiceLevel", blank=True)
|
|
15
|
-
|
|
16
|
-
@property
|
|
17
|
-
def carrier_name(self) -> str:
|
|
18
|
-
return "bpost"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
SETTINGS = BelgianPostSettings
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import django.db.models as models
|
|
2
|
-
import karrio.server.providers.models as providers
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
class CanadaPostSettings(providers.Carrier):
|
|
6
|
-
class Meta:
|
|
7
|
-
db_table = "canada-post-settings"
|
|
8
|
-
verbose_name = "Canada Post Settings"
|
|
9
|
-
verbose_name_plural = "Canada Post Settings"
|
|
10
|
-
|
|
11
|
-
username = models.CharField(max_length=200)
|
|
12
|
-
password = models.CharField(max_length=200)
|
|
13
|
-
customer_number = models.CharField(max_length=200, blank=True, null=True)
|
|
14
|
-
contract_id = models.CharField(max_length=200, blank=True, null=True)
|
|
15
|
-
|
|
16
|
-
@property
|
|
17
|
-
def carrier_name(self) -> str:
|
|
18
|
-
return "canadapost"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
SETTINGS = CanadaPostSettings
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
from django.db import models
|
|
2
|
-
from karrio.server.providers.models.carrier import Carrier
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
class CanparSettings(Carrier):
|
|
6
|
-
class Meta:
|
|
7
|
-
db_table = "canpar-settings"
|
|
8
|
-
verbose_name = "Canpar Settings"
|
|
9
|
-
verbose_name_plural = "Canpar Settings"
|
|
10
|
-
|
|
11
|
-
username = models.CharField(max_length=200)
|
|
12
|
-
password = models.CharField(max_length=200)
|
|
13
|
-
|
|
14
|
-
@property
|
|
15
|
-
def carrier_name(self) -> str:
|
|
16
|
-
return "canpar"
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
SETTINGS = CanparSettings
|