Wp Graphql Gravity Forms Versions Save

GraphQL API for interacting with Gravity Forms.

0.12.6.1

6 days ago

This patch release fixes the version number in the plugin header, which was incorrectly set to 0.12.5 instead of 0.12.6.

  • fix: Correct version number in plugin header.

Full Changelog: https://github.com/AxeWP/wp-graphql-gravity-forms/compare/v0.12.6...0.12.6.1

v0.12.6

1 month ago

This minor release adds explicit support for PHP 8.2 and WordPress 6.5 - including the new Plugin Dependency header. Additionally, we've updated the Composer dependencies, and improved code quality and type safety.

What's Changed

  • feat: Add plugin dependency header.
  • chore: Update Composer deps and lint.
  • chore: Lock WPBrowser to <3.5.0 to prevent conflicts with Codeception.
  • chore: Implement strict PHPStan rules and fix resulting issues.
  • chore: Add traversable type hints throughout the codebase.
  • tests: Lint tests.
  • ci: Update GitHub Actions to latest versions.
  • ci: Test plugin compatibility with WordPress 6.5.0.
  • ci: Test plugin compatibility with PHP 8.2.

Full Changelog: https://github.com/AxeWP/wp-graphql-gravity-forms/compare/v0.12.5...v0.12.6

v0.12.5

3 months ago

This minor release fixes a bug where EmailField.inputs were returning null when Email Confirmation is disabled and an issue where formFields were not being correctly filtered by their where args.

We've also updated the Composer dependencies, did some code linting, and tested compatibility against WordPress 6.4.x.

What's Changed

  • fix: Ensure EmailField inputs are hydrated when Email Confirmation is disabled. H/t @gytjarek.
  • fix: Correctly use filtered form fields when preparing the connection data. H/t @samuelhadsall.
  • chore: Update yahnis-elsts/plugin-update-checker to v5.3.
  • chore: Update axepress/wp-graphql-cs to v2.0.0-beta.2 and fix resulting issues.
  • chore: Update Composer dev deps.
  • ci: Test compatibility with WordPress 6.4.x
  • docs: Add docs on troubleshooting i18n issues. H/t @dev-ditrict-web.

Full Changelog: https://github.com/AxeWP/wp-graphql-gravity-forms/compare/v0.12.4...v0.12.5

v0.12.4

7 months ago

This minor release fixes a bug where updating the plugin via the WordPress backend would fail due to changes to GitHub's API.

Note: Users relying on WordPress's built-in plugin update mechanism will need to update manually to this version by downloading the release zip.

What's Changed

  • fix: Fix installation errors when upgrading plugin via the WordPress backend. H/t @shaderpixel.
  • chore: Update yahnis-elsts/plugin-update-checker to v5.2.
  • ci: Include top-level plugin folder in release zip.

Full Changelog: https://github.com/AxeWP/wp-graphql-gravity-forms/compare/v0.12.3...v0.12.4

v0.12.3

8 months ago

This minor release fixes a few bugs when resolving GfEntry data, and addresses some code smells from the updated WPGraphQL Coding Standards. We're also now testing the plugin against WordPress 6.3 and PHP 8.1.

What's Changed

  • fix: Check if entries exist before resolving the connection count.
  • fix: Improve type checks when calculating the QuizResults data.
  • fix: Pass the entry array to the QuizResults resolver.
  • chore: Fix Composer PHP version constraints and rebuild lockfile. Thanks @szepeviktor!
  • chore: Update WPGraphQL Coding Standards to 2.0.0-beta.1 and fix resulting issues.
  • chore: Update Composer dev-deps.
  • chore: Update links to repo and README.
  • tests: Set WPLoader.loadOnly to true for acceptance suite. Thanks @lucatume!
  • ci: Fix GitHub Action workflows by locking MariaDB version to v10.
  • ci: Test against WordPress 6.3 and PHP 8.1

Full Changelog: https://github.com/AxeWP/wp-graphql-gravity-forms/compare/v0.12.2...v0.12.3

