* Require profile fields to belong to a group
Remove the empty group dropdown from the group select tag
Remove the optional: true from the belongs_to validation (raise a
validation error on save if the group is not provided)
Update test to remove belongs_to's optional setting
* Update ProfileFields::Add spec to include profile field group
* update factory to ensure a non-empty profile field group
* Add required profile field group to seeded profile fields
Since profile field is required, create was failing (silently).
Add required field so these are available in e2e tests.
* Use factory `association` to create a profile field group
https://github.com/thoughtbot/factory_bot/blob/master/GETTING_STARTED.md#explicit-definition
* provide required profile field group when posting data
* Fix one spec, drop another
Both of these scripts will be removed in the other branch (changing
the attribute name) - dropping the test here seems lower trouble than
modifying an out of data data update script to pass.
* skip test slated for removal
Similar to the last commit - this test exercises a script about to be
archived in the other branch.
* Introduce ProfileFieldGroup model
* Make profile_fields_groups name column unique
* Fix some specs
* feat: allow the page to work again
* Add guard clause to data update script
* Remove unused file
* Fix specs
* Add foreign key
Co-authored-by: Ridhwana <ridhwana.khan16@gmail.com>
* Add ProfileField model
* Fix schema.rb
* Add service objects for base and link fields
* feat: show an index of profile fields and allow them to be edited
* Fix schema.rb
* Add service objects for base and link fields
* Add link fields to seeds
* Make placeholder a keyword argument
* Add work fields
* Add explanation column to profile fields
* Add coding fields
* Switch from inheritance to mixin
* Add email checkbox to base fields
* Add branding fields
* Add spec for ProfileFields::FieldDefinition
* chore: moved the migration file
* feat: add a create and destroy route
* feat: render a partial form
* fix: oops form instead of f
* Move migration back into correct location
* Rename column from explanation to description
* Rename attribute in mixin
* chore: update classed for buttons
* chore: rename from explanation to description
* chore: explanation to description
* chore: new profie field
* fix: only one submit button per form
* fix: update the form
* fix: remove files that got merged mistakenly
* chore: finally, some specs...
Co-authored-by: Michael Kohl <citizen428@dev.to>