@kitconcept/volto-light-theme 3.1.2 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/.changelog.draft +12 -0
  2. package/.release-it.json +5 -1
  3. package/CHANGELOG.md +25 -4
  4. package/README.md +45 -134
  5. package/build/messages/src/components/Anontools/Anontools.json +10 -0
  6. package/build/messages/src/components/Blocks/Button/schema.json +6 -0
  7. package/build/messages/src/components/Blocks/EventMetadata/View.json +30 -0
  8. package/build/messages/src/components/Blocks/Image/Edit.json +10 -0
  9. package/build/messages/src/components/Blocks/Image/ImageSidebar.json +18 -0
  10. package/build/messages/src/components/Blocks/Image/schema.json +10 -0
  11. package/build/messages/src/components/Blocks/Listing/ListingBody.json +26 -0
  12. package/build/messages/src/components/Blocks/Search/TopSideFacets.json +10 -0
  13. package/build/messages/src/components/Blocks/Search/components/SearchDetails.json +10 -0
  14. package/build/messages/src/components/Blocks/Search/components/SearchInput.json +6 -0
  15. package/build/messages/src/components/Blocks/Slider/DefaultBody.json +18 -0
  16. package/build/messages/src/components/Blocks/Slider/schema.json +14 -0
  17. package/build/messages/src/components/Blocks/schema.json +6 -0
  18. package/build/messages/src/components/Breadcrumbs/Breadcrumbs.json +10 -0
  19. package/build/messages/src/components/Footer/Footer.json +30 -0
  20. package/build/messages/src/components/Header/Header.json +6 -0
  21. package/build/messages/src/components/LanguageSelector/LanguageSelector.json +6 -0
  22. package/build/messages/src/components/Logo/Logo.json +10 -0
  23. package/build/messages/src/components/MobileNavigation/MobileNavigation.json +26 -0
  24. package/build/messages/src/components/Navigation/Navigation.json +10 -0
  25. package/build/messages/src/components/SearchWidget/IntranetSearchWidget.json +14 -0
  26. package/build/messages/src/components/SearchWidget/SearchWidget.json +10 -0
  27. package/build/messages/src/components/Theme/EventView.json +6 -0
  28. package/build/messages/src/components/Widgets/AlignWidget.json +22 -0
  29. package/build/messages/src/index.json +10 -0
  30. package/locales/de/LC_MESSAGES/volto.po +7 -7
  31. package/locales/en/LC_MESSAGES/volto.po +7 -7
  32. package/locales/es/LC_MESSAGES/volto.po +10 -9
  33. package/locales/eu/LC_MESSAGES/volto.po +10 -9
  34. package/locales/pt_BR/volto.po +7 -7
  35. package/locales/volto.pot +8 -8
  36. package/package.json +8 -26
  37. package/src/components/Blocks/Image/Edit.jsx +14 -14
  38. package/src/components/Blocks/Image/ImageSidebar.jsx +3 -3
  39. package/src/components/Blocks/Image/View.jsx +17 -17
  40. package/src/components/Footer/Footer.jsx +2 -2
  41. package/src/components/Header/Header.jsx +12 -12
  42. package/src/index.js +2 -0
  43. package/src/theme/_content.scss +0 -1
  44. package/src/theme/_header.scss +1 -1
  45. package/src/theme/_variables.scss +3 -3
  46. package/.dockerignore +0 -1
  47. package/.editorconfig +0 -34
  48. package/.eslintignore +0 -6
  49. package/.eslintrc +0 -53
  50. package/.github/workflows/acceptance.yml +0 -98
  51. package/.github/workflows/changelog.yml +0 -43
  52. package/.github/workflows/code.yml +0 -16
  53. package/.github/workflows/deploy.yml +0 -105
  54. package/.github/workflows/unit.yml +0 -16
  55. package/.prettierignore +0 -3
  56. package/.prettierrc +0 -12
  57. package/.stylelintrc +0 -32
  58. package/.yarn/releases/yarn-3.2.3.cjs +0 -783
  59. package/.yarnrc.yml +0 -3
  60. package/Makefile +0 -174
  61. package/UPGRADE-GUIDE.md +0 -38
  62. package/acceptance/.gitkeep +0 -0
  63. package/acceptance/ci-a11y.yml +0 -31
  64. package/acceptance/ci.yml +0 -29
  65. package/acceptance/cypress/.gitkeep +0 -0
  66. package/acceptance/cypress/fixtures/broccoli.jpg +0 -0
  67. package/acceptance/cypress/fixtures/example.json +0 -5
  68. package/acceptance/cypress/fixtures/file.pdf +0 -0
  69. package/acceptance/cypress/fixtures/halfdome2022.jpg +0 -0
  70. package/acceptance/cypress/fixtures/image.png +0 -0
  71. package/acceptance/cypress/plugins/index.js +0 -17
  72. package/acceptance/cypress/support/commands.js +0 -23
  73. package/acceptance/cypress/support/e2e.js +0 -23
  74. package/acceptance/cypress/support/reset-fixture.js +0 -45
  75. package/acceptance/cypress/support/slate.js +0 -14
  76. package/acceptance/cypress/tests/.gitkeep +0 -0
  77. package/acceptance/cypress/tests/a11y/accordionBlock.cy.js +0 -30
  78. package/acceptance/cypress/tests/a11y/basic.cy.js +0 -26
  79. package/acceptance/cypress/tests/a11y/buttonBlock.cy.js +0 -18
  80. package/acceptance/cypress/tests/a11y/eventContenttype.cy.js +0 -18
  81. package/acceptance/cypress/tests/a11y/fileContenttype.cy.js +0 -18
  82. package/acceptance/cypress/tests/a11y/gridBlock.cy.js +0 -18
  83. package/acceptance/cypress/tests/a11y/gridImageBlock.cy.js +0 -18
  84. package/acceptance/cypress/tests/a11y/gridListingBlock.cy.js +0 -18
  85. package/acceptance/cypress/tests/a11y/gridTeaserBlock.cy.js +0 -18
  86. package/acceptance/cypress/tests/a11y/gridTextBlock.cy.js +0 -33
  87. package/acceptance/cypress/tests/a11y/headingBlock.cy.js +0 -18
  88. package/acceptance/cypress/tests/a11y/highlightBlock.cy.js +0 -18
  89. package/acceptance/cypress/tests/a11y/imageBlock.cy.js +0 -18
  90. package/acceptance/cypress/tests/a11y/imageContenttype.cy.js +0 -18
  91. package/acceptance/cypress/tests/a11y/introductionBlock.cy.js +0 -18
  92. package/acceptance/cypress/tests/a11y/linkContenttype.cy.js +0 -18
  93. package/acceptance/cypress/tests/a11y/listingBlock.cy.js +0 -31
  94. package/acceptance/cypress/tests/a11y/mapsBlock.cy.js +0 -27
  95. package/acceptance/cypress/tests/a11y/newsItemContenttype.cy.js +0 -27
  96. package/acceptance/cypress/tests/a11y/pageContent.cy.js +0 -27
  97. package/acceptance/cypress/tests/a11y/searchBlock.cy.js +0 -18
  98. package/acceptance/cypress/tests/a11y/separatorBlock.cy.js +0 -28
  99. package/acceptance/cypress/tests/a11y/tableBlock.cy.js +0 -26
  100. package/acceptance/cypress/tests/a11y/teaserBlock.cy.js +0 -18
  101. package/acceptance/cypress/tests/a11y/textBlock.cy.js +0 -18
  102. package/acceptance/cypress/tests/a11y/tocBlock.cy.js +0 -18
  103. package/acceptance/cypress/tests/a11y/videoBlock.cy.js +0 -27
  104. package/acceptance/cypress/tests/main/basic.cy.js +0 -71
  105. package/acceptance/cypress/tests/main/blocks-map.cy.js +0 -56
  106. package/acceptance/cypress/tests/main/blocks-table.cy.js +0 -127
  107. package/acceptance/cypress/tests/main/listing-grid.cy.js +0 -77
  108. package/acceptance/cypress/tests/main/nav.cy.js +0 -54
  109. package/acceptance/cypress/tests/main/site-action.cy.js +0 -16
  110. package/acceptance/cypress.config.js +0 -17
  111. package/acceptance/docker-compose-a11y.yml +0 -55
  112. package/acceptance/docker-compose.yml +0 -53
  113. package/acceptance/package.json +0 -5
  114. package/acceptance/yarn.lock +0 -2638
  115. package/devops/stacks/light-theme.kitconcept.io.yml +0 -66
  116. package/dockerfiles/Dockerfile +0 -32
  117. package/dockerfiles/Dockerfile.acceptance +0 -19
  118. package/dockerfiles/Dockerfile.dev +0 -24
  119. package/dockerfiles/docker-compose.yml +0 -56
  120. package/dockerfiles/helper.py +0 -132
  121. package/volto-light-theme.png +0 -0
  122. package/volto.config.js +0 -7
