Skip to content

Commit 9c2c62d

Browse files
Merge pull request #89 from shiftcode/#13-more-robust-uuid-implementation
feat(util): add more robust library
2 parents b292fa4 + 464ebdc commit 9c2c62d

File tree

4 files changed

+17
-16
lines changed

4 files changed

+17
-16
lines changed

package-lock.json

Lines changed: 11 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,14 @@
7171
"tslint": "^5.11.0",
7272
"tslint-config-prettier": "^1.16.0",
7373
"typedoc": "^0.13.0",
74-
"typescript": "^3.1.6"
74+
"typescript": "^3.1.6",
75+
"uuid": "^3.3.2"
7576
},
7677
"peerDependencies": {
7778
"aws-sdk": "^2.286.1",
7879
"lodash": "^4.17.10",
7980
"reflect-metadata": "^0.1.12",
80-
"rxjs": "^6.0.0"
81+
"rxjs": "^6.0.0",
82+
"uuid": "^3.3.2"
8183
}
8284
}

src/mapper/mapper.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import {v4 as uuidv4} from 'uuid'
12
import { Metadata } from '../decorator/metadata/metadata'
23
import { metadataForClass, metadataForProperty } from '../decorator/metadata/metadata-helper'
34
import { Key, PropertyMetadata } from '../decorator/metadata/property-metadata.model'
@@ -16,7 +17,7 @@ import { Binary } from './type/binary.type'
1617
import { EnumType } from './type/enum.type'
1718
import { NullType } from './type/null.type'
1819
import { UndefinedType } from './type/undefined.type'
19-
import { typeOf, typeOfFromDb, uuidv4 } from './util'
20+
import { typeOf, typeOfFromDb } from './util'
2021

2122
const mapperForType: Map<AttributeValueType, MapperForType<any, any>> = new Map()
2223

src/mapper/util.ts

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -251,13 +251,3 @@ export function typeName(type: any): 'Null' | 'Undefined' | string {
251251

252252
throw new Error(`was not able to resolve type name for type ${type}`)
253253
}
254-
255-
// FIXME UUID replace with a more bullet proof implementation node uuid module requires crypto, need to figure out how to use it with browser
256-
export function uuidv4() {
257-
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {
258-
// tslint:disable
259-
let r = (Math.random() * 16) | 0,
260-
v = c == 'x' ? r : (r & 0x3) | 0x8
261-
return v.toString(16)
262-
})
263-
}

0 commit comments

Comments
 (0)