@situm/react-native 3.0.0-beta.0 → 3.0.0-beta.2

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.
Files changed (56) hide show
  1. package/README.md +60 -506
  2. package/android/.gradle/5.6.4/fileHashes/fileHashes.lock +0 -0
  3. package/android/.gradle/vcs-1/gc.properties +0 -0
  4. package/android/.idea/android.iml +9 -0
  5. package/android/.idea/gradle.xml +13 -0
  6. package/android/.idea/modules.xml +8 -0
  7. package/android/.idea/vcs.xml +6 -0
  8. package/android/.idea/workspace.xml +63 -0
  9. package/android/local.properties +8 -0
  10. package/lib/commonjs/index.js +12 -0
  11. package/lib/commonjs/index.js.map +1 -1
  12. package/lib/commonjs/sdk/types/index.d.js +349 -0
  13. package/lib/commonjs/sdk/types/index.d.js.map +1 -1
  14. package/lib/commonjs/utils/requestPermission.js +2 -2
  15. package/lib/commonjs/utils/requestPermission.js.map +1 -1
  16. package/lib/commonjs/wayfinding/components/MapView.js +97 -12
  17. package/lib/commonjs/wayfinding/components/MapView.js.map +1 -1
  18. package/lib/commonjs/wayfinding/hooks/index.js +40 -80
  19. package/lib/commonjs/wayfinding/hooks/index.js.map +1 -1
  20. package/lib/commonjs/wayfinding/store/index.js +8 -28
  21. package/lib/commonjs/wayfinding/store/index.js.map +1 -1
  22. package/lib/commonjs/wayfinding/utils/mapper.js +6 -4
  23. package/lib/commonjs/wayfinding/utils/mapper.js.map +1 -1
  24. package/lib/module/index.js +1 -0
  25. package/lib/module/index.js.map +1 -1
  26. package/lib/module/sdk/types/index.d.js +373 -1
  27. package/lib/module/sdk/types/index.d.js.map +1 -1
  28. package/lib/module/utils/requestPermission.js +2 -2
  29. package/lib/module/utils/requestPermission.js.map +1 -1
  30. package/lib/module/wayfinding/components/MapView.js +97 -11
  31. package/lib/module/wayfinding/components/MapView.js.map +1 -1
  32. package/lib/module/wayfinding/hooks/index.js +8 -49
  33. package/lib/module/wayfinding/hooks/index.js.map +1 -1
  34. package/lib/module/wayfinding/store/index.js +3 -24
  35. package/lib/module/wayfinding/store/index.js.map +1 -1
  36. package/lib/module/wayfinding/utils/mapper.js +6 -4
  37. package/lib/module/wayfinding/utils/mapper.js.map +1 -1
  38. package/lib/typescript/src/index.d.ts +1 -0
  39. package/lib/typescript/src/index.d.ts.map +1 -1
  40. package/lib/typescript/src/wayfinding/components/MapView.d.ts +5 -2
  41. package/lib/typescript/src/wayfinding/components/MapView.d.ts.map +1 -1
  42. package/lib/typescript/src/wayfinding/hooks/index.d.ts +3 -12
  43. package/lib/typescript/src/wayfinding/hooks/index.d.ts.map +1 -1
  44. package/lib/typescript/src/wayfinding/store/index.d.ts +3 -62
  45. package/lib/typescript/src/wayfinding/store/index.d.ts.map +1 -1
  46. package/lib/typescript/src/wayfinding/utils/mapper.d.ts +3 -2
  47. package/lib/typescript/src/wayfinding/utils/mapper.d.ts.map +1 -1
  48. package/package.json +12 -9
  49. package/src/index.ts +1 -0
  50. package/src/sdk/types/index.d.ts +80 -0
  51. package/src/utils/requestPermission.ts +2 -2
  52. package/src/wayfinding/components/MapView.tsx +329 -217
  53. package/src/wayfinding/hooks/index.ts +17 -78
  54. package/src/wayfinding/store/index.tsx +13 -80
  55. package/src/wayfinding/types/index.d.ts +10 -11
  56. package/src/wayfinding/utils/mapper.ts +16 -13