v0.12.2

11 months ago

This minor release expands the ability to use database and global IDs interchangeably in more connections. We also now prime the GFFormsLoader dataloader, reducing the number of database queries and improving performance.

We've also implemented the new WPGraphQL Coding Standards ruleset for PHP_CodeSniffer. While many of the (over 1000+) addressed sniffs are cosmetic, numerous smells regarding performance, type safety, sanitization, and 3rd-party interoperability have been fixed as well.

What's changed

  • dev: Refactor database ID resolution when the GraphQL ID type is indeterminate. Note: The following input args now work with both database and global IDs: GfEntriesConnectionWhereArgs.formIds, GfFormsConnectionwhereArgs.formIds.
  • dev: Remove usage of deprecated WPGraphQL\Data\DataSource::resolve_post_object() method.
  • dev: Prime the GfForm dataloader when querying form connections, to prevent unnecessary database queries.
  • chore: Implement axepress/wp-graphql-cs PHP_Codesniffer ruleset, and fix all resulting issues.
  • docs: Add missing documentation regarding using productValues input when submitting forms.

Full Changelog: https://github.com/harness-software/wp-graphql-gravity-forms/compare/v0.12.1...v0.12.2

v0.12.1

1 year ago

This minor release fixes an issue where certain complex Field Input and Field Choice types would try to implement a non-existent parent interface, causing GraphQL debug messages to be returned in the response.

What's Changed

  • fix: Use local store for FieldInputRegistry and FieldChoiceRegistry to prevent the registration of duplicate/nonexistent types.
  • chore: Update Composer dev deps.
  • test: Ensure no extensions['debug'] messages are returned when querying FormFields.
  • ci: Test against WordPress 6.2
  • ci: Ignore graphql-schema-linter error for FormFieldConnection.pageInfo missing a description. This will be reverted once FormFieldConnection is refactored to be a Relay-compatible.

Full Changelog: https://github.com/harness-software/wp-graphql-gravity-forms/compare/v0.12.0...v0.12.1

v0.12.0

1 year ago

:warning: This release contains multiple breaking changes.

This major release refactors the way Gravity Forms fields are registered in GraphQL, by using GraphQL interfaces derived from the Forms Field Settings to register the fields, choices, and inputs tp the type. This allows for more flexibility in how fields are registered and consumed, and for DRYer GraphQL queries and frontend components.

This release also adds explicit support for Pricing Fields. Specifically, we've added support for the Option, Product, Quantity, Shipping, and Total fields, and the orderSummary field on GfEntry.

Lastly, we've exposed the connectedChoice and connectedInput fields on CheckboxFieldValue objects, added some additional test coverage, and squashed a few bugs along the way.

Note: The minimum version of WPGraphQL has been bumped to v1.9.0.

What's New

  • 🚨 Breaking: We've refactored the way Gravity Forms fields are registered in GraphQL, by using GraphQL interfaces derived from the Gravity Forms Field Settings. Note: This is a breaking change, and will require you to update your GraphQL queries for formField.choices and formField.inputs to use the new FormFieldChoice and FormFieldInput interfaces, respectively.
  • We've added explicit support for the Option, Product, Quantity, Shipping, and Total Gravity Forms fields.
  • We've added the new orderSummary field to GfEntry objects, which contains all the order details for the form submission.
  • We've exposed the connectedChoice and connectedInput fields to CheckboxFieldValue objects, to make it easier to access specific values of the selected choices and inputs without hacky workarounds.
  • We've deprecated the FormField.id field in favor of FormField.databaseId, which is more consistent with WPGraphQL's naming conventions. Note: FormField.id will change its type to a global (Relay) ID in an upcoming release.