package/.yarnrc.yml DELETED
@@ -1,3 +0,0 @@
1
- nodeLinker: node-modules
2
-
3
- yarnPath: .yarn/releases/yarn-3.2.3.cjs
package/Makefile DELETED
@@ -1,174 +0,0 @@
1
- # Yeoman Volto App development
2
-
3
- ### Defensive settings for make:
4
- # https://tech.davis-hansson.com/p/make/
5
- SHELL:=bash
6
- .ONESHELL:
7
- .SHELLFLAGS:=-eu -o pipefail -c
8
- .SILENT:
9
- .DELETE_ON_ERROR:
10
- MAKEFLAGS+=--warn-undefined-variables
11
- MAKEFLAGS+=--no-builtin-rules
12
-
13
- CURRENT_DIR:=$(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
14
-
15
- # Recipe snippets for reuse
16
-
17
- # We like colors
18
- # From: https://coderwall.com/p/izxssa/colored-makefile-for-golang-projects
19
- RED=`tput setaf 1`
20
- GREEN=`tput setaf 2`
21
- RESET=`tput sgr0`
22
- YELLOW=`tput setaf 3`
23
-
24
- PLONE_VERSION=6
25
- VOLTO_VERSION=17.15.5
26
-
27
- ADDON_NAME='@kitconcept/volto-light-theme'
28
- ADDON_PATH='volto-light-theme'
29
- COMPOSE_FILE=dockerfiles/docker-compose.yml
30
- ACCEPTANCE_COMPOSE=acceptance/docker-compose.yml
31
- ACCEPTANCE_COMPOSE_A11Y=acceptance/docker-compose-a11y.yml
32
- CMD=CURRENT_DIR=${CURRENT_DIR} ADDON_NAME=${ADDON_NAME} ADDON_PATH=${ADDON_PATH} VOLTO_VERSION=${VOLTO_VERSION} PLONE_VERSION=${PLONE_VERSION} docker compose
33
- DOCKER_COMPOSE=${CMD} -p ${ADDON_PATH} -f ${COMPOSE_FILE}
34
- DEV_COMPOSE=COMPOSE_PROFILES=dev ${DOCKER_COMPOSE}
35
- LIVE_COMPOSE=COMPOSE_PROFILES=dev ${DOCKER_COMPOSE}
36
- ACCEPTANCE=${CMD} -p ${ADDON_PATH}-acceptance -f ${ACCEPTANCE_COMPOSE}
37
- ACCEPTANCE_A11Y=${CMD} -p ${ADDON_PATH}-acceptance -f ${ACCEPTANCE_COMPOSE_A11Y}
38
-
39
- .PHONY: build-backend
40
- build-backend: ## Build
41
- @echo "$(GREEN)==> Build Backend Container $(RESET)"
42
- ${DEV_COMPOSE} build backend
43
-
44
- .PHONY: start-backend
45
- start-backend: ## Starts Docker backend
46
- @echo "$(GREEN)==> Start Docker-based Plone Backend $(RESET)"
47
- ${DEV_COMPOSE} up backend -d
48
-
49
- .PHONY: stop-backend
50
- stop-backend: ## Stop Docker backend
51
- @echo "$(GREEN)==> Stop Docker-based Plone Backend $(RESET)"
52
- ${DEV_COMPOSE} stop backend
53
-
54
- .PHONY: build-live
55
- build-live: ## Build Addon live
56
- @echo "$(GREEN)==> Build Addon development container $(RESET)"
57
- ${LIVE_COMPOSE} build addon-live
58
-
59
- .PHONY: build-addon
60
- build-addon: ## Build Addon dev
61
- @echo "$(GREEN)==> Build Addon development container $(RESET)"
62
- ${DEV_COMPOSE} build addon-dev
63
-
64
- .PHONY: start-dev
65
- start-dev: ## Starts Dev container
66
- @echo "$(GREEN)==> Start Addon Development container $(RESET)"
67
- ${DEV_COMPOSE} up addon-dev backend
68
-
69
- .PHONY: start-live
70
- start-live: ## Starts Dev container
71
- @echo "$(GREEN)==> Start Addon Development container $(RESET)"
72
- ${DEV_COMPOSE} up addon-live backend
73
-
74
- .PHONY: dev
75
- dev: ## Develop the addon
76
- @echo "$(GREEN)==> Start Development Environment $(RESET)"
77
- make build-backend
78
- make start-backend
79
- make build-addon
80
- make start-dev
81
-
82
- .PHONY: help
83
- help: ## Show this help.
84
- @echo -e "$$(grep -hE '^\S+:.*##' $(MAKEFILE_LIST) | sed -e 's/:.*##\s*/:/' -e 's/^\(.\+\):\(.*\)/\\x1b[36m\1\\x1b[m:\2/' | column -c2 -t -s :)"
85
-
86
- ## Setup the local environment
87
- .PHONY: install
88
- install: ## Install the local environment, Cypress, build acceptance containers
89
- yarn
90
- make install-acceptance
91
-
92
- # Dev Helpers
93
- .PHONY: i18n
94
- i18n: ## Sync i18n
95
- @echo "$(YELLOW)==> Do not forget to setup the local environment (make install) $(RESET)"
96
- yarn i18n
97
-
98
- .PHONY: format
99
- format: ## Format codebase
100
- ${DEV_COMPOSE} run --rm addon-dev lint:fix
101
- ${DEV_COMPOSE} run --rm addon-dev prettier:fix
102
- ${DEV_COMPOSE} run --rm addon-dev stylelint:fix
103
-
104
- .PHONY: lint
105
- lint: ## Lint Codebase
106
- ${DEV_COMPOSE} run --rm addon-dev lint
107
- ${DEV_COMPOSE} run --rm addon-dev prettier
108
- ${DEV_COMPOSE} run --rm addon-dev stylelint --allow-empty-input
109
-
110
- .PHONY: test
111
- test: ## Run unit tests
112
- ${DEV_COMPOSE} run --rm addon-dev test --watchAll
113
-
114
- .PHONY: test-ci
115
- test-ci: ## Run unit tests in CI
116
- ${DEV_COMPOSE} run -e CI=1 addon-dev test
117
-
118
- ## Acceptance
119
- .PHONY: install-acceptance
120
- install-acceptance: ## Install Cypress, build acceptance containers
121
- (cd acceptance && yarn)
122
- ${ACCEPTANCE} --profile dev --profile prod build
123
-
124
- .PHONY: start-test-acceptance-server
125
- start-test-acceptance-server: ## Start acceptance server (for use it in while developing)
126
- ${ACCEPTANCE} --profile dev up
127
-
128
- .PHONY: start-test-acceptance-server-prod
129
- start-test-acceptance-server-prod: ## Start acceptance server in prod (used by CI)
130
- ${ACCEPTANCE} --profile prod up -d
131
-
132
- .PHONY: test-acceptance
133
- test-acceptance: ## Start Cypress (for use it while developing)
134
- (cd acceptance && ./node_modules/.bin/cypress open --config specPattern='cypress/tests/main/**/*.{js,jsx,ts,tsx}')
135
-
136
- .PHONY: test-acceptance-headless
137
- test-acceptance-headless: ## Run cypress tests in CI
138
- (cd acceptance && ./node_modules/.bin/cypress run)
139
-
140
- .PHONY: stop-test-acceptance-server
141
- stop-test-acceptance-server: ## Stop acceptance server (for use it while finished developing)
142
- ${ACCEPTANCE} --profile dev down
143
-
144
- .PHONY: status-test-acceptance-server
145
- status-test-acceptance-server: ## Status of Acceptance Server (for use it while developing)
146
- ${ACCEPTANCE} ps
147
-
148
- .PHONY: start-test-acceptance-server-a11y
149
- start-test-acceptance-server-a11y: ## Start a11y acceptance server (for use it in while developing)
150
- ${ACCEPTANCE_A11Y} --profile dev up
151
-
152
- .PHONY: stop-test-acceptance-server-a11y
153
- stop-test-acceptance-server-a11y: ## Stop a11y acceptance server (for use it while finished developing)
154
- ${ACCEPTANCE_A11Y} --profile dev down
155
-
156
- .PHONY: test-acceptance-a11y
157
- test-acceptance-a11y: ## Start Cypress (for use it while developing)
158
- (cd acceptance && CYPRESS_a11y=1 ./node_modules/.bin/cypress open --config specPattern='cypress/tests/a11y/**/*.{js,jsx,ts,tsx}')
159
-
160
- .PHONY: debug-frontend
161
- debug-frontend: ## Run bash in the Frontend container (for debug infrastructure purposes)
162
- ${DEV_COMPOSE} run --entrypoint bash addon-dev
163
-
164
- .PHONY: pull-backend-image
165
- pull-backend-image: ## Pulls and updates the backend image (for use it while developing)
166
- docker pull ghcr.io/kitconcept/voltolighttheme:latest
167
-
168
- .PHONY: release
169
- release: ## Release a version of the add-on
170
- yarn release
171
-
172
- .PHONY: release-rc
173
- release-rc: ## Release a RC version of the add-on
174
- npx release-it --preRelease=rc
package/UPGRADE-GUIDE.md DELETED
@@ -1,38 +0,0 @@
1
- # Upgrade Guide
2
-
3
- ## volto-light-theme 3.0.0
4
-
5
- ### Blocks background colors go full width
6
-
7
- The background colors previously used to snap to 1440px.
8
- From 3.0.0-alpha.0 this changed to be unconstrained by default, and expand to the end of the horizontal viewport.
9
-
10
- ### Upgraded support for volto-slider-block 6.0.0
11
-
12
- VLT upgraded the dependency on `@kitconcept/volto-slider-block` to use `6.0.0`.
13
-
14
- This is a drop-in replacement, so no action is required for the existing slider blocks you may have already in your sites.
15
- However, the CSS classes of the structural slider block elements changed in this version.
16
- The inner (visible objects) CSS classes remain unchanged.
17
- If you have customized them in your project, you may have to update them, although the structural class names are rarely customized aside from vertical spacing properties.
18
- They are mapped 1:1 with the previous ones, following this table correspondence:
19
-
20
- | Old className | New className |
21
- | --------------- | ---------------- |
22
- | slick-slider | slider-wrapper |
23
- | slick-list | slider-viewport |
24
- | slick-track | slider-container |
25
- | slick-slide | slider-slide |
26
- | slick-arrow | slider-button |
27
- | slick-prev | slider-button-prev |
28
- | slick-next | slider-slide-next |
29
- | slick-next | slider-slide-next |
30
- | slick-dots | slider-dots |
31
- | slick-dot | slider-dot |
32
-
33
- For more information, please check the https://github.com/kitconcept/volto-slider-block/blob/main/README.md [#288](https://github.com/kitconcept/volto-light-theme/pull/288)
34
-
35
- ### Language switcher shows the two letters abbreviation of the languages
36
-
37
- Volto default is to show the full name of the language in the language switcher.
38
- VLT now shows only the two letters abbreviation of the language.
File without changes
@@ -1,31 +0,0 @@
1
- version: "3"
2
-
3
- services:
4
-
5
- addon-acceptance:
6
- build:
7
- context: ../
8
- dockerfile: ./dockerfiles/Dockerfile
9
- args:
10
- ADDON_NAME: "${ADDON_NAME}"
11
- ADDON_PATH: "${ADDON_PATH}"
12
- VOLTO_VERSION: ${VOLTO_VERSION:-17}
13
- environment:
14
- RAZZLE_INTERNAL_API_PATH: http://backend-acceptance-a11y:8080/Plone
15
- RAZZLE_API_PATH: http://localhost:8080/Plone
16
- ports:
17
- - 3000:3000
18
- depends_on:
19
- - backend-acceptance-a11y
20
- profiles:
21
- - prod
22
-
23
- backend-acceptance-a11y:
24
- image: ghcr.io/kitconcept/voltolighttheme:latest
25
- environment:
26
- CORS_: true
27
- ports:
28
- - 8080:8080
29
- profiles:
30
- - dev
31
- - prod
package/acceptance/ci.yml DELETED
@@ -1,29 +0,0 @@
1
- version: "3"
2
-
3
- services:
4
-
5
- addon-acceptance:
6
- build:
7
- context: ../
8
- dockerfile: ./dockerfiles/Dockerfile
9
- args:
10
- ADDON_NAME: "${ADDON_NAME}"
11
- ADDON_PATH: "${ADDON_PATH}"
12
- VOLTO_VERSION: ${VOLTO_VERSION:-17}
13
- environment:
14
- RAZZLE_INTERNAL_API_PATH: http://backend-acceptance:55001/plone
15
- RAZZLE_API_PATH: http://localhost:55001/plone
16
- ports:
17
- - 3000:3000
18
- depends_on:
19
- - backend-acceptance
20
- profiles:
21
- - prod
22
-
23
- backend-acceptance:
24
- image: plone/server-acceptance:${PLONE_VERSION:-6}
25
- ports:
26
- - 55001:55001
27
- profiles:
28
- - dev
29
- - prod
File without changes
@@ -1,5 +0,0 @@
1
- {
2
- "name": "Using fixtures to represent data",
3
- "email": "hello@cypress.io",
4
- "body": "Fixtures are a great way to mock data for responses to routes"
5
- }
@@ -1,17 +0,0 @@
1
- // ***********************************************************
2
- // This example plugins/index.js can be used to load plugins
3
- //
4
- // You can change the location of this file or turn off loading
5
- // the plugins file with the 'pluginsFile' configuration option.
6
- //
7
- // You can read more here:
8
- // https://on.cypress.io/plugins-guide
9
- // ***********************************************************
10
-
11
- // This function is called when a project is opened or re-opened (e.g. due to
12
- // the project's config changing)
13
-
14
- module.exports = (on, config) => {
15
- // `on` is used to hook into various events Cypress emits
16
- // `config` is the resolved Cypress config
17
- };
@@ -1,23 +0,0 @@
1
- import '@plone/volto-testing/cypress/support/commands';
2
-
3
- // Print cypress-axe violations to the terminal
4
- function printAccessibilityViolations(violations) {
5
- cy.task(
6
- 'table',
7
- violations.map(({ id, impact, description, nodes }) => ({
8
- impact,
9
- description: `${description} (${id})`,
10
- nodes: nodes.length,
11
- })),
12
- );
13
- }
14
-
15
- Cypress.Commands.add(
16
- 'checkAccessibility',
17
- (subject, { skipFailures = false } = {}) => {
18
- cy.checkA11y(subject, null, printAccessibilityViolations, skipFailures);
19
- },
20
- {
21
- prevSubject: 'optional',
22
- },
23
- );
@@ -1,23 +0,0 @@
1
- import 'cypress-axe';
2
- import 'cypress-file-upload';
3
- import './commands';
4
- import 'cypress-axe';
5
- import { setup, teardown } from './reset-fixture';
6
-
7
- beforeEach(function () {
8
- cy.setCookie('confirm_cookies', '1');
9
- cy.setCookie('confirm_tracking', '1');
10
- cy.setCookie('confirm_facebook', '1');
11
- cy.setCookie('confirm_youtube', '1');
12
- cy.log('Setting up API fixture');
13
- if (!Cypress.env('a11y')) {
14
- setup();
15
- }
16
- });
17
-
18
- afterEach(function () {
19
- cy.log('Tearing down API fixture');
20
- if (!Cypress.env('a11y')) {
21
- teardown();
22
- }
23
- });
@@ -1,45 +0,0 @@
1
- function setup() {
2
- const api_url = Cypress.env('API_PATH') || 'http://localhost:55001/plone';
3
- cy.request({
4
- method: 'POST',
5
- url: `${api_url}/RobotRemote`,
6
- headers: { Accept: 'text/xml', 'content-type': 'text/xml' },
7
- body:
8
- '<?xml version="1.0"?><methodCall><methodName>run_keyword</methodName><params><param><value><string>remote_zodb_setup</string></value></param><param><value><array><data><value><string>plone.app.robotframework.testing.PLONE_ROBOT_TESTING</string></value></data></array></value></param></params></methodCall>',
9
- }).then(() => cy.log('Setting up API fixture'));
10
- }
11
-
12
- function teardown() {
13
- const api_url = Cypress.env('API_PATH') || 'http://localhost:55001/plone';
14
- cy.request({
15
- method: 'POST',
16
- url: `${api_url}/RobotRemote`,
17
- headers: { Accept: 'text/xml', 'content-type': 'text/xml' },
18
- body:
19
- '<?xml version="1.0"?><methodCall><methodName>run_keyword</methodName><params><param><value><string>remote_zodb_teardown</string></value></param><param><value><array><data><value><string>plone.app.robotframework.testing.PLONE_ROBOT_TESTING</string></value></data></array></value></param></params></methodCall>',
20
- }).then(() => cy.log('Tearing down API fixture'));
21
- }
22
-
23
- function main() {
24
- const command = process.argv[2];
25
- switch (command) {
26
- case 'setup':
27
- setup();
28
- break;
29
- case 'teardown':
30
- teardown();
31
- break;
32
- default:
33
- setup();
34
- }
35
- }
36
-
37
- // This is the equivalent of `if __name__ == '__main__'` in Python :)
38
- if (require.main === module) {
39
- main();
40
- }
41
-
42
- module.exports = {
43
- setup,
44
- teardown,
45
- };
@@ -1,14 +0,0 @@
1
- export const createSlateBlock = () => {
2
- cy.get('.ui.basic.icon.button.block-add-button').first().click();
3
- cy.get('.blocks-chooser .title').contains('Text').click();
4
- cy.get('.ui.basic.icon.button.slate').contains('Text').click();
5
- return getSelectedSlateEditor();
6
- };
7
-
8
- export const getSelectedSlateEditor = () => {
9
- return cy.get('.slate-editor.selected [contenteditable=true]').click();
10
- };
11
-
12
- export const getSlateEditorAndType = (selector, type) => {
13
- return cy.get(selector).focus().click().wait(1000).type(type).wait(1000);
14
- };
File without changes
@@ -1,30 +0,0 @@
1
- describe('a11y tests', () => {
2
- beforeEach(() => {
3
- // Cypress starts out with a blank slate for each test
4
- // so we must tell it to visit our website with the `cy.visit()` command.
5
- // Since we want to visit the same URL at the start of all our tests,
6
- // we include it in our beforeEach function so that it runs before each test
7
- cy.visit('/');
8
- });
9
-
10
- // Accordion Block
11
- it('Accordion Block (/block/block-accordion)', () => {
12
- cy.navigate('/block/block-accordion');
13
- cy.wait(2000);
14
- cy.injectAxe();
15
- cy.configureAxe({
16
- rules: [
17
- // the example page intentionally omits the h1
18
- {
19
- id: 'page-has-heading-one',
20
- enabled: false,
21
- },
22
- {
23
- id: 'duplicate-id',
24
- enabled: false,
25
- },
26
- ],
27
- });
28
- cy.checkAccessibility();
29
- });
30
- });
@@ -1,26 +0,0 @@
1
-
2
- describe('a11y tests', () => {
3
- beforeEach(() => {
4
- // Cypress starts out with a blank slate for each test
5
- // so we must tell it to visit our website with the `cy.visit()` command.
6
- // Since we want to visit the same URL at the start of all our tests,
7
- // we include it in our beforeEach function so that it runs before each test
8
- cy.visit('/');
9
- });
10
-
11
- it('Home page (/)', () => {
12
- cy.navigate('/');
13
- cy.wait(2000);
14
- cy.injectAxe();
15
- cy.configureAxe({
16
- rules: [
17
- // the example home page intentionally omits the h1
18
- {
19
- id: 'page-has-heading-one',
20
- enabled: false,
21
- },
22
- ],
23
- });
24
- cy.checkAccessibility();
25
- });
26
- });
@@ -1,18 +0,0 @@
1
- describe('a11y tests', () => {
2
- beforeEach(() => {
3
- // Cypress starts out with a blank slate for each test
4
- // so we must tell it to visit our website with the `cy.visit()` command.
5
- // Since we want to visit the same URL at the start of all our tests,
6
- // we include it in our beforeEach function so that it runs before each test
7
- cy.visit('/');
8
- });
9
-
10
- //Button
11
- it('Button-Block (/block/button-block)', () => {
12
- cy.navigate('/block/button-block');
13
- cy.wait(2000);
14
- cy.injectAxe();
15
- cy.configureAxe();
16
- cy.checkAccessibility();
17
- });
18
- });
@@ -1,18 +0,0 @@
1
- describe('a11y tests', () => {
2
- beforeEach(() => {
3
- // Cypress starts out with a blank slate for each test
4
- // so we must tell it to visit our website with the `cy.visit()` command.
5
- // Since we want to visit the same URL at the start of all our tests,
6
- // we include it in our beforeEach function so that it runs before each test
7
- cy.visit('/');
8
- });
9
-
10
- //Event
11
- it('Event (/content-types/event)', () => {
12
- cy.navigate('/content-types/event');
13
- cy.wait(2000);
14
- cy.injectAxe();
15
- cy.configureAxe();
16
- cy.checkAccessibility();
17
- });
18
- });
@@ -1,18 +0,0 @@
1
- describe('a11y tests', () => {
2
- beforeEach(() => {
3
- // Cypress starts out with a blank slate for each test
4
- // so we must tell it to visit our website with the `cy.visit()` command.
5
- // Since we want to visit the same URL at the start of all our tests,
6
- // we include it in our beforeEach function so that it runs before each test
7
- cy.visit('/');
8
- });
9
-
10
- //File
11
- it('File (/content-types/file)', () => {
12
- cy.navigate('/content-types/file');
13
- cy.wait(2000);
14
- cy.injectAxe();
15
- cy.configureAxe();
16
- cy.checkAccessibility();
17
- });
18
- });
@@ -1,18 +0,0 @@
1
- describe('a11y tests', () => {
2
- beforeEach(() => {
3
- // Cypress starts out with a blank slate for each test
4
- // so we must tell it to visit our website with the `cy.visit()` command.
5
- // Since we want to visit the same URL at the start of all our tests,
6
- // we include it in our beforeEach function so that it runs before each test
7
- cy.visit('/');
8
- });
9
-
10
- // grid block
11
- it('Grid-Block (/block/grid-block)', () => {
12
- cy.navigate('/block/grid-block');
13
- cy.wait(2000);
14
- cy.injectAxe();
15
- cy.configureAxe();
16
- cy.checkAccessibility();
17
- });
18
- });
@@ -1,18 +0,0 @@
1
- describe('a11y tests', () => {
2
- beforeEach(() => {
3
- // Cypress starts out with a blank slate for each test
4
- // so we must tell it to visit our website with the `cy.visit()` command.
5
- // Since we want to visit the same URL at the start of all our tests,
6
- // we include it in our beforeEach function so that it runs before each test
7
- cy.visit('/');
8
- });
9
-
10
- // grid block Image
11
- it('Grid-Block Image (/block/grid-block/image)', () => {
12
- cy.navigate('/block/grid-block/image');
13
- cy.wait(2000);
14
- cy.injectAxe();
15
- cy.configureAxe();
16
- cy.checkAccessibility();
17
- });
18
- });
@@ -1,18 +0,0 @@
1
- describe('a11y tests', () => {
2
- beforeEach(() => {
3
- // Cypress starts out with a blank slate for each test
4
- // so we must tell it to visit our website with the `cy.visit()` command.
5
- // Since we want to visit the same URL at the start of all our tests,
6
- // we include it in our beforeEach function so that it runs before each test
7
- cy.visit('/');
8
- });
9
-
10
- // grid block listing
11
- it('Grid-Block Listing (/block/grid-block/listing)', () => {
12
- cy.navigate('/block/grid-block/listing');
13
- cy.wait(2000);
14
- cy.injectAxe();
15
- cy.configureAxe();
16
- cy.checkAccessibility();
17
- });
18
- });
@@ -1,18 +0,0 @@
1
- describe('a11y tests', () => {
2
- beforeEach(() => {
3
- // Cypress starts out with a blank slate for each test
4
- // so we must tell it to visit our website with the `cy.visit()` command.
5
- // Since we want to visit the same URL at the start of all our tests,
6
- // we include it in our beforeEach function so that it runs before each test
7
- cy.visit('/');
8
- });
9
-
10
- // grid Teaser block
11
- it('Grid-Block Teaser (/block/grid-block/teaser)', () => {
12
- cy.navigate('/block/grid-block/teaser');
13
- cy.wait(2000);
14
- cy.injectAxe();
15
- cy.configureAxe();
16
- cy.checkAccessibility();
17
- });
18
- });
@@ -1,33 +0,0 @@
1
- describe('a11y tests', () => {
2
- beforeEach(() => {
3
- // Cypress starts out with a blank slate for each test
4
- // so we must tell it to visit our website with the `cy.visit()` command.
5
- // Since we want to visit the same URL at the start of all our tests,
6
- // we include it in our beforeEach function so that it runs before each test
7
- cy.visit('/');
8
- });
9
-
10
- // grid tex block
11
- it('Grid-Block text (/block/grid-block/text)', () => {
12
- cy.navigate('/block/grid-block/text');
13
- cy.wait(2000);
14
- cy.injectAxe();
15
- cy.configureAxe({
16
- rules: [
17
- // there are copies of slate h2,
18
- // which have with the same id
19
- {
20
- id: 'duplicate-id-active',
21
- enabled: false,
22
- },
23
- // there are missing heading of grid-block
24
- // because we are using multiple grid block
25
- {
26
- id: 'empty-heading',
27
- enabled: false,
28
- },
29
- ],
30
- });
31
- cy.checkAccessibility();
32
- });
33
- });