@@ -0,0 +1,63 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="AutoImportSettings">
4
+ <option name="autoReloadType" value="NONE" />
5
+ </component>
6
+ <component name="ChangeListManager">
7
+ <list default="true" id="db2c412e-9f6b-4909-82d6-141f9aeaf0f6" name="Changes" comment="">
8
+ <change beforePath="$PROJECT_DIR$/../example/android/app/src/main/AndroidManifest.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../example/android/app/src/main/AndroidManifest.xml" afterDir="false" />
9
+ <change beforePath="$PROJECT_DIR$/../example/src/situm.tsx" beforeDir="false" afterPath="$PROJECT_DIR$/../example/src/situm.tsx" afterDir="false" />
10
+ <change beforePath="$PROJECT_DIR$/../example/yarn.lock" beforeDir="false" afterPath="$PROJECT_DIR$/../example/yarn.lock" afterDir="false" />
11
+ </list>
12
+ <option name="SHOW_DIALOG" value="false" />
13
+ <option name="HIGHLIGHT_CONFLICTS" value="true" />
14
+ <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
15
+ <option name="LAST_RESOLUTION" value="IGNORE" />
16
+ </component>
17
+ <component name="ExternalProjectsManager">
18
+ <system id="GRADLE">
19
+ <state>
20
+ <projects_view>
21
+ <tree_state>
22
+ <expand />
23
+ <select />
24
+ </tree_state>
25
+ </projects_view>
26
+ </state>
27
+ </system>
28
+ </component>
29
+ <component name="Git.Settings">
30
+ <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/.." />
31
+ </component>
32
+ <component name="MarkdownSettingsMigration">
33
+ <option name="stateVersion" value="1" />
34
+ </component>
35
+ <component name="ProjectId" id="2MVC37412ztjIKQefc86OZl9bne" />
36
+ <component name="ProjectLevelVcsManager" settingsEditedManually="true" />
37
+ <component name="ProjectViewState">
38
+ <option name="hideEmptyMiddlePackages" value="true" />
39
+ <option name="showLibraryContents" value="true" />
40
+ </component>
41
+ <component name="PropertiesComponent"><![CDATA[{
42
+ "keyToString": {
43
+ "RunOnceActivity.OpenProjectViewOnStart": "true",
44
+ "RunOnceActivity.ShowReadmeOnStart": "true",
45
+ "RunOnceActivity.cidr.known.project.marker": "true",
46
+ "cidr.known.project.marker": "true",
47
+ "dart.analysis.tool.window.visible": "false",
48
+ "last_opened_file_path": "/home/alba/Descargas/GitRepos/situm-react-native-plugin/example/android",
49
+ "show.migrate.to.gradle.popup": "false"
50
+ }
51
+ }]]></component>
52
+ <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
53
+ <component name="TaskManager">
54
+ <task active="true" id="Default" summary="Default task">
55
+ <changelist id="db2c412e-9f6b-4909-82d6-141f9aeaf0f6" name="Changes" comment="" />
56
+ <created>1677843160978</created>
57
+ <option name="number" value="Default" />
58
+ <option name="presentableId" value="Default" />
59
+ <updated>1677843160978</updated>
60
+ </task>
61
+ <servers />
62
+ </component>
63
+ </project>
@@ -0,0 +1,8 @@
1
+ ## This file must *NOT* be checked into Version Control Systems,
2
+ # as it contains information specific to your local configuration.
3
+ #
4
+ # Location of the SDK. This is only used by Gradle.
5
+ # For customization when using a Version Control System, please read the
6
+ # header note.
7
+ #Fri Mar 03 12:32:53 CET 2023
8
+ sdk.dir=/home/alba/Android/Sdk
@@ -18,6 +18,18 @@ Object.keys(_index).forEach(function (key) {
18
18
  }
19
19
  });
20
20
  });
21
+ var _wayfinding = require("./wayfinding");
22
+ Object.keys(_wayfinding).forEach(function (key) {
23
+ if (key === "default" || key === "__esModule") return;
24
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
25
+ if (key in exports && exports[key] === _wayfinding[key]) return;
26
+ Object.defineProperty(exports, key, {
27
+ enumerable: true,
28
+ get: function () {
29
+ return _wayfinding[key];
30
+ }
31
+ });
32
+ });
21
33
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
34
  // Definitions
23
35
  var _default = _sdk.default;