🚨 Breaking Schema Changes

  • Field AddressField.defaultProvince changed type from String to AddressFieldProvinceEnum.
  • Field AddressField.defaultState changed type from String to AddressFieldProvinceEnum.
  • All {FieldType}.inputs fields changed type from [AddressInputProperty] to [GfFieldInput].
  • Field {FieldType}.choices changed type from [ChainedSelectFieldChoice] to [GfFieldChoice].
  • Enum value SUBMIT was removed from enum FormFieldTypeEnum.
  • PostCategoryFieldChoice kind changed from ObjectTypeDefinition to InterfaceTypeDefinition.
  • Type PostCategoryInputProperty was removed.
  • Type PostCustomInputProperty was removed.
  • Type PostTagsInputProperty was removed.
  • QuizFieldChoice kind changed from ObjectTypeDefinition to InterfaceTypeDefinition.
  • Type QuizInputProperty was removed.
  • Type SubmitField was removed.

Fixes

  • fix: Ensure latest mutation input data is used to prepare the field values on update mutations.
  • fix: Check for falsy personalData when resolving the form model.

Misc

  • feat: Deprecate FormsConnectionOrderbyInput.field in favor of FormsConnectionOrderbyInput.column

Behind the Scenes

  • feat!: Update minimum required WPGraphQL version to v1.9.0.
  • dev!: Move TypeRegistry classes to WPGraphQL\GF\Registry namespace.
  • dev!: Register each GraphQL type on its own add_action() call.
  • dev!: Remove nullable $type_registry param from Registrable::register() interface method.
  • dev!: Remove the $type_registry param from the graphql_gf_after_register_types and graphql_gf_before_register_types actions.
  • dev!: Remove the PropertyMapper, ChoiceMapper, InputMapper, and FieldProperties PHP classes in favor of the FormFieldRegistry, FieldInputRegistry and FieldChoiceRegistry classes.
  • dev!: Check if plugin dependences meet the minimum version requirements.
  • dev: Add following actions: graphql_gf_after_register_form_field, graphql_gf_after_register_form_field_object.
  • dev: Add the following filters: graphql_gf_form_field_settings_with_inputs graphql_gf_form_field_settings_with_choices graphql_gf_form_field_setting_choice_fields, graphql_gf_form_field_setting_input_fields, graphql_gf_registered_form_field_setting_classes, graphql_gf_registered_form_field_setting_choice_classes, graphql_gf_registered_form_field_setting_input_classes.
  • dev: Deprecate the graphql_gf_form_field_setting_properties filter in favor of graphql_gf_form_field_setting_fields.
  • dev: Deprecate the graphql_gf_form_field_value_properties filter in favor of graphql_gf_form_field_value_fields.
  • chore: Refactor FormsConnectionResolver to use new AbstractConnectionResolver methods.
  • chore: Add automattic/vipcs Code Standard ruleset.
  • ci: Update GitHub Action versions used in workflows to latest.
  • ci: Update Node version to 16+.
  • ci: Run actions on organization repository.
  • ci: Add coverage to Code Climate.
  • ci: Set config to skip GF Setup screen.
  • tests: Rename FormFieldTestCase test methods for specificity.
  • tests: Format and harden.
  • tests: Add tests for submitGfForm mutation.
  • docs: replace formId with id in submitGfForm examples. Props: @mosesintech

New Contributors

Full Changelog: https://github.com/harness-software/wp-graphql-gravity-forms/compare/v0.11.11...v0.12.0

v0.11.11

1 year ago

This minor release fixes a bug where the provided IP address was not saved correctly when using the submitGfForm mutation.

What's Changed

  • fix: Properly store provided IP when submitting an entry. Thanks @marcusforsberg !
  • chore: Update composer deps.

Full Changelog: https://github.com/harness-software/wp-graphql-gravity-forms/compare/v0.11.10...v0.11.11

v0.11.10

1 year ago

This minor release adds compatibility for Gravity Forms v2.6.8+ by refactoring the internal logic used for uploading files to use native Gravity Forms methods whenever possible.

  • fix: Refactor File Upload logic for compatibility with Gravity Forms 2.6.8+.
  • chore: Update composer deps.

Full Changelog: https://github.com/harness-software/wp-graphql-gravity-forms/compare/v0.11.9...v0.11.10