* handwritten low code manifest example components
* add MinMaxDatetime to jsonschema
* add a basic gradle command to generate manifest components
* Add auth components to handwritten component schema
- ApiKeyAuthenticator
- BasicHttpAuthenticator
- BearerAuthenticator
- DeclarativeOauth2Authenticator
- NoAuth
* Respect optional properties in DeclarativeOauth2Authenticator
* Fix `Dict[str, Any]` mapping in auth components
* add default error handler composite error handler and http response filter components
* [low code component schema] adding backoff strategies to schema
* [low code component schema] fix float types
* [low code component schema] add RecordFilter
* Remove `config` from auth components
* [low code component schema] add Interpolation (with pending question on 'type' not being defined)
* Add CartesianProductStreamSlicer & DatetimeStreamSlicer
* Add ListStreamSlicer, and fix nesting of DatetimeStreamSlicer
* [low code component schema] add InterpolatedRequestOptionsProvider
* Add slicer components, and fix a couple of components after reviewing output
* [low code component schema] adding transformations and adding type to interpolators
* adding spec and a few small tweaks
* Add DefaultSchemaLoader
* [low code component schema] attempt on custom class
* Add descriptions for auth components
* add RequestOption
* remove interpolated objects from the schema in favor of strings only
* a few schema fixes and adding some custom pagination and stream slicer
* [low code component schema] fix CustomBackoffStrategy
* Add CustomRecordExtractor
* add some description and add additional properties
* insert a transformer to hydrate default manifest components and perform validation against the handwritten schema
* [low code component schema] validating existing schemas
* [low code component schema] clean validation script
* add manifest transformer tests and a few tweaks to the schema
* Revert "[low code component schema] clean validation script"
This reverts commit 2408f41cf6.
* Revert "[low code component schema] validating existing schemas"
This reverts commit 9d39977815.
* [low code component schema] integrate validation script to gradle
* [low code component schema] updating validation script permissions
* remove a few model gen spike files and clean up comments
* default types should take parent type into account and a few schema changes
* add inline schema components and fix validation bugs
* add types to every component's literal enum and more little schema fixes
* missing component prefix
* pr feedback, renaming the schema and updating various docs
* fixing schema bugs from testing and new components
* last few small tweaks and fixes and fix the script
* bump the version before publsih
* include the declarative_component_schema.yaml as package data so its included when package is published
* roll the version to publish
Co-authored-by: Catherine Noll <noll.catherine@gmail.com>
Co-authored-by: maxi297 <maxime@airbyte.io>
* Added new "filters" python file, along with a "hash" filter. This can be extended to include other custom filters in the future.
* Added additional comments
* Moved usage of the hash_obj inside the conditional that confirms it exists
* Moved the hash function call inside a condition to ensure that it exists
* Fixed the application of the salt , so that it does not modify the hash unless it is actually passed in.
* Added unit tests to validate new jinja hash functionality
* Updated unit test to pass numeric value as a float instead of string
* Removed unreferenced import to pytest
* Updated version
* format
* format
* format
* format
* format
Co-authored-by: Alexandre Girard <alexandre@airbyte.io>
* initial first pass converting every component to dataclasses
* replace the hackier options pass through
* get rid of the hackier way
* fix issues w/ type hints by making options required and lots of fixes to the language to fix compatability for dataclasses
* add dataclasses-jsonschema to setup
* fix oauth authenticator to avoid dataclass name collisions
* fix spacing for CI tests
* remove property from oauth and fix a interpolation bug
* pr feedback and cleaning up the code a bit, attempt at avoiding renaming
* fix templates and bugs surfaced during greenhouse spec testing
* fix tests
* fix missing options in some declarative components
* fix tests related to pulling latest master
* fix issue w/ passing state, slice, and token to subcomponents
* switch name back to get_access_token() since no name collision anymore
* interpolatedauth
* fix tests
* fix import
* no need for default
* Bump version
* Missing docstrings
* example
* missing example
* more docstrings
* interpolated types
* implement MinMaxDate and incorporate it into the DatetimeStreamSlicer
* rename to datetime and restrict start/end to minmaxdatetime object
* get rid of eval_date which isn't needed anymore and allow for datetimestreamslicer to set datetime format
* add MinMaxDatetime to class types registry
* checkout files from test branch
* read_incremental works
* reset to master
* remove dead code
* comment
* fix
* Add test
* comments
* utc
* format
* small fix
* Add test with rfc3339
* remove unused param
* fix test
* conditional paginator + interpolated boolean components
* fix bug where empty arrays and dicts evaluated to true
* add more falsey values
* adjust falsey values and tweak based on review comments