@jahia/agentic 0.0.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.
- package/README.md +48 -0
- package/dist/claude/.claude/rules/jahia.md +76 -0
- package/dist/claude/.claude/skills/jahia/SKILL.md +136 -0
- package/dist/claude/.claude/skills/jahia-content/SKILL.md +139 -0
- package/dist/claude/.claude/skills/jahia-content-create-content/SKILL.md +384 -0
- package/dist/claude/.claude/skills/jahia-content-explore-structure/SKILL.md +164 -0
- package/dist/claude/.claude/skills/jahia-content-move-content/SKILL.md +236 -0
- package/dist/claude/.claude/skills/jahia-content-query-content/SKILL.md +144 -0
- package/dist/claude/.claude/skills/jahia-content-translate-content/SKILL.md +297 -0
- package/dist/claude/.claude/skills/jahia-dev/SKILL.md +124 -0
- package/dist/claude/.claude/skills/jahia-dev-accessibility/SKILL.md +271 -0
- package/dist/claude/.claude/skills/jahia-dev-apis/SKILL.md +52 -0
- package/dist/claude/.claude/skills/jahia-dev-apis/references/authentication.md +484 -0
- package/dist/claude/.claude/skills/jahia-dev-apis/references/graphql.md +657 -0
- package/dist/claude/.claude/skills/jahia-dev-apis/references/jcr-api.md +465 -0
- package/dist/claude/.claude/skills/jahia-dev-apis/references/security.md +541 -0
- package/dist/claude/.claude/skills/jahia-dev-build-component/SKILL.md +140 -0
- package/dist/claude/.claude/skills/jahia-dev-create-page-template/SKILL.md +303 -0
- package/dist/claude/.claude/skills/jahia-dev-create-template-set/SKILL.md +232 -0
- package/dist/claude/.claude/skills/jahia-dev-create-view/SKILL.md +838 -0
- package/dist/claude/.claude/skills/jahia-dev-cypress/SKILL.md +445 -0
- package/dist/claude/.claude/skills/jahia-dev-debug/SKILL.md +176 -0
- package/dist/claude/.claude/skills/jahia-dev-define-content-type/SKILL.md +536 -0
- package/dist/claude/.claude/skills/jahia-dev-import-from/SKILL.md +244 -0
- package/dist/claude/.claude/skills/jahia-dev-java/SKILL.md +105 -0
- package/dist/claude/.claude/skills/jahia-dev-java/references/backend.md +331 -0
- package/dist/claude/.claude/skills/jahia-dev-java/references/content-types.md +273 -0
- package/dist/claude/.claude/skills/jahia-dev-java/references/modules.md +218 -0
- package/dist/claude/.claude/skills/jahia-dev-java/references/osgi.md +208 -0
- package/dist/claude/.claude/skills/jahia-dev-java/references/rendering.md +191 -0
- package/dist/claude/.claude/skills/jahia-dev-java/references/ui-extensions.md +344 -0
- package/dist/claude/.claude/skills/jahia-dev-jexperience/SKILL.md +269 -0
- package/dist/claude/.claude/skills/jahia-dev-ops/SKILL.md +50 -0
- package/dist/claude/.claude/skills/jahia-dev-ops/references/docker.md +151 -0
- package/dist/claude/.claude/skills/jahia-dev-ops/references/monitoring.md +195 -0
- package/dist/claude/.claude/skills/jahia-dev-ops/references/provisioning.md +269 -0
- package/dist/claude/.claude/skills/jahia-dev-osgi-module/SKILL.md +297 -0
- package/dist/claude/.claude/skills/jahia-dev-properties/SKILL.md +147 -0
- package/dist/claude/.claude/skills/jahia-dev-properties/references/all-properties.md +231 -0
- package/dist/claude/.claude/skills/jahia-dev-query-content/SKILL.md +407 -0
- package/dist/claude/.claude/skills/jahia-dev-review/SKILL.md +228 -0
- package/dist/claude/.claude/skills/jahia-dev-screenshot/SKILL.md +177 -0
- package/dist/claude/.claude/skills/jahia-dev-start-local/SKILL.md +129 -0
- package/dist/claude/.claude/skills/jahia-dev-ui-extension/SKILL.md +559 -0
- package/dist/claude/CLAUDE.md +90 -0
- package/dist/codex/.agents/skills/jahia/SKILL.md +136 -0
- package/dist/codex/.agents/skills/jahia-content/SKILL.md +139 -0
- package/dist/codex/.agents/skills/jahia-content-create-content/SKILL.md +384 -0
- package/dist/codex/.agents/skills/jahia-content-explore-structure/SKILL.md +164 -0
- package/dist/codex/.agents/skills/jahia-content-move-content/SKILL.md +236 -0
- package/dist/codex/.agents/skills/jahia-content-query-content/SKILL.md +144 -0
- package/dist/codex/.agents/skills/jahia-content-translate-content/SKILL.md +297 -0
- package/dist/codex/.agents/skills/jahia-dev/SKILL.md +124 -0
- package/dist/codex/.agents/skills/jahia-dev-accessibility/SKILL.md +271 -0
- package/dist/codex/.agents/skills/jahia-dev-apis/SKILL.md +52 -0
- package/dist/codex/.agents/skills/jahia-dev-apis/references/authentication.md +484 -0
- package/dist/codex/.agents/skills/jahia-dev-apis/references/graphql.md +657 -0
- package/dist/codex/.agents/skills/jahia-dev-apis/references/jcr-api.md +465 -0
- package/dist/codex/.agents/skills/jahia-dev-apis/references/security.md +541 -0
- package/dist/codex/.agents/skills/jahia-dev-build-component/SKILL.md +140 -0
- package/dist/codex/.agents/skills/jahia-dev-create-page-template/SKILL.md +303 -0
- package/dist/codex/.agents/skills/jahia-dev-create-template-set/SKILL.md +232 -0
- package/dist/codex/.agents/skills/jahia-dev-create-view/SKILL.md +838 -0
- package/dist/codex/.agents/skills/jahia-dev-cypress/SKILL.md +445 -0
- package/dist/codex/.agents/skills/jahia-dev-debug/SKILL.md +176 -0
- package/dist/codex/.agents/skills/jahia-dev-define-content-type/SKILL.md +536 -0
- package/dist/codex/.agents/skills/jahia-dev-import-from/SKILL.md +244 -0
- package/dist/codex/.agents/skills/jahia-dev-java/SKILL.md +105 -0
- package/dist/codex/.agents/skills/jahia-dev-java/references/backend.md +331 -0
- package/dist/codex/.agents/skills/jahia-dev-java/references/content-types.md +273 -0
- package/dist/codex/.agents/skills/jahia-dev-java/references/modules.md +218 -0
- package/dist/codex/.agents/skills/jahia-dev-java/references/osgi.md +208 -0
- package/dist/codex/.agents/skills/jahia-dev-java/references/rendering.md +191 -0
- package/dist/codex/.agents/skills/jahia-dev-java/references/ui-extensions.md +344 -0
- package/dist/codex/.agents/skills/jahia-dev-jexperience/SKILL.md +269 -0
- package/dist/codex/.agents/skills/jahia-dev-ops/SKILL.md +50 -0
- package/dist/codex/.agents/skills/jahia-dev-ops/references/docker.md +151 -0
- package/dist/codex/.agents/skills/jahia-dev-ops/references/monitoring.md +195 -0
- package/dist/codex/.agents/skills/jahia-dev-ops/references/provisioning.md +269 -0
- package/dist/codex/.agents/skills/jahia-dev-osgi-module/SKILL.md +297 -0
- package/dist/codex/.agents/skills/jahia-dev-properties/SKILL.md +147 -0
- package/dist/codex/.agents/skills/jahia-dev-properties/references/all-properties.md +231 -0
- package/dist/codex/.agents/skills/jahia-dev-query-content/SKILL.md +407 -0
- package/dist/codex/.agents/skills/jahia-dev-review/SKILL.md +228 -0
- package/dist/codex/.agents/skills/jahia-dev-screenshot/SKILL.md +177 -0
- package/dist/codex/.agents/skills/jahia-dev-start-local/SKILL.md +129 -0
- package/dist/codex/.agents/skills/jahia-dev-ui-extension/SKILL.md +559 -0
- package/dist/codex/AGENTS.md +89 -0
- package/dist/copilot/.agents/skills/jahia/SKILL.md +136 -0
- package/dist/copilot/.agents/skills/jahia-content/SKILL.md +139 -0
- package/dist/copilot/.agents/skills/jahia-content-create-content/SKILL.md +384 -0
- package/dist/copilot/.agents/skills/jahia-content-explore-structure/SKILL.md +164 -0
- package/dist/copilot/.agents/skills/jahia-content-move-content/SKILL.md +236 -0
- package/dist/copilot/.agents/skills/jahia-content-query-content/SKILL.md +144 -0
- package/dist/copilot/.agents/skills/jahia-content-translate-content/SKILL.md +297 -0
- package/dist/copilot/.agents/skills/jahia-dev/SKILL.md +124 -0
- package/dist/copilot/.agents/skills/jahia-dev-accessibility/SKILL.md +271 -0
- package/dist/copilot/.agents/skills/jahia-dev-apis/SKILL.md +52 -0
- package/dist/copilot/.agents/skills/jahia-dev-apis/references/authentication.md +484 -0
- package/dist/copilot/.agents/skills/jahia-dev-apis/references/graphql.md +657 -0
- package/dist/copilot/.agents/skills/jahia-dev-apis/references/jcr-api.md +465 -0
- package/dist/copilot/.agents/skills/jahia-dev-apis/references/security.md +541 -0
- package/dist/copilot/.agents/skills/jahia-dev-build-component/SKILL.md +140 -0
- package/dist/copilot/.agents/skills/jahia-dev-create-page-template/SKILL.md +303 -0
- package/dist/copilot/.agents/skills/jahia-dev-create-template-set/SKILL.md +232 -0
- package/dist/copilot/.agents/skills/jahia-dev-create-view/SKILL.md +838 -0
- package/dist/copilot/.agents/skills/jahia-dev-cypress/SKILL.md +445 -0
- package/dist/copilot/.agents/skills/jahia-dev-debug/SKILL.md +176 -0
- package/dist/copilot/.agents/skills/jahia-dev-define-content-type/SKILL.md +536 -0
- package/dist/copilot/.agents/skills/jahia-dev-import-from/SKILL.md +244 -0
- package/dist/copilot/.agents/skills/jahia-dev-java/SKILL.md +105 -0
- package/dist/copilot/.agents/skills/jahia-dev-java/references/backend.md +331 -0
- package/dist/copilot/.agents/skills/jahia-dev-java/references/content-types.md +273 -0
- package/dist/copilot/.agents/skills/jahia-dev-java/references/modules.md +218 -0
- package/dist/copilot/.agents/skills/jahia-dev-java/references/osgi.md +208 -0
- package/dist/copilot/.agents/skills/jahia-dev-java/references/rendering.md +191 -0
- package/dist/copilot/.agents/skills/jahia-dev-java/references/ui-extensions.md +344 -0
- package/dist/copilot/.agents/skills/jahia-dev-jexperience/SKILL.md +269 -0
- package/dist/copilot/.agents/skills/jahia-dev-ops/SKILL.md +50 -0
- package/dist/copilot/.agents/skills/jahia-dev-ops/references/docker.md +151 -0
- package/dist/copilot/.agents/skills/jahia-dev-ops/references/monitoring.md +195 -0
- package/dist/copilot/.agents/skills/jahia-dev-ops/references/provisioning.md +269 -0
- package/dist/copilot/.agents/skills/jahia-dev-osgi-module/SKILL.md +297 -0
- package/dist/copilot/.agents/skills/jahia-dev-properties/SKILL.md +147 -0
- package/dist/copilot/.agents/skills/jahia-dev-properties/references/all-properties.md +231 -0
- package/dist/copilot/.agents/skills/jahia-dev-query-content/SKILL.md +407 -0
- package/dist/copilot/.agents/skills/jahia-dev-review/SKILL.md +228 -0
- package/dist/copilot/.agents/skills/jahia-dev-screenshot/SKILL.md +177 -0
- package/dist/copilot/.agents/skills/jahia-dev-start-local/SKILL.md +129 -0
- package/dist/copilot/.agents/skills/jahia-dev-ui-extension/SKILL.md +559 -0
- package/dist/copilot/AGENTS.md +89 -0
- package/dist/cursor/.agents/skills/jahia/SKILL.md +136 -0
- package/dist/cursor/.agents/skills/jahia-content/SKILL.md +139 -0
- package/dist/cursor/.agents/skills/jahia-content-create-content/SKILL.md +384 -0
- package/dist/cursor/.agents/skills/jahia-content-explore-structure/SKILL.md +164 -0
- package/dist/cursor/.agents/skills/jahia-content-move-content/SKILL.md +236 -0
- package/dist/cursor/.agents/skills/jahia-content-query-content/SKILL.md +144 -0
- package/dist/cursor/.agents/skills/jahia-content-translate-content/SKILL.md +297 -0
- package/dist/cursor/.agents/skills/jahia-dev/SKILL.md +124 -0
- package/dist/cursor/.agents/skills/jahia-dev-accessibility/SKILL.md +271 -0
- package/dist/cursor/.agents/skills/jahia-dev-apis/SKILL.md +52 -0
- package/dist/cursor/.agents/skills/jahia-dev-apis/references/authentication.md +484 -0
- package/dist/cursor/.agents/skills/jahia-dev-apis/references/graphql.md +657 -0
- package/dist/cursor/.agents/skills/jahia-dev-apis/references/jcr-api.md +465 -0
- package/dist/cursor/.agents/skills/jahia-dev-apis/references/security.md +541 -0
- package/dist/cursor/.agents/skills/jahia-dev-build-component/SKILL.md +140 -0
- package/dist/cursor/.agents/skills/jahia-dev-create-page-template/SKILL.md +303 -0
- package/dist/cursor/.agents/skills/jahia-dev-create-template-set/SKILL.md +232 -0
- package/dist/cursor/.agents/skills/jahia-dev-create-view/SKILL.md +838 -0
- package/dist/cursor/.agents/skills/jahia-dev-cypress/SKILL.md +445 -0
- package/dist/cursor/.agents/skills/jahia-dev-debug/SKILL.md +176 -0
- package/dist/cursor/.agents/skills/jahia-dev-define-content-type/SKILL.md +536 -0
- package/dist/cursor/.agents/skills/jahia-dev-import-from/SKILL.md +244 -0
- package/dist/cursor/.agents/skills/jahia-dev-java/SKILL.md +105 -0
- package/dist/cursor/.agents/skills/jahia-dev-java/references/backend.md +331 -0
- package/dist/cursor/.agents/skills/jahia-dev-java/references/content-types.md +273 -0
- package/dist/cursor/.agents/skills/jahia-dev-java/references/modules.md +218 -0
- package/dist/cursor/.agents/skills/jahia-dev-java/references/osgi.md +208 -0
- package/dist/cursor/.agents/skills/jahia-dev-java/references/rendering.md +191 -0
- package/dist/cursor/.agents/skills/jahia-dev-java/references/ui-extensions.md +344 -0
- package/dist/cursor/.agents/skills/jahia-dev-jexperience/SKILL.md +269 -0
- package/dist/cursor/.agents/skills/jahia-dev-ops/SKILL.md +50 -0
- package/dist/cursor/.agents/skills/jahia-dev-ops/references/docker.md +151 -0
- package/dist/cursor/.agents/skills/jahia-dev-ops/references/monitoring.md +195 -0
- package/dist/cursor/.agents/skills/jahia-dev-ops/references/provisioning.md +269 -0
- package/dist/cursor/.agents/skills/jahia-dev-osgi-module/SKILL.md +297 -0
- package/dist/cursor/.agents/skills/jahia-dev-properties/SKILL.md +147 -0
- package/dist/cursor/.agents/skills/jahia-dev-properties/references/all-properties.md +231 -0
- package/dist/cursor/.agents/skills/jahia-dev-query-content/SKILL.md +407 -0
- package/dist/cursor/.agents/skills/jahia-dev-review/SKILL.md +228 -0
- package/dist/cursor/.agents/skills/jahia-dev-screenshot/SKILL.md +177 -0
- package/dist/cursor/.agents/skills/jahia-dev-start-local/SKILL.md +129 -0
- package/dist/cursor/.agents/skills/jahia-dev-ui-extension/SKILL.md +559 -0
- package/dist/cursor/.cursor/rules/jahia.mdc +80 -0
- package/dist/gemini/.agents/skills/jahia/SKILL.md +136 -0
- package/dist/gemini/.agents/skills/jahia-content/SKILL.md +139 -0
- package/dist/gemini/.agents/skills/jahia-content-create-content/SKILL.md +384 -0
- package/dist/gemini/.agents/skills/jahia-content-explore-structure/SKILL.md +164 -0
- package/dist/gemini/.agents/skills/jahia-content-move-content/SKILL.md +236 -0
- package/dist/gemini/.agents/skills/jahia-content-query-content/SKILL.md +144 -0
- package/dist/gemini/.agents/skills/jahia-content-translate-content/SKILL.md +297 -0
- package/dist/gemini/.agents/skills/jahia-dev/SKILL.md +124 -0
- package/dist/gemini/.agents/skills/jahia-dev-accessibility/SKILL.md +271 -0
- package/dist/gemini/.agents/skills/jahia-dev-apis/SKILL.md +52 -0
- package/dist/gemini/.agents/skills/jahia-dev-apis/references/authentication.md +484 -0
- package/dist/gemini/.agents/skills/jahia-dev-apis/references/graphql.md +657 -0
- package/dist/gemini/.agents/skills/jahia-dev-apis/references/jcr-api.md +465 -0
- package/dist/gemini/.agents/skills/jahia-dev-apis/references/security.md +541 -0
- package/dist/gemini/.agents/skills/jahia-dev-build-component/SKILL.md +140 -0
- package/dist/gemini/.agents/skills/jahia-dev-create-page-template/SKILL.md +303 -0
- package/dist/gemini/.agents/skills/jahia-dev-create-template-set/SKILL.md +232 -0
- package/dist/gemini/.agents/skills/jahia-dev-create-view/SKILL.md +838 -0
- package/dist/gemini/.agents/skills/jahia-dev-cypress/SKILL.md +445 -0
- package/dist/gemini/.agents/skills/jahia-dev-debug/SKILL.md +176 -0
- package/dist/gemini/.agents/skills/jahia-dev-define-content-type/SKILL.md +536 -0
- package/dist/gemini/.agents/skills/jahia-dev-import-from/SKILL.md +244 -0
- package/dist/gemini/.agents/skills/jahia-dev-java/SKILL.md +105 -0
- package/dist/gemini/.agents/skills/jahia-dev-java/references/backend.md +331 -0
- package/dist/gemini/.agents/skills/jahia-dev-java/references/content-types.md +273 -0
- package/dist/gemini/.agents/skills/jahia-dev-java/references/modules.md +218 -0
- package/dist/gemini/.agents/skills/jahia-dev-java/references/osgi.md +208 -0
- package/dist/gemini/.agents/skills/jahia-dev-java/references/rendering.md +191 -0
- package/dist/gemini/.agents/skills/jahia-dev-java/references/ui-extensions.md +344 -0
- package/dist/gemini/.agents/skills/jahia-dev-jexperience/SKILL.md +269 -0
- package/dist/gemini/.agents/skills/jahia-dev-ops/SKILL.md +50 -0
- package/dist/gemini/.agents/skills/jahia-dev-ops/references/docker.md +151 -0
- package/dist/gemini/.agents/skills/jahia-dev-ops/references/monitoring.md +195 -0
- package/dist/gemini/.agents/skills/jahia-dev-ops/references/provisioning.md +269 -0
- package/dist/gemini/.agents/skills/jahia-dev-osgi-module/SKILL.md +297 -0
- package/dist/gemini/.agents/skills/jahia-dev-properties/SKILL.md +147 -0
- package/dist/gemini/.agents/skills/jahia-dev-properties/references/all-properties.md +231 -0
- package/dist/gemini/.agents/skills/jahia-dev-query-content/SKILL.md +407 -0
- package/dist/gemini/.agents/skills/jahia-dev-review/SKILL.md +228 -0
- package/dist/gemini/.agents/skills/jahia-dev-screenshot/SKILL.md +177 -0
- package/dist/gemini/.agents/skills/jahia-dev-start-local/SKILL.md +129 -0
- package/dist/gemini/.agents/skills/jahia-dev-ui-extension/SKILL.md +559 -0
- package/dist/gemini/AGENTS.md +89 -0
- package/dist/gemini/GEMINI.md +6 -0
- package/dist/index.js +975 -0
- package/dist/opencode/.agents/skills/jahia/SKILL.md +136 -0
- package/dist/opencode/.agents/skills/jahia-content/SKILL.md +139 -0
- package/dist/opencode/.agents/skills/jahia-content-create-content/SKILL.md +384 -0
- package/dist/opencode/.agents/skills/jahia-content-explore-structure/SKILL.md +164 -0
- package/dist/opencode/.agents/skills/jahia-content-move-content/SKILL.md +236 -0
- package/dist/opencode/.agents/skills/jahia-content-query-content/SKILL.md +144 -0
- package/dist/opencode/.agents/skills/jahia-content-translate-content/SKILL.md +297 -0
- package/dist/opencode/.agents/skills/jahia-dev/SKILL.md +124 -0
- package/dist/opencode/.agents/skills/jahia-dev-accessibility/SKILL.md +271 -0
- package/dist/opencode/.agents/skills/jahia-dev-apis/SKILL.md +52 -0
- package/dist/opencode/.agents/skills/jahia-dev-apis/references/authentication.md +484 -0
- package/dist/opencode/.agents/skills/jahia-dev-apis/references/graphql.md +657 -0
- package/dist/opencode/.agents/skills/jahia-dev-apis/references/jcr-api.md +465 -0
- package/dist/opencode/.agents/skills/jahia-dev-apis/references/security.md +541 -0
- package/dist/opencode/.agents/skills/jahia-dev-build-component/SKILL.md +140 -0
- package/dist/opencode/.agents/skills/jahia-dev-create-page-template/SKILL.md +303 -0
- package/dist/opencode/.agents/skills/jahia-dev-create-template-set/SKILL.md +232 -0
- package/dist/opencode/.agents/skills/jahia-dev-create-view/SKILL.md +838 -0
- package/dist/opencode/.agents/skills/jahia-dev-cypress/SKILL.md +445 -0
- package/dist/opencode/.agents/skills/jahia-dev-debug/SKILL.md +176 -0
- package/dist/opencode/.agents/skills/jahia-dev-define-content-type/SKILL.md +536 -0
- package/dist/opencode/.agents/skills/jahia-dev-import-from/SKILL.md +244 -0
- package/dist/opencode/.agents/skills/jahia-dev-java/SKILL.md +105 -0
- package/dist/opencode/.agents/skills/jahia-dev-java/references/backend.md +331 -0
- package/dist/opencode/.agents/skills/jahia-dev-java/references/content-types.md +273 -0
- package/dist/opencode/.agents/skills/jahia-dev-java/references/modules.md +218 -0
- package/dist/opencode/.agents/skills/jahia-dev-java/references/osgi.md +208 -0
- package/dist/opencode/.agents/skills/jahia-dev-java/references/rendering.md +191 -0
- package/dist/opencode/.agents/skills/jahia-dev-java/references/ui-extensions.md +344 -0
- package/dist/opencode/.agents/skills/jahia-dev-jexperience/SKILL.md +269 -0
- package/dist/opencode/.agents/skills/jahia-dev-ops/SKILL.md +50 -0
- package/dist/opencode/.agents/skills/jahia-dev-ops/references/docker.md +151 -0
- package/dist/opencode/.agents/skills/jahia-dev-ops/references/monitoring.md +195 -0
- package/dist/opencode/.agents/skills/jahia-dev-ops/references/provisioning.md +269 -0
- package/dist/opencode/.agents/skills/jahia-dev-osgi-module/SKILL.md +297 -0
- package/dist/opencode/.agents/skills/jahia-dev-properties/SKILL.md +147 -0
- package/dist/opencode/.agents/skills/jahia-dev-properties/references/all-properties.md +231 -0
- package/dist/opencode/.agents/skills/jahia-dev-query-content/SKILL.md +407 -0
- package/dist/opencode/.agents/skills/jahia-dev-review/SKILL.md +228 -0
- package/dist/opencode/.agents/skills/jahia-dev-screenshot/SKILL.md +177 -0
- package/dist/opencode/.agents/skills/jahia-dev-start-local/SKILL.md +129 -0
- package/dist/opencode/.agents/skills/jahia-dev-ui-extension/SKILL.md +559 -0
- package/dist/opencode/AGENTS.md +89 -0
- package/dist/windsurf/.windsurf/rules/jahia.md +80 -0
- package/dist/windsurf/.windsurf/skills/jahia/SKILL.md +136 -0
- package/dist/windsurf/.windsurf/skills/jahia-content/SKILL.md +139 -0
- package/dist/windsurf/.windsurf/skills/jahia-content-create-content/SKILL.md +384 -0
- package/dist/windsurf/.windsurf/skills/jahia-content-explore-structure/SKILL.md +164 -0
- package/dist/windsurf/.windsurf/skills/jahia-content-move-content/SKILL.md +236 -0
- package/dist/windsurf/.windsurf/skills/jahia-content-query-content/SKILL.md +144 -0
- package/dist/windsurf/.windsurf/skills/jahia-content-translate-content/SKILL.md +297 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev/SKILL.md +124 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-accessibility/SKILL.md +271 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-apis/SKILL.md +52 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/authentication.md +484 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/graphql.md +657 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/jcr-api.md +465 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/security.md +541 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-build-component/SKILL.md +140 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-create-page-template/SKILL.md +303 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-create-template-set/SKILL.md +232 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-create-view/SKILL.md +838 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-cypress/SKILL.md +445 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-debug/SKILL.md +176 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-define-content-type/SKILL.md +536 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-import-from/SKILL.md +244 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/SKILL.md +105 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/backend.md +331 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/content-types.md +273 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/modules.md +218 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/osgi.md +208 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/rendering.md +191 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/ui-extensions.md +344 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-jexperience/SKILL.md +269 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-ops/SKILL.md +50 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-ops/references/docker.md +151 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-ops/references/monitoring.md +195 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-ops/references/provisioning.md +269 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-osgi-module/SKILL.md +297 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-properties/SKILL.md +147 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-properties/references/all-properties.md +231 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-query-content/SKILL.md +407 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-review/SKILL.md +228 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-screenshot/SKILL.md +177 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-start-local/SKILL.md +129 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-ui-extension/SKILL.md +559 -0
- package/dist/windsurf/AGENTS.md +89 -0
- package/package.json +28 -0
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
# Jahia Rendering Reference
|
|
2
|
+
|
|
3
|
+
## Table of Contents
|
|
4
|
+
1. [View script selection](#1-view-script-selection)
|
|
5
|
+
2. [JSP rendering with taglibs](#2-jsp-rendering-with-taglibs)
|
|
6
|
+
3. [Templates, areas, and cascading](#3-templates-areas-and-cascading)
|
|
7
|
+
4. [Caching directives](#4-caching-directives)
|
|
8
|
+
5. [Navigation menus](#5-navigation-menus)
|
|
9
|
+
6. [Rendering filters](#6-rendering-filters)
|
|
10
|
+
7. [List rendering](#7-list-rendering)
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## 1. View script selection
|
|
15
|
+
|
|
16
|
+
**JSP naming convention:**
|
|
17
|
+
```
|
|
18
|
+
src/main/webapp/{nodeType_with_slash}/{templateType}/{viewName}.{displayType}.jsp
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Examples:
|
|
22
|
+
```
|
|
23
|
+
src/main/webapp/jnt_article/html/article.jsp # default view
|
|
24
|
+
src/main/webapp/jnt_article/html/article.summary.jsp # "summary" named view
|
|
25
|
+
src/main/webapp/jnt_article/json/article.json.jsp # JSON template type
|
|
26
|
+
src/main/webapp/jnt_article/html/article.hidden.header.jsp # hidden view
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
**Prefix `hidden.`** on a view name to exclude it from the UI view selector.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## 2. JSP rendering with taglibs
|
|
34
|
+
|
|
35
|
+
### Standard taglib declarations
|
|
36
|
+
```jsp
|
|
37
|
+
<%@ taglib prefix="template" uri="http://www.jahia.org/tags/templateLib" %>
|
|
38
|
+
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
|
39
|
+
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
|
40
|
+
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
|
41
|
+
<%@ taglib prefix="jcr" uri="http://www.jahia.org/tags/jcr" %>
|
|
42
|
+
<%@ taglib prefix="ui" uri="http://www.jahia.org/tags/uiComponentsLib" %>
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Key implicit variables
|
|
46
|
+
|
|
47
|
+
| Variable | Type | Description |
|
|
48
|
+
|----------|------|-------------|
|
|
49
|
+
| `currentNode` | `JCRNodeWrapper` | The node being rendered |
|
|
50
|
+
| `currentUser` | `JahiaUser` | The currently logged-in user |
|
|
51
|
+
| `renderContext` | `RenderContext` | Current rendering context |
|
|
52
|
+
| `url` | `URLGenerator` | URL generation helper |
|
|
53
|
+
|
|
54
|
+
### Common template taglib usage
|
|
55
|
+
```jsp
|
|
56
|
+
<template:module node="${currentNode}" view="summary"/>
|
|
57
|
+
<template:area path="maincontent"/>
|
|
58
|
+
<template:addCacheDependency node="${commentNode}"/>
|
|
59
|
+
<template:link node="${targetNode}"/>
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Full JSP view example
|
|
63
|
+
```jsp
|
|
64
|
+
<%@ taglib prefix="template" uri="http://www.jahia.org/tags/templateLib" %>
|
|
65
|
+
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
|
66
|
+
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
|
|
67
|
+
|
|
68
|
+
<c:set var="title" value="${currentNode.properties['jcr:title'].string}"/>
|
|
69
|
+
<c:set var="body" value="${currentNode.properties['body'].string}"/>
|
|
70
|
+
|
|
71
|
+
<article class="my-article">
|
|
72
|
+
<h1>${fn:escapeXml(title)}</h1>
|
|
73
|
+
<div class="body">${body}</div>
|
|
74
|
+
<template:area path="related-content"/>
|
|
75
|
+
</article>
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## 3. Templates, areas, and cascading
|
|
81
|
+
|
|
82
|
+
Page rendering cascades: page → home template → base template → template view.
|
|
83
|
+
|
|
84
|
+
**Absolute areas** (`level` attribute): use an ancestor path instead of the template sequence.
|
|
85
|
+
- Level 0 = home page
|
|
86
|
+
- Level 1 = first sub-page level
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## 4. Caching directives
|
|
91
|
+
|
|
92
|
+
### Per-view cache configuration
|
|
93
|
+
|
|
94
|
+
Create a `.properties` file alongside the JSP:
|
|
95
|
+
|
|
96
|
+
```properties
|
|
97
|
+
# jnt_banner/html/banner.properties
|
|
98
|
+
cache.expiration=30 # Cache for 30 seconds
|
|
99
|
+
# cache.expiration=-1 # Never cache this view
|
|
100
|
+
cache.perUser=true # Cache per user
|
|
101
|
+
cache.mainResource=true # Cache depends on the main resource
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Adding cache dependencies in JSPs
|
|
105
|
+
|
|
106
|
+
```jsp
|
|
107
|
+
<template:addCacheDependency node="${commentsNode}"/>
|
|
108
|
+
<template:addCacheDependency
|
|
109
|
+
flushOnPathMatchingRegexp="\Q${renderContext.mainResource.node.path}\E/.*/comments/.*"/>
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## 5. Navigation menus
|
|
115
|
+
|
|
116
|
+
```jsp
|
|
117
|
+
<jcr:node var="siteNode" path="${renderContext.site.path}"/>
|
|
118
|
+
<c:set var="homeNode" value="${siteNode.node['home']}"/>
|
|
119
|
+
|
|
120
|
+
<nav>
|
|
121
|
+
<ul>
|
|
122
|
+
<c:forEach var="pageNode" items="${homeNode.nodes}">
|
|
123
|
+
<c:if test="${pageNode.nodeType.name == 'jnt:page'}">
|
|
124
|
+
<li>
|
|
125
|
+
<template:link node="${pageNode}">
|
|
126
|
+
<c:out value="${pageNode.properties['jcr:title'].string}"/>
|
|
127
|
+
</template:link>
|
|
128
|
+
</li>
|
|
129
|
+
</c:if>
|
|
130
|
+
</c:forEach>
|
|
131
|
+
</ul>
|
|
132
|
+
</nav>
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## 6. Rendering filters
|
|
138
|
+
|
|
139
|
+
Filters intercept every module render. Extend `AbstractFilter` and register as OSGi `RenderFilter` services.
|
|
140
|
+
|
|
141
|
+
### Priority rules
|
|
142
|
+
- Priority > 16: runs once, result is cached
|
|
143
|
+
- Priority < 16: runs on EVERY request (very expensive — avoid)
|
|
144
|
+
|
|
145
|
+
### Filter implementation
|
|
146
|
+
```java
|
|
147
|
+
@Component(service = RenderFilter.class)
|
|
148
|
+
public class MyFilter extends AbstractFilter {
|
|
149
|
+
|
|
150
|
+
@Activate
|
|
151
|
+
public void activate() {
|
|
152
|
+
setPriority(20);
|
|
153
|
+
setApplyOnConfigurations("page");
|
|
154
|
+
setApplyOnTemplateTypes("html,html-*");
|
|
155
|
+
setApplyOnNodeTypes("jnt:myContent");
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
@Override
|
|
159
|
+
public String execute(String previousOut, RenderContext renderContext,
|
|
160
|
+
Resource resource, RenderChain chain) throws Exception {
|
|
161
|
+
String output = super.execute(previousOut, renderContext, resource, chain);
|
|
162
|
+
return output;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## 7. List rendering
|
|
170
|
+
|
|
171
|
+
The `jmix:list` mixin provides built-in list rendering.
|
|
172
|
+
|
|
173
|
+
### moduleMap parameters
|
|
174
|
+
|
|
175
|
+
| Parameter | Description |
|
|
176
|
+
|-----------|-------------|
|
|
177
|
+
| `currentList` | Iterable of nodes to display |
|
|
178
|
+
| `begin` | Start index |
|
|
179
|
+
| `end` | End index |
|
|
180
|
+
| `listQuery` | JCR SQL2 query |
|
|
181
|
+
| `subNodesView` | View name used for child nodes |
|
|
182
|
+
| `editable` | Whether list is editable (default: true) |
|
|
183
|
+
|
|
184
|
+
### Query-based list example (`hidden.load.jsp`)
|
|
185
|
+
```jsp
|
|
186
|
+
<query:definition var="listQuery"
|
|
187
|
+
statement="SELECT * FROM [jnt:article] WHERE ISDESCENDANTNODE('${renderContext.mainResource.node.path}') ORDER BY [jcr:lastModified] DESC"
|
|
188
|
+
limit="10"/>
|
|
189
|
+
<c:set target="${moduleMap}" property="listQuery" value="${listQuery}"/>
|
|
190
|
+
<c:set target="${moduleMap}" property="editable" value="false"/>
|
|
191
|
+
```
|
|
@@ -0,0 +1,344 @@
|
|
|
1
|
+
# Jahia UI Extensions Reference
|
|
2
|
+
|
|
3
|
+
## Table of Contents
|
|
4
|
+
1. [Overview: two extension layers](#1-overview-two-extension-layers)
|
|
5
|
+
2. [Component registry](#2-component-registry)
|
|
6
|
+
3. [Content Editor JSON overrides](#3-content-editor-json-overrides)
|
|
7
|
+
4. [jContent UI extension points](#4-jcontent-ui-extension-points)
|
|
8
|
+
5. [Adding UI actions](#5-adding-ui-actions)
|
|
9
|
+
6. [Adding settings pages (admin routes)](#6-adding-settings-pages-admin-routes)
|
|
10
|
+
7. [Custom selector types](#7-custom-selector-types)
|
|
11
|
+
8. [Custom picker configuration](#8-custom-picker-configuration)
|
|
12
|
+
9. [Dynamic forms in Content Editor](#9-dynamic-forms-in-content-editor)
|
|
13
|
+
10. [CKEditor customization](#10-ckeditor-customization)
|
|
14
|
+
11. [Debugging JSON overrides and registry](#11-debugging-json-overrides-and-registry)
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## 1. Overview: two extension layers
|
|
19
|
+
|
|
20
|
+
| Mechanism | What it controls | Format |
|
|
21
|
+
|-----------|-----------------|--------|
|
|
22
|
+
| **Content Editor JSON overrides** | Form layout, field visibility, labels, sections, field order | JSON files in module JAR |
|
|
23
|
+
| **Component registry** | Actions, accordions, nav items, selectors, routes, settings pages | JavaScript (React/JSX) |
|
|
24
|
+
|
|
25
|
+
The component registry lives in the JavaScript layer. JSON overrides live in the Java module under `META-INF/jahia-content-editor-forms/`.
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## 2. Component registry
|
|
30
|
+
|
|
31
|
+
```javascript
|
|
32
|
+
import { registry } from '@jahia/ui-extender';
|
|
33
|
+
|
|
34
|
+
registry.add('action', 'myAction', myActionObj, {
|
|
35
|
+
targets: ['contentActions:5'],
|
|
36
|
+
label: 'myModule:myAction.label'
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
registry.addOrReplace('adminRoute', 'mySettings', {
|
|
40
|
+
targets: ['administration-sites:10'],
|
|
41
|
+
label: 'myModule:settings.label',
|
|
42
|
+
isSelectable: true,
|
|
43
|
+
iframeUrl: window.contextJsParameters.contextPath + '/cms/adminframe/default/en/settings.myPage.html'
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
const existing = registry.get('action', 'createContent');
|
|
47
|
+
const allActions = registry.find({ target: 'contentActions' });
|
|
48
|
+
registry.remove('action', 'myAction');
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### Registration timing
|
|
52
|
+
|
|
53
|
+
```javascript
|
|
54
|
+
import { registry } from '@jahia/ui-extender';
|
|
55
|
+
import register from './myModule.register';
|
|
56
|
+
|
|
57
|
+
export default function () {
|
|
58
|
+
registry.add('callback', 'myModule', {
|
|
59
|
+
targets: ['jahiaApp-init:50'],
|
|
60
|
+
callback: register
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### Common registry types
|
|
66
|
+
|
|
67
|
+
| Type | Purpose |
|
|
68
|
+
|------|---------|
|
|
69
|
+
| `action` | UI action in menus, headers, or toolbars |
|
|
70
|
+
| `selectorType` | Custom field input in Content Editor |
|
|
71
|
+
| `adminRoute` | Admin panel page |
|
|
72
|
+
| `route` | Custom top-level route |
|
|
73
|
+
| `primary-nav-item` | Top-level navigation entry |
|
|
74
|
+
| `accordionItem` | Secondary navigation accordion in jContent |
|
|
75
|
+
| `callback` | Initialization callback |
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## 3. Content Editor JSON overrides
|
|
80
|
+
|
|
81
|
+
### File location
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
src/main/resources/META-INF/jahia-content-editor-forms/
|
|
85
|
+
forms/ # Form-level overrides (by nodetype)
|
|
86
|
+
fieldsets/ # Fieldset-level overrides (by mixin or type)
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Naming convention: replace `:` with `_` — `jnt:article` → `jnt_article.json`
|
|
90
|
+
|
|
91
|
+
### Form override structure
|
|
92
|
+
|
|
93
|
+
```json
|
|
94
|
+
{
|
|
95
|
+
"nodeType": "myns:myContent",
|
|
96
|
+
"priority": 2.0,
|
|
97
|
+
"hasPreview": true,
|
|
98
|
+
"sections": [
|
|
99
|
+
{
|
|
100
|
+
"name": "content",
|
|
101
|
+
"fieldSets": [
|
|
102
|
+
{
|
|
103
|
+
"name": "<main>",
|
|
104
|
+
"rank": 1.0,
|
|
105
|
+
"fields": [
|
|
106
|
+
{
|
|
107
|
+
"name": "jcr:title",
|
|
108
|
+
"declaringNodeType": "mix:title",
|
|
109
|
+
"rank": 1.0,
|
|
110
|
+
"labelKey": "myModule:label.title"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"name": "myProp",
|
|
114
|
+
"hide": false,
|
|
115
|
+
"mandatory": true
|
|
116
|
+
}
|
|
117
|
+
]
|
|
118
|
+
}
|
|
119
|
+
]
|
|
120
|
+
},
|
|
121
|
+
{ "name": "classification", "hide": true },
|
|
122
|
+
{ "name": "layout", "hide": true }
|
|
123
|
+
]
|
|
124
|
+
}
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Key override actions
|
|
128
|
+
|
|
129
|
+
| Goal | JSON |
|
|
130
|
+
|------|------|
|
|
131
|
+
| Hide a section | `{"name": "layout", "hide": true}` |
|
|
132
|
+
| Hide a field | In field: `"hide": true` |
|
|
133
|
+
| Make a field mandatory | In field: `"mandatory": true` |
|
|
134
|
+
| Reorder a field | In field: `"rank": 3.0` |
|
|
135
|
+
| Change a field label | In field: `"labelKey": "basename:myKey"` |
|
|
136
|
+
|
|
137
|
+
### `declaringNodeType` requirement
|
|
138
|
+
|
|
139
|
+
Use when the field comes from a mixin or parent type:
|
|
140
|
+
|
|
141
|
+
```json
|
|
142
|
+
{
|
|
143
|
+
"name": "j:invalidLanguages",
|
|
144
|
+
"declaringNodeType": "jmix:i18n",
|
|
145
|
+
"hide": false
|
|
146
|
+
}
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### Known limitations
|
|
150
|
+
|
|
151
|
+
- `multiple` and `i18n` properties CANNOT be overridden by JSON
|
|
152
|
+
- `valueConstraints` for choicelists can only remove existing items, not add new ones
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## 4. jContent UI extension points
|
|
157
|
+
|
|
158
|
+
### Adding an accordion
|
|
159
|
+
|
|
160
|
+
```javascript
|
|
161
|
+
const baseAccordion = registry.get('accordionItem', 'pages');
|
|
162
|
+
registry.add('accordionItem', 'myCustomAccordion', baseAccordion, {
|
|
163
|
+
targets: ['jcontent:99'],
|
|
164
|
+
label: 'myModule:accordion.label',
|
|
165
|
+
rootPath: '/sites/{site}/contents/my-section',
|
|
166
|
+
requiredSitePermission: 'myCustomPermission',
|
|
167
|
+
isEnabled: (siteKey) => siteKey !== 'systemsite',
|
|
168
|
+
treeConfig: Object.assign({}, baseAccordion.treeConfig, { hideRoot: false })
|
|
169
|
+
});
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**Important:** Always use `Object.assign({}, base.nestedObj, {...})` when overriding nested config objects.
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## 5. Adding UI actions
|
|
177
|
+
|
|
178
|
+
### Available action targets
|
|
179
|
+
|
|
180
|
+
| Target | Location |
|
|
181
|
+
|--------|----------|
|
|
182
|
+
| `contentItemContextActions` | Right-click menu on content items |
|
|
183
|
+
| `contentItemActions` | Three-dot menu on content items |
|
|
184
|
+
| `browseControlBar` | Three-dot menu in header |
|
|
185
|
+
| `headerPrimaryActions` | Header primary action buttons |
|
|
186
|
+
| `selectedContentActions` | Actions for selected content |
|
|
187
|
+
| `publishMenu` | Publish dropdown menu items |
|
|
188
|
+
|
|
189
|
+
### Registering an action
|
|
190
|
+
|
|
191
|
+
```javascript
|
|
192
|
+
registry.add('action', 'myCustomAction', {
|
|
193
|
+
buttonLabel: 'myModule:actions.myAction.label',
|
|
194
|
+
targets: ['contentItemActions:5', 'contentItemContextActions:5'],
|
|
195
|
+
showOnNodeTypes: ['jnt:article', 'jnt:page'],
|
|
196
|
+
requiredPermission: ['jcr:modifyProperties'],
|
|
197
|
+
onClick: ({ path, paths, client, notificationContext }) => {
|
|
198
|
+
console.log('Action on:', path);
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
## 6. Adding settings pages (admin routes)
|
|
206
|
+
|
|
207
|
+
```javascript
|
|
208
|
+
registry.add('adminRoute', 'mySettings', {
|
|
209
|
+
targets: ['administration-sites:50'],
|
|
210
|
+
requiredPermission: 'adminTemplates',
|
|
211
|
+
label: 'myModule:settings.label',
|
|
212
|
+
isSelectable: true,
|
|
213
|
+
render: () => <MySettingsPage/>
|
|
214
|
+
});
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
### iFrame-based admin route
|
|
218
|
+
|
|
219
|
+
```javascript
|
|
220
|
+
registry.add('adminRoute', 'myLegacySettings', {
|
|
221
|
+
targets: ['administration-server-systemComponents:10'],
|
|
222
|
+
requiredPermission: 'adminTemplates',
|
|
223
|
+
label: 'myModule:legacy.label',
|
|
224
|
+
isSelectable: true,
|
|
225
|
+
iframeUrl: window.contextJsParameters.contextPath +
|
|
226
|
+
'/cms/adminframe/default/$lang/settings.myLegacyPage.html?redirect=false'
|
|
227
|
+
});
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
### Administration target groups
|
|
231
|
+
|
|
232
|
+
| Target group | Description |
|
|
233
|
+
|-------------|-------------|
|
|
234
|
+
| `administration-server-usersAndRoles` | Server > Users and Roles |
|
|
235
|
+
| `administration-server-systemComponents` | Server > System Components |
|
|
236
|
+
| `administration-sites` | Sites section |
|
|
237
|
+
|
|
238
|
+
---
|
|
239
|
+
|
|
240
|
+
## 7. Custom selector types
|
|
241
|
+
|
|
242
|
+
```javascript
|
|
243
|
+
registry.add('selectorType', 'MyColorPicker', {
|
|
244
|
+
targets: ['BuiltInTypes:10'],
|
|
245
|
+
cmp: MyColorPickerComponent,
|
|
246
|
+
supportedTypes: ['String'],
|
|
247
|
+
});
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
Reference in CND:
|
|
251
|
+
```cnd
|
|
252
|
+
- myColor (string, MyColorPicker)
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
## 8. Custom picker configuration
|
|
258
|
+
|
|
259
|
+
```javascript
|
|
260
|
+
registry.add('pickerConfig', 'myPicker', {
|
|
261
|
+
accordionItem: 'pages',
|
|
262
|
+
searchSelectorType: ['jnt:article', 'jnt:page'],
|
|
263
|
+
selectableTypes: ['jnt:article'],
|
|
264
|
+
openableTypes: ['jnt:page', 'jnt:contentFolder']
|
|
265
|
+
});
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
Reference in CND:
|
|
269
|
+
```cnd
|
|
270
|
+
- relatedArticle (weakreference, picker[type='myPicker'])
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
---
|
|
274
|
+
|
|
275
|
+
## 9. Dynamic forms in Content Editor
|
|
276
|
+
|
|
277
|
+
Implement `DynamicFieldSetExtractor` for server-side dynamic forms:
|
|
278
|
+
|
|
279
|
+
```java
|
|
280
|
+
@Component(service = DynamicFieldSetExtractor.class)
|
|
281
|
+
public class MyDynamicExtractor implements DynamicFieldSetExtractor {
|
|
282
|
+
|
|
283
|
+
@Override
|
|
284
|
+
public Set<String> getExtendedNodeTypesToFill(JCRNodeWrapper node,
|
|
285
|
+
ExtendedNodeType primaryNodeType, Locale locale, RenderContext ctx) {
|
|
286
|
+
String category = node.getPropertyAsString("myCategory");
|
|
287
|
+
if ("premium".equals(category)) {
|
|
288
|
+
return Collections.singleton("myns:premiumFields");
|
|
289
|
+
}
|
|
290
|
+
return Collections.emptySet();
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
## 10. CKEditor customization
|
|
298
|
+
|
|
299
|
+
### CKEditor 5 (Jahia 8.2+)
|
|
300
|
+
|
|
301
|
+
```javascript
|
|
302
|
+
registry.add('ckeditor5Plugin', 'myPlugin', {
|
|
303
|
+
plugin: MyCKEditorPlugin,
|
|
304
|
+
config: { toolbar: { items: ['myButton'] } }
|
|
305
|
+
});
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
### CKEditor 4 (legacy)
|
|
309
|
+
|
|
310
|
+
Place custom configuration in `src/main/resources/javascript/ckeditor/config.js`.
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
## 11. Debugging JSON overrides and registry
|
|
315
|
+
|
|
316
|
+
### Checking JSON override registration
|
|
317
|
+
|
|
318
|
+
Look in Jahia startup logs for `StaticDefinitionsRegistry` entries:
|
|
319
|
+
```
|
|
320
|
+
INFO [StaticDefinitionsRegistry] - Successfully loaded static form for name myns:myContent
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
### Querying the generated form via GraphQL
|
|
324
|
+
|
|
325
|
+
```graphql
|
|
326
|
+
{
|
|
327
|
+
forms {
|
|
328
|
+
editForm(uiLocale: "en", locale: "en", uuidOrPath: "/sites/mySite/home/myContent") {
|
|
329
|
+
sections {
|
|
330
|
+
name
|
|
331
|
+
fieldSets { name fields { name selectorType mandatory hide } }
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
### Inspecting the component registry in browser console
|
|
339
|
+
|
|
340
|
+
```javascript
|
|
341
|
+
window.jahia.uiExtender.registry.find({ type: 'action' });
|
|
342
|
+
window.jahia.uiExtender.registry.get('accordionItem', 'pages');
|
|
343
|
+
window.jahia.uiExtender.registry.find({ target: 'contentItemActions' });
|
|
344
|
+
```
|