mirror of
https://github.com/kingomarnajjar/flex-template-web.git
synced 2026-07-26 06:47:17 +10:00
Seeded random used on obfuscatedCoordinatesImpl
This commit is contained in:
parent
f1c4228d36
commit
3205765083
3 changed files with 25 additions and 3 deletions
|
|
@ -47,6 +47,7 @@
|
|||
"redux": "^4.0.0",
|
||||
"redux-thunk": "^2.2.0",
|
||||
"sanitize.css": "^5.0.0",
|
||||
"seedrandom": "^2.4.3",
|
||||
"sharetribe-scripts": "1.1.2",
|
||||
"sharetribe-sdk": "https://github.com/sharetribe/sharetribe-sdk-js.git#b7ffe0fe0a5bdb0a1471e2ff36cdd25b997fb39b",
|
||||
"smoothscroll-polyfill": "^0.4.0",
|
||||
|
|
|
|||
|
|
@ -1,10 +1,16 @@
|
|||
import memoize from 'lodash/memoize';
|
||||
import seedrandom from 'seedrandom';
|
||||
import { types as sdkTypes } from './sdkLoader';
|
||||
import config from '../config';
|
||||
|
||||
const { LatLng } = sdkTypes;
|
||||
|
||||
const obfuscatedCoordinatesImpl = latlng => {
|
||||
/**
|
||||
* This obfuscatedCoordinatesImpl function is a temporary solution for the coordinate obfuscation.
|
||||
* In the future, improved version needs to have protectedData working and
|
||||
* available in accepted transaction.
|
||||
*/
|
||||
const obfuscatedCoordinatesImpl = (latlng, cacheKey) => {
|
||||
const { lat, lng } = latlng;
|
||||
const offset = config.coordinates.coordinateOffset;
|
||||
|
||||
|
|
@ -12,8 +18,19 @@ const obfuscatedCoordinatesImpl = latlng => {
|
|||
const r = offset / 111300;
|
||||
const y0 = lat;
|
||||
const x0 = lng;
|
||||
const u = Math.random();
|
||||
const v = Math.random();
|
||||
|
||||
// Two seeded random numbers to be used to calculate new location
|
||||
// We need seeded so that the static map URL doesn't change between requests
|
||||
// (i.e. URL is cacheable)
|
||||
const u = cacheKey ? seedrandom(cacheKey)() : Math.random();
|
||||
const v = cacheKey
|
||||
? seedrandom(
|
||||
cacheKey
|
||||
.split('')
|
||||
.reverse()
|
||||
.join('')
|
||||
)()
|
||||
: Math.random();
|
||||
const w = r * Math.sqrt(u);
|
||||
const t = 2 * Math.PI * v;
|
||||
const x = w * Math.cos(t);
|
||||
|
|
|
|||
|
|
@ -7406,6 +7406,10 @@ scriptjs@^2.5.8:
|
|||
version "2.5.8"
|
||||
resolved "https://registry.yarnpkg.com/scriptjs/-/scriptjs-2.5.8.tgz#d0c43955c2e6bad33b6e4edf7b53b8965aa7ca5f"
|
||||
|
||||
seedrandom@^2.4.3:
|
||||
version "2.4.3"
|
||||
resolved "https://registry.yarnpkg.com/seedrandom/-/seedrandom-2.4.3.tgz#2438504dad33917314bff18ac4d794f16d6aaecc"
|
||||
|
||||
select-hose@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca"
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue