Commit Graph

84 Commits

Author SHA1 Message Date
735ec95077 Update templateDetails.xml 2026-03-26 17:42:17 -05:00
0612a181fd feat: add Brand Showcase admin tab with interactive color sampler
New "Brand Showcase" tab in Joomla template configuration embeds
brand-showcase.html — features color system gradients with hover-to-sample
pixel picker, branded nav, typography, buttons, badges, alerts, tables,
forms, cards, accordion, and tabs. Light/dark toggle included.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 17:37:08 -05:00
b25a8f58d8 feat: hero variants, block colors, theme preview tab, CSS var sync on upgrade
- Add .hero#primary / .hero#secondary CSS variant system to template.css
- Add :nth-child() block color palette for top-a/b, bottom-a/b positions
- Add named per-module overrides (#block-highlight, #block-cta, #block-alert)
- Add all hero + block CSS variables to light/dark custom palette templates
- Add theme-test.html with full visual CSS variable reference + color test
- Add "Theme Preview" tab to admin config with embedded iframe of test sheet
- Add script.php install/update script (Joomla 5/6 compatible)
- Add sync_custom_vars.php — detects missing vars in user palettes on upgrade
- Add en-GB and en-US language strings for new admin config fields
- Update CSS_VARIABLES.md and CHANGELOG.md
- Bump version to 03.09.02

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 12:44:46 -05:00
079c4f4a5a Add CSS Variables tab documentation for all promoted Bootstrap components
Add LABEL/DESC language strings (en-US + en-GB) for all 17 Bootstrap
component variable groups now living in the :root theme files:

accordion, alert, badge, backdrop, breadcrumb, dropdown, list-group,
modal, nav-tabs, nav-pills, pagination, popover, progress, spinner,
table, toast, tooltip

Each section documents variables with HTML subheadings (Dimensions,
Colours, Typography, Stacking, Animation) and <code> tags for every
variable name. British English spellings used throughout en-GB.

Adds 34 new lines per language file (17 LABEL + 17 DESC pairs, 80
CSS_VARS_* keys total). XML fields were already present from the
prior migration commit.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 14:03:05 -05:00
b043ccc099 Promote offcanvas variables to :root theme files and document in CSS Variables tab
- Move --offcanvas-* definitions from component-scoped .offcanvas selector in
  template.css into :root[data-bs-theme] blocks in light.standard.css and
  dark.standard.css so they are overridable via user.css at root level
- Fix two bugs in the old definitions: --offcanvas-bg was incorrectly set to
  var(--body-color) (text colour); corrected to var(--body-bg); and
  --offcanvas-color had a spurious 'color:' prefix
- Dark theme uses a heavier box-shadow (0.3 alpha) for better depth perception
- Add css_vars_offcanvas field to templateDetails.xml CSS Variables tab
- Add en-US and en-GB language strings for the new Offcanvas Panel section
- Rebuild all .min CSS files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 22:54:55 -05:00
57b4c3240e Add hero/banner-overlay CSS variables and wire template.css
- Add HERO / BANNER OVERLAY section to light.standard.css and dark.standard.css:
  --hero-height, --hero-color, --hero-bg-repeat, --hero-bg-attachment,
  --hero-bg-position, --hero-bg-size, --hero-border-bottom,
  --hero-overlay-bg (light: 0.1 alpha / dark: 0.3 alpha),
  --hero-overlay-padding, --hero-overlay-text-align, --hero-overlay-text-color
- Replace all hardcoded values in .container-banner .banner-overlay and
  .overlay with var() references (with fallbacks)
- Fix background-position: comma syntax → correct space-separated single-bg value
- Add css_vars_hero note field to CSS Variables tab in templateDetails.xml
- Add TPL_MOKOCASSIOPEIA_CSS_VARS_HERO_LABEL/DESC to en-US and en-GB
- Regenerate .min files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:51:09 -05:00
f0e7ccac6d Add minify build script and generate .min CSS/JS; rename position to brand-aside
Build tooling:
- Add package.json with clean-css and terser dev dependencies
- Add scripts/minify.js: reads joomla.asset.json, auto-detects source/.min
  pairs, and minifies all template-owned CSS and JS files
- Add node_modules/ to .gitignore

Generated .min files (all 6 manifest pairs):
- css/template.min.css      (17.8% saved)
- css/editor.min.css        (49.4% saved)
- css/theme/light.standard.min.css  (13.1% saved)
- css/theme/dark.standard.min.css   (14.4% saved)
- js/template.min.js        (58.2% saved)
- js/gtm.min.js             (62.3% saved)

Rename: header-aside → brand-aside (position, CSS class, language keys)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:22:09 -05:00
f0de3bf342 Add header-aside module position to the right of the logo
- New position renders inside .header-brand-wrap, right-aligned via
  margin-inline-start: auto on .container-header-aside
- CSS: .header-brand-wrap uses flexbox so logo stays left, aside floats right
- Registered in templateDetails.xml positions list
- Language strings added to both en-US and en-GB sys.ini files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:16:39 -05:00
9a1269797a Add Google Search Console verification and ensure all Google services coexist
- Add googlesitekey param to Google fieldset in templateDetails.xml
- Inject <meta name="google-site-verification"> via setMetaData() in
  index.php, component.php, and offline.php
- GTM, GA, and Search Console verification can now all be active simultaneously
- Add language strings for new field in en-US and en-GB

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:14:00 -05:00
53ad226a51 Expand CSS Variables tab to full variable reference and add custom-hero class
- Replace 8-field CSS Variables tab with 21 comprehensive sections covering
  all variables from light.standard.css and dark.standard.css
- New sections: Links, Layout & Spacing, Breakpoints, Bootstrap Semantic
  Palette, Bootstrap State Colors, Alert & List Group Colors, Standard
  Colors/Grays/Opacity, Shadows & Shadow Tokens, Buttons, Cards,
  Component & Plugin Colors, VirtueMart, Gable
- Add custom-hero class to hero.php outer div (always present)
- Both en-GB and en-US language files updated

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 20:01:42 -05:00
e6a0a0a81e Add CSS Variables reference tab to template options
Adds a new 'CSS Variables' tab to the template configuration with eight
documented sections (brand, typography, navigation, header background,
container backgrounds, borders/shadows, forms/focus) so site builders
can reference all available custom properties without leaving Joomla admin.

Also removes external docs links from descriptions in templateDetails.xml
and both language files, replacing them with a pointer to the new tab.
Fixes stale custom palette source paths in en-GB and en-US ini files.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:43:31 -05:00
fdd0d3ff51 Ship custom palette starters and update template description
- Add src/templates/light.custom.css and dark.custom.css as starter
  palette files that ship with the template, giving users a full
  variable reference to copy and customise
- Register src/templates/ folder in templateDetails.xml <files>
- Update <description> in templateDetails.xml: correct palette source
  paths, add Custom CSS & JavaScript section (user.css / user.js),
  link docs to GitHub repo docs/ directory
- Sync en-GB and en-US tpl_mokocassiopeia.sys.ini with same changes,
  preserving British/American spelling variants; bump version to 03.09.01

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:30:06 -05:00
40cce64afc Add mod_custom hero layout override and bump version to 03.09.01
Adds src/html/mod_custom/hero.php — a banner-overlay style template
override for mod_custom, mirroring Cassiopeia's banner layout pattern.
Includes background image support via WebAssetManager and respects the
Module Manager's moduleclass_sfx field.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 18:55:43 -05:00
e0697a18d0 Update templateDetails.xml 2026-03-08 13:22:09 -05:00
2b7a2cfd1f Update templateDetails.xml 2026-03-08 13:21:31 -05:00
copilot-swe-agent[bot]
c4e8306d1b Update all documentation references to new custom palette naming
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-08 00:56:17 +00:00
copilot-swe-agent[bot]
eb5f718039 Changes before error encountered
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-08 00:24:05 +00:00
copilot-swe-agent[bot]
af1f18e720 Migrate colors directory to theme with consistent naming convention
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-08 00:21:10 +00:00
copilot-swe-agent[bot]
8159b134a5 Address final code review feedback
- Add setup notes to font CSS files about required downloads
- Restore alert-warning class for font note (important setup info)
- Fix alignment in success message border

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-07 20:53:18 +00:00
copilot-swe-agent[bot]
34057518c8 Remove Google Fonts CDN dependencies
- Update templateDetails.xml to use local font CSS files only
- Add Noto Sans and Fira Sans as local font options
- Remove Google Fonts CDN preconnect links from index.php
- Remove Google Fonts CDN preconnect links from component.php
- Remove Google Fonts CDN preconnect link from offline.php

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-07 20:43:39 +00:00
copilot-swe-agent[bot]
81b46db3dd Hardcode XML description in templateDetails.xml instead of using language constant
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 08:11:56 +00:00
copilot-swe-agent[bot]
f910e1e704 Fix language file installation paths in templateDetails.xml
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 08:07:30 +00:00
copilot-swe-agent[bot]
82427e18ca Restructure language files - move .sys.ini and .ini to same folders
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:56:01 +00:00
copilot-swe-agent[bot]
0ad1f4d77b Fix: Add language and administrator folders to templateDetails.xml files section
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:46:26 +00:00
copilot-swe-agent[bot]
bb3636a232 Fix: Correct administrator folder attribute to just "administrator"
The folder attribute should specify the base destination directory, not the
full path. Changed from folder="administrator/language" to folder="administrator"
while keeping the full source path in the language tags.

This follows Joomla's standard where:
- folder="administrator" = base destination in Joomla
- path includes full source structure from template root
- Result: files install to JOOMLA_ROOT/administrator/language/en-GB/

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:38:56 +00:00
copilot-swe-agent[bot]
8e8da2636f Fix: Correct language file paths to be relative to template root
The paths in <language> tags must be relative to the template source root
(src/), not relative to the folder attribute. The folder attribute specifies
the DESTINATION in Joomla, but file paths must point to actual source files.

Corrected paths:
- Frontend: language/en-GB/tpl_mokocassiopeia.ini (was: en-GB/...)
- Backend: administrator/language/en-GB/tpl_mokocassiopeia.sys.ini (was: en-GB/...)

This ensures Joomla can find and install the language files correctly.

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:38:15 +00:00
copilot-swe-agent[bot]
38a8b73703 Fix: Remove language and administrator folders from files section
Language files should only be declared in <languages> sections, not in
<files> section. Having them in <files> causes Joomla to copy them to
the template directory instead of the proper Joomla language directories,
resulting in language constants showing instead of translations.

Removed:
- <folder>language</folder>
- <folder>administrator</folder>

The <languages> sections (lines 89-97) properly handle installation of
language files to Joomla's language directories where they can be loaded.

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:36:57 +00:00
copilot-swe-agent[bot]
2f2e461ec1 Fix: Add language and administrator folders to templateDetails.xml
Language files were not being installed because the folders weren't
listed in the <files> section. Added <folder>language</folder> and
<folder>administrator</folder> to ensure language files are packaged
and installed correctly.

Fixes language not working on install issue.

Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
2026-03-01 07:30:07 +00:00
06df7bb604 Reorganization 2026-03-01 01:15:39 -06:00
07a3793677 Delete templateDetails.xml 2025-12-16 20:41:43 -06:00
5c4ac4e4aa Update templateDetails.xml 2025-12-16 20:31:17 -06:00
github-actions[bot]
02619fdb3c chore(release): bump version to 03.01.00 2025-12-16 23:49:59 +00:00
066e15f954 Version fix 2025-12-16 16:51:58 -06:00
94f3c457ec Reorganization 2025-12-16 15:15:36 -06:00