Skip to content

Commit 6932511

Browse files
committed
Add timestampTrunc, timestampDiff and timestampExtract expressions
1 parent dc19c42 commit 6932511

5 files changed

Lines changed: 728 additions & 8 deletions

File tree

handwritten/firestore/api-report/firestore.api.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1207,6 +1207,10 @@ abstract class Expression implements firestore.Pipelines.Expression, HasUserData
12071207
sum(): AggregateFunction;
12081208
timestampAdd(unit: Expression, amount: Expression): FunctionExpression;
12091209
timestampAdd(unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day', amount: number): FunctionExpression;
1210+
timestampDiff(start: Expression, unit: Expression): FunctionExpression;
1211+
timestampDiff(start: string | Expression, unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day'): FunctionExpression;
1212+
timestampExtract(part: firestore.Pipelines.TimePart, timezone?: string | Expression): FunctionExpression;
1213+
timestampExtract(part: Expression, timezone?: string | Expression): FunctionExpression;
12101214
timestampSubtract(unit: Expression, amount: Expression): FunctionExpression;
12111215
timestampSubtract(unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day', amount: number): FunctionExpression;
12121216
timestampToUnixMicros(): FunctionExpression;
@@ -2113,6 +2117,8 @@ declare namespace Pipelines {
21132117
isType,
21142118
Type,
21152119
timestampTruncate,
2120+
timestampExtract,
2121+
timestampDiff,
21162122
split,
21172123
ltrim,
21182124
rtrim,
@@ -2701,6 +2707,30 @@ function timestampAdd(timestamp: Expression, unit: 'microsecond' | 'millisecond'
27012707
// @beta
27022708
function timestampAdd(fieldName: string, unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day', amount: number): FunctionExpression;
27032709

2710+
// @beta
2711+
function timestampDiff(endFieldName: string, startFieldName: string, unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day' | Expression): FunctionExpression;
2712+
2713+
// @beta
2714+
function timestampDiff(endFieldName: string, startExpression: Expression, unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day' | Expression): FunctionExpression;
2715+
2716+
// @beta
2717+
function timestampDiff(endExpression: Expression, startFieldName: string, unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day' | Expression): FunctionExpression;
2718+
2719+
// @beta
2720+
function timestampDiff(endExpression: Expression, startExpression: Expression, unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day' | Expression): FunctionExpression;
2721+
2722+
// @beta
2723+
function timestampExtract(fieldName: string, part: firestore.Pipelines.TimePart, timezone?: string | Expression): FunctionExpression;
2724+
2725+
// @beta
2726+
function timestampExtract(fieldName: string, part: Expression, timezone?: string | Expression): FunctionExpression;
2727+
2728+
// @beta
2729+
function timestampExtract(timestampExpression: Expression, part: firestore.Pipelines.TimePart, timezone?: string | Expression): FunctionExpression;
2730+
2731+
// @beta
2732+
function timestampExtract(timestampExpression: Expression, part: Expression, timezone?: string | Expression): FunctionExpression;
2733+
27042734
// @beta
27052735
function timestampSubtract(timestamp: Expression, unit: Expression, amount: Expression): FunctionExpression;
27062736

0 commit comments

Comments
 (0)