Skip to content

Commit

Permalink
feat(celest_cloud): Add Celest Cloud API package (#162)
Browse files Browse the repository at this point in the history
Adds a package for interacting with the Celest Cloud API via gRPC and HTTP.
  • Loading branch information
dnys1 committed Aug 27, 2024
1 parent 30a77d9 commit 63450fd
Show file tree
Hide file tree
Showing 313 changed files with 73,309 additions and 29 deletions.
35 changes: 35 additions & 0 deletions .github/workflows/celest_cloud.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: celest_cloud
on:
pull_request:
paths:
- ".github/workflows/celest_cloud.yaml"
- "packages/celest_cloud/**"

# Prevent duplicate runs due to Graphite
# https://graphite.dev/docs/troubleshooting#why-are-my-actions-running-twice
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}-${{ github.ref == 'refs/heads/main' && github.sha || ''}}
cancel-in-progress: true

jobs:
test:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Git Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # 4.1.7
with:
submodules: recursive
- name: Setup Flutter
uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1 # 2.16.0
with:
cache: true
- name: Get Packages
working-directory: packages/celest_cloud
run: dart pub upgrade
- name: Analyze
working-directory: packages/celest_cloud
run: dart analyze --fatal-infos --fatal-warnings .
- name: Format
working-directory: packages/celest_cloud
run: dart format --set-exit-if-changed --dry-run .
2 changes: 2 additions & 0 deletions examples/gemini/celest/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ dependency_overrides:
path: ../../../packages/celest
celest_auth:
path: ../../../packages/celest_auth
celest_cloud:
path: ../../../packages/celest_cloud
celest_core:
path: ../../../packages/celest_core

Expand Down
2 changes: 2 additions & 0 deletions examples/gemini/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ dependency_overrides:
path: ../../packages/celest
celest_auth:
path: ../../packages/celest_auth
celest_cloud:
path: ../../packages/celest_cloud
celest_core:
path: ../../packages/celest_core

Expand Down
2 changes: 2 additions & 0 deletions examples/openai/celest/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ dependency_overrides:
path: ../../../packages/celest
celest_auth:
path: ../../../packages/celest_auth
celest_cloud:
path: ../../../packages/celest_cloud
celest_core:
path: ../../../packages/celest_core

Expand Down
2 changes: 2 additions & 0 deletions examples/openai/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ dependency_overrides:
path: ../../packages/celest
celest_auth:
path: ../../packages/celest_auth
celest_cloud:
path: ../../packages/celest_cloud
celest_core:
path: ../../packages/celest_core

Expand Down
2 changes: 2 additions & 0 deletions examples/todo/celest/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ dependency_overrides:
path: ../../../packages/celest
celest_auth:
path: ../../../packages/celest_auth
celest_cloud:
path: ../../../packages/celest_cloud
celest_core:
path: ../../../packages/celest_core

Expand Down
2 changes: 2 additions & 0 deletions examples/todo/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ dependency_overrides:
path: ../../packages/celest
celest_auth:
path: ../../packages/celest_auth
celest_cloud:
path: ../../packages/celest_cloud
celest_core:
path: ../../packages/celest_core

Expand Down
2 changes: 2 additions & 0 deletions packages/celest/example/celest/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ dependency_overrides:
path: ../../
celest_auth:
path: ../../../celest_auth
celest_cloud:
path: ../../../celest_cloud
celest_core:
path: ../../../celest_core

Expand Down
2 changes: 2 additions & 0 deletions packages/celest/example/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ dependency_overrides:
path: ../
celest_auth:
path: ../../celest_auth
celest_cloud:
path: ../../celest_cloud
celest_core:
path: ../../celest_core

Expand Down
3 changes: 2 additions & 1 deletion packages/celest/lib/http.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,10 @@
/// usage and examples.
library http;

export 'package:celest_core/_internal.dart' show HttpStatus;

