Skip to content

Commit b8bd38e

Browse files
Add DocumentReference
1 parent 4ba0f4e commit b8bd38e

File tree

55 files changed

+233
-171
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+233
-171
lines changed

integration/browserify/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"test:ci": "node ../../scripts/run_tests_in_ci.js"
99
},
1010
"dependencies": {
11-
"firebase": "7.14.4"
11+
"firebase": "7.14.5"
1212
},
1313
"devDependencies": {
1414
"@babel/core": "7.9.6",

integration/firebase-typings/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"test:ci": "node ../../scripts/run_tests_in_ci.js"
88
},
99
"dependencies": {
10-
"firebase": "7.14.4"
10+
"firebase": "7.14.5"
1111
},
1212
"devDependencies": {
1313
"typescript": "3.8.3"

integration/messaging/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"test:manual": "mocha --exit"
99
},
1010
"dependencies": {
11-
"firebase": "7.14.4"
11+
"firebase": "7.14.5"
1212
},
1313
"devDependencies": {
1414
"chai": "4.2.0",

integration/typescript/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"test:ci": "node ../../scripts/run_tests_in_ci.js"
88
},
99
"dependencies": {
10-
"firebase": "7.14.4"
10+
"firebase": "7.14.5"
1111
},
1212
"devDependencies": {
1313
"@babel/core": "7.9.6",

integration/webpack/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"test:ci": "node ../../scripts/run_tests_in_ci.js"
99
},
1010
"dependencies": {
11-
"firebase": "7.14.4"
11+
"firebase": "7.14.5"
1212
},
1313
"devDependencies": {
1414
"@babel/core": "7.9.6",

packages-exp/app-exp/package.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,9 @@
3333
},
3434
"dependencies": {
3535
"@firebase/app-types-exp": "0.0.800",
36-
"@firebase/util": "0.2.46",
37-
"@firebase/logger": "0.2.3",
38-
"@firebase/component": "0.1.11",
36+
"@firebase/util": "0.2.47",
37+
"@firebase/logger": "0.2.4",
38+
"@firebase/component": "0.1.12",
3939
"tslib": "1.11.1"
4040
},
4141
"license": "Apache-2.0",

packages/analytics-interop-types/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/analytics-interop-types",
3-
"version": "0.1.4",
3+
"version": "0.1.5",
44
"description": "@firebase/analytics Types",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"license": "Apache-2.0",

packages/analytics-types/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/analytics-types",
3-
"version": "0.3.0",
3+
"version": "0.3.1",
44
"description": "@firebase/analytics Types",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"license": "Apache-2.0",

packages/analytics/package.json

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/analytics",
3-
"version": "0.3.4",
3+
"version": "0.3.5",
44
"description": "A analytics package for new firebase packages",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"main": "dist/index.cjs.js",
@@ -26,11 +26,11 @@
2626
"@firebase/app-types": "0.x"
2727
},
2828
"dependencies": {
29-
"@firebase/analytics-types": "0.3.0",
30-
"@firebase/installations": "0.4.9",
31-
"@firebase/logger": "0.2.3",
32-
"@firebase/util": "0.2.46",
33-
"@firebase/component": "0.1.11",
29+
"@firebase/analytics-types": "0.3.1",
30+
"@firebase/installations": "0.4.10",
31+
"@firebase/logger": "0.2.4",
32+
"@firebase/util": "0.2.47",
33+
"@firebase/component": "0.1.12",
3434
"tslib": "1.11.1"
3535
},
3636
"license": "Apache-2.0",

packages/app-types/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/app-types",
3-
"version": "0.6.0",
3+
"version": "0.6.1",
44
"description": "@firebase/app Types",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"license": "Apache-2.0",

