Skip to content

feat(firestore): add support for Timestamp, GeoPoint, and FieldValue data types #1205

feat(firestore): add support for Timestamp, GeoPoint, and FieldValue data types

feat(firestore): add support for Timestamp, GeoPoint, and FieldValue data types #1205

Workflow file for this run

name: CI
on:
push:
branches:
- main
paths-ignore:
- '**.md'
- '.vscode/**'
pull_request:
paths-ignore:
- '**.md'
- '.vscode/**'
workflow_dispatch:
env:
NODE_VERSION: 20
JAVA_VERSION: 21
TURBO_SCM_BASE: ${{ github.event_name == 'pull_request' && github.event.pull_request.base.sha || github.event.before }}
jobs:
build-android:
name: Build Android platform
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Set up Java ${{ env.JAVA_VERSION }}
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: ${{ env.JAVA_VERSION }}
- name: Install Node.js dependencies
run: npm ci
- name: Build packages affected by changes
if: github.ref != 'refs/heads/main'
run: npm run affected:verify:android
- name: Build all packages
if: github.ref == 'refs/heads/main'
run: npm run verify:android
build-ios:
name: Build iOS platform
runs-on: macos-15
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Setup Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: '16.4'
- name: Install Node.js dependencies
run: npm ci
- name: Install CocoaPods dependencies of packages affected by changes
if: github.ref != 'refs/heads/main'
run: npm run affected:ios:pod:install
- name: Install all CocoaPods dependencies
if: github.ref == 'refs/heads/main'
run: npm run ios:pod:install
- name: Install SPM dependencies of packages affected by changes
if: github.ref != 'refs/heads/main'
run: npm run affected:ios:spm:install
- name: Install all SPM dependencies
if: github.ref == 'refs/heads/main'
run: npm run ios:spm:install
- name: Build packages affected by changes
if: github.ref != 'refs/heads/main'
run: npm run affected:verify:ios
- name: Build all packages
if: github.ref == 'refs/heads/main'
run: npm run verify:ios
build-web:
name: Build Web platform
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Set up Java ${{ env.JAVA_VERSION }}
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: ${{ env.JAVA_VERSION }}
- name: Install Node.js dependencies
run: npm ci
- name: Build packages affected by changes
if: github.ref != 'refs/heads/main'
run: npm run affected:verify:web
- name: Build all packages
if: github.ref == 'refs/heads/main'
run: npm run verify:web
lint:
name: Lint
runs-on: macos-15
needs: [build-android, build-ios, build-web]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Install dependencies
run: npm ci
- name: Lint packages affected by changes
if: github.ref != 'refs/heads/main'
run: npm run affected:lint
- name: Lint all packages
if: github.ref == 'refs/heads/main'
run: npm run lint
release:
name: Release
runs-on: ubuntu-latest
needs: [lint]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Install dependencies
run: npm ci
- name: Build all packages
run: npm run verify:web
- name: Publish all packages
run: npm run release:preview