Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extend plugin settings using a tabbed interface #385

Merged
merged 131 commits into from
Oct 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
131 commits
Select commit Hold shift + click to select a range
9c90dac
Remove duplicate request for video settings
galbus Apr 12, 2024
17ca68d
Settings tabs
galbus Apr 12, 2024
f1e49b5
Merge branch 'main' into s-5044-move-current-wordpress-settings-secti…
galbus May 2, 2024
980755a
Organise Settings components into Tabs and Fields
galbus May 2, 2024
be23d9e
jQuery UI tabs, all fields except colour fields
galbus May 9, 2024
bbe18d9
Reverted JS tabs, added 'Player controls' section
galbus May 19, 2024
f794628
Fixes and tidying for initial review
galbus May 19, 2024
524415f
Fixing PHPUnit tests
galbus May 23, 2024
8005366
Fixing more tests WIP
galbus May 23, 2024
8dd725c
REST API syncing functional but needs some refactoring & tests
galbus Jun 2, 2024
2b05ac5
Disable some notices, fix some bugs
galbus Jun 2, 2024
5e7b7f2
Manual sync of player settings to dashboard
galbus Jun 22, 2024
c17b841
Voices tab improvements
galbus Jun 23, 2024
64e8aa9
Color previews for settings color fields
galbus Jun 23, 2024
9994e99
Link to Player Settings docs for Skipping control
galbus Jun 23, 2024
c617117
Edit project rules link
galbus Jun 23, 2024
cb88c65
Toggle Player fields, BEM improvements
galbus Jun 23, 2024
5f9c0a9
JavaScript languages/voice fields (much improved)
galbus Jun 29, 2024
394cac9
Remove more Legacy player bits
galbus Jun 29, 2024
c7df607
Merge branch 'main' into s-5044-move-current-wordpress-settings-secti…
galbus Jun 30, 2024
4460d41
Feedback from 1st review
galbus Jun 30, 2024
d00c041
Allow posts to have a blank player style
galbus Jun 30, 2024
153c856
Site Health
galbus Jun 30, 2024
54724d5
Site Health updates
galbus Jun 30, 2024
cb59310
Site Health updates
galbus Jun 30, 2024
8202f70
Sync 'Include title in audio' with REST API
galbus Jul 14, 2024
33283c0
Handle # in color inputs
galbus Jul 14, 2024
5312940
Player style updates
galbus Jul 21, 2024
217b701
Pronunciations link text
galbus Jul 21, 2024
c12b384
Fix WordPress 6.6 deprecation warnings, move Status panel to Player
galbus Jul 21, 2024
7417eb8
Settings WIP
galbus Jul 21, 2024
396facd
Rename 'General' tab to 'Credentials'
galbus Jul 30, 2024
28cbf69
Rename submit button
galbus Jul 30, 2024
5fd8a01
More General > Credentials renaming
galbus Jul 30, 2024
45dd9bd
Copy updates
galbus Jul 30, 2024
791693d
Update pronunciations button
galbus Jul 30, 2024
e81c1b4
Update unit tests for settings revamp
galbus Jul 31, 2024
a8d038d
PHPUnit and code coverage checks passing after settings update
galbus Jul 31, 2024
1f6f74f
Merge branch 'main' into s-5044-move-current-wordpress-settings-secti…
galbus Jul 31, 2024
af42f0b
Plugin Check updates
galbus Jul 31, 2024
d16e313
Remove unnecessary constructor
galbus Jul 31, 2024
45f0fee
esc_attr_e not esc_attr__
galbus Jul 31, 2024
d7b6e9f
Temporarily lower min coverage check percent
galbus Jul 31, 2024
309a8b4
Run cypress tests in settings feature branch
galbus Jul 31, 2024
0f49aa5
Update Cypress tests for tabs
galbus Aug 1, 2024
3acef64
Update Cypress tests for tabs
galbus Aug 1, 2024
0dae08e
Cypress tests
galbus Aug 1, 2024
6a7caf3
Old settings tests passing
galbus Aug 4, 2024
17c4bc4
Fix submit button selector in some tests
galbus Aug 4, 2024
75a124c
Close new WordPress 'Patterns' modal if it opens
galbus Aug 4, 2024
fb01e6c
Update command to save existing post
galbus Aug 4, 2024
828dfd5
Segment markers tests passing again
galbus Aug 4, 2024
a0741c2
Don't press enter after typing title in tests
galbus Aug 4, 2024
7d3bd01
temporarily skip player style tests
galbus Aug 4, 2024
eecb6c5
Fix 'Pending Review' tests
galbus Aug 4, 2024
687c91a
Start tests for syncing settings
galbus Aug 4, 2024
e113a4f
Tests updated for WordPress 6.6
galbus Aug 10, 2024
3a4d974
Deprecate Language ID & use Language code everywhere
galbus Aug 10, 2024
badad96
Revert "Deprecate Language ID & use Language code everywhere"
galbus Aug 10, 2024
9a4b0a3
Voice Mock test fixes
galbus Aug 10, 2024
0845d8f
Convert project language from code to ID, access properties using Sym…
galbus Aug 10, 2024
6f1fbd6
fix missing hexidecimal hash prefix in API requests
galbus Aug 11, 2024
72296c8
Update try/catch block for PHP 7 support
galbus Aug 11, 2024
6fd95e1
Sync voices and speaking rates
galbus Aug 11, 2024
00c0910
Min supported PHP version is 8.0 due to Symfony PropertyAccessor depe…
galbus Aug 11, 2024
76a3e3a
Refactor settings sync, use a filter to sync
galbus Aug 11, 2024
4c38f86
Delete obselete maybeSync methods
galbus Aug 11, 2024
27b41f2
Match types in WordPress to types in REST API
galbus Aug 11, 2024
11585fd
Update Cypress selectors
galbus Aug 11, 2024
dbcc34c
Update Cypress selectors
galbus Aug 11, 2024
4156f34
Update Cypress selectors
galbus Aug 11, 2024
cd4d049
Bump version numbers for settings update to 5.0.0 + remove deprecated…
galbus Aug 18, 2024
16b784d
Version number update to pass plugin-check
galbus Aug 18, 2024
4517cb9
Language/voice cypress tests passing
galbus Aug 18, 2024
454f06e
Settings checkboxes fixes
galbus Aug 18, 2024
c409d5e
Run more settings tests
galbus Aug 19, 2024
bd0dab4
Fix settings callback tests
galbus Sep 1, 2024
caf2067
All PHPUnit tests passing
galbus Sep 1, 2024
1f39cf6
Update Cypress, reset tabs tests
galbus Sep 1, 2024
12f78b6
Lower code coverage to 55
galbus Sep 1, 2024
7c75e9f
Docs update
galbus Sep 9, 2024
be50603
Tidy grumphp.yml
galbus Sep 9, 2024
9b626b6
Merge branch 'main' into s-5044-move-current-wordpress-settings-secti…
galbus Sep 9, 2024
75841a4
Prevent namespace issues in tests
galbus Sep 12, 2024
142df1b
Replace hardcoded option names with OPTION_NAME const
galbus Sep 12, 2024
0d5b74e
Debug logging
galbus Sep 12, 2024
fe95b74
Project body/title speaking rates are GET-only
galbus Sep 12, 2024
4e34007
Body/title voice ID syncing to dashboard
galbus Sep 12, 2024
00d00fd
Fix mapping for segment_playback_enabled
galbus Sep 12, 2024
dbffef1
Use sanitize_key for nonces
galbus Sep 12, 2024
fd44008
Sanitization updated for CI plugin checks
galbus Sep 12, 2024
0df9937
NoticesTest params updates
galbus Sep 12, 2024
1cddf75
Cleanup new options on uninstall
galbus Sep 12, 2024
5836dd5
Update Cypress, only inject apiClient where needed
galbus Sep 12, 2024
636392c
Update Site Health labels, improve Site Health tests
galbus Sep 12, 2024
901912e
Docker apiUrl for Cypress
galbus Sep 12, 2024
9f2a5b3
Remove description on advanced tab
galbus Sep 12, 2024
1262529
Remove the 'only' from test
galbus Sep 12, 2024
7fc0a3e
Cache 'video enabled' in option, not in transient
galbus Sep 12, 2024
e971303
Update unit tests after settings updates
galbus Sep 13, 2024
7ed56a2
Merge branch 'main' into s-5044-move-current-wordpress-settings-secti…
galbus Sep 13, 2024
9958e0e
Undo Path-to-RegExp resolution
galbus Sep 13, 2024
5f15f21
Organise tests for settings tabs, update Mock API responses
galbus Sep 13, 2024
a586813
Update unit tests to work with Mock API updates
galbus Sep 13, 2024
a7400c3
Cypress tests for new settings
galbus Sep 13, 2024
3a6de27
Tidy up some tests
galbus Sep 13, 2024
03cd344
Fix invalid JSON in Mock API
galbus Sep 13, 2024
aea283e
Set data attributes for default languages
galbus Sep 13, 2024
2d1ecf8
Fix some syncing bugs
galbus Sep 14, 2024
8e5ae6f
Use mock API responses in site-heath Cypress tests
galbus Sep 14, 2024
fe04906
Submit options form in Cypress tests
galbus Sep 14, 2024
ea7960f
sanitize function for TextHighlighting
galbus Sep 14, 2024
b7ba066
Cypress test updates
galbus Sep 14, 2024
c937c35
Comments for skipped tests
galbus Sep 14, 2024
a3d0b67
Only check for sync on admin pages
galbus Sep 15, 2024
10861d8
Assign default voices when language changes
galbus Sep 15, 2024
c75c793
Fix reading/writing voice data
galbus Sep 16, 2024
e8e4afc
Fix syncing of boolean checkbox settings
galbus Sep 19, 2024
ce89720
Option name fix
galbus Sep 19, 2024
a8a3d42
Renamw beyondwords_include_title to beyondwords_project_title_enabled
galbus Sep 19, 2024
40ce81e
Use OPTION_NAME constants for all settings
galbus Sep 19, 2024
a32197e
setLanguageCode after option is added/updated
galbus Sep 19, 2024
45f560f
Rename some settings for consistency
galbus Sep 19, 2024
c70661a
Cancel syncs
galbus Oct 6, 2024
76246eb
Sync settings using transients, not filters
galbus Oct 6, 2024
606d1af
Skip tests that fail due to auto-API syncing, fix others
galbus Oct 7, 2024
1fdb238
Remove settings JS files that are no longer in use
galbus Oct 7, 2024
fe7451f
Support non-hex strings in player colours, group sync-related methods
galbus Oct 8, 2024
d2ca757
Release notes
galbus Oct 13, 2024
aaa0bd2
BEYONDWORDS_AUTO_SYNC_SETTINGS false for e2e tests
galbus Oct 13, 2024
22979bb
Merge branch 'main' of github.com:beyondwords-io/wordpress-plugin int…
galbus Oct 13, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 14 additions & 10 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,12 @@ jobs:
# ######################################
# PHP
# ######################################
- name: Setup PHP 7.4
- name: Setup PHP 8.0
uses: shivammathur/setup-php@v2
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
php-version: '7.4'
php-version: '8.0'
extensions: mbstring intl
tools: composer, wp-cli

Expand All @@ -40,7 +40,7 @@ jobs:
uses: actions/cache@v4
with:
path: /tmp/composer-cache
key: ${{ runner.os }}-php7.4-no-dev-${{ hashFiles('**/composer.lock') }}
key: ${{ runner.os }}-php8.0-no-dev-${{ hashFiles('**/composer.lock') }}

- name: Install Composer dependencies (no-dev)
run: composer install --no-dev --ignore-platform-reqs --optimize-autoloader --profile
Expand Down Expand Up @@ -175,7 +175,7 @@ jobs:
phpunit-version: ['10']
operating-system: ['ubuntu-latest']
include:
- php-version: '7.4'
- php-version: '8.0'
phpunit-version: '9'
operating-system: ['ubuntu-20.04']

Expand Down Expand Up @@ -211,14 +211,14 @@ jobs:
uses: actions/cache@v4
with:
path: /tmp/composer-cache
key: ${{ runner.os }}-php7.4-dev-${{ hashFiles('**/composer.lock') }}
key: ${{ runner.os }}-php8.0-dev-${{ hashFiles('**/composer.lock') }}

- name: Install Composer dependencies (dev)
uses: php-actions/composer@v6
with:
dev: yes
args: --ignore-platform-reqs --optimize-autoloader --profile
php_version: '7.4'
php_version: '8.0'