packages/app/package.json

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/app",
3-
"version": "0.6.3",
3+
"version": "0.6.4",
44
"description": "The primary entrypoint to the Firebase JS SDK",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"main": "dist/index.node.cjs.js",
@@ -29,10 +29,10 @@
2929
},
3030
"license": "Apache-2.0",
3131
"dependencies": {
32-
"@firebase/app-types": "0.6.0",
33-
"@firebase/util": "0.2.46",
34-
"@firebase/logger": "0.2.3",
35-
"@firebase/component": "0.1.11",
32+
"@firebase/app-types": "0.6.1",
33+
"@firebase/util": "0.2.47",
34+
"@firebase/logger": "0.2.4",
35+
"@firebase/component": "0.1.12",
3636
"tslib": "1.11.1",
3737
"dom-storage": "2.1.0",
3838
"xmlhttprequest": "1.8.0"

packages/auth-interop-types/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/auth-interop-types",
3-
"version": "0.1.4",
3+
"version": "0.1.5",
44
"description": "@firebase/auth interop Types",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"license": "Apache-2.0",

packages/auth-types/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/auth-types",
3-
"version": "0.10.0",
3+
"version": "0.10.1",
44
"description": "@firebase/auth Types",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"license": "Apache-2.0",

packages/auth/package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/auth",
3-
"version": "0.14.5",
3+
"version": "0.14.6",
44
"main": "dist/auth.js",
55
"module": "dist/auth.esm.js",
66
"description": "Javascript library for Firebase Auth SDK",
@@ -21,7 +21,7 @@
2121
},
2222
"license": "Apache-2.0",
2323
"dependencies": {
24-
"@firebase/auth-types": "0.10.0"
24+
"@firebase/auth-types": "0.10.1"
2525
},
2626
"devDependencies": {
2727
"google-closure-compiler": "20200112.0.0",

packages/component/package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/component",
3-
"version": "0.1.11",
3+
"version": "0.1.12",
44
"description": "Firebase Component Platform",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"main": "dist/index.cjs.js",
@@ -24,7 +24,7 @@
2424
"prepare": "yarn build"
2525
},
2626
"dependencies": {
27-
"@firebase/util": "0.2.46",
27+
"@firebase/util": "0.2.47",
2828
"tslib": "1.11.1"
2929
},
3030
"license": "Apache-2.0",

