Releases: AxeWP/wp-graphql-gravity-forms
v0.11.4
This minor release fixes a bug where form.entries would return entries from all forms, among other things.
- (#291) feat: Update
plugin-update-checkertov4.13and enable use of local assets on Dashboard screen. - (#307) fix: ensure form->entry connections only return entries on that form.
- (#307) fix: change
formIdsinput description to clarify that it (currently) only accepts database IDs. - (#304) chore: update Composer deps.
- (#307) test: ensure
$_gf_stateis reset between tests. - (#307) test: add some extra WPUnit tests for form/entry connection where args.
Full Changelog: v0.11.3...v0.11.4
v0.11.3 - WPGraphQL v1.9.0 Compatibility
This minor release fixes a bug where gfEntries.pageInfo fields would have incorrect data after upgrading to WPGraphQL v1.9.0.
Note: As a result of WPGraphQL v1.9.0, the order of items returned when using backwards pagination (e.g. last:5) is now reversed and identical to the order of items returned when using forward pagination, as per the GraphQL Relay spec.
- fix: Refactor
EntriesConnectionResolverto support WPGraphQL v1.9.0. - test: refactor
gfFormsandgfEntriespagination tests.
Full Changelog: v0.11.2...v0.11.3
v0.11.2 - Build Scripts, Confirmations, & DataLoaders
This minor release fixes a bug where querying for a non-existent Form/Entry ID would throw an error instead of returning null.
We also added some new GraphQL fields and connections to the FormConfirmation and SubmissionConfirmation types, and made some under-the-hood improvements to both the code and our build scripts.
- feat: Add
isAutoformattedto theFormConfirmationobject. - feat: Add
Pageconnection to theFormConfirmationobject. (h/t @robmarshall ) - feat: Add
pageIdandqueryStringfields andPageconnection to theSubmissionConfirmationobject. - fix: Ensure DataLoader keys return null on non-existent objects, instead of throwing errors. (h/t 6x x6 and Jonathan Ng )
- dev: Fix return type for
Utils::get_possible_form_field_child_types(). - dev: Refactor ignored Gravity Forms settings to
FormFields::ignored_gf_settings(). - dev: Ensure composer deps are built for PHP 7.4.
- chore: Update Composer deps.
- docs: Add usage example for file uploads.
- ci: Various improvements to workflows.
Full Changelog: v0.11.1.1...v0.11.2
v0.11.1.1 - Hotfix
This hotfix release fixes an issue with the GitHub Updater attempting to install plugin updates from the wrong release asset.
- fix: ensure results of graphql_gf_update_repo_url are always trailing-slashed.
- chore: add Composer command for generating plugin .zip
- chore: add Github Action for adding plugin .zip to release.
v0.11.1 - reCAPTCHA Settings & Submission Confirmations
This minor release adds the reCaptcha V2 type and publicKey to gfSettings.recaptcha, the validated confirmation response to form submission mutation payloads, and fixes a handful of bugs.
- feat: Add
recaptchasettings toGFSettingsGraphQL object. - feat: Add
SubmissionConfirmationobject tosubmitGfFormandsubmitGfDraftEntrymutation responses. Props: @KoduVaal - fix:
isActiveshould default to true for new Confirmations / Notifications. - fix: Correctly resolve the
rangeMinandrangeMaxGraphQL fields onNumberField. H/t @natac13 - fix: Ensure GF Action Monitor setting keys are populated.
- fix: Ensure
checkboxValuesload the Post Category choices before attempting to process. - fix: Prevent reprocessing the
imageValueInput.urlwhen updatingPostImagefield values. - tests: Fix broken test asserts exposed by PHPUnit v9 + WPGraphQL Test Case v2.3.
- tests: Use
gravityformsclifor installing GF plugins in test envs. - chore: Upgrade composer deps.
v0.9.2.3 - Hotfix
- fix:
rangeMaxshould useGF_Number_Field::$rangeMaxwhen resolving.
v0.9.2.2 - Hotfix
This hotfix release fixes an issue where the rangeMin and rangeMax fields on NumberField would not always return the correct float value.
- fix: correctly return float values for
rangeMinandrangeMaxproperties.
Full Changelog: v0.9.2.1...v0.9.2.2
v0.11.0 - reCAPTCHA Validation, Plugin Updates, and GF 2.6 Support
This major release adds support for server-side captcha validation, plugin updates from the WordPress backend, and new features from Gravity Forms v2.6. We've also refactored the internal file upload mechanism to better integrate with GF's form submission lifecycle, leading to more reliable (and in some cases, more performant) results.
Lastly, we fixed the GraphQL type names on some of the Product and Shipping fields, so we can hopefully add mutation support in future minor releases (and not break back-compat).
Note: The minimum version of WPGraphQL has been bumped to v1.7.0.
What's new
- 🚨 Breaking: We've added support for server-side captcha validation with reCAPTCHA. Note: If you are already using captcha fields in your form, you will need to modify your code to to pass the validation token to
fieldValues. - 🚨 Breaking: The
buttonfield onGfFormhas been deprecated in favor ofform.submitButon. Both now use the newFormSubmitButtonGraphQL type (instead of the oldFormButton), which adds support forlayoutGridColumnSpan,locationandwidthproperties added in GF v2.6. - We've added support for plugin updates on the WordPress backend. A warning is displayed along with the update notice when upgrading to a version with possible breaking changes (e.g. v0.X.y ).
- We've added a new
FileUploadValuesGraphQL type to theFileUploadFieldwhich includes thebasePath,baseUrl, andfilenamefields in addition to the existingurl. These fields have also been added toImageFieldValues.
Behind the scenes
- Added the
graphql_gf_update_repo_urlfilter to control the source of the Update Checker. - Reworked the logic handling file uploads to use the native GF form submission lifecycle whenever possible.
Misc
- chore!: The minimum version of WPGraphQL is now v1.7.0.
- fix!: The
ProductHiddenProductField,ProductSingleProductField, andShippingSingleShippingFieldhave been renamed toProductHiddenField,ProductSingleField, andShippingSingleField, respectively, in line with other child fields. - fix: Don't hide the
CALCULATION,HIDDENPRODUCT,SINGLEPRODUCTandSINGLESHIPPINGvalues from theFormFieldTypeEnum. - fix: Resolve
FormQuizdata using the unmodeledformdata instead of theFormObjectmodel. - dev: The
lastPageButtonfield onGFFormhas been deprecated in favor ofform.pagination.lastPageButton, where the other pagination fields live. - dev: The
valuesfield onFileUploadFieldhas been deprecated in favor offileUploadValues. - dev: The
GFUtils::handle_file_upload()method has been deprecated. - dev: The
graphql_gf_form_modeled_data_experimentalfilter has been deprecated in favor of WPGraphQL's nativegraphql_model_prepare_fields.
v0.10.5 - Bugfix
This minor release fixes a few bugs in the FormsConnectionResolver. We've also added GitHub Actions for PHPStan and GraphQL schema linting.
- fix: Prevent
gfFormsqueries with thelastargument from truncating the final node. - fix: Correctly return
hasNextPageandhasPreviousPagevalues ongfFormsconnections. - dev: Refactor
bin/install-test-envinto resuable functions. - chore: Update Composer dependencies.
- chore: Add GH action to save GraphQL artifact to release.
- tests: Add GH Action for GraphQL schema linting.
- tests: Add GH Action for PHPStan
v0.10.4 - Entry Counts and Quiz Results
This minor release adds a form's total entries count and its quizResults to the GfFormToGfEntryConnection connection.
E.g.:
query {
gfForm(id: $id, idType: $idType) {
entries {
count # the number of entries submitted
quizResults { # The quiz results summary
averagePercentage
passRate
gradeCounts { # the frequency of each grade
count
grade
}
fieldCounts { ## the individual field breakdown
correctCount
formField {
node {
label
}
}
choiceCounts { ## the frequency of each answer
count
text
}
}
}
}
}
}- feat: Add
counttoGfFormToGfEntryConnection. - feat: Add
quizResultstoGfFormToGfEntryConnection. - dev: Make original form data available via the Form model.
- chore: Update Composer deps.
- chore: Fix a few GraphQL descriptions that were missing a closing
..