antioch-py 2.1.0__tar.gz → 2.2.2__tar.gz
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 antioch-py might be problematic. Click here for more details.
- {antioch_py-2.1.0/antioch_py.egg-info → antioch_py-2.2.2}/PKG-INFO +1 -1
- {antioch_py-2.1.0 → antioch_py-2.2.2}/README.md +19 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/basis_curve.py +32 -2
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/scene.py +33 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2/antioch_py.egg-info}/PKG-INFO +1 -1
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/ark/ark.py +2 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/constants.py +16 -2
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/core/auth.py +1 -3
- {antioch_py-2.1.0 → antioch_py-2.2.2}/pyproject.toml +1 -1
- {antioch_py-2.1.0 → antioch_py-2.2.2}/MANIFEST.in +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/README.pypi.md +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/message.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/module/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/module/clock.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/module/execution.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/module/input.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/module/module.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/module/node.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/module/token.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/ark.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/asset.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/error.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/animation.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/articulation.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/camera.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/collision.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/geometry.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/ground_plane.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/imu.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/joint.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/light.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/pir_sensor.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/radar.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/rigid_body.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/objects/xform.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/record.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/session.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch/session/task.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch_py.egg-info/SOURCES.txt +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch_py.egg-info/dependency_links.txt +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch_py.egg-info/entry_points.txt +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch_py.egg-info/requires.txt +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/antioch_py.egg-info/top_level.txt +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/ark/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/ark/hardware.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/ark/kinematics.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/ark/module.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/ark/node.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/ark/scheduler.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/ark/sim.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/assets/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/core/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/core/agent.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/core/registry.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/core/task.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/annotation.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/array.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/base.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/camera.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/color.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/frame.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/image.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/imu.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/joint.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/log.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/pir.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/point.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/point_cloud.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/pose.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/quaternion.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/radar.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/types.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/vector.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/message/velocity.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/rome/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/rome/client.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/rome/error.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/session/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/session/config.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/session/environment.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/session/sim.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/utils/__init__.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/utils/comms.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/utils/logger.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/utils/time.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/common/utils/usd.py +0 -0
- {antioch_py-2.1.0 → antioch_py-2.2.2}/setup.cfg +0 -0
|
@@ -2,6 +2,25 @@
|
|
|
2
2
|
|
|
3
3
|
Python client library for the Antioch middleware platform.
|
|
4
4
|
|
|
5
|
+
## Environment Configuration
|
|
6
|
+
|
|
7
|
+
The library supports both staging and production environments. Set `ANTIOCH_ENV` to control which environment to use:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# Use staging environment (for internal development)
|
|
11
|
+
export ANTIOCH_ENV=staging
|
|
12
|
+
|
|
13
|
+
# Use production environment (default if not set)
|
|
14
|
+
export ANTIOCH_ENV=prod
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
This affects:
|
|
18
|
+
- **API endpoints**: `staging.api.antioch.com` vs `api.antioch.com`
|
|
19
|
+
- **Auth domain**: `staging.auth.antioch.com` vs `auth.antioch.com`
|
|
20
|
+
- **Local data directory**: `~/.antioch/staging/` vs `~/.antioch/prod/`
|
|
21
|
+
|
|
22
|
+
Auth credentials are stored separately per environment.
|
|
23
|
+
|
|
5
24
|
## Installation
|
|
6
25
|
|
|
7
26
|
Authenticate your local environment with GCP via the Google Cloud CLI:
|
|
@@ -54,6 +54,9 @@ class BasisCurve(SessionContainer):
|
|
|
54
54
|
radius: float = 1.0,
|
|
55
55
|
min_angle_deg: float = 0.0,
|
|
56
56
|
max_angle_deg: float = 180.0,
|
|
57
|
+
guide: bool = False,
|
|
58
|
+
color: Vector3 | None = None,
|
|
59
|
+
width: float = 0.005,
|
|
57
60
|
) -> "BasisCurve":
|
|
58
61
|
"""
|
|
59
62
|
Add a semi-circle basis curve to the scene.
|
|
@@ -63,12 +66,24 @@ class BasisCurve(SessionContainer):
|
|
|
63
66
|
:param radius: Radius of the basis curve.
|
|
64
67
|
:param min_angle_deg: Minimum angle of the basis curve in degrees.
|
|
65
68
|
:param max_angle_deg: Maximum angle of the basis curve in degrees.
|
|
69
|
+
:param guide: If True, mark as guide purpose (invisible to cameras). If False, default purpose.
|
|
70
|
+
:param color: Optional RGB color [0-1].
|
|
71
|
+
:param width: Width of the curve.
|
|
66
72
|
:return: The basis curve instance.
|
|
67
73
|
"""
|
|
68
74
|
|
|
69
75
|
Session.get_current().query_sim_rpc(
|
|
70
76
|
endpoint="basis_curve/add_semi_circle",
|
|
71
|
-
payload={
|
|
77
|
+
payload={
|
|
78
|
+
"path": path,
|
|
79
|
+
"center": center,
|
|
80
|
+
"radius": radius,
|
|
81
|
+
"min_angle_deg": min_angle_deg,
|
|
82
|
+
"max_angle_deg": max_angle_deg,
|
|
83
|
+
"guide": guide,
|
|
84
|
+
"color": color,
|
|
85
|
+
"width": width,
|
|
86
|
+
},
|
|
72
87
|
)
|
|
73
88
|
return cls(path)
|
|
74
89
|
|
|
@@ -80,6 +95,9 @@ class BasisCurve(SessionContainer):
|
|
|
80
95
|
end: Vector3 | None = None,
|
|
81
96
|
angle_deg: float | None = None,
|
|
82
97
|
length: float | None = None,
|
|
98
|
+
guide: bool = False,
|
|
99
|
+
color: Vector3 | None = None,
|
|
100
|
+
width: float = 0.005,
|
|
83
101
|
) -> "BasisCurve":
|
|
84
102
|
"""
|
|
85
103
|
Add a line basis curve to the scene.
|
|
@@ -93,13 +111,25 @@ class BasisCurve(SessionContainer):
|
|
|
93
111
|
:param end: End point of the line (Cartesian mode).
|
|
94
112
|
:param angle_deg: Angle in degrees from +X axis in XY plane (polar mode).
|
|
95
113
|
:param length: Length of the line (polar mode).
|
|
114
|
+
:param guide: If True, mark as guide purpose (invisible to cameras). If False, default purpose.
|
|
115
|
+
:param color: Optional RGB color [0-1].
|
|
116
|
+
:param width: Width of the curve.
|
|
96
117
|
:return: The basis curve instance.
|
|
97
118
|
:raises ValueError: If both modes are specified or neither mode is complete.
|
|
98
119
|
"""
|
|
99
120
|
|
|
100
121
|
Session.get_current().query_sim_rpc(
|
|
101
122
|
endpoint="basis_curve/add_line",
|
|
102
|
-
payload={
|
|
123
|
+
payload={
|
|
124
|
+
"path": path,
|
|
125
|
+
"start": start,
|
|
126
|
+
"end": end,
|
|
127
|
+
"angle_deg": angle_deg,
|
|
128
|
+
"length": length,
|
|
129
|
+
"guide": guide,
|
|
130
|
+
"color": color,
|
|
131
|
+
"width": width,
|
|
132
|
+
},
|
|
103
133
|
)
|
|
104
134
|
return cls(path)
|
|
105
135
|
|
|
@@ -415,6 +415,15 @@ class Scene(SessionContainer):
|
|
|
415
415
|
payload={"root_path": root_path, "target": target},
|
|
416
416
|
)
|
|
417
417
|
|
|
418
|
+
def delete_prim(self, path: str) -> None:
|
|
419
|
+
"""
|
|
420
|
+
Delete a prim from the scene.
|
|
421
|
+
|
|
422
|
+
:param path: USD path for the prim to delete.
|
|
423
|
+
"""
|
|
424
|
+
|
|
425
|
+
self._session.query_sim_rpc(endpoint="scene/delete_prim", payload={"path": path})
|
|
426
|
+
|
|
418
427
|
def add_asset(
|
|
419
428
|
self,
|
|
420
429
|
path: str,
|
|
@@ -1150,6 +1159,9 @@ class Scene(SessionContainer):
|
|
|
1150
1159
|
radius: float = 1.0,
|
|
1151
1160
|
min_angle_deg: float = 0.0,
|
|
1152
1161
|
max_angle_deg: float = 180.0,
|
|
1162
|
+
guide: bool = False,
|
|
1163
|
+
color: Vector3 | list[float] | tuple[float, float, float] | None = None,
|
|
1164
|
+
width: float = 0.005,
|
|
1153
1165
|
) -> BasisCurve:
|
|
1154
1166
|
"""
|
|
1155
1167
|
Add a basis curve semi-circle to the scene.
|
|
@@ -1159,6 +1171,9 @@ class Scene(SessionContainer):
|
|
|
1159
1171
|
:param radius: Radius of the basis curve.
|
|
1160
1172
|
:param min_angle_deg: Minimum angle of the basis curve in degrees.
|
|
1161
1173
|
:param max_angle_deg: Maximum angle of the basis curve in degrees.
|
|
1174
|
+
:param guide: If True, mark as guide purpose (invisible to cameras). If False, default purpose.
|
|
1175
|
+
:param color: Optional RGB color [0-1].
|
|
1176
|
+
:param width: Width of the curve.
|
|
1162
1177
|
:return: The basis curve instance.
|
|
1163
1178
|
"""
|
|
1164
1179
|
|
|
@@ -1168,6 +1183,9 @@ class Scene(SessionContainer):
|
|
|
1168
1183
|
radius=radius,
|
|
1169
1184
|
min_angle_deg=min_angle_deg,
|
|
1170
1185
|
max_angle_deg=max_angle_deg,
|
|
1186
|
+
guide=guide,
|
|
1187
|
+
color=Vector3.from_any(color) if color is not None else None,
|
|
1188
|
+
width=width,
|
|
1171
1189
|
)
|
|
1172
1190
|
|
|
1173
1191
|
@overload
|
|
@@ -1177,6 +1195,9 @@ class Scene(SessionContainer):
|
|
|
1177
1195
|
*,
|
|
1178
1196
|
start: Vector3 | list[float] | tuple[float, float, float],
|
|
1179
1197
|
end: Vector3 | list[float] | tuple[float, float, float],
|
|
1198
|
+
guide: bool = False,
|
|
1199
|
+
color: Vector3 | list[float] | tuple[float, float, float] | None = None,
|
|
1200
|
+
width: float = 0.005,
|
|
1180
1201
|
) -> BasisCurve: ...
|
|
1181
1202
|
|
|
1182
1203
|
@overload
|
|
@@ -1187,6 +1208,9 @@ class Scene(SessionContainer):
|
|
|
1187
1208
|
start: Vector3 | list[float] | tuple[float, float, float],
|
|
1188
1209
|
angle_deg: float,
|
|
1189
1210
|
length: float,
|
|
1211
|
+
guide: bool = False,
|
|
1212
|
+
color: Vector3 | list[float] | tuple[float, float, float] | None = None,
|
|
1213
|
+
width: float = 0.005,
|
|
1190
1214
|
) -> BasisCurve: ...
|
|
1191
1215
|
|
|
1192
1216
|
def add_basis_curve_line(
|
|
@@ -1197,6 +1221,9 @@ class Scene(SessionContainer):
|
|
|
1197
1221
|
end: Vector3 | list[float] | tuple[float, float, float] | None = None,
|
|
1198
1222
|
angle_deg: float | None = None,
|
|
1199
1223
|
length: float | None = None,
|
|
1224
|
+
guide: bool = False,
|
|
1225
|
+
color: Vector3 | list[float] | tuple[float, float, float] | None = None,
|
|
1226
|
+
width: float = 0.005,
|
|
1200
1227
|
) -> BasisCurve:
|
|
1201
1228
|
"""
|
|
1202
1229
|
Add a basis curve line to the scene.
|
|
@@ -1226,6 +1253,9 @@ class Scene(SessionContainer):
|
|
|
1226
1253
|
:param end: End point of the line (Cartesian mode).
|
|
1227
1254
|
:param angle_deg: Angle in degrees from +X axis in XY plane (polar mode).
|
|
1228
1255
|
:param length: Length of the line (polar mode).
|
|
1256
|
+
:param guide: If True, mark as guide purpose (invisible to cameras). If False, default purpose.
|
|
1257
|
+
:param color: Optional RGB color [0-1].
|
|
1258
|
+
:param width: Width of the curve.
|
|
1229
1259
|
:return: The basis curve instance.
|
|
1230
1260
|
:raises ValueError: If both modes are specified or neither mode is complete.
|
|
1231
1261
|
"""
|
|
@@ -1244,6 +1274,9 @@ class Scene(SessionContainer):
|
|
|
1244
1274
|
end=Vector3.from_any(end) if end is not None else None,
|
|
1245
1275
|
angle_deg=angle_deg,
|
|
1246
1276
|
length=length,
|
|
1277
|
+
guide=guide,
|
|
1278
|
+
color=Vector3.from_any(color) if color is not None else None,
|
|
1279
|
+
width=width,
|
|
1247
1280
|
)
|
|
1248
1281
|
|
|
1249
1282
|
def get_basis_curve(self, path: str) -> BasisCurve:
|
|
@@ -65,6 +65,7 @@ class ArkVersionReference(Message):
|
|
|
65
65
|
size_bytes: int
|
|
66
66
|
asset_path: str | None = None
|
|
67
67
|
asset_size_bytes: int | None = None
|
|
68
|
+
metadata: dict[str, str] = {}
|
|
68
69
|
|
|
69
70
|
|
|
70
71
|
class ArkReference(Message):
|
|
@@ -88,6 +89,7 @@ class AssetVersionReference(Message):
|
|
|
88
89
|
size_bytes: int
|
|
89
90
|
created_at: str
|
|
90
91
|
updated_at: str
|
|
92
|
+
metadata: dict[str, str] = {}
|
|
91
93
|
|
|
92
94
|
|
|
93
95
|
class AssetReference(Message):
|
|
@@ -1,8 +1,22 @@
|
|
|
1
1
|
import os
|
|
2
2
|
from pathlib import Path
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
ANTIOCH_ENV = os.environ.get("ANTIOCH_ENV", "prod").lower()
|
|
5
|
+
if ANTIOCH_ENV not in ("prod", "staging"):
|
|
6
|
+
raise ValueError(f"Invalid ANTIOCH_ENV: {ANTIOCH_ENV}")
|
|
7
|
+
|
|
8
|
+
if ANTIOCH_ENV == "staging":
|
|
9
|
+
ANTIOCH_API_URL = "https://staging.api.antioch.com"
|
|
10
|
+
AUTH_DOMAIN = "https://staging.auth.antioch.com"
|
|
11
|
+
AUTH_CLIENT_ID = "x0aOquV43Xe76ehqAm6Zir80O0MWpqTV"
|
|
12
|
+
else:
|
|
13
|
+
ANTIOCH_API_URL = "https://api.antioch.com"
|
|
14
|
+
AUTH_DOMAIN = "https://auth.antioch.com"
|
|
15
|
+
AUTH_CLIENT_ID = "8RLoPEgMP3ih10sfJsGPkwbUWGilsoyX"
|
|
16
|
+
|
|
17
|
+
ANTIOCH_API_URL = os.environ.get("ANTIOCH_API_URL", ANTIOCH_API_URL)
|
|
18
|
+
AUTH_DOMAIN = os.environ.get("AUTH_DOMAIN", AUTH_DOMAIN)
|
|
19
|
+
ANTIOCH_DIR = os.environ.get("ANTIOCH_DIR", str(Path.home() / ".antioch" / ANTIOCH_ENV))
|
|
6
20
|
|
|
7
21
|
|
|
8
22
|
def get_auth_dir() -> Path:
|
|
@@ -7,15 +7,13 @@ from pathlib import Path
|
|
|
7
7
|
import requests
|
|
8
8
|
from pydantic import BaseModel
|
|
9
9
|
|
|
10
|
-
from common.constants import get_auth_dir
|
|
10
|
+
from common.constants import AUTH_CLIENT_ID, AUTH_DOMAIN, get_auth_dir
|
|
11
11
|
|
|
12
12
|
# Authentication routes
|
|
13
|
-
AUTH_DOMAIN = os.environ.get("AUTH_DOMAIN", "https://staging.auth.antioch.com")
|
|
14
13
|
AUTH_TOKEN_URL = f"{AUTH_DOMAIN}/oauth/token"
|
|
15
14
|
DEVICE_CODE_URL = f"{AUTH_DOMAIN}/oauth/device/code"
|
|
16
15
|
|
|
17
16
|
# Authentication constants
|
|
18
|
-
AUTH_CLIENT_ID = "x0aOquV43Xe76ehqAm6Zir80O0MWpqTV"
|
|
19
17
|
ALGORITHMS = ["RS256"]
|
|
20
18
|
AUDIENCE = "https://sessions.antioch.com"
|
|
21
19
|
AUTH_SCOPE = "openid profile email"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|