@@ -1 +1 @@
1
- {"version":3,"names":["_sdk","_interopRequireDefault","require","_index","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","obj","__esModule","default","_default","SitumPlugin"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAF,MAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,MAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,MAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AAAoC,SAAAN,uBAAAe,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AADpC;AAAA,IAAAG,QAAA,GAGeC,YAAW;AAAAR,OAAA,CAAAM,OAAA,GAAAC,QAAA"}
1
+ {"version":3,"names":["_sdk","_interopRequireDefault","require","_index","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_wayfinding","obj","__esModule","default","_default","SitumPlugin"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAF,MAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,MAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,MAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,WAAA,GAAAd,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAW,WAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,WAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,WAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AAA6B,SAAAN,uBAAAgB,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAF7B;AAAA,IAAAG,QAAA,GAIeC,YAAW;AAAAT,OAAA,CAAAO,OAAA,GAAAC,QAAA"}
@@ -3,4 +3,353 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.NavigationUpdateType = exports.NavigationStatus = exports.LocationStatusName = void 0;
7
+ /* eslint-disable @typescript-eslint/no-explicit-any */
8
+ /* eslint-disable @typescript-eslint/ban-types */
9
+ /** @name
10
+ * Building
11
+ * @description
12
+ * A Building object definition
13
+ * @property {string} buildingIdentifier - The unique identifier of the resource
14
+ * @property {string} name - The building name that is appropriate for display to the user.
15
+ * @property {string} address - Te building address.
16
+ * @property {Bounds} bounds - Compute corners of this building, without rotation, in earth coordinates.
17
+ * @property {Bounds} boundsRotated - Compute corners of this building, with rotation, in earth coordinates.
18
+ * @property {Coordinate} center - Center of the building's base, as geographical coordinate.
19
+ * @property {Dimensions} Dimensions - Dimensions of building's base (height and width) in meters.
20
+ * @property {string} infoHtml - Additional information about building, formatted with HTML
21
+ * @property {string} pictureThumbUrl - The URL of building thumbnail image
22
+ * @property {string} pictureUrl - The URL of building image
23
+ * @property {number} rotation - Rotation angle of the building's base, relative to the west-east axis, increasing in counter-clockwise, being 0 the west-east axis.
24
+ * @property {string} userIdentifier - Unique identifier of the owner user of the building
25
+ * @property {object} customFields - Map of custom fields, indexed by their name.
26
+ */
27
+ /** @name
28
+ * Bounds
29
+ * @description
30
+ * Represents a rectangle bounds in a greographic 2D space.
31
+ * @property {Coordinate} northEast - The coordinate of the north-east corner of the bound.
32
+ * @property {Coordinate} northWest - The coordinate of the north-west corner of the bound.
33
+ * @property {Coordinate} southEast - The coordinate of the south-east corner of the bound.
34
+ * @property {Coordinate} southWest - The coordinate of the south-east corner of the bound.
35
+ */
36
+ /** @name
37
+ * Dimensions
38
+ * @description
39
+ * Define 2D dimensions of a rectangular area.
40
+ * @property {number} width - Width of rectangle in meters
41
+ * @property {number} height - Height of rectangle in meters.
42
+ */
43
+ /**
44
+ * @name
45
+ * Coordinate
46
+ * @description
47
+ * A structure that contains geographical coordinate.
48
+ * @property {number} latitude - Latitude in degrees
49
+ * @property {number} longitude - Longitude in degrees
50
+ */
51
+ /**
52
+ * @name
53
+ * CartesianCoordinate
54
+ * @description
55
+ * A structure that contains cartesian coordinate.
56
+ * @property {number} x - Value of coordinate at x-axis
57
+ * @property {number} y - Value of coordinate at y-axis
58
+ */
59
+ /**
60
+ * @name
61
+ * Floor
62
+ * @description
63
+ * Floor of a building.
64
+ * @property {number} altitude - Altitude of the floor above ground level, in meters.
65
+ * @property {string} buildingIdentifier - The identifier of building which this floor belongs.
66
+ * @property {number} level - The number of the floor.
67
+ * @property {string} name - The name of the floor
68
+ * @property {string} mapUrl - The floor map image url
69
+ * @property {number} scale - The scale of the floor image, in px/meters
70
+ * @property {string} floorIdentifier - The unique identifier of the resource
71
+ */
72
+ /**
73
+ * @name
74
+ * POI
75
+ * @description
76
+ * Point of Interest, associated to a building, regardless of whether it's place inside or outside the building.
77
+ * @property {string} identifier - The unique identifier of the resource
78
+ * @property {string} buildingIdentifier - Identifier of building to which the POI belongs.
79
+ * @property {CartesianCoordinate} cartesianCoordinate - Cartesian coordinate of this position, relative to building {@link Bounds}.
80
+ * @property {Coordinate} coordinate - Geographical coordinate of this position
81
+ * @property {string} floorIdentifier - If this POI is outside the building (isOutdoor == true), this field has no meaning.
82
+ * @property {string} poiName - A name for the POI, appropriate for display to the user.
83
+ * @property {Point} position - {@link Point} where the point is located.
84
+ * @property {boolean} isIndoor - Whether the POI is placed outside the building or not.
85
+ * @property {boolean} isOutdoor - Whether the POI is placed outside the building or not.
86
+ * @property {PoiCategory} category - Category of the POI
87
+ * @property {string} infoHtml - Additional information about POI, in HTML
88
+ * @property {object} customFields - Map of custom fields, indexed by their name.
89
+ */
90
+ /**
91
+ * @name
92
+ * Geofence
93
+ * @description
94
+ * Point of Interest, associated to a building, regardless of whether it's place inside or outside the building.
95
+ * @property {string} identifier - The unique identifier of the resource
96
+ * @property {string} buildingIdentifier - Identifier of building to which the POI belongs.
97
+ * @property {string} floorIdentifier - If this POI is outside the building (isOutdoor == true), this field has no meaning.
98
+ * @property {string} name - A name for the geofence, appropriate for display to the user.
99
+ * @property {string} infoHtml - Additional information about POI, in HTML
100
+ * @property {Point[]} polygonPoints - List of points of that define the area of the geofence
101
+ * @property {object} customFields - Map of custom fields, indexed by their name.
102
+ */
103
+ /**
104
+ * @name
105
+ * PoiCategory
106
+ * @description
107
+ * Category of Point of Interest.
108
+ * @property {string} poiCategoryCode - Unique code of the category
109
+ * @property {string} poiCategoryName - The category name appropriate for display to the user
110
+ * @property {string} icon_selected - The selected icon url
111
+ * @property {string} icon_unselected - The unselected icon url
112
+ * @property {boolean} public - Whether the category is public or not
113
+ */
114
+ /**
115
+ * @name
116
+ * Point
117
+ * @description
118
+ * Associate geographical coordinate (Location) with Building and Floor (Cartography) and cartesian coordinate relative to that building.
119
+ * @property {string} buildingIdentifier - Unique identifier for the building to which this point belongs
120
+ * @property {CartesianCoordinate} cartesianCoordinate - Cartesian coordinate (in meters) relative to the Bounds of building's base.
121
+ * @property {Coordinate} coordinate - Geographic coordinate (latitude, longitude) of the point, regardless of whether it's placed inside or outside the building.
122
+ * @property {string} floorIdentifier - Floor identifier (inside the building) where this point is placed.
123
+ * @property {boolean} isIndoor - If the POI is inside the building.
124
+ * @property {boolean} idOutdoor - If the POI is outside the building.
125
+ */
126
+ /**
127
+ * @name
128
+ * Route
129
+ * @description
130
+ * Route between two points.
131
+ * @property {RouteStep[]} edges - Ordered list of steps to go to the goal point
132
+ * @property {RouteStep} firstStep - First step
133
+ * @property {Point} from - Point where the route starts.
134
+ * @property {Indication} indications - Ordered list of instructions to go to the destination
135
+ * @property {RouteStep} lastStep - Last step
136
+ * @property {Point[]} nodes - A collection of points of the route (not ordered)
137
+ * @property {Point[]} points - List of ordered points of the route
138
+ * @property {Point} to - Last point and goal of the route.
139
+ * @property {RouteStep[]} steps - Ordered list of steps to go to the goal point
140
+ * @property {RouteSegment[]} segments - List of segments formed by consecutive points and a floor identifier
141
+ */
142
+ /**
143
+ * @name
144
+ * RouteStep
145
+ * @description
146
+ * A fragment of a route, described by the initial point from and the last point to of the fragment, and some information about the step within the route.
147
+ * @property {number} distance - Distance between from and to in meters.
148
+ * @property {number} distanceToGoal - Distance in meters between the start point of this step (from) and the last point in the route ('to' of the last step).
149
+ * @property {Point} from - Start point of this step.
150
+ * @property {number} id - Position of this RouteStep in the list of steps (Route.steps) of the route to which it belongs.
151
+ * @property {Point} to - End point of this step.
152
+ * @property {boolean} isFirst - Returns true if this is the first step in the route.
153
+ * @property {boolean} isLast - Returns true if this is the last step in the route.
154
+ */
155
+ /**
156
+ * @name
157
+ * RouteSegment
158
+ * @description
159
+ * A fragment of a route, described by a floor identifier and a list of consecutive points from the same floor
160
+ * @property {string} floorIdentifier - Identifier of the floor containing the points in this segment
161
+ * @property {Point[]} points - Consecutive points in the same floor forming a path
162
+ */
163
+ /**
164
+ * @name
165
+ * Indication
166
+ * @description
167
+ * Represents the instruction that a user should follow when on a RouteStep to continue the route.
168
+ * @property {number} distance - The distance between the origin and destination
169
+ * @property {number} distanceToNextLevel - The number of levels between the origin and destination
170
+ * @property {string} indicationType - The Indication.Action of the instruction as String
171
+ * @property {number} orientation - The angle a user should change his direction in order to go from the origin to the destination.
172
+ * @property {string} orientationType - The Indication.Orientation of the instruction as String
173
+ * @property {number} stepIdxDestination - The index of the indication's step of destination.
174
+ * @property {number} stepIdxOrigin - The index of the indication's step of origin
175
+ * @property {boolean} neededLevelChange - If the user should change the level in order to arrive to destination
176
+ */
177
+ /**
178
+ * @name
179
+ * NavigationProgress
180
+ * @description
181
+ * Provides information of the progress of a user while following a route.
182
+ * @property {Point} closestPointInRoute - Closest point in the route from the user location provided . @deprecated Use closestLocationInRoute instead.
183
+ * @property {Location} closestLocationInRoute - Closest location in the route from the user location provided .
184
+ * @property {number} distanceToClosestPointInRoute - Distance between the real user location (provided to updateWithLocation(Location)) and the closest route location.
185
+ * @property {Indication} currentIndication - The current indication.
186
+ * @property {Indication} nextIndication - The next indication.
187
+ * @property {number} currentStepIndex - The index of the closest route step to the user, where closestLocationInRoute is.
188
+ * @property {number} distanceToGoal - The distance in meters from closestLocationInRoute to route's goal point.
189
+ * @property {number} distanceToEndStep - The distance in meters to go from closestLocationInRoute to the end of the current step.
190
+ * @property {number} timeToEndStep - The estimated time to go from closestLocationInRoute to the end of the current route step, considering a speed of 1 meter/second.
191
+ * @property {number} timeToGoal - The estimated time to go from closestLocationInRoute to the goal/end of route, considering a speed of 1 meter/second.
192
+ * @property {RouteStep} routeStep - The closest route step to the user, where closestLocationInRoute is.
193
+ * @property {Point[]} points - List of ordered points of the remaining route
194
+ * @property {RouteSegment[]} segments - List of segments formed by consecutive points and a floor identifier
195
+ */
196
+ /**
197
+ * @name
198
+ * SitumEvent
199
+ * @description
200
+ * An event: POI with radius, conversion area and asociated statistics. It is intended for usage in marketing apps.
201
+ * @property {number} buildingIdentifier - The identifier of the building this floor belongs to. Deprecated, use trigger.center.buildingIdentifier instead
202
+ * @property {number} identifier - Unique identifier of the SitumEvent.
203
+ * @property {number} floorIdentifier - The identifier of the floor this event is located at. @deprecated, use trigger.center.floorIdentifier instead
204
+ * @property {string} infoHtml - Information contained into the event, in HTML format.
205
+ * @property {SitumConversionArea} conversionArea - Location where the event is located. @deprecated, use conversion instead
206
+ * @property {Circle} conversion - Location where the event is located.
207
+ * @property {Circle} trigger - Location where the event should be fired
208
+ * @property {object} customFields - Key-value pairs that allow to extend and fully customize the information associated with the event.
209
+ * @property {number} radius - Radius of the event associated area. @deprecated, use trigger.radius instead
210
+ * @property {string} name - Name of the event
211
+ * @property {number} x - Center of the event in the x-axis. @deprecated, use trigger.center.cartesianCoordinate.x instead
212
+ * @property {number} y - Center of the event in the y-axis. @deprecated, use trigger.center.cartesianCoordinate.y instead
213
+ */
214
+ /**
215
+ * @name
216
+ * SitumConversionArea
217
+ * @description
218
+ * A rectangular area of a floor defining the conversion area of an event
219
+ * @property {number} floorIdentifier - The identifier of the floor the SitumConversionArea is located at.
220
+ * @property {object} topLeft - Top-left corner
221
+ * @property {object} topRight - Top-right corner
222
+ * @property {object} bottomLeft - Bottom-left corner
223
+ * @property {object} bottomRight - Bottom-right corner
224
+ */
225
+ /**
226
+ * @name
227
+ * Circle
228
+ * @description
229
+ * A circular area
230
+ * @property {Point} center - The center of the circle
231
+ * @property {number} radius - The radius of the circle
232
+ */
233
+ /**
234
+ * @name
235
+ * LocationOptions
236
+ * @description
237
+ * A data object that contains parameters for the location service, LocationManager.
238
+ * @property {number} buildingIdentifier - Identifier of the building on which the positioning will be started
239
+ * @property {number} interval - Default interval (in milliseconds) to notify location updates
240
+ * @property {string} indoorProvider - Default indoor provider. Possible values are INPHONE and SUPPORT
241
+ * @property {boolean} useBle - Defines whether or not to use BLE for positioning
242
+ * @property {boolean} useWifi - Defines whether or not to use Wi-Fi for positioning
243
+ * @property {boolean} useGps - Defines whether or not to use the GPS for indoor positioning
244
+ * @property {boolean} useBarometer - Defines whether or not to use barometer for indoor positioning
245
+ * @property {string} motionMode - Default motion mode. Possible values are BY_CAR, BY_FOOT and RADIOMAX
246
+ * @property {boolean} useForegroundService - Defines whether or not to activate the {@link http://developers.situm.es/pages/android/using_situm_sdk_background.html foreground service}
247
+ * @property {boolean} useDeadReckoning - Defines whether ot not to use dead reckoning to get fast position updates using only the inertial sensors, between the server position updates.
248
+ * @property {OutdoorLocationOptions} outdoorLocationOptions - Outdoor location options. Only used in an indoor/outdoor request
249
+ * @property {BeaconFilter[]} beaconFilters - Deprecated - Beacon filters to be handled during scan time, otherwise only Situm beacons will be scanned. Can be invoked multiple times to add as much beacon filters as you want. The SitumSDK now does it automatically
250
+ * @property {number} smallestDisplacement - Default smallest displacement to nofiy location updates
251
+ * @property {string} realtimeUpdateInterval - Default interval to send locations to the Realtime. Possible values are REALTIME, FAST, NORMAL, SLOW and BATTERY_SAVER
252
+ * @property {boolean} autoEnableBleDuringPositioning - Set if the BLE should be re-enabled during positioning if the ble is used. Android only
253
+ */
254
+ /**
255
+ * @name
256
+ * LocationRequest
257
+ * @description
258
+ * A data object that contains parameters for the location service, LocationManager.
259
+ * @type {array}
260
+ * @property {Building} building 0 - Building on which the positioning will be started
261
+ * @property {LocationOptions} locationOptions 1 - Location options.
262
+ */
263
+ /**
264
+ * @name
265
+ * NavigationRequest
266
+ * @description
267
+ * A data object that contains parameters for the navigation service, NavigationManager.
268
+ * @property {number} distanceToChangeIndicationThreshold - Distance threshold from when the next indication is considered reached.
269
+ * @property {number} distanceToFloorChangeThreshold - Distance threshold from when a floor change is considered reached.
270
+ * @property {number} distanceToGoalThreshold - Distance threshold from when the goal is considered reached.
271
+ * @property {number} distanceToIgnoreFirstIndication - Maximum distance to ignore the first indication when navigating a route (Only available for Android).
272
+ * @property {number} ignoreLowQualityLocations - Set if low quality locations should be ignored. (Only available for Android).
273
+ * @property {number} indicationsInterval - Time to wait between indications.
274
+ * @property {number} outsideRouteThreshold - Set the distance to consider the use is outside of the route. A type=userOutsideRoute will be sent trough the NavigationListener .
275
+ * @property {number} roundIndicationsStep - Step that will be used to round indications distance.
276
+ * @property {number} timeToFirstIndication - Time to wait until the first indication is returned.
277
+ * @property {number} timeToIgnoreUnexpectedFloorChanges - Time (in millis) to ignore the locations received during navigation, when the next indication is a floor change, if the locations are in a wrong floor (not in origin or destination floors).
278
+ */
279
+ /**
280
+ * @name
281
+ * DirectionsRequest
282
+ * @description
283
+ * A data object that contains the request for directions.
284
+ * @property {Building} positioningBuilding
285
+ * @property {Point|Location} from - Current user's position as the starting point of the route.
286
+ * @property {Point|POI} to - Point to, where the route should end.
287
+ * @property {DirectionsOptions} options - Options that can be added to the request.
288
+ */
289
+ /**
290
+ * @name
291
+ * DirectionsOptions
292
+ * @description
293
+ * A data object that contains the directions options.
294
+ * @property {boolean} minimizeFloorChanges - Defines wheter or not the route should be calculated minimizing the floor changes even if the result is longer.
295
+ * @property {boolean} accessibleRoute - Deprecated, use accessibilityMode. Defines wheter or not the route has to be suitable for wheel chairs (true) or not (false).
296
+ * @property {boolean} accessible - Deprecated, use accessibilityMode. Defines wheter or not the route has to be suitable for wheel chairs (true) or not (false).
297
+ * @property {string} accessibilityMode - Defines the accessibility mode of the route. Possible values are: CHOOSE_SHORTEST, ONLY_NOT_ACCESSIBLE_FLOOR_CHANGES, ONLY_ACCESSIBLE
298
+ * @property {number} startingAngle - Current user's orientation in degrees.
299
+ */
300
+ /**
301
+ * @name
302
+ * OutdoorLocationOptions
303
+ * @description
304
+ * Outdoor location options are only used in indoor-outdoor mode (Only available for Android)
305
+ * @property {boolean} continuousMode - Environment detection continuous mode (true) or burst mode (false).
306
+ * @property {boolean} userDefinedThreshold
307
+ * @property {number} burstInterval - Interval to scan for GPS and detect the environment (in seconds).
308
+ * @property {number} averageSnrThreshold
309
+ */
310
+ /**
311
+ * @name
312
+ * BeaconFilter
313
+ * @description
314
+ * Represents a BLE filter. Now the only field is the BLE proximity UUID
315
+ * @property {string} uuid - Assigns the proximity UUID
316
+ */
317
+ /**
318
+ * @name
319
+ * RealTimeRequest
320
+ * @description
321
+ * A data object that contains the parameters to process realtime data of the users.
322
+ * @property {Building} building object
323
+ * @property {int} pollTime - Interval in milliseconds (minimum is 3000ms).
324
+ */
325
+ /**
326
+ * @name
327
+ * RealTimeData
328
+ * @description
329
+ * A data object that contains information of the location of users in realtime.
330
+ * @property {Array<Location>} locations object
331
+ */
332
+ let LocationStatusName = /*#__PURE__*/function (LocationStatusName) {
333
+ LocationStatusName["STARTING"] = "STARTING";
334
+ LocationStatusName["CALCULATING"] = "CALCULATING";
335
+ LocationStatusName["POSITIONING"] = "POSITIONING";
336
+ LocationStatusName["USER_NOT_IN_BUILDING"] = "USER_NOT_IN_BUILDING";
337
+ LocationStatusName["STOPPED"] = "STOPPED";
338
+ return LocationStatusName;
339
+ }({});
340
+ exports.LocationStatusName = LocationStatusName;
341
+ let NavigationStatus = /*#__PURE__*/function (NavigationStatus) {
342
+ NavigationStatus["START"] = "start";
343
+ NavigationStatus["STOP"] = "stop";
344
+ NavigationStatus["UPDATE"] = "update";
345
+ return NavigationStatus;
346
+ }({});
347
+ exports.NavigationStatus = NavigationStatus;
348
+ let NavigationUpdateType = /*#__PURE__*/function (NavigationUpdateType) {
349
+ NavigationUpdateType["progress"] = "PROGRESS";
350
+ NavigationUpdateType["userOutsideRoute"] = "OUT_OF_ROUTE";
351
+ NavigationUpdateType["destinationReached"] = "DESTINATION_REACHED";
352
+ return NavigationUpdateType;
353
+ }({});
354
+ exports.NavigationUpdateType = NavigationUpdateType;
6
355
  //# sourceMappingURL=index.d.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["sdk/types/index.d.ts"],"mappings":""}
1
+ {"version":3,"names":["LocationStatusName","exports","NavigationStatus","NavigationUpdateType"],"sourceRoot":"../../../../src","sources":["sdk/types/index.d.ts"],"mappings":";;;;;;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAiBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAiBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAoBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AANA,IA0CYA,kBAAkB,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA;AAAAC,OAAA,CAAAD,kBAAA,GAAAA,kBAAA;AAAA,IAgClBE,gBAAgB,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA;AAAAD,OAAA,CAAAC,gBAAA,GAAAA,gBAAA;AAAA,IAMhBC,oBAAoB,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAAAF,OAAA,CAAAE,oBAAA,GAAAA,oBAAA"}
@@ -36,10 +36,10 @@ const checkAndroidPermissions = async () => {
36
36
  console.log("ANDROID VERSION > 30");
37
37
  granted = await (0, _reactNativePermissions.requestMultiple)([_reactNativePermissions.PERMISSIONS.ANDROID.ACCESS_FINE_LOCATION, _reactNativePermissions.PERMISSIONS.ANDROID.BLUETOOTH_CONNECT, _reactNativePermissions.PERMISSIONS.ANDROID.BLUETOOTH_SCAN]);
38
38
  if (granted["android.permission.ACCESS_FINE_LOCATION"] === _reactNativePermissions.RESULTS.GRANTED && granted["android.permission.BLUETOOTH_CONNECT"] === _reactNativePermissions.RESULTS.GRANTED && granted["android.permission.BLUETOOTH_SCAN"] === _reactNativePermissions.RESULTS.GRANTED) {
39
- console.info("ACCESS_FINE_LOCATION, BLUETOOTH_CONNECT and ACCESS_FINE_LOCATION permissions granted");
39
+ console.info("ACCESS_FINE_LOCATION, BLUETOOTH_CONNECT and BLUETOOTH_SCAN permissions granted");
40
40
  return true;
41
41
  }
42
- throw "ACCESS_FINE_LOCATION, BLUETOOTH_CONNECT and ACCESS_FINE_LOCATION permissions not granted";
42
+ throw "ACCESS_FINE_LOCATION, BLUETOOTH_CONNECT and BLUETOOTH_SCAN permissions not granted";
43
43
  } else {
44
44
  console.info("ANDROID VERSION < 30");
45
45
  granted = await (0, _reactNativePermissions.request)(_reactNativePermissions.PERMISSIONS.ANDROID.ACCESS_FINE_LOCATION);
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_reactNativePermissions","checkIOSPermissions","granted","request","PERMISSIONS","IOS","LOCATION_WHEN_IN_USE","RESULTS","GRANTED","console","info","parseInt","Platform","Version","BLUETOOTH_PERIPHERAL","warn","checkAndroidPermissions","log","requestMultiple","ANDROID","ACCESS_FINE_LOCATION","BLUETOOTH_CONNECT","BLUETOOTH_SCAN","requestPermission","Promise","resolve","reject","OS","then","catch","e","_default","exports","default"],"sourceRoot":"../../../src","sources":["utils/requestPermission.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","_reactNativePermissions","checkIOSPermissions","granted","request","PERMISSIONS","IOS","LOCATION_WHEN_IN_USE","RESULTS","GRANTED","console","info","parseInt","Platform","Version","BLUETOOTH_PERIPHERAL","warn","checkAndroidPermissions","log","requestMultiple","ANDROID","ACCESS_FINE_LOCATION","BLUETOOTH_CONNECT","BLUETOOTH_SCAN","requestPermission","Promise","resolve","reject","OS","then","catch","e","_default","exports","default"],"sourceRoot":"../../../src","sources":["utils/requestPermission.ts"],"mappings":"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"}