@jahia/agentic 0.4.0 → 0.5.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/CHANGELOG.md +10 -0
- package/dist/antigravity/.agents/rules/jahia.md +51 -0
- package/dist/antigravity/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
- package/dist/antigravity/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
- package/dist/antigravity/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
- package/dist/antigravity/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
- package/dist/antigravity/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
- package/dist/{opencode/.opencode/agents → antigravity/.agents/skills/jahia-cnd-author/references}/cnd-numbers-dates.md +32 -1
- package/dist/{opencode/.opencode/agents → antigravity/.agents/skills/jahia-cnd-author/references}/cnd-string-selectors.md +49 -10
- package/dist/antigravity/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
- package/dist/antigravity/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
- package/dist/antigravity/.agents/skills/jahia-dev-accessibility/SKILL.md +11 -0
- package/dist/antigravity/.agents/skills/jahia-dev-build-component/SKILL.md +133 -0
- package/dist/antigravity/.agents/skills/jahia-dev-create-page-template/SKILL.md +341 -0
- package/dist/antigravity/.agents/skills/jahia-dev-create-template-set/SKILL.md +205 -0
- package/dist/antigravity/.agents/skills/jahia-dev-create-view/SKILL.md +896 -0
- package/dist/antigravity/.agents/skills/jahia-dev-debug/SKILL.md +176 -0
- package/dist/antigravity/.agents/skills/jahia-dev-import-from/SKILL.md +244 -0
- package/dist/antigravity/.agents/skills/jahia-dev-jexperience/SKILL.md +269 -0
- package/dist/antigravity/.agents/skills/jahia-dev-ops/SKILL.md +50 -0
- package/dist/antigravity/.agents/skills/jahia-dev-ops/references/docker.md +151 -0
- package/dist/antigravity/.agents/skills/jahia-dev-ops/references/monitoring.md +195 -0
- package/dist/antigravity/.agents/skills/jahia-dev-ops/references/provisioning.md +269 -0
- package/dist/antigravity/.agents/skills/jahia-dev-properties/SKILL.md +147 -0
- package/dist/antigravity/.agents/skills/jahia-dev-properties/references/all-properties.md +231 -0
- package/dist/antigravity/.agents/skills/jahia-dev-query-content/SKILL.md +204 -0
- package/dist/antigravity/.agents/skills/jahia-dev-review/SKILL.md +228 -0
- package/dist/antigravity/.agents/skills/jahia-dev-review-cnd/SKILL.md +79 -0
- package/dist/antigravity/.agents/skills/jahia-dev-review-cnd/scripts/check-cnd.d.mts +13 -0
- package/dist/antigravity/.agents/skills/jahia-dev-review-cnd/scripts/check-cnd.mjs +198 -0
- package/dist/antigravity/.agents/skills/jahia-dev-screenshot/SKILL.md +177 -0
- package/dist/antigravity/.agents/skills/jahia-dev-site-review/SKILL.md +70 -0
- package/dist/antigravity/.agents/skills/jahia-dev-site-review/scripts/review-pages.mjs +85 -0
- package/dist/antigravity/.agents/skills/jahia-dev-start-local/SKILL.md +121 -0
- package/dist/antigravity/.agents/skills/jahia-jcr-sql2/SKILL.md +258 -0
- package/dist/antigravity/AGENTS.md +62 -0
- package/dist/claude/.claude/rules/jahia.md +1 -37
- package/dist/claude/.claude/skills/jahia-cnd-author/SKILL.md +94 -0
- package/dist/claude/.claude/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
- package/dist/claude/.claude/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
- package/dist/claude/.claude/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
- package/dist/claude/.claude/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
- package/dist/claude/.claude/{agents → skills/jahia-cnd-author/references}/cnd-numbers-dates.md +32 -1
- package/dist/{cursor/.cursor/agents → claude/.claude/skills/jahia-cnd-author/references}/cnd-string-selectors.md +49 -10
- package/dist/claude/.claude/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
- package/dist/claude/.claude/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
- package/dist/claude/.claude/skills/jahia-dev-accessibility/SKILL.md +5 -265
- package/dist/claude/.claude/skills/jahia-dev-build-component/SKILL.md +13 -8
- package/dist/claude/.mcp.json +11 -0
- package/dist/claude/CLAUDE.md +2 -38
- package/dist/codex/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
- package/dist/codex/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
- package/dist/codex/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
- package/dist/codex/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
- package/dist/codex/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
- package/dist/{cursor/.cursor/agents → codex/.agents/skills/jahia-cnd-author/references}/cnd-numbers-dates.md +32 -1
- package/dist/{claude/.claude/agents → codex/.agents/skills/jahia-cnd-author/references}/cnd-string-selectors.md +49 -10
- package/dist/codex/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
- package/dist/codex/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
- package/dist/codex/.agents/skills/jahia-dev-accessibility/SKILL.md +5 -265
- package/dist/codex/.agents/skills/jahia-dev-build-component/SKILL.md +13 -8
- package/dist/codex/AGENTS.md +2 -38
- package/dist/copilot/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
- package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
- package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
- package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
- package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
- package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
- package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
- package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
- package/dist/copilot/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
- package/dist/copilot/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
- package/dist/copilot/.agents/skills/jahia-dev-accessibility/SKILL.md +5 -265
- package/dist/copilot/.agents/skills/jahia-dev-build-component/SKILL.md +13 -8
- package/dist/copilot/AGENTS.md +2 -38
- package/dist/cursor/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
- package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
- package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
- package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
- package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
- package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
- package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
- package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
- package/dist/cursor/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
- package/dist/cursor/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
- package/dist/cursor/.agents/skills/jahia-dev-accessibility/SKILL.md +5 -265
- package/dist/cursor/.agents/skills/jahia-dev-build-component/SKILL.md +13 -8
- package/dist/cursor/.cursor/mcp.json +11 -0
- package/dist/cursor/.cursor/rules/jahia.mdc +1 -37
- package/dist/gemini/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
- package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
- package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
- package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
- package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
- package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
- package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
- package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
- package/dist/gemini/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
- package/dist/gemini/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
- package/dist/gemini/.agents/skills/jahia-dev-accessibility/SKILL.md +5 -265
- package/dist/gemini/.agents/skills/jahia-dev-build-component/SKILL.md +13 -8
- package/dist/gemini/.gemini/settings.json +10 -0
- package/dist/gemini/AGENTS.md +2 -38
- package/dist/index.js +12 -0
- package/dist/kiro/.kiro/settings/mcp.json +10 -0
- package/dist/kiro/.kiro/skills/jahia-cnd-author/SKILL.md +94 -0
- package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
- package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
- package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
- package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
- package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
- package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
- package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
- package/dist/kiro/.kiro/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
- package/dist/kiro/.kiro/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
- package/dist/kiro/.kiro/skills/jahia-dev-accessibility/SKILL.md +11 -0
- package/dist/kiro/.kiro/skills/jahia-dev-build-component/SKILL.md +133 -0
- package/dist/kiro/.kiro/skills/jahia-dev-create-page-template/SKILL.md +341 -0
- package/dist/kiro/.kiro/skills/jahia-dev-create-template-set/SKILL.md +205 -0
- package/dist/kiro/.kiro/skills/jahia-dev-create-view/SKILL.md +896 -0
- package/dist/kiro/.kiro/skills/jahia-dev-debug/SKILL.md +176 -0
- package/dist/kiro/.kiro/skills/jahia-dev-import-from/SKILL.md +244 -0
- package/dist/kiro/.kiro/skills/jahia-dev-jexperience/SKILL.md +269 -0
- package/dist/kiro/.kiro/skills/jahia-dev-ops/SKILL.md +50 -0
- package/dist/kiro/.kiro/skills/jahia-dev-ops/references/docker.md +151 -0
- package/dist/kiro/.kiro/skills/jahia-dev-ops/references/monitoring.md +195 -0
- package/dist/kiro/.kiro/skills/jahia-dev-ops/references/provisioning.md +269 -0
- package/dist/kiro/.kiro/skills/jahia-dev-properties/SKILL.md +147 -0
- package/dist/kiro/.kiro/skills/jahia-dev-properties/references/all-properties.md +231 -0
- package/dist/kiro/.kiro/skills/jahia-dev-query-content/SKILL.md +204 -0
- package/dist/kiro/.kiro/skills/jahia-dev-review/SKILL.md +228 -0
- package/dist/kiro/.kiro/skills/jahia-dev-review-cnd/SKILL.md +79 -0
- package/dist/kiro/.kiro/skills/jahia-dev-review-cnd/scripts/check-cnd.d.mts +13 -0
- package/dist/kiro/.kiro/skills/jahia-dev-review-cnd/scripts/check-cnd.mjs +198 -0
- package/dist/kiro/.kiro/skills/jahia-dev-screenshot/SKILL.md +177 -0
- package/dist/kiro/.kiro/skills/jahia-dev-site-review/SKILL.md +70 -0
- package/dist/kiro/.kiro/skills/jahia-dev-site-review/scripts/review-pages.mjs +85 -0
- package/dist/kiro/.kiro/skills/jahia-dev-start-local/SKILL.md +121 -0
- package/dist/kiro/.kiro/skills/jahia-jcr-sql2/SKILL.md +258 -0
- package/dist/kiro/.kiro/steering/jahia.md +55 -0
- package/dist/kiro/AGENTS.md +62 -0
- package/dist/opencode/.agents/skills/jahia-cnd-author/SKILL.md +94 -0
- package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
- package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
- package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
- package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
- package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
- package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
- package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
- package/dist/opencode/.agents/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
- package/dist/opencode/.agents/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
- package/dist/opencode/.agents/skills/jahia-dev-accessibility/SKILL.md +5 -265
- package/dist/opencode/.agents/skills/jahia-dev-build-component/SKILL.md +13 -8
- package/dist/opencode/AGENTS.md +2 -38
- package/dist/opencode/opencode.json +12 -0
- package/dist/windsurf/.windsurf/rules/jahia.md +1 -37
- package/dist/windsurf/.windsurf/skills/jahia-cnd-author/SKILL.md +94 -0
- package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-area-types.md +55 -0
- package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-authoring-experience.md +92 -0
- package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-child-nodes.md +74 -0
- package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-jahia-mixins.md +510 -0
- package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-modeling-decisions.md +87 -0
- package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-numbers-dates.md +92 -0
- package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-string-selectors.md +133 -0
- package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/cnd-syntax.md +119 -0
- package/dist/windsurf/.windsurf/skills/jahia-cnd-author/references/types-ts-mapping.md +73 -0
- package/dist/windsurf/.windsurf/skills/jahia-dev-accessibility/SKILL.md +5 -265
- package/dist/windsurf/.windsurf/skills/jahia-dev-build-component/SKILL.md +13 -8
- package/dist/windsurf/AGENTS.md +2 -38
- package/package.json +1 -1
- package/dist/claude/.claude/agents/cnd-jahia-mixins.md +0 -113
- package/dist/claude/.claude/agents/jahia-cnd-author.md +0 -130
- package/dist/claude/.claude/agents/jahia-dev-worker.md +0 -264
- package/dist/claude/.claude/agents/jahia-reviewer.md +0 -105
- package/dist/claude/.claude/skills/jahia/SKILL.md +0 -148
- package/dist/claude/.claude/skills/jahia-content/SKILL.md +0 -157
- package/dist/claude/.claude/skills/jahia-content-create-content/SKILL.md +0 -359
- package/dist/claude/.claude/skills/jahia-content-explore-structure/SKILL.md +0 -255
- package/dist/claude/.claude/skills/jahia-content-media-upload/SKILL.md +0 -197
- package/dist/claude/.claude/skills/jahia-content-move-content/SKILL.md +0 -231
- package/dist/claude/.claude/skills/jahia-content-organize/SKILL.md +0 -209
- package/dist/claude/.claude/skills/jahia-content-publish/SKILL.md +0 -181
- package/dist/claude/.claude/skills/jahia-content-query-content/SKILL.md +0 -174
- package/dist/claude/.claude/skills/jahia-content-translate-content/SKILL.md +0 -226
- package/dist/claude/.claude/skills/jahia-dev/SKILL.md +0 -124
- package/dist/claude/.claude/skills/jahia-dev-apis/SKILL.md +0 -52
- package/dist/claude/.claude/skills/jahia-dev-apis/references/authentication.md +0 -484
- package/dist/claude/.claude/skills/jahia-dev-apis/references/graphql.md +0 -657
- package/dist/claude/.claude/skills/jahia-dev-apis/references/jcr-api.md +0 -465
- package/dist/claude/.claude/skills/jahia-dev-apis/references/security.md +0 -541
- package/dist/claude/.claude/skills/jahia-dev-cypress/SKILL.md +0 -265
- package/dist/claude/.claude/skills/jahia-dev-define-content-type/SKILL.md +0 -93
- package/dist/claude/.claude/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
- package/dist/claude/.claude/skills/jahia-dev-java/SKILL.md +0 -110
- package/dist/claude/.claude/skills/jahia-dev-java/references/backend.md +0 -331
- package/dist/claude/.claude/skills/jahia-dev-java/references/content-types.md +0 -273
- package/dist/claude/.claude/skills/jahia-dev-java/references/modules.md +0 -218
- package/dist/claude/.claude/skills/jahia-dev-java/references/osgi.md +0 -208
- package/dist/claude/.claude/skills/jahia-dev-java/references/rendering.md +0 -191
- package/dist/claude/.claude/skills/jahia-dev-java/references/ui-extensions.md +0 -344
- package/dist/claude/.claude/skills/jahia-dev-osgi-module/SKILL.md +0 -297
- package/dist/claude/.claude/skills/jahia-dev-ui-extension/SKILL.md +0 -559
- package/dist/claude/.claude/skills/jahia-java-concurrency/SKILL.md +0 -308
- package/dist/claude/.claude/skills/jahia-java-jcr/SKILL.md +0 -153
- package/dist/claude/.claude/skills/jahia-java-osgi/SKILL.md +0 -134
- package/dist/claude/.claude/skills/jahia-java-persistence/SKILL.md +0 -177
- package/dist/claude/.claude/skills/jahia-java-security/SKILL.md +0 -84
- package/dist/claude/.claude/skills/jahia-orchestrate/SKILL.md +0 -148
- package/dist/claude/.claude/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
- package/dist/claude/.claude/skills/jahia-review-java/SKILL.md +0 -131
- package/dist/claude/.claude/skills/jahia-review-java/references/code-review-output.md +0 -121
- package/dist/codex/.agents/skills/jahia/SKILL.md +0 -148
- package/dist/codex/.agents/skills/jahia-content/SKILL.md +0 -157
- package/dist/codex/.agents/skills/jahia-content-create-content/SKILL.md +0 -359
- package/dist/codex/.agents/skills/jahia-content-explore-structure/SKILL.md +0 -255
- package/dist/codex/.agents/skills/jahia-content-media-upload/SKILL.md +0 -197
- package/dist/codex/.agents/skills/jahia-content-move-content/SKILL.md +0 -231
- package/dist/codex/.agents/skills/jahia-content-organize/SKILL.md +0 -209
- package/dist/codex/.agents/skills/jahia-content-publish/SKILL.md +0 -181
- package/dist/codex/.agents/skills/jahia-content-query-content/SKILL.md +0 -174
- package/dist/codex/.agents/skills/jahia-content-translate-content/SKILL.md +0 -226
- package/dist/codex/.agents/skills/jahia-dev/SKILL.md +0 -124
- package/dist/codex/.agents/skills/jahia-dev-apis/SKILL.md +0 -52
- package/dist/codex/.agents/skills/jahia-dev-apis/references/authentication.md +0 -484
- package/dist/codex/.agents/skills/jahia-dev-apis/references/graphql.md +0 -657
- package/dist/codex/.agents/skills/jahia-dev-apis/references/jcr-api.md +0 -465
- package/dist/codex/.agents/skills/jahia-dev-apis/references/security.md +0 -541
- package/dist/codex/.agents/skills/jahia-dev-cypress/SKILL.md +0 -265
- package/dist/codex/.agents/skills/jahia-dev-define-content-type/SKILL.md +0 -93
- package/dist/codex/.agents/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
- package/dist/codex/.agents/skills/jahia-dev-java/SKILL.md +0 -110
- package/dist/codex/.agents/skills/jahia-dev-java/references/backend.md +0 -331
- package/dist/codex/.agents/skills/jahia-dev-java/references/content-types.md +0 -273
- package/dist/codex/.agents/skills/jahia-dev-java/references/modules.md +0 -218
- package/dist/codex/.agents/skills/jahia-dev-java/references/osgi.md +0 -208
- package/dist/codex/.agents/skills/jahia-dev-java/references/rendering.md +0 -191
- package/dist/codex/.agents/skills/jahia-dev-java/references/ui-extensions.md +0 -344
- package/dist/codex/.agents/skills/jahia-dev-osgi-module/SKILL.md +0 -297
- package/dist/codex/.agents/skills/jahia-dev-ui-extension/SKILL.md +0 -559
- package/dist/codex/.agents/skills/jahia-java-concurrency/SKILL.md +0 -308
- package/dist/codex/.agents/skills/jahia-java-jcr/SKILL.md +0 -153
- package/dist/codex/.agents/skills/jahia-java-osgi/SKILL.md +0 -134
- package/dist/codex/.agents/skills/jahia-java-persistence/SKILL.md +0 -177
- package/dist/codex/.agents/skills/jahia-java-security/SKILL.md +0 -84
- package/dist/codex/.agents/skills/jahia-orchestrate/SKILL.md +0 -148
- package/dist/codex/.agents/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
- package/dist/codex/.agents/skills/jahia-review-java/SKILL.md +0 -131
- package/dist/codex/.agents/skills/jahia-review-java/references/code-review-output.md +0 -121
- package/dist/codex/.codex/agents/cnd-child-nodes.toml +0 -3
- package/dist/codex/.codex/agents/cnd-jahia-mixins.toml +0 -3
- package/dist/codex/.codex/agents/cnd-numbers-dates.toml +0 -3
- package/dist/codex/.codex/agents/cnd-string-selectors.toml +0 -3
- package/dist/codex/.codex/agents/jahia-cnd-author.toml +0 -3
- package/dist/codex/.codex/agents/jahia-dev-worker.toml +0 -3
- package/dist/codex/.codex/agents/jahia-reviewer.toml +0 -3
- package/dist/copilot/.agents/skills/jahia/SKILL.md +0 -148
- package/dist/copilot/.agents/skills/jahia-content/SKILL.md +0 -157
- package/dist/copilot/.agents/skills/jahia-content-create-content/SKILL.md +0 -359
- package/dist/copilot/.agents/skills/jahia-content-explore-structure/SKILL.md +0 -255
- package/dist/copilot/.agents/skills/jahia-content-media-upload/SKILL.md +0 -197
- package/dist/copilot/.agents/skills/jahia-content-move-content/SKILL.md +0 -231
- package/dist/copilot/.agents/skills/jahia-content-organize/SKILL.md +0 -209
- package/dist/copilot/.agents/skills/jahia-content-publish/SKILL.md +0 -181
- package/dist/copilot/.agents/skills/jahia-content-query-content/SKILL.md +0 -174
- package/dist/copilot/.agents/skills/jahia-content-translate-content/SKILL.md +0 -226
- package/dist/copilot/.agents/skills/jahia-dev/SKILL.md +0 -124
- package/dist/copilot/.agents/skills/jahia-dev-apis/SKILL.md +0 -52
- package/dist/copilot/.agents/skills/jahia-dev-apis/references/authentication.md +0 -484
- package/dist/copilot/.agents/skills/jahia-dev-apis/references/graphql.md +0 -657
- package/dist/copilot/.agents/skills/jahia-dev-apis/references/jcr-api.md +0 -465
- package/dist/copilot/.agents/skills/jahia-dev-apis/references/security.md +0 -541
- package/dist/copilot/.agents/skills/jahia-dev-cypress/SKILL.md +0 -265
- package/dist/copilot/.agents/skills/jahia-dev-define-content-type/SKILL.md +0 -93
- package/dist/copilot/.agents/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
- package/dist/copilot/.agents/skills/jahia-dev-java/SKILL.md +0 -110
- package/dist/copilot/.agents/skills/jahia-dev-java/references/backend.md +0 -331
- package/dist/copilot/.agents/skills/jahia-dev-java/references/content-types.md +0 -273
- package/dist/copilot/.agents/skills/jahia-dev-java/references/modules.md +0 -218
- package/dist/copilot/.agents/skills/jahia-dev-java/references/osgi.md +0 -208
- package/dist/copilot/.agents/skills/jahia-dev-java/references/rendering.md +0 -191
- package/dist/copilot/.agents/skills/jahia-dev-java/references/ui-extensions.md +0 -344
- package/dist/copilot/.agents/skills/jahia-dev-osgi-module/SKILL.md +0 -297
- package/dist/copilot/.agents/skills/jahia-dev-ui-extension/SKILL.md +0 -559
- package/dist/copilot/.agents/skills/jahia-java-concurrency/SKILL.md +0 -308
- package/dist/copilot/.agents/skills/jahia-java-jcr/SKILL.md +0 -153
- package/dist/copilot/.agents/skills/jahia-java-osgi/SKILL.md +0 -134
- package/dist/copilot/.agents/skills/jahia-java-persistence/SKILL.md +0 -177
- package/dist/copilot/.agents/skills/jahia-java-security/SKILL.md +0 -84
- package/dist/copilot/.agents/skills/jahia-orchestrate/SKILL.md +0 -148
- package/dist/copilot/.agents/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
- package/dist/copilot/.agents/skills/jahia-review-java/SKILL.md +0 -131
- package/dist/copilot/.agents/skills/jahia-review-java/references/code-review-output.md +0 -121
- package/dist/cursor/.agents/skills/jahia/SKILL.md +0 -148
- package/dist/cursor/.agents/skills/jahia-content/SKILL.md +0 -157
- package/dist/cursor/.agents/skills/jahia-content-create-content/SKILL.md +0 -359
- package/dist/cursor/.agents/skills/jahia-content-explore-structure/SKILL.md +0 -255
- package/dist/cursor/.agents/skills/jahia-content-media-upload/SKILL.md +0 -197
- package/dist/cursor/.agents/skills/jahia-content-move-content/SKILL.md +0 -231
- package/dist/cursor/.agents/skills/jahia-content-organize/SKILL.md +0 -209
- package/dist/cursor/.agents/skills/jahia-content-publish/SKILL.md +0 -181
- package/dist/cursor/.agents/skills/jahia-content-query-content/SKILL.md +0 -174
- package/dist/cursor/.agents/skills/jahia-content-translate-content/SKILL.md +0 -226
- package/dist/cursor/.agents/skills/jahia-dev/SKILL.md +0 -124
- package/dist/cursor/.agents/skills/jahia-dev-apis/SKILL.md +0 -52
- package/dist/cursor/.agents/skills/jahia-dev-apis/references/authentication.md +0 -484
- package/dist/cursor/.agents/skills/jahia-dev-apis/references/graphql.md +0 -657
- package/dist/cursor/.agents/skills/jahia-dev-apis/references/jcr-api.md +0 -465
- package/dist/cursor/.agents/skills/jahia-dev-apis/references/security.md +0 -541
- package/dist/cursor/.agents/skills/jahia-dev-cypress/SKILL.md +0 -265
- package/dist/cursor/.agents/skills/jahia-dev-define-content-type/SKILL.md +0 -93
- package/dist/cursor/.agents/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
- package/dist/cursor/.agents/skills/jahia-dev-java/SKILL.md +0 -110
- package/dist/cursor/.agents/skills/jahia-dev-java/references/backend.md +0 -331
- package/dist/cursor/.agents/skills/jahia-dev-java/references/content-types.md +0 -273
- package/dist/cursor/.agents/skills/jahia-dev-java/references/modules.md +0 -218
- package/dist/cursor/.agents/skills/jahia-dev-java/references/osgi.md +0 -208
- package/dist/cursor/.agents/skills/jahia-dev-java/references/rendering.md +0 -191
- package/dist/cursor/.agents/skills/jahia-dev-java/references/ui-extensions.md +0 -344
- package/dist/cursor/.agents/skills/jahia-dev-osgi-module/SKILL.md +0 -297
- package/dist/cursor/.agents/skills/jahia-dev-ui-extension/SKILL.md +0 -559
- package/dist/cursor/.agents/skills/jahia-java-concurrency/SKILL.md +0 -308
- package/dist/cursor/.agents/skills/jahia-java-jcr/SKILL.md +0 -153
- package/dist/cursor/.agents/skills/jahia-java-osgi/SKILL.md +0 -134
- package/dist/cursor/.agents/skills/jahia-java-persistence/SKILL.md +0 -177
- package/dist/cursor/.agents/skills/jahia-java-security/SKILL.md +0 -84
- package/dist/cursor/.agents/skills/jahia-orchestrate/SKILL.md +0 -148
- package/dist/cursor/.agents/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
- package/dist/cursor/.agents/skills/jahia-review-java/SKILL.md +0 -131
- package/dist/cursor/.agents/skills/jahia-review-java/references/code-review-output.md +0 -121
- package/dist/cursor/.cursor/agents/cnd-jahia-mixins.md +0 -113
- package/dist/cursor/.cursor/agents/jahia-cnd-author.md +0 -130
- package/dist/cursor/.cursor/agents/jahia-dev-worker.md +0 -264
- package/dist/cursor/.cursor/agents/jahia-reviewer.md +0 -105
- package/dist/gemini/.agents/skills/jahia/SKILL.md +0 -148
- package/dist/gemini/.agents/skills/jahia-content/SKILL.md +0 -157
- package/dist/gemini/.agents/skills/jahia-content-create-content/SKILL.md +0 -359
- package/dist/gemini/.agents/skills/jahia-content-explore-structure/SKILL.md +0 -255
- package/dist/gemini/.agents/skills/jahia-content-media-upload/SKILL.md +0 -197
- package/dist/gemini/.agents/skills/jahia-content-move-content/SKILL.md +0 -231
- package/dist/gemini/.agents/skills/jahia-content-organize/SKILL.md +0 -209
- package/dist/gemini/.agents/skills/jahia-content-publish/SKILL.md +0 -181
- package/dist/gemini/.agents/skills/jahia-content-query-content/SKILL.md +0 -174
- package/dist/gemini/.agents/skills/jahia-content-translate-content/SKILL.md +0 -226
- package/dist/gemini/.agents/skills/jahia-dev/SKILL.md +0 -124
- package/dist/gemini/.agents/skills/jahia-dev-apis/SKILL.md +0 -52
- package/dist/gemini/.agents/skills/jahia-dev-apis/references/authentication.md +0 -484
- package/dist/gemini/.agents/skills/jahia-dev-apis/references/graphql.md +0 -657
- package/dist/gemini/.agents/skills/jahia-dev-apis/references/jcr-api.md +0 -465
- package/dist/gemini/.agents/skills/jahia-dev-apis/references/security.md +0 -541
- package/dist/gemini/.agents/skills/jahia-dev-cypress/SKILL.md +0 -265
- package/dist/gemini/.agents/skills/jahia-dev-define-content-type/SKILL.md +0 -93
- package/dist/gemini/.agents/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
- package/dist/gemini/.agents/skills/jahia-dev-java/SKILL.md +0 -110
- package/dist/gemini/.agents/skills/jahia-dev-java/references/backend.md +0 -331
- package/dist/gemini/.agents/skills/jahia-dev-java/references/content-types.md +0 -273
- package/dist/gemini/.agents/skills/jahia-dev-java/references/modules.md +0 -218
- package/dist/gemini/.agents/skills/jahia-dev-java/references/osgi.md +0 -208
- package/dist/gemini/.agents/skills/jahia-dev-java/references/rendering.md +0 -191
- package/dist/gemini/.agents/skills/jahia-dev-java/references/ui-extensions.md +0 -344
- package/dist/gemini/.agents/skills/jahia-dev-osgi-module/SKILL.md +0 -297
- package/dist/gemini/.agents/skills/jahia-dev-ui-extension/SKILL.md +0 -559
- package/dist/gemini/.agents/skills/jahia-java-concurrency/SKILL.md +0 -308
- package/dist/gemini/.agents/skills/jahia-java-jcr/SKILL.md +0 -153
- package/dist/gemini/.agents/skills/jahia-java-osgi/SKILL.md +0 -134
- package/dist/gemini/.agents/skills/jahia-java-persistence/SKILL.md +0 -177
- package/dist/gemini/.agents/skills/jahia-java-security/SKILL.md +0 -84
- package/dist/gemini/.agents/skills/jahia-orchestrate/SKILL.md +0 -148
- package/dist/gemini/.agents/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
- package/dist/gemini/.agents/skills/jahia-review-java/SKILL.md +0 -131
- package/dist/gemini/.agents/skills/jahia-review-java/references/code-review-output.md +0 -121
- package/dist/opencode/.agents/skills/jahia/SKILL.md +0 -148
- package/dist/opencode/.agents/skills/jahia-content/SKILL.md +0 -157
- package/dist/opencode/.agents/skills/jahia-content-create-content/SKILL.md +0 -359
- package/dist/opencode/.agents/skills/jahia-content-explore-structure/SKILL.md +0 -255
- package/dist/opencode/.agents/skills/jahia-content-media-upload/SKILL.md +0 -197
- package/dist/opencode/.agents/skills/jahia-content-move-content/SKILL.md +0 -231
- package/dist/opencode/.agents/skills/jahia-content-organize/SKILL.md +0 -209
- package/dist/opencode/.agents/skills/jahia-content-publish/SKILL.md +0 -181
- package/dist/opencode/.agents/skills/jahia-content-query-content/SKILL.md +0 -174
- package/dist/opencode/.agents/skills/jahia-content-translate-content/SKILL.md +0 -226
- package/dist/opencode/.agents/skills/jahia-dev/SKILL.md +0 -124
- package/dist/opencode/.agents/skills/jahia-dev-apis/SKILL.md +0 -52
- package/dist/opencode/.agents/skills/jahia-dev-apis/references/authentication.md +0 -484
- package/dist/opencode/.agents/skills/jahia-dev-apis/references/graphql.md +0 -657
- package/dist/opencode/.agents/skills/jahia-dev-apis/references/jcr-api.md +0 -465
- package/dist/opencode/.agents/skills/jahia-dev-apis/references/security.md +0 -541
- package/dist/opencode/.agents/skills/jahia-dev-cypress/SKILL.md +0 -265
- package/dist/opencode/.agents/skills/jahia-dev-define-content-type/SKILL.md +0 -93
- package/dist/opencode/.agents/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
- package/dist/opencode/.agents/skills/jahia-dev-java/SKILL.md +0 -110
- package/dist/opencode/.agents/skills/jahia-dev-java/references/backend.md +0 -331
- package/dist/opencode/.agents/skills/jahia-dev-java/references/content-types.md +0 -273
- package/dist/opencode/.agents/skills/jahia-dev-java/references/modules.md +0 -218
- package/dist/opencode/.agents/skills/jahia-dev-java/references/osgi.md +0 -208
- package/dist/opencode/.agents/skills/jahia-dev-java/references/rendering.md +0 -191
- package/dist/opencode/.agents/skills/jahia-dev-java/references/ui-extensions.md +0 -344
- package/dist/opencode/.agents/skills/jahia-dev-osgi-module/SKILL.md +0 -297
- package/dist/opencode/.agents/skills/jahia-dev-ui-extension/SKILL.md +0 -559
- package/dist/opencode/.agents/skills/jahia-java-concurrency/SKILL.md +0 -308
- package/dist/opencode/.agents/skills/jahia-java-jcr/SKILL.md +0 -153
- package/dist/opencode/.agents/skills/jahia-java-osgi/SKILL.md +0 -134
- package/dist/opencode/.agents/skills/jahia-java-persistence/SKILL.md +0 -177
- package/dist/opencode/.agents/skills/jahia-java-security/SKILL.md +0 -84
- package/dist/opencode/.agents/skills/jahia-orchestrate/SKILL.md +0 -148
- package/dist/opencode/.agents/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
- package/dist/opencode/.agents/skills/jahia-review-java/SKILL.md +0 -131
- package/dist/opencode/.agents/skills/jahia-review-java/references/code-review-output.md +0 -121
- package/dist/opencode/.opencode/agents/cnd-jahia-mixins.md +0 -113
- package/dist/opencode/.opencode/agents/jahia-cnd-author.md +0 -130
- package/dist/opencode/.opencode/agents/jahia-dev-worker.md +0 -264
- package/dist/opencode/.opencode/agents/jahia-reviewer.md +0 -105
- package/dist/windsurf/.windsurf/skills/jahia/SKILL.md +0 -148
- package/dist/windsurf/.windsurf/skills/jahia-content/SKILL.md +0 -157
- package/dist/windsurf/.windsurf/skills/jahia-content-create-content/SKILL.md +0 -359
- package/dist/windsurf/.windsurf/skills/jahia-content-explore-structure/SKILL.md +0 -255
- package/dist/windsurf/.windsurf/skills/jahia-content-media-upload/SKILL.md +0 -197
- package/dist/windsurf/.windsurf/skills/jahia-content-move-content/SKILL.md +0 -231
- package/dist/windsurf/.windsurf/skills/jahia-content-organize/SKILL.md +0 -209
- package/dist/windsurf/.windsurf/skills/jahia-content-publish/SKILL.md +0 -181
- package/dist/windsurf/.windsurf/skills/jahia-content-query-content/SKILL.md +0 -174
- package/dist/windsurf/.windsurf/skills/jahia-content-translate-content/SKILL.md +0 -226
- package/dist/windsurf/.windsurf/skills/jahia-dev/SKILL.md +0 -124
- package/dist/windsurf/.windsurf/skills/jahia-dev-apis/SKILL.md +0 -52
- package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/authentication.md +0 -484
- package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/graphql.md +0 -657
- package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/jcr-api.md +0 -465
- package/dist/windsurf/.windsurf/skills/jahia-dev-apis/references/security.md +0 -541
- package/dist/windsurf/.windsurf/skills/jahia-dev-cypress/SKILL.md +0 -265
- package/dist/windsurf/.windsurf/skills/jahia-dev-define-content-type/SKILL.md +0 -93
- package/dist/windsurf/.windsurf/skills/jahia-dev-define-content-type/references/modeling-decisions.md +0 -52
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/SKILL.md +0 -110
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/backend.md +0 -331
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/content-types.md +0 -273
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/modules.md +0 -218
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/osgi.md +0 -208
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/rendering.md +0 -191
- package/dist/windsurf/.windsurf/skills/jahia-dev-java/references/ui-extensions.md +0 -344
- package/dist/windsurf/.windsurf/skills/jahia-dev-osgi-module/SKILL.md +0 -297
- package/dist/windsurf/.windsurf/skills/jahia-dev-ui-extension/SKILL.md +0 -559
- package/dist/windsurf/.windsurf/skills/jahia-java-concurrency/SKILL.md +0 -308
- package/dist/windsurf/.windsurf/skills/jahia-java-jcr/SKILL.md +0 -153
- package/dist/windsurf/.windsurf/skills/jahia-java-osgi/SKILL.md +0 -134
- package/dist/windsurf/.windsurf/skills/jahia-java-persistence/SKILL.md +0 -177
- package/dist/windsurf/.windsurf/skills/jahia-java-security/SKILL.md +0 -84
- package/dist/windsurf/.windsurf/skills/jahia-orchestrate/SKILL.md +0 -148
- package/dist/windsurf/.windsurf/skills/jahia-orchestrate/scripts/verify-pages.mjs +0 -59
- package/dist/windsurf/.windsurf/skills/jahia-review-java/SKILL.md +0 -131
- package/dist/windsurf/.windsurf/skills/jahia-review-java/references/code-review-output.md +0 -121
- /package/dist/{claude/.claude/agents → antigravity/.agents/skills/jahia-cnd-author/references}/cnd-child-nodes.md +0 -0
- /package/dist/{cursor/.cursor/agents → claude/.claude/skills/jahia-cnd-author/references}/cnd-child-nodes.md +0 -0
- /package/dist/{opencode/.opencode/agents → codex/.agents/skills/jahia-cnd-author/references}/cnd-child-nodes.md +0 -0
|
@@ -0,0 +1,510 @@
|
|
|
1
|
+
# Jahia Native Mixins & Types
|
|
2
|
+
|
|
3
|
+
Source: https://github.com/Jahia/jahia/tree/master/war/src/main/webapp/WEB-INF/etc/repository/nodetypes
|
|
4
|
+
Fetch this URL to verify before using any mixin not listed here.
|
|
5
|
+
|
|
6
|
+
## Base types — always extend these
|
|
7
|
+
|
|
8
|
+
| Type | Purpose |
|
|
9
|
+
|---|---|
|
|
10
|
+
| `jnt:content` | Base for all user content nodes — **always include** |
|
|
11
|
+
| `jnt:page` | Page node — only for `jmix:mainResource` full-page types |
|
|
12
|
+
| `jnt:file` | File node — for file references |
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Component system mixins — define these in your module first
|
|
17
|
+
|
|
18
|
+
### Two-tier component mixin pattern
|
|
19
|
+
|
|
20
|
+
Define these in `settings/definitions.cnd` before all other types:
|
|
21
|
+
|
|
22
|
+
```cnd
|
|
23
|
+
[nsmix:component] > jmix:droppableContent, jmix:accessControllableContent mixin
|
|
24
|
+
[nsmix:pageComponent] > nsmix:component mixin
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
| Component will be… | Extend |
|
|
28
|
+
|---|---|
|
|
29
|
+
| Dropped in page areas | `nsmix:pageComponent` |
|
|
30
|
+
| Child of another component | `nsmix:component` |
|
|
31
|
+
| Listed programmatically | `nsmix:component` |
|
|
32
|
+
|
|
33
|
+
### `jmix:droppableContent` — base for droppable types
|
|
34
|
+
|
|
35
|
+
Extends `mix:referenceable`. Never extend directly — always wrap in a module mixin.
|
|
36
|
+
|
|
37
|
+
### `jmix:accessControllableContent` — per-component access control
|
|
38
|
+
|
|
39
|
+
Extends `mix:referenceable`. Include in your base module mixin so all components support it.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Title & metadata mixins
|
|
44
|
+
|
|
45
|
+
### `mix:title` — preferred over a raw title property
|
|
46
|
+
|
|
47
|
+
Adds `jcr:title` (string). Jahia's UI, breadcrumbs, SEO, and sitemap generation all read `jcr:title`.
|
|
48
|
+
**Extend this instead of declaring `- title (string) i18n mandatory`.**
|
|
49
|
+
|
|
50
|
+
```cnd
|
|
51
|
+
[ns:article] > jnt:content, nsmix:component, mix:title
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Access in view: `props["jcr:title"]`
|
|
55
|
+
|
|
56
|
+
### `jmix:description` — description metadata
|
|
57
|
+
|
|
58
|
+
Marker/metadata mixin for content descriptions.
|
|
59
|
+
|
|
60
|
+
### `jmix:tagged` — free-form tagging
|
|
61
|
+
|
|
62
|
+
Adds `j:tagList` (string, multiple) with autocomplete and `j:tags` (weakreference, multiple, hidden/deprecated).
|
|
63
|
+
|
|
64
|
+
```cnd
|
|
65
|
+
[ns:article] > jnt:content, nsmix:component, mix:title, jmix:tagged
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
CND definition:
|
|
69
|
+
```cnd
|
|
70
|
+
[jmix:tagged] mixin
|
|
71
|
+
extends = nt:hierarchyNode, jnt:content, jnt:page
|
|
72
|
+
itemtype = metadata
|
|
73
|
+
- j:tagList (string, tag[autocomplete=10, separator=',']) facetable nofulltext multiple
|
|
74
|
+
- j:tags (weakreference) multiple hidden
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### `jmix:categorized` — category classification
|
|
78
|
+
|
|
79
|
+
Adds `j:defaultCategory` (weakreference, multiple) pointing to taxonomy categories.
|
|
80
|
+
|
|
81
|
+
```cnd
|
|
82
|
+
[ns:article] > jnt:content, nsmix:component, mix:title, jmix:categorized
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
CND definition:
|
|
86
|
+
```cnd
|
|
87
|
+
[jmix:categorized] mixin
|
|
88
|
+
extends = nt:hierarchyNode, jnt:content, jnt:page
|
|
89
|
+
itemtype = classification
|
|
90
|
+
- j:defaultCategory (weakreference, category[autoSelectParent=false]) facetable hierarchical multiple
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### `jmix:keywords` — keyword metadata
|
|
94
|
+
|
|
95
|
+
Marker mixin for keyword support.
|
|
96
|
+
|
|
97
|
+
### `jmix:thumbnail` — thumbnail support
|
|
98
|
+
|
|
99
|
+
Marker mixin for thumbnail images.
|
|
100
|
+
|
|
101
|
+
### `jmix:basemetadata` — standard metadata with versioning
|
|
102
|
+
|
|
103
|
+
Extends `jmix:unversionedBasemetadata`. Adds standard authoring metadata (author, dates, etc.) with versioning support.
|
|
104
|
+
|
|
105
|
+
### `jmix:unversionedBasemetadata` — standard metadata without versioning
|
|
106
|
+
|
|
107
|
+
Includes i18n support. Use `jmix:basemetadata` unless versioning must be excluded.
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## Publication & workflow mixins
|
|
112
|
+
|
|
113
|
+
### `jmix:autoPublish` — automatic live publication
|
|
114
|
+
|
|
115
|
+
Extends `jmix:observable`. Any change to the node is immediately published to the live workspace without going through a workflow.
|
|
116
|
+
|
|
117
|
+
```cnd
|
|
118
|
+
[ns:config] > jnt:content, jmix:hiddenType, jmix:autoPublish
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### `jmix:publication` — independent publication
|
|
122
|
+
|
|
123
|
+
Marker mixin. Enables a node to be published independently of its parent.
|
|
124
|
+
|
|
125
|
+
### `jmix:nolive` — prevent live publication
|
|
126
|
+
|
|
127
|
+
Marker mixin. Node is never published to the live workspace (e.g. draft-only content).
|
|
128
|
+
|
|
129
|
+
### `jmix:workflow` — workflow tracking
|
|
130
|
+
|
|
131
|
+
Adds `j:processId` (string, multiple, protected, hidden). Tracks active workflow processes. Do not extend manually — Jahia applies it during workflow execution.
|
|
132
|
+
|
|
133
|
+
### `jmix:noImportExport` — exclude from import/export
|
|
134
|
+
|
|
135
|
+
Marker mixin. Node is skipped during content import/export operations.
|
|
136
|
+
|
|
137
|
+
### `jmix:lastPublished` — publication timestamp tracking
|
|
138
|
+
|
|
139
|
+
Marker mixin for tracking last publication date.
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## Access control & visibility mixins
|
|
144
|
+
|
|
145
|
+
### `jmix:accessControlled` — node-level ACL
|
|
146
|
+
|
|
147
|
+
Adds a `j:acl` child node (jnt:acl, mandatory, autocreated). Enables fine-grained ACL management on a specific node. Usually inherited via `jmix:accessControllableContent` — do not add directly unless you need ACL on a non-content node.
|
|
148
|
+
|
|
149
|
+
### `jmix:requiredPermissions` — permission-based rendering
|
|
150
|
+
|
|
151
|
+
Controls whether a component renders based on the visitor's login state or role.
|
|
152
|
+
|
|
153
|
+
```cnd
|
|
154
|
+
[ns:memberOnly] > jnt:content, nsmix:component, jmix:requiredPermissions
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
Properties:
|
|
158
|
+
```cnd
|
|
159
|
+
[jmix:requiredPermissions] mixin
|
|
160
|
+
extends = jnt:content, jnt:area, jnt:mainResourceDisplay
|
|
161
|
+
itemtype = permissions
|
|
162
|
+
- j:requireLoggedUser (boolean)
|
|
163
|
+
- j:requirePrivilegedUser (boolean)
|
|
164
|
+
- j:requiredMode (string, choicelist[renderModes]) nofulltext
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
### `jmix:lockable` — node locking
|
|
168
|
+
|
|
169
|
+
Marker mixin. Enables JCR locking on a node.
|
|
170
|
+
|
|
171
|
+
### `jmix:conditionalVisibility` — conditional visibility rules
|
|
172
|
+
|
|
173
|
+
Marker mixin. Enables conditional visibility configuration (by date range, segment, etc.) in Page Builder.
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## Rendering & template mixins
|
|
178
|
+
|
|
179
|
+
### `jmix:mainResource` — full-page content types only
|
|
180
|
+
|
|
181
|
+
Makes a node accessible at its own URL. Use **only** for content that needs both a listing card AND a detail page (e.g. blog posts, team members, events). Do not add to navigation or visual composition types.
|
|
182
|
+
|
|
183
|
+
```cnd
|
|
184
|
+
[ns:blogPost] > jnt:content, mix:title, jmix:mainResource, nsmix:component
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### `jmix:renderableMainResource` — specify main resource view
|
|
188
|
+
|
|
189
|
+
Adds `j:mainResourceView` (string) to select which view template renders the detail page.
|
|
190
|
+
|
|
191
|
+
```cnd
|
|
192
|
+
[jmix:renderableMainResource] mixin
|
|
193
|
+
- j:mainResourceView (string, choicelist[templates=mainresource, resourceBundle, image]) nofulltext
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
### `jmix:renderable` — renderable content
|
|
197
|
+
|
|
198
|
+
Marker mixin for content that can be rendered.
|
|
199
|
+
|
|
200
|
+
### `jmix:hasTemplateNode` — template node association
|
|
201
|
+
|
|
202
|
+
Marker mixin. Associates a node with a specific template node.
|
|
203
|
+
|
|
204
|
+
### `jmix:canBeUseAsTemplateModel` — template model
|
|
205
|
+
|
|
206
|
+
Marker mixin. Enables the node type to be used as a template model.
|
|
207
|
+
|
|
208
|
+
### `jmix:createdFromPageModel` — page model origin
|
|
209
|
+
|
|
210
|
+
Marker mixin. Tracks that a page was created from a page model.
|
|
211
|
+
|
|
212
|
+
### `jmix:templateMixin` — template property inheritance
|
|
213
|
+
|
|
214
|
+
Marker mixin. Enables template-specific property inheritance.
|
|
215
|
+
|
|
216
|
+
### `jmix:dynamicFieldset` — dynamic fieldsets
|
|
217
|
+
|
|
218
|
+
Extends `jmix:templateMixin`. Enables dynamic fieldsets (properties that appear/disappear based on other selections) in the edit UI.
|
|
219
|
+
|
|
220
|
+
### `jmix:theme` — theme support
|
|
221
|
+
|
|
222
|
+
Marker mixin for theming.
|
|
223
|
+
|
|
224
|
+
### `jmix:useUILocale` — UI locale
|
|
225
|
+
|
|
226
|
+
Marker mixin. Renders content using the UI locale rather than the site locale.
|
|
227
|
+
|
|
228
|
+
### `jmix:rbTitle` — resource bundle title
|
|
229
|
+
|
|
230
|
+
Marker mixin. Title comes from a resource bundle key rather than a stored string.
|
|
231
|
+
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## Content organisation & type mixins
|
|
235
|
+
|
|
236
|
+
### `jmix:hiddenType` — hide from Page Builder picker
|
|
237
|
+
|
|
238
|
+
Structural/container types editors should not add manually:
|
|
239
|
+
|
|
240
|
+
```cnd
|
|
241
|
+
[ns:ctaContainer] > jnt:content, jmix:hiddenType orderable
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
**Never use `jmix:studioOnly`** — it causes silent rendering issues.
|
|
245
|
+
|
|
246
|
+
### `jmix:hiddenNode` — hide node from UI
|
|
247
|
+
|
|
248
|
+
Marker mixin. Hides a specific node instance from all UI displays (not the type — the node itself).
|
|
249
|
+
|
|
250
|
+
### `jmix:studioOnly` — studio-only content
|
|
251
|
+
|
|
252
|
+
**Avoid.** Can cause silent rendering issues. Use `jmix:hiddenType` instead.
|
|
253
|
+
|
|
254
|
+
### `jmix:listContent` — list content type
|
|
255
|
+
|
|
256
|
+
Extends `jmix:droppableContent, jmix:accessControllableContent`. Use for droppable list containers.
|
|
257
|
+
|
|
258
|
+
### `jmix:basicContent` — basic content type
|
|
259
|
+
|
|
260
|
+
Extends `jmix:droppableContent, jmix:accessControllableContent`. Base for simple droppable components.
|
|
261
|
+
|
|
262
|
+
### `jmix:structuredContent` — structured content
|
|
263
|
+
|
|
264
|
+
Marker mixin for structured data content types.
|
|
265
|
+
|
|
266
|
+
### `jmix:editorialContent` — editorial content
|
|
267
|
+
|
|
268
|
+
Marker mixin. Identifies content managed editorially.
|
|
269
|
+
|
|
270
|
+
### `jmix:siteContent` — site content
|
|
271
|
+
|
|
272
|
+
Marker mixin. Content scoped to a specific site.
|
|
273
|
+
|
|
274
|
+
### `jmix:socialComponent` — social component
|
|
275
|
+
|
|
276
|
+
Marker mixin for social feature components.
|
|
277
|
+
|
|
278
|
+
### `jmix:multimediaContent` — multimedia content
|
|
279
|
+
|
|
280
|
+
Marker mixin for audio/video content types.
|
|
281
|
+
|
|
282
|
+
### `jmix:layoutComponentContent` — layout component
|
|
283
|
+
|
|
284
|
+
Marker mixin for layout/structural components.
|
|
285
|
+
|
|
286
|
+
### `jmix:siteComponent` — site component
|
|
287
|
+
|
|
288
|
+
Marker mixin for site-level components.
|
|
289
|
+
|
|
290
|
+
### `jmix:formContent` — form content
|
|
291
|
+
|
|
292
|
+
Marker mixin for form-related components.
|
|
293
|
+
|
|
294
|
+
### `jmix:queryContent` — query content
|
|
295
|
+
|
|
296
|
+
Marker mixin for content that runs JCR queries.
|
|
297
|
+
|
|
298
|
+
### `jmix:userProfileComponents` — user profile components
|
|
299
|
+
|
|
300
|
+
Marker mixin for user profile display components.
|
|
301
|
+
|
|
302
|
+
### `jmix:browsableInEditorialPicker` — editorial picker navigation
|
|
303
|
+
|
|
304
|
+
Marker mixin. Makes nodes of this type appear as navigable folders in the editorial content picker UI.
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
## Ordering mixins
|
|
309
|
+
|
|
310
|
+
### `jmix:manuallyOrderable` — manual child ordering
|
|
311
|
+
|
|
312
|
+
Marker mixin. Enables editors to manually reorder child nodes via drag-and-drop.
|
|
313
|
+
|
|
314
|
+
```cnd
|
|
315
|
+
[ns:gallery] > jnt:content, nsmix:component, jmix:manuallyOrderable
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
### `jmix:automaticallyOrderable` — automatic ordering base
|
|
319
|
+
|
|
320
|
+
Marker mixin. Base for types that support automatic ordering.
|
|
321
|
+
|
|
322
|
+
### `jmix:orderedList` — field-based automatic ordering
|
|
323
|
+
|
|
324
|
+
Extends `jmix:automaticallyOrderable`. Adds sort field/direction configuration to a content list.
|
|
325
|
+
|
|
326
|
+
```cnd
|
|
327
|
+
[jmix:orderedList] mixin
|
|
328
|
+
itemtype = listOrdering
|
|
329
|
+
extends = jnt:contentList, jnt:area, jmix:automaticallyOrderable
|
|
330
|
+
- ignoreCase (boolean) = true autocreated
|
|
331
|
+
- firstField (string, choicelist[sortableFieldnames]) indexed=no
|
|
332
|
+
- firstDirection (string, choicelist[resourceBundle]) = 'asc' autocreated indexed=no < 'asc','desc'
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
---
|
|
336
|
+
|
|
337
|
+
## Internationalisation & search
|
|
338
|
+
|
|
339
|
+
### `jmix:i18n` — multilingual node support
|
|
340
|
+
|
|
341
|
+
Adds `j:invalidLanguages` (string, multiple) and child `jnt:translation` nodes. Jahia automatically applies this when a property is declared `i18n` — you do not extend it manually.
|
|
342
|
+
|
|
343
|
+
```cnd
|
|
344
|
+
[jmix:i18n] mixin
|
|
345
|
+
- j:invalidLanguages (string) multiple nofulltext hidden
|
|
346
|
+
+ * (jnt:translation)
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
### `jmix:searchable` — search indexing
|
|
350
|
+
|
|
351
|
+
Marker mixin. Identifies nodes that should be discoverable via search.
|
|
352
|
+
|
|
353
|
+
---
|
|
354
|
+
|
|
355
|
+
## File & document mixins
|
|
356
|
+
|
|
357
|
+
### `jmix:image` — image type constraint
|
|
358
|
+
|
|
359
|
+
Use as a constraint on image weakreference properties:
|
|
360
|
+
|
|
361
|
+
```cnd
|
|
362
|
+
- backgroundImage (weakreference, picker[type='image']) < jmix:image
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
**Never use `< 'jnt:file'`** — it does not enforce image type correctly.
|
|
366
|
+
|
|
367
|
+
**Never declare `imageAlt (string) i18n`** alongside an image weakreference. Use the image node's `jcr:title` as alt text:
|
|
368
|
+
|
|
369
|
+
```tsx
|
|
370
|
+
const imageAlt = props.image?.getPropertyAsString("jcr:title") ?? "";
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
### `jmix:document` — document metadata
|
|
374
|
+
|
|
375
|
+
Metadata mixin for documents (page count, word count, etc.).
|
|
376
|
+
|
|
377
|
+
### `jmix:exif` — EXIF image data
|
|
378
|
+
|
|
379
|
+
Adds EXIF metadata properties to image file nodes.
|
|
380
|
+
|
|
381
|
+
### `jmix:photo` — photo properties
|
|
382
|
+
|
|
383
|
+
Photo-specific metadata mixin.
|
|
384
|
+
|
|
385
|
+
### `jmix:size` — width/height properties
|
|
386
|
+
|
|
387
|
+
Adds height and width properties.
|
|
388
|
+
|
|
389
|
+
### `jmix:extension` — file extension marker
|
|
390
|
+
|
|
391
|
+
Marker mixin for file type extension tracking.
|
|
392
|
+
|
|
393
|
+
---
|
|
394
|
+
|
|
395
|
+
## Link & reference mixins
|
|
396
|
+
|
|
397
|
+
### `jmix:link` — built-in link type
|
|
398
|
+
|
|
399
|
+
Provides `j:linkType`, `j:linknode`, `j:url`, `j:linkTitle`. Extend this mixin for types that need link behaviour without declaring `j:linkType` directly.
|
|
400
|
+
|
|
401
|
+
### `jmix:nodeReference` — node reference support
|
|
402
|
+
|
|
403
|
+
Marker mixin for types that reference other nodes.
|
|
404
|
+
|
|
405
|
+
### `jmix:referencesInField` — field-level references
|
|
406
|
+
|
|
407
|
+
Marker mixin. Enables reference tracking at the field level.
|
|
408
|
+
|
|
409
|
+
### `jmix:bindedComponent` — component binding
|
|
410
|
+
|
|
411
|
+
Marker mixin for components bound to other components.
|
|
412
|
+
|
|
413
|
+
### `jmix:externalReference` — external references
|
|
414
|
+
|
|
415
|
+
Marker mixin for types referencing external (non-JCR) resources.
|
|
416
|
+
|
|
417
|
+
---
|
|
418
|
+
|
|
419
|
+
## Navigation mixins
|
|
420
|
+
|
|
421
|
+
### `jmix:navMenu` — navigation menu
|
|
422
|
+
|
|
423
|
+
Marker mixin for navigation menu containers.
|
|
424
|
+
|
|
425
|
+
### `jmix:navMenuItem` — navigation menu item
|
|
426
|
+
|
|
427
|
+
Marker mixin for individual navigation menu entries.
|
|
428
|
+
|
|
429
|
+
### `jmix:visibleInPagesTree` — pages tree visibility
|
|
430
|
+
|
|
431
|
+
Marker mixin. Makes nodes visible in the pages tree navigation.
|
|
432
|
+
|
|
433
|
+
### `jmix:visibleInContentTree` — content tree visibility
|
|
434
|
+
|
|
435
|
+
Marker mixin. Makes nodes visible in the content tree navigation.
|
|
436
|
+
|
|
437
|
+
---
|
|
438
|
+
|
|
439
|
+
## Caching & performance mixins
|
|
440
|
+
|
|
441
|
+
### `jmix:cache` — cache configuration
|
|
442
|
+
|
|
443
|
+
Marker mixin for configuring component-level caching behaviour.
|
|
444
|
+
|
|
445
|
+
---
|
|
446
|
+
|
|
447
|
+
## System & structural mixins (do not extend unless building infrastructure)
|
|
448
|
+
|
|
449
|
+
| Mixin | Purpose |
|
|
450
|
+
|---|---|
|
|
451
|
+
| `jmix:nodenameInfo` | System node identification marker |
|
|
452
|
+
| `jmix:systemNode` | System node marker |
|
|
453
|
+
| `jmix:observable` | Event-based monitoring (observable pattern) |
|
|
454
|
+
| `jmix:list` | Identifies container/collection nodes |
|
|
455
|
+
| `jmix:isAreaList` | Area list marker |
|
|
456
|
+
| `jmix:shareable` | Shareable content (shared nodes across paths) |
|
|
457
|
+
| `jmix:unstructured` | Unstructured content (accepts any child) |
|
|
458
|
+
| `jmix:hasIcon` | Icon support |
|
|
459
|
+
| `jmix:systemNameReadonly` | Prevents renaming via UI |
|
|
460
|
+
| `jmix:blockUiMove` | Prevents drag-move in UI |
|
|
461
|
+
| `jmix:skipConstraintCheck` | Bypasses node type constraint checks |
|
|
462
|
+
| `jmix:contributeMode` | Contribute mode support |
|
|
463
|
+
| `jmix:listRestrictions` | List restrictions configuration |
|
|
464
|
+
| `jmix:studioLayout` | Studio layout marker |
|
|
465
|
+
| `jmix:listedInRestrictions` | Listed-in-restrictions marker |
|
|
466
|
+
| `jmix:markedForDeletion` | Deletion marker (internal) |
|
|
467
|
+
| `jmix:markedForDeletionRoot` | Deletion root marker (internal) |
|
|
468
|
+
| `jmix:autoSplitFolders` | Auto-splits folders when child count is high |
|
|
469
|
+
| `jmix:hideDeleteAction` | Hides delete action in UI |
|
|
470
|
+
| `jmix:htmlSettings` | HTML settings |
|
|
471
|
+
| `jmix:viewProperties` | View properties |
|
|
472
|
+
| `jmix:mockupStyle` | Mockup styling |
|
|
473
|
+
| `jmix:requireLicense` | License requirement marker |
|
|
474
|
+
| `jmix:hasExternalProviderExtension` | External provider extension support |
|
|
475
|
+
| `jmix:sourceControl` | Source control integration |
|
|
476
|
+
| `jmix:moduleImportFile` | Module import file marker |
|
|
477
|
+
| `jmix:originWS` | Workspace origin tracking |
|
|
478
|
+
| `jmix:liveProperties` | Live workspace properties |
|
|
479
|
+
| `jmix:deletedChildren` | Deleted children tracking |
|
|
480
|
+
|
|
481
|
+
---
|
|
482
|
+
|
|
483
|
+
## Legacy/compatibility mixins (do not use in new modules)
|
|
484
|
+
|
|
485
|
+
| Mixin | Notes |
|
|
486
|
+
|---|---|
|
|
487
|
+
| `jmix:filemetadata` | Replaced by `jmix:basemetadata` |
|
|
488
|
+
| `jmix:hierarchyNode` | Legacy hierarchy marker |
|
|
489
|
+
| `jmix:collection` | Legacy collection marker |
|
|
490
|
+
| `jmix:usersFolder` | Legacy users folder (extends `nt:base`) |
|
|
491
|
+
| `jmix:groupsFolder` | Legacy groups folder |
|
|
492
|
+
| `jmix:virtualsitesFolder` | Legacy virtual sites folder |
|
|
493
|
+
| `jmix:mountPointFactory` | Mount point factory |
|
|
494
|
+
| `jmix:legacyContent` | Legacy content marker |
|
|
495
|
+
| `jmix:legacyPage` | Legacy page marker |
|
|
496
|
+
| `jmix:legacyFile` | Legacy file marker |
|
|
497
|
+
|
|
498
|
+
---
|
|
499
|
+
|
|
500
|
+
## picker[] selector
|
|
501
|
+
|
|
502
|
+
| Selector | Use |
|
|
503
|
+
|---|---|
|
|
504
|
+
| `picker[type='image']` | Image assets only |
|
|
505
|
+
| `picker[type='file']` | Any file asset |
|
|
506
|
+
|
|
507
|
+
```cnd
|
|
508
|
+
- backgroundImage (weakreference, picker[type='image']) < jmix:image
|
|
509
|
+
- attachment (weakreference, picker[type='file']) < jnt:file
|
|
510
|
+
```
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# CND Content Modeling Decisions
|
|
2
|
+
|
|
3
|
+
## Scale of thumbs
|
|
4
|
+
|
|
5
|
+
A well-scoped module has: **1–4 page templates, 5–10 content types, 2–5 mixins, 1–4 views per type.**
|
|
6
|
+
If a request exceeds this, flag it and split work into sessions.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Semantic vs generic types
|
|
11
|
+
|
|
12
|
+
| Use semantic types for… | Use generic types for… |
|
|
13
|
+
|---|---|
|
|
14
|
+
| Business entities: articles, team members, events | Visual composition: banners, feature rows |
|
|
15
|
+
| Items that appear in listings/collections | One-off sections, layout containers |
|
|
16
|
+
| Content with business logic or user restrictions | Reusable UI blocks without meaning |
|
|
17
|
+
| Content that needs a detail page (`jmix:mainResource`) | |
|
|
18
|
+
|
|
19
|
+
When in doubt, prefer semantic — its evolutions are easier to design.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Weakreference vs children
|
|
24
|
+
|
|
25
|
+
| Use children when… | Use weakreference when… |
|
|
26
|
+
|---|---|
|
|
27
|
+
| Parent is a visual container (CTAs inside a hero) | Internal links (call to action targets, page links) |
|
|
28
|
+
| Children have no life outside the parent | Many-to-many relationships (author ↔ blog post) |
|
|
29
|
+
| Always created together | Content managed/reused elsewhere |
|
|
30
|
+
| Each child has multiple properties (label + link) | Each item is just a reference to an existing node |
|
|
31
|
+
|
|
32
|
+
- Many-to-many = MUST use `weakreference multiple`
|
|
33
|
+
- One-to-many = prefer children when parent is the container
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Mixin vs child node vs inheritance
|
|
38
|
+
|
|
39
|
+
| Use mixin when… | Use child nodes when… | Use inheritance when… |
|
|
40
|
+
|---|---|---|
|
|
41
|
+
| Reusing properties across unrelated types | Multiple instances needed (multiple CTAs) | Retaining original views + adding fields in new views |
|
|
42
|
+
| At most one instance per component | | |
|
|
43
|
+
|
|
44
|
+
**Avoid inheritance in general** — it duplicates types in the editor picker.
|
|
45
|
+
|
|
46
|
+
Never extend anything other than `jnt:content` (or your base mixin). To add fields to a type you don't control, use a mixin with `extends`:
|
|
47
|
+
|
|
48
|
+
```cnd
|
|
49
|
+
[nsmix:morePageFields] mixin extends=jnt:page
|
|
50
|
+
- myField (string) i18n
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## Pages vs jmix:mainResource
|
|
56
|
+
|
|
57
|
+
| Use pages when… | Use jmix:mainResource when… |
|
|
58
|
+
|---|---|
|
|
59
|
+
| Content is a standalone page with no structured data | Content needs both a listing card AND a detail page |
|
|
60
|
+
| No programmatic listing/filtering needed | Content collections (blog posts, events, team members) |
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Common reusable mixin patterns
|
|
65
|
+
|
|
66
|
+
| Mixin name | Properties | When to use |
|
|
67
|
+
|---|---|---|
|
|
68
|
+
| `nsmix:cta` | `label (string) i18n`, `j:linkType (string, choicelist[linkTypeInitializer])` | Any type with a button/link |
|
|
69
|
+
| `nsmix:media` | `image (weakreference, picker[type='image']) < jmix:image` | Any type with an image |
|
|
70
|
+
| `nsmix:seo` | `metaTitle (string) i18n`, `metaDescription (string, textarea) i18n` | Any `jmix:mainResource` type |
|
|
71
|
+
| `nsmix:badge` | `badgeText (string) i18n`, `badgeColor (string, color)` | Cards, teasers |
|
|
72
|
+
|
|
73
|
+
Always extract to a mixin when the same set of properties appears on 2+ types.
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
## Spec template (interactive mode)
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
Component: [PascalCase name]
|
|
81
|
+
Description: [what editors create with this]
|
|
82
|
+
Fields:
|
|
83
|
+
- name: data type, i18n?, mandatory?, multiple?
|
|
84
|
+
Views: [default / card / fullPage / small]
|
|
85
|
+
Used where: [page area / content folder / child of <Parent>]
|
|
86
|
+
Repeatable children: [no / yes: describe]
|
|
87
|
+
```
|
package/dist/claude/.claude/{agents → skills/jahia-cnd-author/references}/cnd-numbers-dates.md
RENAMED
|
@@ -8,7 +8,20 @@
|
|
|
8
8
|
| `double` | Decimal number input | Coordinates, prices, ratios |
|
|
9
9
|
| `boolean` | Checkbox | Feature flags, toggles |
|
|
10
10
|
| `date` | Date picker | ISO 8601 stored, string in TypeScript |
|
|
11
|
-
| `date, datepicker` | Date
|
|
11
|
+
| `date, datepicker` | Date-only picker | Same storage, date-only widget |
|
|
12
|
+
| `date, datetimepicker` | Date + time picker | Use when time precision is needed |
|
|
13
|
+
|
|
14
|
+
## Types to avoid
|
|
15
|
+
|
|
16
|
+
| Avoid | Use instead | Reason |
|
|
17
|
+
|---|---|---|
|
|
18
|
+
| `path` | `weakreference` | weakreference is the preferred reference type |
|
|
19
|
+
| `reference` | `weakreference` | Not properly implemented |
|
|
20
|
+
| `uri` | `string` | No added value |
|
|
21
|
+
| `decimal` | `double` | Use double for decimal numbers |
|
|
22
|
+
| `name` | `string` | JCR node type name; use string instead |
|
|
23
|
+
| `binary` | — | Binary data; rarely needed in practice |
|
|
24
|
+
| `undefined` | — | Unknown type; avoid |
|
|
12
25
|
|
|
13
26
|
## Default values with `autocreated`
|
|
14
27
|
|
|
@@ -20,6 +33,14 @@ Always combine `autocreated` with `= 'value'`:
|
|
|
20
33
|
- country (string, choicelist[country]) = 'US' autocreated mandatory
|
|
21
34
|
```
|
|
22
35
|
|
|
36
|
+
### `date` default — `now()`
|
|
37
|
+
|
|
38
|
+
Use `now()` (no quotes) to default a date to the current time at node creation:
|
|
39
|
+
|
|
40
|
+
```cnd
|
|
41
|
+
- publishDate (date, datepicker) = now() autocreated
|
|
42
|
+
```
|
|
43
|
+
|
|
23
44
|
## Range constraints
|
|
24
45
|
|
|
25
46
|
```cnd
|
|
@@ -51,6 +72,16 @@ Parentheses = exclusive bound, brackets = inclusive. Leave a side empty for open
|
|
|
51
72
|
- campaignDate (date, datepicker) < '(2020-01-01T00:00:00.000,2030-12-31T00:00:00.000)'
|
|
52
73
|
```
|
|
53
74
|
|
|
75
|
+
## `datetimepicker` vs `datepicker`
|
|
76
|
+
|
|
77
|
+
```cnd
|
|
78
|
+
// Date only
|
|
79
|
+
- publishDate (date, datepicker) = now() autocreated
|
|
80
|
+
|
|
81
|
+
// Date + time
|
|
82
|
+
- eventDateTime (date, datetimepicker) i18n mandatory
|
|
83
|
+
```
|
|
84
|
+
|
|
54
85
|
## TypeScript mapping
|
|
55
86
|
|
|
56
87
|
| CND type | TypeScript |
|