packages/database-types/package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/database-types",
3-
"version": "0.5.0",
3+
"version": "0.5.1",
44
"description": "@firebase/database Types",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"license": "Apache-2.0",
@@ -12,7 +12,7 @@
1212
"index.d.ts"
1313
],
1414
"dependencies": {
15-
"@firebase/app-types": "0.6.0"
15+
"@firebase/app-types": "0.6.1"
1616
},
1717
"repository": {
1818
"directory": "packages/database-types",

packages/database/package.json

+8-8
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/database",
3-
"version": "0.6.2",
3+
"version": "0.6.3",
44
"description": "",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"main": "dist/index.node.cjs.js",
@@ -27,17 +27,17 @@
2727
"license": "Apache-2.0",
2828
"peerDependencies": {},
2929
"dependencies": {
30-
"@firebase/database-types": "0.5.0",
31-
"@firebase/logger": "0.2.3",
32-
"@firebase/util": "0.2.46",
33-
"@firebase/component": "0.1.11",
34-
"@firebase/auth-interop-types": "0.1.4",
30+
"@firebase/database-types": "0.5.1",
31+
"@firebase/logger": "0.2.4",
32+
"@firebase/util": "0.2.47",
33+
"@firebase/component": "0.1.12",
34+
"@firebase/auth-interop-types": "0.1.5",
3535
"faye-websocket": "0.11.3",
3636
"tslib": "1.11.1"
3737
},
3838
"devDependencies": {
39-
"@firebase/app": "0.6.3",
40-
"@firebase/app-types": "0.6.0",
39+
"@firebase/app": "0.6.4",
40+
"@firebase/app-types": "0.6.1",
4141
"rollup": "2.7.6",
4242
"rollup-plugin-typescript2": "0.27.0",
4343
"typescript": "3.8.3"

packages/firebase/package.json

+15-15
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "firebase",
3-
"version": "7.14.4",
3+
"version": "7.14.5",
44
"description": "Firebase JavaScript library for web and Node.js",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"license": "Apache-2.0",
@@ -45,20 +45,20 @@
4545
"module": "dist/index.esm.js",
4646
"react-native": "dist/index.rn.cjs.js",
4747
"dependencies": {
48-
"@firebase/app": "0.6.3",
49-
"@firebase/app-types": "0.6.0",
50-
"@firebase/auth": "0.14.5",
51-
"@firebase/database": "0.6.2",
52-
"@firebase/firestore": "1.14.4",
53-
"@firebase/functions": "0.4.43",
54-
"@firebase/installations": "0.4.9",
55-
"@firebase/messaging": "0.6.15",
56-
"@firebase/polyfill": "0.3.35",
57-
"@firebase/storage": "0.3.33",
58-
"@firebase/performance": "0.3.3",
59-
"@firebase/remote-config": "0.1.20",
60-
"@firebase/analytics": "0.3.4",
61-
"@firebase/util": "0.2.46"
48+
"@firebase/app": "0.6.4",
49+
"@firebase/app-types": "0.6.1",
50+
"@firebase/auth": "0.14.6",
51+
"@firebase/database": "0.6.3",
52+
"@firebase/firestore": "1.14.5",
53+
"@firebase/functions": "0.4.44",
54+
"@firebase/installations": "0.4.10",
55+
"@firebase/messaging": "0.6.16",
56+
"@firebase/polyfill": "0.3.36",
57+
"@firebase/storage": "0.3.34",
58+
"@firebase/performance": "0.3.4",
59+
"@firebase/remote-config": "0.1.21",
60+
"@firebase/analytics": "0.3.5",
61+
"@firebase/util": "0.2.47"
6262
},
6363
"devDependencies": {
6464
"rollup": "2.7.6",

packages/firestore-types/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/firestore-types",
3-
"version": "1.10.1",
3+
"version": "1.10.2",
44
"description": "@firebase/firestore Types",
55
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
66
"license": "Apache-2.0",

packages/firestore/CHANGELOG.md

+2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
# Unreleased
2+
- [fixed] Fixed an issue that could cause Firestore to temporarily go
3+
offline when a Window visibility event occurred.
24
- [feature] Added support for calling `FirebaseFiresore.settings` with
35
`{ ignoreUndefinedProperties: true }`. When set, Firestore ignores
46
undefined properties inside objects rather than rejecting the API call.

packages/firestore/lite/index.node.ts

+2
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ export {
2626
getFirestore
2727
} from './src/api/database';
2828

29+
export { DocumentReference } from './src/api/reference';
30+
2931
export function registerFirestore(): void {
3032
_registerComponent(
3133
new Component(
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
/**
2+
* @license
3+
* Copyright 2020 Google LLC
4+
*
5+
* Licensed under the Apache License, Version 2.0 (the "License");
6+
* you may not use this file except in compliance with the License.
7+
* You may obtain a copy of the License at
8+
*
9+
* http://www.apache.org/licenses/LICENSE-2.0
10+
*
11+
* Unless required by applicable law or agreed to in writing, software
12+
* distributed under the License is distributed on an "AS IS" BASIS,
13+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
* See the License for the specific language governing permissions and
15+
* limitations under the License.
16+
*/
17+
18+
import * as firestore from '../../index';
19+
20+
import { DocumentKey } from '../../../src/model/document_key';
21+
import { Firestore } from './database';
22+
import { DocumentKeyReference } from '../../../src/api/user_data_reader';
23+
24+
/**
25+
* A reference to a particular document in a collection in the database.
26+
*/
27+
export class DocumentReference<T = firestore.DocumentData>
28+
extends DocumentKeyReference<T>
29+
implements firestore.DocumentReference<T> {
30+
constructor(
31+
key: DocumentKey,
32+
readonly firestore: Firestore,
33+
readonly _converter?: firestore.FirestoreDataConverter<T>
34+
) {
35+
super(firestore._databaseId, key, _converter);
36+
}
37+
38+
get id(): string {
39+
return this._key.path.lastSegment();
40+
}
41+
42+
get path(): string {
43+
return this._key.path.canonicalString();
44+
}
45+
46+
withConverter<U>(
47+
converter: firestore.FirestoreDataConverter<U>
48+
): DocumentReference<U> {
49+
return new DocumentReference<U>(this._key, this.firestore, converter);
50+
}
51+
}

packages/firestore/package.json

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@firebase/firestore",
3-
"version": "1.14.4",
3+
"version": "1.14.5",
44
"engines": {
55
"node": "^8.13.0 || >=10.10.0"
66
},
@@ -21,7 +21,7 @@
2121
"pregendeps:exp": "yarn build:exp",
2222
"gendeps:exp": "../../scripts/exp/extract-deps.sh --types ./exp/index.d.ts --bundle ./dist/exp/index.js --output ./exp/test/deps/dependencies.json",
2323
"pretest:exp": "yarn build:exp",
24-
"test:exp": "TS_NODE_CACHE=NO TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\"}' nyc --reporter lcovonly -- mocha 'exp/test/**/*.test.ts' --file exp/index.node.ts --config ../../config/mocharc.node.js",
24+
"test:exp": "TS_NODE_CACHE=NO TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\"}' nyc --reporter lcovonly -- mocha 'exp/test/**/*.test.ts' --file exp/index.node.ts --config ../../config/mocharc.node.js",
2525
"test": "run-s lint test:all",
2626
"test:ci": "node ../../scripts/run_tests_in_ci.js",
2727
"test:all": "run-p test:browser test:travis test:minified",
@@ -49,11 +49,11 @@
4949
"memory/package.json"
5050
],
5151
"dependencies": {
52-
"@firebase/component": "0.1.11",
53-
"@firebase/firestore-types": "1.10.1",
54-
"@firebase/logger": "0.2.3",
55-
"@firebase/util": "0.2.46",
56-
"@firebase/webchannel-wrapper": "0.2.40",
52+
"@firebase/component": "0.1.12",
53+
"@firebase/firestore-types": "1.10.2",
54+
"@firebase/logger": "0.2.4",
55+
"@firebase/util": "0.2.47",
56+
"@firebase/webchannel-wrapper": "0.2.41",
5757
"@grpc/grpc-js": "0.8.1",
5858
"@grpc/proto-loader": "^0.5.0",
5959
"tslib": "1.11.1"

0 commit comments

Comments
 (0)