tas-uell-sdk 0.0.5 → 0.1.0
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.
- package/README.md +161 -51
- package/esm2020/lib/components/tas-avatar/tas-avatar.component.mjs +75 -0
- package/esm2020/lib/components/tas-btn/tas-btn.component.mjs +146 -61
- package/esm2020/lib/components/tas-floating-call/tas-floating-call.component.mjs +48 -23
- package/esm2020/lib/components/tas-incoming-appointment/tas-incoming-appointment.component.mjs +109 -0
- package/esm2020/lib/components/tas-videocall/tas-videocall.component.mjs +217 -20
- package/esm2020/lib/components/tas-waiting-room/tas-waiting-room.component.mjs +226 -160
- package/esm2020/lib/config/tas.config.mjs +1 -1
- package/esm2020/lib/interfaces/tas.interfaces.mjs +45 -2
- package/esm2020/lib/services/geolocation.service.mjs +56 -0
- package/esm2020/lib/services/tas.service.mjs +400 -34
- package/esm2020/lib/tas-uell-sdk.module.mjs +25 -21
- package/esm2020/public-api.mjs +4 -1
- package/fesm2015/tas-uell-sdk.mjs +1323 -302
- package/fesm2015/tas-uell-sdk.mjs.map +1 -1
- package/fesm2020/tas-uell-sdk.mjs +1307 -300
- package/fesm2020/tas-uell-sdk.mjs.map +1 -1
- package/lib/components/tas-avatar/tas-avatar.component.d.ts +9 -0
- package/lib/components/tas-btn/tas-btn.component.d.ts +35 -15
- package/lib/components/tas-floating-call/tas-floating-call.component.d.ts +5 -1
- package/lib/components/tas-incoming-appointment/tas-incoming-appointment.component.d.ts +33 -0
- package/lib/components/tas-videocall/tas-videocall.component.d.ts +49 -3
- package/lib/components/tas-waiting-room/tas-waiting-room.component.d.ts +50 -35
- package/lib/config/tas.config.d.ts +7 -0
- package/lib/interfaces/tas.interfaces.d.ts +127 -35
- package/lib/services/geolocation.service.d.ts +24 -0
- package/lib/services/tas.service.d.ts +98 -9
- package/lib/tas-uell-sdk.module.d.ts +6 -3
- package/package.json +1 -1
- package/public-api.d.ts +3 -0
- package/src/lib/styles/tas-global.scss +27 -28
- package/INSTALL_AND_TEST.md +0 -427
|
@@ -7,4 +7,4 @@ export const TAS_CONFIG = new InjectionToken('TAS_CONFIG');
|
|
|
7
7
|
* Injection token for HTTP client adapter
|
|
8
8
|
*/
|
|
9
9
|
export const TAS_HTTP_CLIENT = new InjectionToken('TAS_HTTP_CLIENT');
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rhcy11ZWxsLXNkay9zcmMvbGliL2NvbmZpZy90YXMuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUErQi9DOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLElBQUksY0FBYyxDQUFZLFlBQVksQ0FBQyxDQUFDO0FBRXRFOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksY0FBYyxDQUFnQixpQkFBaUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGludGVyZmFjZSBmb3IgdGhlIFRBUyBtb2R1bGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUYXNDb25maWcge1xuICAvKiogVG9rQm94L1ZvbmFnZSBBUEkgS2V5ICovXG4gIHRva0JveEFwaUtleTogc3RyaW5nO1xuICAvKiogT3B0aW9uYWwgQVBJIGJhc2UgVVJMIGZvciByb29tL3Rva2VuIGVuZHBvaW50cyAqL1xuICBhcGlCYXNlVXJsPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEhUVFAgY2xpZW50IGludGVyZmFjZSB0aGF0IGNvbnN1bWluZyBhcHBzIG11c3QgaW1wbGVtZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFzSHR0cENsaWVudCB7XG4gIGdldDxUPihcbiAgICB1cmw6IHN0cmluZyxcbiAgICBvcHRpb25zOiB7IGhlYWRlcnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IH1cbiAgKTogT2JzZXJ2YWJsZTxUPjtcbiAgcG9zdDxUPihcbiAgICB1cmw6IHN0cmluZyxcbiAgICBvcHRpb25zOiB7IGJvZHk6IGFueTsgaGVhZGVycz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gfVxuICApOiBPYnNlcnZhYmxlPFQ+O1xuICBwYXRjaDxUPihcbiAgICB1cmw6IHN0cmluZyxcbiAgICBvcHRpb25zOiB7IGJvZHk6IGFueTsgaGVhZGVycz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gfVxuICApOiBPYnNlcnZhYmxlPFQ+O1xufVxuXG4vKipcbiAqIEluamVjdGlvbiB0b2tlbiBmb3IgVEFTIGNvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGNvbnN0IFRBU19DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48VGFzQ29uZmlnPignVEFTX0NPTkZJRycpO1xuXG4vKipcbiAqIEluamVjdGlvbiB0b2tlbiBmb3IgSFRUUCBjbGllbnQgYWRhcHRlclxuICovXG5leHBvcnQgY29uc3QgVEFTX0hUVFBfQ0xJRU5UID0gbmV3IEluamVjdGlvblRva2VuPFRhc0h0dHBDbGllbnQ+KCdUQVNfSFRUUF9DTElFTlQnKTtcbiJdfQ==
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
// Enums
|
|
1
2
|
export var TasRoomType;
|
|
2
3
|
(function (TasRoomType) {
|
|
3
4
|
TasRoomType["TAS"] = "TAS";
|
|
4
5
|
TasRoomType["JM"] = "JM";
|
|
5
6
|
TasRoomType["WEBINAR"] = "WEBINAR";
|
|
7
|
+
TasRoomType["WELLNESS_MANAGER"] = "WELLNESS_MANAGER";
|
|
6
8
|
})(TasRoomType || (TasRoomType = {}));
|
|
7
9
|
export var TasSessionType;
|
|
8
10
|
(function (TasSessionType) {
|
|
@@ -15,7 +17,42 @@ export var TasUserRole;
|
|
|
15
17
|
TasUserRole["USER"] = "USER";
|
|
16
18
|
TasUserRole["MODERATOR"] = "MODERATOR";
|
|
17
19
|
})(TasUserRole || (TasUserRole = {}));
|
|
18
|
-
|
|
20
|
+
export var TasBusinessRole;
|
|
21
|
+
(function (TasBusinessRole) {
|
|
22
|
+
TasBusinessRole["ADMIN_MANAGER"] = "ADMIN_MANAGER";
|
|
23
|
+
TasBusinessRole["MANAGER"] = "MANAGER";
|
|
24
|
+
TasBusinessRole["BACKOFFICE"] = "BACKOFFICE";
|
|
25
|
+
TasBusinessRole["USER"] = "USER";
|
|
26
|
+
})(TasBusinessRole || (TasBusinessRole = {}));
|
|
27
|
+
export var VideoSessionStatus;
|
|
28
|
+
(function (VideoSessionStatus) {
|
|
29
|
+
VideoSessionStatus["ACTIVE"] = "ACTIVE";
|
|
30
|
+
VideoSessionStatus["INACTIVE"] = "INACTIVE";
|
|
31
|
+
VideoSessionStatus["PENDING"] = "PENDING";
|
|
32
|
+
VideoSessionStatus["SCHEDULED"] = "SCHEDULED";
|
|
33
|
+
})(VideoSessionStatus || (VideoSessionStatus = {}));
|
|
34
|
+
export var UserStatus;
|
|
35
|
+
(function (UserStatus) {
|
|
36
|
+
UserStatus["ACTIVE"] = "ACTIVE";
|
|
37
|
+
UserStatus["INACTIVE"] = "INACTIVE";
|
|
38
|
+
UserStatus["ASSIGNED"] = "ASSIGNED";
|
|
39
|
+
})(UserStatus || (UserStatus = {}));
|
|
40
|
+
export var UserCallAction;
|
|
41
|
+
(function (UserCallAction) {
|
|
42
|
+
UserCallAction["WAITING_ROOM_ENTER"] = "WAITING_ROOM_ENTER";
|
|
43
|
+
UserCallAction["WAITING_ROOM_LEAVE"] = "WAITING_ROOM_LEAVE";
|
|
44
|
+
UserCallAction["BAN"] = "BAN";
|
|
45
|
+
UserCallAction["CHANGE_STATUS"] = "CHANGE_STATUS";
|
|
46
|
+
UserCallAction["REQUEST_GEOLOCALIZATION"] = "REQUEST_GEOLOCALIZATION";
|
|
47
|
+
UserCallAction["ACTIVATE_GEOLOCATION"] = "ACTIVATE_GEOLOCATION";
|
|
48
|
+
})(UserCallAction || (UserCallAction = {}));
|
|
49
|
+
export var RoomUserStatus;
|
|
50
|
+
(function (RoomUserStatus) {
|
|
51
|
+
RoomUserStatus["ASSIGNED"] = "ASSIGNED";
|
|
52
|
+
RoomUserStatus["WAITING"] = "WAITING";
|
|
53
|
+
RoomUserStatus["JOINED"] = "JOINED";
|
|
54
|
+
RoomUserStatus["FINISHED"] = "FINISHED";
|
|
55
|
+
})(RoomUserStatus || (RoomUserStatus = {}));
|
|
19
56
|
export var CallState;
|
|
20
57
|
(function (CallState) {
|
|
21
58
|
CallState["IDLE"] = "IDLE";
|
|
@@ -29,4 +66,10 @@ export var ViewMode;
|
|
|
29
66
|
ViewMode["FULLSCREEN"] = "FULLSCREEN";
|
|
30
67
|
ViewMode["PIP"] = "PIP";
|
|
31
68
|
})(ViewMode || (ViewMode = {}));
|
|
32
|
-
|
|
69
|
+
// Appointment types
|
|
70
|
+
export var AppointmentStatus;
|
|
71
|
+
(function (AppointmentStatus) {
|
|
72
|
+
AppointmentStatus["CONFIRMED"] = "CONFIRMED";
|
|
73
|
+
AppointmentStatus["CANCELLED"] = "CANCELLED";
|
|
74
|
+
})(AppointmentStatus || (AppointmentStatus = {}));
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzLmludGVyZmFjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YXMtdWVsbC1zZGsvc3JjL2xpYi9pbnRlcmZhY2VzL3Rhcy5pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFFBQVE7QUFDUixNQUFNLENBQU4sSUFBWSxXQUtYO0FBTEQsV0FBWSxXQUFXO0lBQ3JCLDBCQUFXLENBQUE7SUFDWCx3QkFBUyxDQUFBO0lBQ1Qsa0NBQW1CLENBQUE7SUFDbkIsb0RBQXFDLENBQUE7QUFDdkMsQ0FBQyxFQUxXLFdBQVcsS0FBWCxXQUFXLFFBS3RCO0FBRUQsTUFBTSxDQUFOLElBQVksY0FHWDtBQUhELFdBQVksY0FBYztJQUN4Qiw2Q0FBMkIsQ0FBQTtJQUMzQix5Q0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBSFcsY0FBYyxLQUFkLGNBQWMsUUFHekI7QUFFRCxNQUFNLENBQU4sSUFBWSxXQUlYO0FBSkQsV0FBWSxXQUFXO0lBQ3JCLDhCQUFlLENBQUE7SUFDZiw0QkFBYSxDQUFBO0lBQ2Isc0NBQXVCLENBQUE7QUFDekIsQ0FBQyxFQUpXLFdBQVcsS0FBWCxXQUFXLFFBSXRCO0FBRUQsTUFBTSxDQUFOLElBQVksZUFLWDtBQUxELFdBQVksZUFBZTtJQUN6QixrREFBK0IsQ0FBQTtJQUMvQixzQ0FBbUIsQ0FBQTtJQUNuQiw0Q0FBeUIsQ0FBQTtJQUN6QixnQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQUxXLGVBQWUsS0FBZixlQUFlLFFBSzFCO0FBRUQsTUFBTSxDQUFOLElBQVksa0JBS1g7QUFMRCxXQUFZLGtCQUFrQjtJQUM1Qix1Q0FBaUIsQ0FBQTtJQUNqQiwyQ0FBcUIsQ0FBQTtJQUNyQix5Q0FBbUIsQ0FBQTtJQUNuQiw2Q0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBTFcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUs3QjtBQUVELE1BQU0sQ0FBTixJQUFZLFVBSVg7QUFKRCxXQUFZLFVBQVU7SUFDcEIsK0JBQWlCLENBQUE7SUFDakIsbUNBQXFCLENBQUE7SUFDckIsbUNBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUpXLFVBQVUsS0FBVixVQUFVLFFBSXJCO0FBRUQsTUFBTSxDQUFOLElBQVksY0FPWDtBQVBELFdBQVksY0FBYztJQUN4QiwyREFBeUMsQ0FBQTtJQUN6QywyREFBeUMsQ0FBQTtJQUN6Qyw2QkFBVyxDQUFBO0lBQ1gsaURBQStCLENBQUE7SUFDL0IscUVBQW1ELENBQUE7SUFDbkQsK0RBQTZDLENBQUE7QUFDL0MsQ0FBQyxFQVBXLGNBQWMsS0FBZCxjQUFjLFFBT3pCO0FBRUQsTUFBTSxDQUFOLElBQVksY0FLWDtBQUxELFdBQVksY0FBYztJQUN4Qix1Q0FBcUIsQ0FBQTtJQUNyQixxQ0FBbUIsQ0FBQTtJQUNuQixtQ0FBaUIsQ0FBQTtJQUNqQix1Q0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBTFcsY0FBYyxLQUFkLGNBQWMsUUFLekI7QUFFRCxNQUFNLENBQU4sSUFBWSxTQU1YO0FBTkQsV0FBWSxTQUFTO0lBQ25CLDBCQUFhLENBQUE7SUFDYixzQ0FBeUIsQ0FBQTtJQUN6QixvQ0FBdUIsQ0FBQTtJQUN2QiwwQ0FBNkIsQ0FBQTtJQUM3Qiw0QkFBZSxDQUFBO0FBQ2pCLENBQUMsRUFOVyxTQUFTLEtBQVQsU0FBUyxRQU1wQjtBQUVELE1BQU0sQ0FBTixJQUFZLFFBR1g7QUFIRCxXQUFZLFFBQVE7SUFDbEIscUNBQXlCLENBQUE7SUFDekIsdUJBQVcsQ0FBQTtBQUNiLENBQUMsRUFIVyxRQUFRLEtBQVIsUUFBUSxRQUduQjtBQW9HRCxvQkFBb0I7QUFDcEIsTUFBTSxDQUFOLElBQVksaUJBR1g7QUFIRCxXQUFZLGlCQUFpQjtJQUMzQiw0Q0FBdUIsQ0FBQTtJQUN2Qiw0Q0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBSFcsaUJBQWlCLEtBQWpCLGlCQUFpQixRQUc1QiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEVudW1zXG5leHBvcnQgZW51bSBUYXNSb29tVHlwZSB7XG4gIFRBUyA9ICdUQVMnLFxuICBKTSA9ICdKTScsXG4gIFdFQklOQVIgPSAnV0VCSU5BUicsXG4gIFdFTExORVNTX01BTkFHRVIgPSAnV0VMTE5FU1NfTUFOQUdFUicsXG59XG5cbmV4cG9ydCBlbnVtIFRhc1Nlc3Npb25UeXBlIHtcbiAgU1BPTlRBTkVPVVMgPSAnU1BPTlRBTkVPVVMnLFxuICBTQ0hFRFVMRUQgPSAnU0NIRURVTEVEJyxcbn1cblxuZXhwb3J0IGVudW0gVGFzVXNlclJvbGUge1xuICBPV05FUiA9ICdPV05FUicsXG4gIFVTRVIgPSAnVVNFUicsXG4gIE1PREVSQVRPUiA9ICdNT0RFUkFUT1InLFxufVxuXG5leHBvcnQgZW51bSBUYXNCdXNpbmVzc1JvbGUge1xuICBBRE1JTl9NQU5BR0VSID0gJ0FETUlOX01BTkFHRVInLFxuICBNQU5BR0VSID0gJ01BTkFHRVInLFxuICBCQUNLT0ZGSUNFID0gJ0JBQ0tPRkZJQ0UnLFxuICBVU0VSID0gJ1VTRVInLFxufVxuXG5leHBvcnQgZW51bSBWaWRlb1Nlc3Npb25TdGF0dXMge1xuICBBQ1RJVkUgPSAnQUNUSVZFJyxcbiAgSU5BQ1RJVkUgPSAnSU5BQ1RJVkUnLFxuICBQRU5ESU5HID0gJ1BFTkRJTkcnLFxuICBTQ0hFRFVMRUQgPSAnU0NIRURVTEVEJyxcbn1cblxuZXhwb3J0IGVudW0gVXNlclN0YXR1cyB7XG4gIEFDVElWRSA9ICdBQ1RJVkUnLFxuICBJTkFDVElWRSA9ICdJTkFDVElWRScsXG4gIEFTU0lHTkVEID0gJ0FTU0lHTkVEJyxcbn1cblxuZXhwb3J0IGVudW0gVXNlckNhbGxBY3Rpb24ge1xuICBXQUlUSU5HX1JPT01fRU5URVIgPSAnV0FJVElOR19ST09NX0VOVEVSJyxcbiAgV0FJVElOR19ST09NX0xFQVZFID0gJ1dBSVRJTkdfUk9PTV9MRUFWRScsXG4gIEJBTiA9ICdCQU4nLFxuICBDSEFOR0VfU1RBVFVTID0gJ0NIQU5HRV9TVEFUVVMnLFxuICBSRVFVRVNUX0dFT0xPQ0FMSVpBVElPTiA9ICdSRVFVRVNUX0dFT0xPQ0FMSVpBVElPTicsXG4gIEFDVElWQVRFX0dFT0xPQ0FUSU9OID0gJ0FDVElWQVRFX0dFT0xPQ0FUSU9OJyxcbn1cblxuZXhwb3J0IGVudW0gUm9vbVVzZXJTdGF0dXMge1xuICBBU1NJR05FRCA9ICdBU1NJR05FRCcsXG4gIFdBSVRJTkcgPSAnV0FJVElORycsXG4gIEpPSU5FRCA9ICdKT0lORUQnLFxuICBGSU5JU0hFRCA9ICdGSU5JU0hFRCcsXG59XG5cbmV4cG9ydCBlbnVtIENhbGxTdGF0ZSB7XG4gIElETEUgPSAnSURMRScsXG4gIENPTk5FQ1RJTkcgPSAnQ09OTkVDVElORycsXG4gIENPTk5FQ1RFRCA9ICdDT05ORUNURUQnLFxuICBESVNDT05ORUNURUQgPSAnRElTQ09OTkVDVEVEJyxcbiAgRVJST1IgPSAnRVJST1InLFxufVxuXG5leHBvcnQgZW51bSBWaWV3TW9kZSB7XG4gIEZVTExTQ1JFRU4gPSAnRlVMTFNDUkVFTicsXG4gIFBJUCA9ICdQSVAnLFxufVxuXG4vLyBVc2VyIGludGVyZmFjZXNcbmV4cG9ydCBpbnRlcmZhY2UgVGFzQ3VycmVudFVzZXIge1xuICBpZDogbnVtYmVyO1xuICBuYW1lOiBzdHJpbmc7XG4gIGxhc3RuYW1lOiBzdHJpbmc7XG4gIHJvbGU6IFRhc1VzZXJSb2xlO1xufVxuXG4vKiogSW5wdXQgY29uZmlndXJhdGlvbiBmb3IgdGhlIFRBUyB2aWRlbyBjYWxsIGxpYnJhcnkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFzQ2FsbENvbmZpZyB7XG4gIC8vIFN0YXR1cyBlbmRwb2ludCBwYXJhbXNcbiAgYXBwb2ludG1lbnRJZD86IG51bWJlcjtcbiAgc2Vzc2lvbklkPzogc3RyaW5nO1xuICByb29tVHlwZTogVGFzUm9vbVR5cGU7XG4gIGVudGl0eUlkOiBudW1iZXI7XG4gIHRlbmFudDogc3RyaW5nO1xuICBidXNpbmVzc1JvbGU6IFRhc0J1c2luZXNzUm9sZTtcbiAgLy8gQ3VycmVudCB1c2VyIGluZm8gKGZvciB0b2tlbiByZXF1ZXN0KVxuICBjdXJyZW50VXNlcjogVGFzQ3VycmVudFVzZXI7XG59XG5cbi8vIEFQSSBSZXF1ZXN0L1Jlc3BvbnNlIGludGVyZmFjZXNcbmV4cG9ydCBpbnRlcmZhY2UgU3RhcnRTZXNzaW9uUmVxdWVzdCB7XG4gIHNlc3Npb25JZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGxhc3RuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2VuZXJhdGVUb2tlblJlcXVlc3Qge1xuICBzZXNzaW9uSWQ6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBsYXN0bmFtZTogc3RyaW5nO1xuICByb2xlVkM6IFRhc1VzZXJSb2xlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdlbmVyYXRlVG9rZW5SZXNwb25zZSB7XG4gIGNvbnRlbnQ6IHtcbiAgICB0b2tlbjogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb3h5VmlkZW9TdGF0dXNSZXF1ZXN0IHtcbiAgYXBwb2ludG1lbnRJZD86IG51bWJlcjtcbiAgYnVzaW5lc3NSb2xlPzogVGFzQnVzaW5lc3NSb2xlO1xuICB0ZW5hbnQ/OiBzdHJpbmc7XG4gIHNlc3Npb25JZD86IHN0cmluZztcbiAgcm9vbVR5cGU/OiBUYXNSb29tVHlwZTtcbiAgZW50aXR5SWQ/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJveHlWaWRlb1N0YXR1c1VzZXIge1xuICB1c2VySWQ6IG51bWJlcjtcbiAgcm9sOiBUYXNVc2VyUm9sZTtcbiAgc3RhdHVzOiBVc2VyU3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb3h5VmlkZW9TdGF0dXNSZXNwb25zZSB7XG4gIGNvbnRlbnQ6IHtcbiAgICB2aWRlb0NhbGxJZDogbnVtYmVyO1xuICAgIHNlc3Npb25JZDogc3RyaW5nO1xuICAgIHN0YXR1c1ZMOiBWaWRlb1Nlc3Npb25TdGF0dXM7XG4gICAgam9pbmFibGU6IGJvb2xlYW47XG4gICAgd2FpdGluZ1Jvb21BdmFpbGFibGU6IGJvb2xlYW47XG4gICAgYXBwb2ludG1lbnRJZDogbnVtYmVyO1xuICAgIGFjdGl2YXRlR2VvOiBib29sZWFuO1xuICAgIGdlb1JlcXVlc3RBY3RpdmU/OiBib29sZWFuOyAvLyBPd25lciBzZW50IGdlbyByZXF1ZXN0LCB3YWl0aW5nIGZvciB1c2VyIHJlc3BvbnNlXG4gICAgYWxsR2VvR3JhbnRlZD86IGJvb2xlYW47IC8vIEFsbCB1c2VycyBoYXZlIHJlc3BvbmRlZCB3aXRoIGdlb1xuICAgIHVzZXJzOiBQcm94eVZpZGVvU3RhdHVzVXNlcltdO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb3h5VmlkZW9GaW5pc2hSZXF1ZXN0IHtcbiAgc2Vzc2lvbklkOiBzdHJpbmc7XG4gIGJ1c2luZXNzUm9sZTogVGFzQnVzaW5lc3NSb2xlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpbmlzaFNlc3Npb25SZXNwb25zZSB7XG4gIGNvbnRlbnQ6IHtcbiAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgY2FsbFN0YXR1czogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb3h5VmlkZW9Vc2VyTW9kaWZ5UmVxdWVzdCB7XG4gIHVzZXJJZD86IG51bWJlcjtcbiAgdmlkZW9DYWxsSWQ6IG51bWJlcjtcbiAgYWN0aW9uPzogVXNlckNhbGxBY3Rpb247XG4gIG5ld1N0YXR1cz86IFJvb21Vc2VyU3RhdHVzO1xuICBsYXRpdHVkZT86IG51bWJlcjtcbiAgbG9uZ2l0dWRlPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdhaXRpbmdSb29tVXNlciB7XG4gIHVzZXJJZDogbnVtYmVyO1xuICBuYW1lOiBzdHJpbmc7XG4gIHN0YXR1czogUm9vbVVzZXJTdGF0dXM7XG59XG5cbi8vIEFwcG9pbnRtZW50IHR5cGVzXG5leHBvcnQgZW51bSBBcHBvaW50bWVudFN0YXR1cyB7XG4gIENPTkZJUk1FRCA9ICdDT05GSVJNRUQnLFxuICBDQU5DRUxMRUQgPSAnQ0FOQ0VMTEVEJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUYXNBcHBvaW50bWVudCB7XG4gIGlkOiBudW1iZXI7XG4gIGFnZW5kYUlkOiBudW1iZXI7XG4gIGRhdGU6IHN0cmluZzsgICAgICAgLy8gXCJZWVlZLU1NLUREXCJcbiAgc3RhcnRUaW1lOiBzdHJpbmc7ICAvLyBcIkhIOm1tXCJcbiAgZW5kVGltZTogc3RyaW5nOyAgICAvLyBcIkhIOm1tXCJcbiAgYm9va2luZ1R5cGU6IHN0cmluZztcbiAgc3RhdHVzOiBBcHBvaW50bWVudFN0YXR1cztcbiAgdGl0bGU6IHN0cmluZztcbiAgbm90ZXM6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRBcHBvaW50bWVudHNSZXF1ZXN0IHtcbiAgZnJvbURhdGU6IHN0cmluZzsgIC8vIFlZWVktTU0tRERcbiAgdG9EYXRlOiBzdHJpbmc7ICAgIC8vIFlZWVktTU0tRERcbn1cbiJdfQ==
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class GeolocationService {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.cachedPosition = null;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Request current geolocation position using Web Geolocation API.
|
|
9
|
+
* Works in both browser and Capacitor environments.
|
|
10
|
+
* @returns Promise with {latitude, longitude} or null if denied/unavailable
|
|
11
|
+
*/
|
|
12
|
+
async getCurrentPosition() {
|
|
13
|
+
if (!navigator.geolocation) {
|
|
14
|
+
console.warn('[GeolocationService] Geolocation not supported');
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
return new Promise((resolve) => {
|
|
18
|
+
navigator.geolocation.getCurrentPosition((position) => {
|
|
19
|
+
const geoPosition = {
|
|
20
|
+
latitude: position.coords.latitude,
|
|
21
|
+
longitude: position.coords.longitude,
|
|
22
|
+
};
|
|
23
|
+
this.cachedPosition = geoPosition;
|
|
24
|
+
resolve(geoPosition);
|
|
25
|
+
}, (error) => {
|
|
26
|
+
console.warn('[GeolocationService] Geolocation error:', error.message);
|
|
27
|
+
resolve(null);
|
|
28
|
+
}, {
|
|
29
|
+
enableHighAccuracy: false,
|
|
30
|
+
timeout: 30000,
|
|
31
|
+
maximumAge: 60000,
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Get the cached position from the last successful request.
|
|
37
|
+
*/
|
|
38
|
+
getCachedPosition() {
|
|
39
|
+
return this.cachedPosition;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Clear the cached position.
|
|
43
|
+
*/
|
|
44
|
+
clearCache() {
|
|
45
|
+
this.cachedPosition = null;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
GeolocationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GeolocationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
49
|
+
GeolocationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GeolocationService, providedIn: 'root' });
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GeolocationService, decorators: [{
|
|
51
|
+
type: Injectable,
|
|
52
|
+
args: [{
|
|
53
|
+
providedIn: 'root',
|
|
54
|
+
}]
|
|
55
|
+
}] });
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbG9jYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rhcy11ZWxsLXNkay9zcmMvbGliL3NlcnZpY2VzL2dlb2xvY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFVM0MsTUFBTSxPQUFPLGtCQUFrQjtJQUgvQjtRQUlVLG1CQUFjLEdBQXVCLElBQUksQ0FBQztLQWlEbkQ7SUEvQ0M7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxrQkFBa0I7UUFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUU7WUFDMUIsT0FBTyxDQUFDLElBQUksQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO1lBQy9ELE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDN0IsU0FBUyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FDdEMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtnQkFDWCxNQUFNLFdBQVcsR0FBZ0I7b0JBQy9CLFFBQVEsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVE7b0JBQ2xDLFNBQVMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVM7aUJBQ3JDLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLGNBQWMsR0FBRyxXQUFXLENBQUM7Z0JBQ2xDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN2QixDQUFDLEVBQ0QsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDUixPQUFPLENBQUMsSUFBSSxDQUFDLHlDQUF5QyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDdkUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hCLENBQUMsRUFDRDtnQkFDRSxrQkFBa0IsRUFBRSxLQUFLO2dCQUN6QixPQUFPLEVBQUUsS0FBSztnQkFDZCxVQUFVLEVBQUUsS0FBSzthQUNsQixDQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLGlCQUFpQjtRQUN0QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUVEOztPQUVHO0lBQ0ksVUFBVTtRQUNmLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO0lBQzdCLENBQUM7O2dIQWpEVSxrQkFBa0I7b0hBQWxCLGtCQUFrQixjQUZqQixNQUFNOzRGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2VvUG9zaXRpb24ge1xuICBsYXRpdHVkZTogbnVtYmVyO1xuICBsb25naXR1ZGU6IG51bWJlcjtcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEdlb2xvY2F0aW9uU2VydmljZSB7XG4gIHByaXZhdGUgY2FjaGVkUG9zaXRpb246IEdlb1Bvc2l0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFJlcXVlc3QgY3VycmVudCBnZW9sb2NhdGlvbiBwb3NpdGlvbiB1c2luZyBXZWIgR2VvbG9jYXRpb24gQVBJLlxuICAgKiBXb3JrcyBpbiBib3RoIGJyb3dzZXIgYW5kIENhcGFjaXRvciBlbnZpcm9ubWVudHMuXG4gICAqIEByZXR1cm5zIFByb21pc2Ugd2l0aCB7bGF0aXR1ZGUsIGxvbmdpdHVkZX0gb3IgbnVsbCBpZiBkZW5pZWQvdW5hdmFpbGFibGVcbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRDdXJyZW50UG9zaXRpb24oKTogUHJvbWlzZTxHZW9Qb3NpdGlvbiB8IG51bGw+IHtcbiAgICBpZiAoIW5hdmlnYXRvci5nZW9sb2NhdGlvbikge1xuICAgICAgY29uc29sZS53YXJuKCdbR2VvbG9jYXRpb25TZXJ2aWNlXSBHZW9sb2NhdGlvbiBub3Qgc3VwcG9ydGVkJyk7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIG5hdmlnYXRvci5nZW9sb2NhdGlvbi5nZXRDdXJyZW50UG9zaXRpb24oXG4gICAgICAgIChwb3NpdGlvbikgPT4ge1xuICAgICAgICAgIGNvbnN0IGdlb1Bvc2l0aW9uOiBHZW9Qb3NpdGlvbiA9IHtcbiAgICAgICAgICAgIGxhdGl0dWRlOiBwb3NpdGlvbi5jb29yZHMubGF0aXR1ZGUsXG4gICAgICAgICAgICBsb25naXR1ZGU6IHBvc2l0aW9uLmNvb3Jkcy5sb25naXR1ZGUsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB0aGlzLmNhY2hlZFBvc2l0aW9uID0gZ2VvUG9zaXRpb247XG4gICAgICAgICAgcmVzb2x2ZShnZW9Qb3NpdGlvbik7XG4gICAgICAgIH0sXG4gICAgICAgIChlcnJvcikgPT4ge1xuICAgICAgICAgIGNvbnNvbGUud2FybignW0dlb2xvY2F0aW9uU2VydmljZV0gR2VvbG9jYXRpb24gZXJyb3I6JywgZXJyb3IubWVzc2FnZSk7XG4gICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGVuYWJsZUhpZ2hBY2N1cmFjeTogZmFsc2UsIC8vIFVzZSBsb3dlciBhY2N1cmFjeSBmb3IgZmFzdGVyIHJlc3BvbnNlXG4gICAgICAgICAgdGltZW91dDogMzAwMDAsIC8vIDMwIHNlY29uZHMgdGltZW91dFxuICAgICAgICAgIG1heGltdW1BZ2U6IDYwMDAwLFxuICAgICAgICB9XG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgY2FjaGVkIHBvc2l0aW9uIGZyb20gdGhlIGxhc3Qgc3VjY2Vzc2Z1bCByZXF1ZXN0LlxuICAgKi9cbiAgcHVibGljIGdldENhY2hlZFBvc2l0aW9uKCk6IEdlb1Bvc2l0aW9uIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVkUG9zaXRpb247XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXIgdGhlIGNhY2hlZCBwb3NpdGlvbi5cbiAgICovXG4gIHB1YmxpYyBjbGVhckNhY2hlKCk6IHZvaWQge1xuICAgIHRoaXMuY2FjaGVkUG9zaXRpb24gPSBudWxsO1xuICB9XG59XG4iXX0=
|