- name: Check PHP Version
run: php -v
Expand Down Expand Up @@ -318,7 +318,7 @@ jobs:
environment: production
needs: [plugin-check, phpunit-tests]
# Only run on "main" branch and tags/branches starting with "v*"
if: success() && (github.ref == 'refs/heads/main' || startsWith(github.event.ref, 'refs/tags/v') || startsWith(github.event.ref, 'refs/heads/v'))
# if: success() && (github.ref == 'refs/heads/main' || startsWith(github.event.ref, 'refs/tags/v') || startsWith(github.event.ref, 'refs/heads/v'))

strategy:
# don't fail the entire matrix on failure
Expand All @@ -328,7 +328,7 @@ jobs:
phpunit-version: ['10']
operating-system: ['ubuntu-latest']
include:
- php-version: '7.4'
- php-version: '8.0'
phpunit-version: '9'
operating-system: ['ubuntu-20.04']

Expand Down Expand Up @@ -363,14 +363,14 @@ jobs:
uses: actions/cache@v4
with:
path: /tmp/composer-cache
key: ${{ runner.os }}-php7.4-dev-${{ hashFiles('**/composer.lock') }}
key: ${{ runner.os }}-php8.0-dev-${{ hashFiles('**/composer.lock') }}

- name: Install Composer dependencies (dev)
uses: php-actions/composer@v6
with:
dev: yes
args: --ignore-platform-reqs --optimize-autoloader --profile
php_version: '7.4'
php_version: '8.0'

- name: Check PHP Version
run: php -v
Expand Down Expand Up @@ -404,6 +404,10 @@ jobs:
run: |
wp config set BEYONDWORDS_API_URL http://localhost:3000/v1

- name: Disable BEYONDWORDS_AUTO_SYNC_SETTINGS
run: |
wp config set BEYONDWORDS_AUTO_SYNC_SETTINGS false --raw

- name: Set WordPress core config values
run: |
wp config set AUTOMATIC_UPDATER_DISABLED true --raw
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
/build
/codeception.yml
/cypress.env.json
/log
/node_modules
/tests/cypress/downloads
/tests/cypress/results
Expand Down
Loading