export 'src/functions/http/http.dart';
export 'src/functions/http/http_error.dart';
export 'src/functions/http/http_header.dart';
export 'src/functions/http/http_method.dart';
export 'src/functions/http/http_query.dart';
export 'src/functions/http/http_status.dart';
1 change: 1 addition & 0 deletions packages/celest/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ environment:
dependencies:
async: ^2.11.0
celest_auth: ^0.4.0
celest_cloud: ^0.1.0
celest_core: ^0.4.2
chunked_stream: ^1.4.2
collection: ^1.18.0
Expand Down
2 changes: 2 additions & 0 deletions packages/celest_auth/example/celest/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ dependency_overrides:
path: ../../../celest
celest_auth:
path: ../../
celest_cloud:
path: ../../../celest_cloud
celest_core:
path: ../../../celest_core

Expand Down
2 changes: 2 additions & 0 deletions packages/celest_auth/example/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ dependency_overrides:
path: ../../celest
celest_auth:
path: ../
celest_cloud:
path: ../../celest_cloud
celest_core:
path: ../../celest_core

Expand Down
2 changes: 2 additions & 0 deletions packages/celest_auth/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ dependencies:
built_collection: ^5.1.1
built_value: ^8.9.1
cedar: ^0.1.0
celest_cloud: ^0.1.0
celest_core: ^0.4.3-wip
chunked_stream: ^1.4.2
corks_cedar: ^0.1.0
Expand All @@ -25,6 +26,7 @@ dependencies:
shelf: ^1.4.1
shelf_router: ^1.1.4
stream_transform: ^2.1.0
web: '>=0.5.0 <2.0.0'

dev_dependencies:
build_runner: ^2.4.8
Expand Down
7 changes: 7 additions & 0 deletions packages/celest_cloud/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# https://dart.dev/guides/libraries/private-files
# Created by `dart pub`
.dart_tool/

# Avoid committing pubspec.lock for library packages; see
# https://dart.dev/guides/libraries/private-files#pubspeclock.
pubspec.lock
3 changes: 3 additions & 0 deletions packages/celest_cloud/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# 0.1.0

- Initial release
46 changes: 46 additions & 0 deletions packages/celest_cloud/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
Copyright (c) 2024 Teo, Inc. (Celest)

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation and/or
other materials provided with the distribution.

Subject to the terms and conditions of this license, each copyright holder and
contributor hereby grants to those receiving rights under this license a
perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except for failure to satisfy the conditions of this license) patent license to
make, have made, use, offer to sell, sell, import, and otherwise transfer this
software, where such license applies only to those patent claims, already
acquired or hereafter acquired, licensable by such copyright holder or
contributor that are necessarily infringed by:

(a) their Contribution(s) (the licensed copyrights of copyright holders and
non-copyrightable additions of contributors, in source or binary form) alone; or

(b) combination of their Contribution(s) with the work of authorship to which
such Contribution(s) was added by such copyright holder or contributor, if, at
the time the Contribution is added, such addition causes such combination to be
necessarily infringed. The patent license shall not apply to any other
combinations which include the Contribution.

Except as expressly stated above, no rights or licenses from any copyright
holder or contributor is granted under this license, whether expressly, by
implication, estoppel or otherwise.

DISCLAIMER

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
3 changes: 3 additions & 0 deletions packages/celest_cloud/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Celest Cloud

API contracts and Dart clients for the Celest Cloud platform.
12 changes: 12 additions & 0 deletions packages/celest_cloud/analysis_options.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
include: package:lints/recommended.yaml

analyzer:
exclude:
- lib/**/*.pb.dart
- lib/**/*.pbenum.dart
- lib/**/*.pbjson.dart
- lib/**/*.pbgrpc.dart
- lib/**/*.g.dart
errors:
implementation_imports: ignore
public_member_api_docs: ignore
9 changes: 9 additions & 0 deletions packages/celest_cloud/lib/celest_cloud.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
export 'src/cloud/authentication/session_state.dart';
export 'src/cloud/cloud.dart';
export 'src/proto.dart' show Organization;
export 'src/proto/celest/cloud/auth/v1alpha1/authentication.pb.dart'
show ClientType;
export 'src/proto/celest/cloud/auth/v1alpha1/users.pb.dart'
show IdentityProviderType, User;
export 'src/proto/google/protobuf/field_mask.pb.dart' show FieldMask;
export 'src/proto/operations.dart' hide WaitForOperation, OperationWaiter;
Loading

0 comments on commit 63450fd

Please sign in to comment.