@qwickapps/react-framework 1.6.0 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/dist/components/Scaffold.d.ts +2 -2
  2. package/dist/components/Scaffold.d.ts.map +1 -1
  3. package/dist/contexts/QwickAppContext.d.ts +1 -1
  4. package/dist/contexts/QwickAppContext.d.ts.map +1 -1
  5. package/dist/index.css +1 -1
  6. package/dist/index.esm.css +1 -1
  7. package/dist/index.esm.js +45 -5
  8. package/dist/index.js +45 -4
  9. package/dist/palettes/PaletteBoutique.d.ts +10 -0
  10. package/dist/palettes/PaletteBoutique.d.ts.map +1 -0
  11. package/dist/palettes/index.d.ts +1 -0
  12. package/dist/palettes/index.d.ts.map +1 -1
  13. package/dist/palettes/manifest.json +33 -19
  14. package/dist/palettes/{palette-autumn.1.6.0.css → palette-autumn.1.7.0.css} +3 -1
  15. package/dist/palettes/palette-autumn.1.7.0.min.css +1 -0
  16. package/dist/palettes/palette-autumn.latest.css +3 -1
  17. package/dist/palettes/palette-autumn.latest.min.css +1 -1
  18. package/dist/palettes/palette-boutique.1.7.0.css +176 -0
  19. package/dist/palettes/palette-boutique.1.7.0.min.css +1 -0
  20. package/dist/palettes/palette-boutique.latest.css +176 -0
  21. package/dist/palettes/palette-boutique.latest.min.css +1 -0
  22. package/dist/palettes/{palette-cosmic.1.6.0.css → palette-cosmic.1.7.0.css} +3 -1
  23. package/dist/palettes/palette-cosmic.1.7.0.min.css +1 -0
  24. package/dist/palettes/palette-cosmic.latest.css +3 -1
  25. package/dist/palettes/palette-cosmic.latest.min.css +1 -1
  26. package/dist/palettes/{palette-ocean.1.6.0.css → palette-ocean.1.7.0.css} +3 -1
  27. package/dist/palettes/palette-ocean.1.7.0.min.css +1 -0
  28. package/dist/palettes/palette-ocean.latest.css +3 -1
  29. package/dist/palettes/palette-ocean.latest.min.css +1 -1
  30. package/dist/palettes/{palette-spring.1.6.0.css → palette-spring.1.7.0.css} +3 -1
  31. package/dist/palettes/palette-spring.1.7.0.min.css +1 -0
  32. package/dist/palettes/palette-spring.latest.css +3 -1
  33. package/dist/palettes/palette-spring.latest.min.css +1 -1
  34. package/dist/palettes/{palette-winter.1.6.0.css → palette-winter.1.7.0.css} +3 -1
  35. package/dist/palettes/palette-winter.1.7.0.min.css +1 -0
  36. package/dist/palettes/palette-winter.latest.css +3 -1
  37. package/dist/palettes/palette-winter.latest.min.css +1 -1
  38. package/dist/schemas/transformers/ComponentTransformer.d.ts +1 -0
  39. package/dist/schemas/transformers/ComponentTransformer.d.ts.map +1 -1
  40. package/package.json +2 -1
  41. package/src/components/QwickApp.css +22 -0
  42. package/src/components/Scaffold.css +5 -0
  43. package/src/components/Scaffold.tsx +5 -3
  44. package/src/contexts/QwickAppContext.tsx +1 -1
  45. package/src/palettes/PaletteAutumn.css +3 -1
  46. package/src/palettes/PaletteBoutique.css +176 -0
  47. package/src/palettes/PaletteBoutique.ts +16 -0
  48. package/src/palettes/PaletteCosmic.css +3 -1
  49. package/src/palettes/PaletteOcean.css +3 -1
  50. package/src/palettes/PaletteSpring.css +3 -1
  51. package/src/palettes/PaletteWinter.css +3 -1
  52. package/src/palettes/index.ts +3 -0
  53. package/src/palettes/manifest.json +12 -1
  54. package/src/schemas/transformers/ComponentTransformer.ts +32 -2
  55. package/dist/palettes/palette-autumn.1.6.0.min.css +0 -1
  56. package/dist/palettes/palette-cosmic.1.6.0.min.css +0 -1
  57. package/dist/palettes/palette-ocean.1.6.0.min.css +0 -1
  58. package/dist/palettes/palette-spring.1.6.0.min.css +0 -1
  59. package/dist/palettes/palette-winter.1.6.0.min.css +0 -1
  60. /package/dist/palettes/{palette-default.1.6.0.css → palette-default.1.7.0.css} +0 -0
  61. /package/dist/palettes/{palette-default.1.6.0.min.css → palette-default.1.7.0.min.css} +0 -0
package/dist/index.esm.js CHANGED
@@ -1272,6 +1272,18 @@ const PaletteAutumn = {
1272
1272
  primaryColor: '#ea580c'
1273
1273
  };
1274
1274
 
1275
+ /**
1276
+ * Boutique Palette Configuration
1277
+ *
1278
+ * Copyright (c) 2025 QwickApps.com. All rights reserved.
1279
+ */
1280
+ const PaletteBoutique = {
1281
+ id: 'boutique',
1282
+ name: 'Boutique',
1283
+ description: 'Sophisticated teal, bronze, and navy - perfect for premium retail and fashion brands',
1284
+ primaryColor: '#3ca6b6'
1285
+ };
1286
+
1275
1287
  /**
1276
1288
  * Ocean Palette Configuration
1277
1289
  *
@@ -1325,7 +1337,7 @@ const PaletteCosmic = {
1325
1337
  *
1326
1338
  * Copyright (c) 2025 QwickApps.com. All rights reserved.
1327
1339
  */
1328
- const AllPalettes = [PaletteDefault, PaletteOcean, PaletteCosmic, PaletteWinter, PaletteAutumn, PaletteSpring];
1340
+ const AllPalettes = [PaletteDefault, PaletteBoutique, PaletteOcean, PaletteCosmic, PaletteWinter, PaletteAutumn, PaletteSpring];
1329
1341
 
1330
1342
  /**
1331
1343
  * Persistence utilities for theme and palette preferences
@@ -18493,6 +18505,20 @@ class ReactNodeTransformer {
18493
18505
  *
18494
18506
  * Copyright (c) 2025 QwickApps.com. All rights reserved.
18495
18507
  */
18508
+ // Import linkedom for server-side HTML parsing
18509
+ let parseHTML = null;
18510
+ if (typeof window === 'undefined') {
18511
+ // Server-side: use linkedom
18512
+ try {
18513
+ const {
18514
+ parseHTML: parse
18515
+ } = require('linkedom');
18516
+ parseHTML = html => parse(html).document;
18517
+ } catch (e) {
18518
+ // linkedom not available, will fall back to client-only rendering
18519
+ console.warn('linkedom not available for SSR HTML parsing');
18520
+ }
18521
+ }
18496
18522
  /**
18497
18523
  * Registry for component classes that support serialization
18498
18524
  */
@@ -18801,13 +18827,27 @@ let ComponentTransformer$1 = class ComponentTransformer {
18801
18827
  }
18802
18828
  /**
18803
18829
  * Transform HTML string to React nodes using registered patterns
18830
+ * Supports both server-side (linkedom) and client-side (DOMParser) rendering
18804
18831
  * @param html - HTML string to transform
18805
18832
  * @returns Array of React nodes
18806
18833
  */
18807
18834
  static transformHTML(html) {
18808
18835
  if (!html.trim()) return [];
18809
- const parser = new DOMParser();
18810
- const doc = parser.parseFromString(html, 'text/html');
18836
+ let doc;
18837
+ // Server-side: use linkedom if available
18838
+ if (typeof window === 'undefined') {
18839
+ if (parseHTML) {
18840
+ doc = parseHTML(html);
18841
+ } else {
18842
+ // linkedom not available, return empty for client-side rendering
18843
+ console.warn('SSR HTML parsing unavailable - content will render client-side only');
18844
+ return [];
18845
+ }
18846
+ } else {
18847
+ // Client-side: use DOMParser
18848
+ const parser = new DOMParser();
18849
+ doc = parser.parseFromString(html, 'text/html');
18850
+ }
18811
18851
  return Array.from(doc.body.children).map((element, index) => ComponentTransformer.transformElement(element, `element-${index}`));
18812
18852
  }
18813
18853
  /**
@@ -24552,7 +24592,7 @@ const Scaffold = ({
24552
24592
  className: "appbar-right",
24553
24593
  children: [enhancedAppBar?.actions && jsx("div", {
24554
24594
  className: "appbar-actions",
24555
- children: enhancedAppBar.actions
24595
+ children: typeof enhancedAppBar.actions === 'function' ? enhancedAppBar.actions() : enhancedAppBar.actions
24556
24596
  }, "appbar-actions"), jsxs("div", {
24557
24597
  className: "appbar-theme-controls",
24558
24598
  children: [showThemeSwitcher && jsx(ThemeSwitcher, {}, "theme-switcher"), showPaletteSwitcher && jsx(PaletteSwitcher, {}, "palette-switcher")]
@@ -33432,4 +33472,4 @@ __decorate([Field({
33432
33472
  }), IsOptional(), __metadata("design:type", Boolean)], PageTemplateSchema.prototype, "indexable", void 0);
33433
33473
  PageTemplateSchema = __decorate([Schema('PageTemplate', '1.0.0')], PageTemplateSchema);
33434
33474
 
33435
- export { AVAILABLE_PALETTES, AccessibilityProvider, ActionModel, ActionType, AllPalettes, AppConfig, AppConfigBuilder, Article, ArticleModel, Breadcrumbs, Button, Captcha, CaptchaModel, CardListGrid, CardListGridModel, ChoiceInputField, ChoiceInputFieldModel, Code, CodeModel, CollapsibleLayout, CollapsibleLayoutView, ComponentTransformer$1 as ComponentTransformer, Container$8 as Container, Content, ContentModel, CoverImageHeader, CoverImageHeaderModel, DataProvider, DataProxy, DataTable, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle, DimensionsProvider, ErrorBoundary, FeatureCard, FeatureCardActionModel, FeatureCardModel, FeatureGrid, FeatureGridModel, FeatureItemModel, Footer, FooterItemModel, FooterModel, FooterSectionModel, FormBlock, FormBlockModel, FormCheckbox, FormCheckboxModel, FormField, FormFieldModel, FormMethod, FormPage, FormSelect, FormSelectModel, GalleryImageModel, GridCell, GridCellModel, GridLayout, GridLayoutModel, HeaderActionModel, HeroBlock, HeroBlockModel, Html, HtmlInputField, HtmlModel, Image, ImageGallery, ImageGalleryModel, ImageModel, Logo, Markdown, MarkdownModel, MetadataItemModel, ModelView, NavigationProvider, OptionSelector, OptionSelectorModel, Page, PageBannerHeader, PageBannerHeaderModel, PageTemplateSchema, PaletteAutumn, PaletteCosmic, PaletteDefault, PaletteOcean, PaletteProvider, PaletteSpring, PaletteSwitcher, PaletteSwitcherModel, PaletteWinter, PrintConfigSchema, PrintModeProvider, ProductCard, ProductCardActionModel, ProductCardModel, ProductLogo, ProductModel, QWICKAPP_COMPONENT, QwickApp, QwickAppsLogo, QwickIcon, ResponsiveMenu, SafeSpan, SafeSpanModel, Scaffold, SchemaFormRenderer, Section, SectionModel, SelectInputField, SelectOptionModel, StatCard, SwitchInputField, T, Text$1 as Text, TextField, TextInputField, TextInputFieldModel, TextModel, ThemeProvider, ThemeSwitcher, ThemeSwitcherModel, ViewSchema, animationConfigs, applyCustomPalette, clearManifestCache, clearPaletteCache, clearUserPalettePreference, clearUserThemePreference, configurePaletteLoader, createAppConfig, createModelViewClass, createPaletteFromCurrentTheme, createSerializableView, defaultCollapsibleLayoutProps, deleteCustomPalette, exportPalette, extractTextFromReactNode, getAvailablePalettes, getCSSVariable, getComputedTheme, getCurrentPalette, getCurrentTheme, getCustomPalettes, getIconComponent, getIconEmoji, getLogger, getPaletteConfig, getPaletteFromManifest, getPaletteName, getRegisteredIcons, getSystemTheme, getThemePerformanceStats, hasIcon, iconMap, importPalette, initializePalette, initializeTheme, isCollapsibleLayoutProps, isPaletteLoaded, loadPalette, loadPaletteManifest, loadUserPalettePreference, loadUserThemePreference, logThemePerformanceStats, loggers, preloadPalettes, registerCustomPalette, registerIcon, resetThemePerformanceStats, resolveDimension, resolveDimensions, resolveSpacing, resolveSpacingProps, saveCustomPalette, savePalettePreference, saveThemePreference, saveUserPalettePreference, saveUserThemePreference, setCSSVariable, setPalette, setTheme, spacingConfigs, t, toCssLength, useAccessibility, useBaseProps, useBreadcrumbs, useCollapsibleState, useData, useDataBinding, useDataContext, useDataProvider, useDimensions, useNavigation, usePageContext, usePalette, usePrintMode$1 as usePrintMode, usePrintMode as usePrintModeHook, useQwickApp, useResolveTemplate, useTemplate, useTheme, withAccessibility, withErrorBoundary };
33475
+ export { AVAILABLE_PALETTES, AccessibilityProvider, ActionModel, ActionType, AllPalettes, AppConfig, AppConfigBuilder, Article, ArticleModel, Breadcrumbs, Button, Captcha, CaptchaModel, CardListGrid, CardListGridModel, ChoiceInputField, ChoiceInputFieldModel, Code, CodeModel, CollapsibleLayout, CollapsibleLayoutView, ComponentTransformer$1 as ComponentTransformer, Container$8 as Container, Content, ContentModel, CoverImageHeader, CoverImageHeaderModel, DataProvider, DataProxy, DataTable, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle, DimensionsProvider, ErrorBoundary, FeatureCard, FeatureCardActionModel, FeatureCardModel, FeatureGrid, FeatureGridModel, FeatureItemModel, Footer, FooterItemModel, FooterModel, FooterSectionModel, FormBlock, FormBlockModel, FormCheckbox, FormCheckboxModel, FormField, FormFieldModel, FormMethod, FormPage, FormSelect, FormSelectModel, GalleryImageModel, GridCell, GridCellModel, GridLayout, GridLayoutModel, HeaderActionModel, HeroBlock, HeroBlockModel, Html, HtmlInputField, HtmlModel, Image, ImageGallery, ImageGalleryModel, ImageModel, Logo, Markdown, MarkdownModel, MetadataItemModel, ModelView, NavigationProvider, OptionSelector, OptionSelectorModel, Page, PageBannerHeader, PageBannerHeaderModel, PageTemplateSchema, PaletteAutumn, PaletteBoutique, PaletteCosmic, PaletteDefault, PaletteOcean, PaletteProvider, PaletteSpring, PaletteSwitcher, PaletteSwitcherModel, PaletteWinter, PrintConfigSchema, PrintModeProvider, ProductCard, ProductCardActionModel, ProductCardModel, ProductLogo, ProductModel, QWICKAPP_COMPONENT, QwickApp, QwickAppsLogo, QwickIcon, ResponsiveMenu, SafeSpan, SafeSpanModel, Scaffold, SchemaFormRenderer, Section, SectionModel, SelectInputField, SelectOptionModel, StatCard, SwitchInputField, T, Text$1 as Text, TextField, TextInputField, TextInputFieldModel, TextModel, ThemeProvider, ThemeSwitcher, ThemeSwitcherModel, ViewSchema, animationConfigs, applyCustomPalette, clearManifestCache, clearPaletteCache, clearUserPalettePreference, clearUserThemePreference, configurePaletteLoader, createAppConfig, createModelViewClass, createPaletteFromCurrentTheme, createSerializableView, defaultCollapsibleLayoutProps, deleteCustomPalette, exportPalette, extractTextFromReactNode, getAvailablePalettes, getCSSVariable, getComputedTheme, getCurrentPalette, getCurrentTheme, getCustomPalettes, getIconComponent, getIconEmoji, getLogger, getPaletteConfig, getPaletteFromManifest, getPaletteName, getRegisteredIcons, getSystemTheme, getThemePerformanceStats, hasIcon, iconMap, importPalette, initializePalette, initializeTheme, isCollapsibleLayoutProps, isPaletteLoaded, loadPalette, loadPaletteManifest, loadUserPalettePreference, loadUserThemePreference, logThemePerformanceStats, loggers, preloadPalettes, registerCustomPalette, registerIcon, resetThemePerformanceStats, resolveDimension, resolveDimensions, resolveSpacing, resolveSpacingProps, saveCustomPalette, savePalettePreference, saveThemePreference, saveUserPalettePreference, saveUserThemePreference, setCSSVariable, setPalette, setTheme, spacingConfigs, t, toCssLength, useAccessibility, useBaseProps, useBreadcrumbs, useCollapsibleState, useData, useDataBinding, useDataContext, useDataProvider, useDimensions, useNavigation, usePageContext, usePalette, usePrintMode$1 as usePrintMode, usePrintMode as usePrintModeHook, useQwickApp, useResolveTemplate, useTemplate, useTheme, withAccessibility, withErrorBoundary };
package/dist/index.js CHANGED
@@ -1274,6 +1274,18 @@ const PaletteAutumn = {
1274
1274
  primaryColor: '#ea580c'
1275
1275
  };
1276
1276
 
1277
+ /**
1278
+ * Boutique Palette Configuration
1279
+ *
1280
+ * Copyright (c) 2025 QwickApps.com. All rights reserved.
1281
+ */
1282
+ const PaletteBoutique = {
1283
+ id: 'boutique',
1284
+ name: 'Boutique',
1285
+ description: 'Sophisticated teal, bronze, and navy - perfect for premium retail and fashion brands',
1286
+ primaryColor: '#3ca6b6'
1287
+ };
1288
+
1277
1289
  /**
1278
1290
  * Ocean Palette Configuration
1279
1291
  *
@@ -1327,7 +1339,7 @@ const PaletteCosmic = {
1327
1339
  *
1328
1340
  * Copyright (c) 2025 QwickApps.com. All rights reserved.
1329
1341
  */
1330
- const AllPalettes = [PaletteDefault, PaletteOcean, PaletteCosmic, PaletteWinter, PaletteAutumn, PaletteSpring];
1342
+ const AllPalettes = [PaletteDefault, PaletteBoutique, PaletteOcean, PaletteCosmic, PaletteWinter, PaletteAutumn, PaletteSpring];
1331
1343
 
1332
1344
  /**
1333
1345
  * Persistence utilities for theme and palette preferences
@@ -18495,6 +18507,20 @@ class ReactNodeTransformer {
18495
18507
  *
18496
18508
  * Copyright (c) 2025 QwickApps.com. All rights reserved.
18497
18509
  */
18510
+ // Import linkedom for server-side HTML parsing
18511
+ let parseHTML = null;
18512
+ if (typeof window === 'undefined') {
18513
+ // Server-side: use linkedom
18514
+ try {
18515
+ const {
18516
+ parseHTML: parse
18517
+ } = require('linkedom');
18518
+ parseHTML = html => parse(html).document;
18519
+ } catch (e) {
18520
+ // linkedom not available, will fall back to client-only rendering
18521
+ console.warn('linkedom not available for SSR HTML parsing');
18522
+ }
18523
+ }
18498
18524
  /**
18499
18525
  * Registry for component classes that support serialization
18500
18526
  */
@@ -18803,13 +18829,27 @@ let ComponentTransformer$1 = class ComponentTransformer {
18803
18829
  }
18804
18830
  /**
18805
18831
  * Transform HTML string to React nodes using registered patterns
18832
+ * Supports both server-side (linkedom) and client-side (DOMParser) rendering
18806
18833
  * @param html - HTML string to transform
18807
18834
  * @returns Array of React nodes
18808
18835
  */
18809
18836
  static transformHTML(html) {
18810
18837
  if (!html.trim()) return [];
18811
- const parser = new DOMParser();
18812
- const doc = parser.parseFromString(html, 'text/html');
18838
+ let doc;
18839
+ // Server-side: use linkedom if available
18840
+ if (typeof window === 'undefined') {
18841
+ if (parseHTML) {
18842
+ doc = parseHTML(html);
18843
+ } else {
18844
+ // linkedom not available, return empty for client-side rendering
18845
+ console.warn('SSR HTML parsing unavailable - content will render client-side only');
18846
+ return [];
18847
+ }
18848
+ } else {
18849
+ // Client-side: use DOMParser
18850
+ const parser = new DOMParser();
18851
+ doc = parser.parseFromString(html, 'text/html');
18852
+ }
18813
18853
  return Array.from(doc.body.children).map((element, index) => ComponentTransformer.transformElement(element, `element-${index}`));
18814
18854
  }
18815
18855
  /**
@@ -24554,7 +24594,7 @@ const Scaffold = ({
24554
24594
  className: "appbar-right",
24555
24595
  children: [enhancedAppBar?.actions && jsxRuntime.jsx("div", {
24556
24596
  className: "appbar-actions",
24557
- children: enhancedAppBar.actions
24597
+ children: typeof enhancedAppBar.actions === 'function' ? enhancedAppBar.actions() : enhancedAppBar.actions
24558
24598
  }, "appbar-actions"), jsxRuntime.jsxs("div", {
24559
24599
  className: "appbar-theme-controls",
24560
24600
  children: [showThemeSwitcher && jsxRuntime.jsx(ThemeSwitcher, {}, "theme-switcher"), showPaletteSwitcher && jsxRuntime.jsx(PaletteSwitcher, {}, "palette-switcher")]
@@ -33486,6 +33526,7 @@ exports.OptionSelector = OptionSelector;
33486
33526
  exports.Page = Page;
33487
33527
  exports.PageBannerHeader = PageBannerHeader;
33488
33528
  exports.PaletteAutumn = PaletteAutumn;
33529
+ exports.PaletteBoutique = PaletteBoutique;
33489
33530
  exports.PaletteCosmic = PaletteCosmic;
33490
33531
  exports.PaletteDefault = PaletteDefault;
33491
33532
  exports.PaletteOcean = PaletteOcean;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Boutique Palette Configuration
3
+ *
4
+ * Copyright (c) 2025 QwickApps.com. All rights reserved.
5
+ */
6
+ import "./PaletteBoutique.css";
7
+ import type { PaletteConfig } from '../contexts/PaletteContext';
8
+ export declare const PaletteBoutique: PaletteConfig;
9
+ export default PaletteBoutique;
10
+ //# sourceMappingURL=PaletteBoutique.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PaletteBoutique.d.ts","sourceRoot":"","sources":["../../src/palettes/PaletteBoutique.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,eAAO,MAAM,eAAe,EAAE,aAK7B,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  export { default as PaletteDefault } from './PaletteDefault';
7
7
  export { default as PaletteAutumn } from './PaletteAutumn';
8
+ export { default as PaletteBoutique } from './PaletteBoutique';
8
9
  export { default as PaletteOcean } from './PaletteOcean';
9
10
  export { default as PaletteSpring } from './PaletteSpring';
10
11
  export { default as PaletteWinter } from './PaletteWinter';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/palettes/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAU3D,eAAO,MAAM,WAAW,8BAOvB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/palettes/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAW3D,eAAO,MAAM,WAAW,8BAQvB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "./manifest.schema.json",
3
- "version": "1.6.0",
3
+ "version": "1.7.0",
4
4
  "palettes": [
5
5
  {
6
6
  "id": "default",
@@ -8,11 +8,11 @@
8
8
  "description": "Classic blue and neutral color scheme - the original QwickApps palette",
9
9
  "author": "QwickApps",
10
10
  "license": "PolyForm-Shield-1.0.0",
11
- "version": "1.6.0",
12
- "file": "palette-default.1.6.0.css",
11
+ "version": "1.7.0",
12
+ "file": "palette-default.1.7.0.css",
13
13
  "primaryColor": "#007bff",
14
14
  "inlined": true,
15
- "fileMinified": "palette-default.1.6.0.min.css",
15
+ "fileMinified": "palette-default.1.7.0.min.css",
16
16
  "fileLatest": "palette-default.latest.css",
17
17
  "fileLatestMinified": "palette-default.latest.min.css"
18
18
  },
@@ -22,25 +22,39 @@
22
22
  "description": "Warm oranges, golden yellows, and earthy browns - inspired by fall foliage",
23
23
  "author": "QwickApps",
24
24
  "license": "PolyForm-Shield-1.0.0",
25
- "version": "1.6.0",
26
- "file": "palette-autumn.1.6.0.css",
25
+ "version": "1.7.0",
26
+ "file": "palette-autumn.1.7.0.css",
27
27
  "primaryColor": "#ea580c",
28
28
  "inlined": false,
29
- "fileMinified": "palette-autumn.1.6.0.min.css",
29
+ "fileMinified": "palette-autumn.1.7.0.min.css",
30
30
  "fileLatest": "palette-autumn.latest.css",
31
31
  "fileLatestMinified": "palette-autumn.latest.min.css"
32
32
  },
33
+ {
34
+ "id": "boutique",
35
+ "name": "Boutique",
36
+ "description": "Sophisticated teal, bronze, and navy - perfect for premium retail and fashion brands",
37
+ "author": "QwickApps",
38
+ "license": "PolyForm-Shield-1.0.0",
39
+ "version": "1.7.0",
40
+ "file": "palette-boutique.1.7.0.css",
41
+ "primaryColor": "#3ca6b6",
42
+ "inlined": false,
43
+ "fileMinified": "palette-boutique.1.7.0.min.css",
44
+ "fileLatest": "palette-boutique.latest.css",
45
+ "fileLatestMinified": "palette-boutique.latest.min.css"
46
+ },
33
47
  {
34
48
  "id": "cosmic",
35
49
  "name": "Cosmic",
36
50
  "description": "Modern purple gradient for creative and tech brands - inspired by cosmic nebulae",
37
51
  "author": "QwickApps",
38
52
  "license": "PolyForm-Shield-1.0.0",
39
- "version": "1.6.0",
40
- "file": "palette-cosmic.1.6.0.css",
53
+ "version": "1.7.0",
54
+ "file": "palette-cosmic.1.7.0.css",
41
55
  "primaryColor": "#8b5cf6",
42
56
  "inlined": false,
43
- "fileMinified": "palette-cosmic.1.6.0.min.css",
57
+ "fileMinified": "palette-cosmic.1.7.0.min.css",
44
58
  "fileLatest": "palette-cosmic.latest.css",
45
59
  "fileLatestMinified": "palette-cosmic.latest.min.css"
46
60
  },
@@ -50,11 +64,11 @@
50
64
  "description": "Deep blues, aqua teals, and seafoam greens - inspired by ocean depths",
51
65
  "author": "QwickApps",
52
66
  "license": "PolyForm-Shield-1.0.0",
53
- "version": "1.6.0",
54
- "file": "palette-ocean.1.6.0.css",
67
+ "version": "1.7.0",
68
+ "file": "palette-ocean.1.7.0.css",
55
69
  "primaryColor": "#0891b2",
56
70
  "inlined": false,
57
- "fileMinified": "palette-ocean.1.6.0.min.css",
71
+ "fileMinified": "palette-ocean.1.7.0.min.css",
58
72
  "fileLatest": "palette-ocean.latest.css",
59
73
  "fileLatestMinified": "palette-ocean.latest.min.css"
60
74
  },
@@ -64,11 +78,11 @@
64
78
  "description": "Fresh greens, soft pinks, and bright yellows - inspired by spring blooms",
65
79
  "author": "QwickApps",
66
80
  "license": "PolyForm-Shield-1.0.0",
67
- "version": "1.6.0",
68
- "file": "palette-spring.1.6.0.css",
81
+ "version": "1.7.0",
82
+ "file": "palette-spring.1.7.0.css",
69
83
  "primaryColor": "#16a34a",
70
84
  "inlined": false,
71
- "fileMinified": "palette-spring.1.6.0.min.css",
85
+ "fileMinified": "palette-spring.1.7.0.min.css",
72
86
  "fileLatest": "palette-spring.latest.css",
73
87
  "fileLatestMinified": "palette-spring.latest.min.css"
74
88
  },
@@ -78,11 +92,11 @@
78
92
  "description": "Cool blues, icy whites, and frosty grays - inspired by winter landscapes",
79
93
  "author": "QwickApps",
80
94
  "license": "PolyForm-Shield-1.0.0",
81
- "version": "1.6.0",
82
- "file": "palette-winter.1.6.0.css",
95
+ "version": "1.7.0",
96
+ "file": "palette-winter.1.7.0.css",
83
97
  "primaryColor": "#0077be",
84
98
  "inlined": false,
85
- "fileMinified": "palette-winter.1.6.0.min.css",
99
+ "fileMinified": "palette-winter.1.7.0.min.css",
86
100
  "fileLatest": "palette-winter.latest.css",
87
101
  "fileLatestMinified": "palette-winter.latest.min.css"
88
102
  }
@@ -61,12 +61,14 @@ html[data-palette="autumn"][data-theme="light"] {
61
61
  --palette-error-main: #dc2626;
62
62
  --palette-error-light: #fee2e2;
63
63
  --palette-error-dark: #7f1d1d;
64
+ --palette-on-error: #ffffff;
64
65
  --palette-error-border: #fecaca;
65
-
66
+
66
67
  /* Warning palette - Amber */
67
68
  --palette-warning-main: #f59e0b;
68
69
  --palette-warning-light: #fef3c7;
69
70
  --palette-warning-dark: #78350f;
71
+ --palette-on-warning: #000000;
70
72
  --palette-warning-border: #fde68a;
71
73
 
72
74
  /* Info palette - Teal */
@@ -0,0 +1 @@
1
+ html[data-palette="autumn"]:not([data-theme="dark"]),html[data-palette="autumn"][data-theme="light"]{--palette-primary-main:#ea580c;--palette-primary-light:#fb923c;--palette-primary-dark:#c2410c;--palette-on-primary:#ffffff;--palette-secondary-main:#b45309;--palette-secondary-light:#d97706;--palette-secondary-dark:#92400e;--palette-on-secondary:#ffffff;--palette-surface-main:#fffbeb;--palette-surface-variant:#fef3c7;--palette-surface-elevated:#ffffff;--palette-on-surface:#451a03;--palette-background-main:#fefce8;--palette-background-dark:#fef3c7;--palette-background-overlay:rgba(254,252,232,0.95);--palette-on-background:#78350f;--palette-header-bg-start:rgba(254,252,232,0.98);--palette-header-bg-end:rgba(254,252,232,0.95);--palette-header-collapsed-bg-start:rgba(254,252,232,0.99);--palette-header-collapsed-bg-end:rgba(254,252,232,0.96);--palette-text-primary:#451a03;--palette-text-secondary:#78350f;--palette-text-disabled:rgba(69,26,3,0.38);--palette-text-inverted:#ffffff;--palette-border-main:#d4d4aa;--palette-border-light:rgba(69,26,3,0.12);--palette-border-lighter:rgba(69,26,3,0.05);--palette-border-medium:#a8a29e;--palette-success-main:#16a34a;--palette-success-light:#dcfce7;--palette-success-dark:#14532d;--palette-success-border:#bbf7d0;--palette-error-main:#dc2626;--palette-error-light:#fee2e2;--palette-error-dark:#7f1d1d;--palette-on-error:#ffffff;--palette-error-border:#fecaca;--palette-warning-main:#f59e0b;--palette-warning-light:#fef3c7;--palette-warning-dark:#78350f;--palette-on-warning:#000000;--palette-warning-border:#fde68a;--palette-info-main:#0891b2;--palette-info-light:#e6fffa;--palette-info-dark:#164e63;--palette-on-info:#ffffff;--palette-info-border:#67e8f9;--palette-accent-main:#dc2626;--palette-accent-light:#f87171;--palette-accent-dark:#991b1b;--palette-on-accent:#ffffff;--palette-control-main:#451a03;--palette-control-light:#78350f;--palette-control-text:#fef3c7;--palette-control-border:#92400e}html[data-palette="autumn"][data-theme="dark"]{--palette-primary-main:#fb923c;--palette-primary-light:#fdba74;--palette-primary-dark:#ea580c;--palette-on-primary:#1c1917;--palette-secondary-main:#fbbf24;--palette-secondary-light:#fcd34d;--palette-secondary-dark:#f59e0b;--palette-on-secondary:#1c1917;--palette-surface-main:#231f1d;--palette-surface-variant:#302a27;--palette-surface-elevated:#44403c;--palette-on-surface:#fef3c7;--palette-background-main:#0a0807;--palette-background-dark:#151210;--palette-background-overlay:rgba(28,25,23,0.95);--palette-on-background:#d6d3d1;--palette-header-bg-start:rgba(10,8,7,0.98);--palette-header-bg-end:rgba(10,8,7,0.95);--palette-header-collapsed-bg-start:rgba(10,8,7,0.99);--palette-header-collapsed-bg-end:rgba(10,8,7,0.96);--palette-text-primary:#fef3c7;--palette-text-secondary:#d6d3d1;--palette-text-disabled:rgba(254,243,199,0.38);--palette-text-inverted:#0c0a09;--palette-border-main:#78716c;--palette-border-light:rgba(254,243,199,0.12);--palette-border-lighter:rgba(254,243,199,0.05);--palette-border-medium:#57534e;--palette-success-main:#4ade80;--palette-success-light:#14532d;--palette-success-dark:#22c55e;--palette-success-border:#166534;--palette-error-main:#f87171;--palette-error-light:#7f1d1d;--palette-error-dark:#ef4444;--palette-error-border:#991b1b;--palette-warning-main:#eab308;--palette-warning-light:#78350f;--palette-warning-dark:#ca8a04;--palette-warning-border:#a16207;--palette-info-main:#22d3ee;--palette-info-light:#164e63;--palette-info-dark:#06b6d4;--palette-on-info:#0c0a09;--palette-info-border:#0891b2;--palette-accent-main:#b91c1c;--palette-accent-light:#dc2626;--palette-accent-dark:#7f1d1d;--palette-on-accent:#fef3c7;--palette-control-main:#292524;--palette-control-light:#44403c;--palette-control-text:#f5f5f4;--palette-control-border:#57534e}
@@ -61,12 +61,14 @@ html[data-palette="autumn"][data-theme="light"] {
61
61
  --palette-error-main: #dc2626;
62
62
  --palette-error-light: #fee2e2;
63
63
  --palette-error-dark: #7f1d1d;
64
+ --palette-on-error: #ffffff;
64
65
  --palette-error-border: #fecaca;
65
-
66
+
66
67
  /* Warning palette - Amber */
67
68
  --palette-warning-main: #f59e0b;
68
69
  --palette-warning-light: #fef3c7;
69
70
  --palette-warning-dark: #78350f;
71
+ --palette-on-warning: #000000;
70
72
  --palette-warning-border: #fde68a;
71
73
 
72
74
  /* Info palette - Teal */
@@ -1 +1 @@
1
- html[data-palette="autumn"]:not([data-theme="dark"]),html[data-palette="autumn"][data-theme="light"]{--palette-primary-main:#ea580c;--palette-primary-light:#fb923c;--palette-primary-dark:#c2410c;--palette-on-primary:#ffffff;--palette-secondary-main:#b45309;--palette-secondary-light:#d97706;--palette-secondary-dark:#92400e;--palette-on-secondary:#ffffff;--palette-surface-main:#fffbeb;--palette-surface-variant:#fef3c7;--palette-surface-elevated:#ffffff;--palette-on-surface:#451a03;--palette-background-main:#fefce8;--palette-background-dark:#fef3c7;--palette-background-overlay:rgba(254,252,232,0.95);--palette-on-background:#78350f;--palette-header-bg-start:rgba(254,252,232,0.98);--palette-header-bg-end:rgba(254,252,232,0.95);--palette-header-collapsed-bg-start:rgba(254,252,232,0.99);--palette-header-collapsed-bg-end:rgba(254,252,232,0.96);--palette-text-primary:#451a03;--palette-text-secondary:#78350f;--palette-text-disabled:rgba(69,26,3,0.38);--palette-text-inverted:#ffffff;--palette-border-main:#d4d4aa;--palette-border-light:rgba(69,26,3,0.12);--palette-border-lighter:rgba(69,26,3,0.05);--palette-border-medium:#a8a29e;--palette-success-main:#16a34a;--palette-success-light:#dcfce7;--palette-success-dark:#14532d;--palette-success-border:#bbf7d0;--palette-error-main:#dc2626;--palette-error-light:#fee2e2;--palette-error-dark:#7f1d1d;--palette-error-border:#fecaca;--palette-warning-main:#f59e0b;--palette-warning-light:#fef3c7;--palette-warning-dark:#78350f;--palette-warning-border:#fde68a;--palette-info-main:#0891b2;--palette-info-light:#e6fffa;--palette-info-dark:#164e63;--palette-on-info:#ffffff;--palette-info-border:#67e8f9;--palette-accent-main:#dc2626;--palette-accent-light:#f87171;--palette-accent-dark:#991b1b;--palette-on-accent:#ffffff;--palette-control-main:#451a03;--palette-control-light:#78350f;--palette-control-text:#fef3c7;--palette-control-border:#92400e}html[data-palette="autumn"][data-theme="dark"]{--palette-primary-main:#fb923c;--palette-primary-light:#fdba74;--palette-primary-dark:#ea580c;--palette-on-primary:#1c1917;--palette-secondary-main:#fbbf24;--palette-secondary-light:#fcd34d;--palette-secondary-dark:#f59e0b;--palette-on-secondary:#1c1917;--palette-surface-main:#231f1d;--palette-surface-variant:#302a27;--palette-surface-elevated:#44403c;--palette-on-surface:#fef3c7;--palette-background-main:#0a0807;--palette-background-dark:#151210;--palette-background-overlay:rgba(28,25,23,0.95);--palette-on-background:#d6d3d1;--palette-header-bg-start:rgba(10,8,7,0.98);--palette-header-bg-end:rgba(10,8,7,0.95);--palette-header-collapsed-bg-start:rgba(10,8,7,0.99);--palette-header-collapsed-bg-end:rgba(10,8,7,0.96);--palette-text-primary:#fef3c7;--palette-text-secondary:#d6d3d1;--palette-text-disabled:rgba(254,243,199,0.38);--palette-text-inverted:#0c0a09;--palette-border-main:#78716c;--palette-border-light:rgba(254,243,199,0.12);--palette-border-lighter:rgba(254,243,199,0.05);--palette-border-medium:#57534e;--palette-success-main:#4ade80;--palette-success-light:#14532d;--palette-success-dark:#22c55e;--palette-success-border:#166534;--palette-error-main:#f87171;--palette-error-light:#7f1d1d;--palette-error-dark:#ef4444;--palette-error-border:#991b1b;--palette-warning-main:#eab308;--palette-warning-light:#78350f;--palette-warning-dark:#ca8a04;--palette-warning-border:#a16207;--palette-info-main:#22d3ee;--palette-info-light:#164e63;--palette-info-dark:#06b6d4;--palette-on-info:#0c0a09;--palette-info-border:#0891b2;--palette-accent-main:#b91c1c;--palette-accent-light:#dc2626;--palette-accent-dark:#7f1d1d;--palette-on-accent:#fef3c7;--palette-control-main:#292524;--palette-control-light:#44403c;--palette-control-text:#f5f5f4;--palette-control-border:#57534e}
1
+ html[data-palette="autumn"]:not([data-theme="dark"]),html[data-palette="autumn"][data-theme="light"]{--palette-primary-main:#ea580c;--palette-primary-light:#fb923c;--palette-primary-dark:#c2410c;--palette-on-primary:#ffffff;--palette-secondary-main:#b45309;--palette-secondary-light:#d97706;--palette-secondary-dark:#92400e;--palette-on-secondary:#ffffff;--palette-surface-main:#fffbeb;--palette-surface-variant:#fef3c7;--palette-surface-elevated:#ffffff;--palette-on-surface:#451a03;--palette-background-main:#fefce8;--palette-background-dark:#fef3c7;--palette-background-overlay:rgba(254,252,232,0.95);--palette-on-background:#78350f;--palette-header-bg-start:rgba(254,252,232,0.98);--palette-header-bg-end:rgba(254,252,232,0.95);--palette-header-collapsed-bg-start:rgba(254,252,232,0.99);--palette-header-collapsed-bg-end:rgba(254,252,232,0.96);--palette-text-primary:#451a03;--palette-text-secondary:#78350f;--palette-text-disabled:rgba(69,26,3,0.38);--palette-text-inverted:#ffffff;--palette-border-main:#d4d4aa;--palette-border-light:rgba(69,26,3,0.12);--palette-border-lighter:rgba(69,26,3,0.05);--palette-border-medium:#a8a29e;--palette-success-main:#16a34a;--palette-success-light:#dcfce7;--palette-success-dark:#14532d;--palette-success-border:#bbf7d0;--palette-error-main:#dc2626;--palette-error-light:#fee2e2;--palette-error-dark:#7f1d1d;--palette-on-error:#ffffff;--palette-error-border:#fecaca;--palette-warning-main:#f59e0b;--palette-warning-light:#fef3c7;--palette-warning-dark:#78350f;--palette-on-warning:#000000;--palette-warning-border:#fde68a;--palette-info-main:#0891b2;--palette-info-light:#e6fffa;--palette-info-dark:#164e63;--palette-on-info:#ffffff;--palette-info-border:#67e8f9;--palette-accent-main:#dc2626;--palette-accent-light:#f87171;--palette-accent-dark:#991b1b;--palette-on-accent:#ffffff;--palette-control-main:#451a03;--palette-control-light:#78350f;--palette-control-text:#fef3c7;--palette-control-border:#92400e}html[data-palette="autumn"][data-theme="dark"]{--palette-primary-main:#fb923c;--palette-primary-light:#fdba74;--palette-primary-dark:#ea580c;--palette-on-primary:#1c1917;--palette-secondary-main:#fbbf24;--palette-secondary-light:#fcd34d;--palette-secondary-dark:#f59e0b;--palette-on-secondary:#1c1917;--palette-surface-main:#231f1d;--palette-surface-variant:#302a27;--palette-surface-elevated:#44403c;--palette-on-surface:#fef3c7;--palette-background-main:#0a0807;--palette-background-dark:#151210;--palette-background-overlay:rgba(28,25,23,0.95);--palette-on-background:#d6d3d1;--palette-header-bg-start:rgba(10,8,7,0.98);--palette-header-bg-end:rgba(10,8,7,0.95);--palette-header-collapsed-bg-start:rgba(10,8,7,0.99);--palette-header-collapsed-bg-end:rgba(10,8,7,0.96);--palette-text-primary:#fef3c7;--palette-text-secondary:#d6d3d1;--palette-text-disabled:rgba(254,243,199,0.38);--palette-text-inverted:#0c0a09;--palette-border-main:#78716c;--palette-border-light:rgba(254,243,199,0.12);--palette-border-lighter:rgba(254,243,199,0.05);--palette-border-medium:#57534e;--palette-success-main:#4ade80;--palette-success-light:#14532d;--palette-success-dark:#22c55e;--palette-success-border:#166534;--palette-error-main:#f87171;--palette-error-light:#7f1d1d;--palette-error-dark:#ef4444;--palette-error-border:#991b1b;--palette-warning-main:#eab308;--palette-warning-light:#78350f;--palette-warning-dark:#ca8a04;--palette-warning-border:#a16207;--palette-info-main:#22d3ee;--palette-info-light:#164e63;--palette-info-dark:#06b6d4;--palette-on-info:#0c0a09;--palette-info-border:#0891b2;--palette-accent-main:#b91c1c;--palette-accent-light:#dc2626;--palette-accent-dark:#7f1d1d;--palette-on-accent:#fef3c7;--palette-control-main:#292524;--palette-control-light:#44403c;--palette-control-text:#f5f5f4;--palette-control-border:#57534e}
@@ -0,0 +1,176 @@
1
+ /**
2
+ * Boutique Color Palette
3
+ *
4
+ * Copyright (c) 2025 QwickApps.com. All rights reserved.
5
+ *
6
+ * Sophisticated teal, bronze, and navy - perfect for premium retail and fashion brands
7
+ */
8
+
9
+ /* ===== BOUTIQUE PALETTE - LIGHT THEME ===== */
10
+ html[data-palette="boutique"]:not([data-theme="dark"]),
11
+ html[data-palette="boutique"][data-theme="light"] {
12
+ /* Primary palette - Teal */
13
+ --palette-primary-main: #3ca6b6;
14
+ --palette-primary-light: #6bc4d1;
15
+ --palette-primary-dark: #2a7a86;
16
+ --palette-on-primary: #ffffff;
17
+
18
+ /* Secondary palette - Bronze */
19
+ --palette-secondary-main: #be765e;
20
+ --palette-secondary-light: #d4987e;
21
+ --palette-secondary-dark: #9a5742;
22
+ --palette-on-secondary: #ffffff;
23
+
24
+ /* Surface palette - Warm ivory */
25
+ --palette-surface-main: #fefcf8;
26
+ --palette-surface-variant: #f5f0ea;
27
+ --palette-surface-elevated: #ffffff;
28
+ --palette-on-surface: #2c2520;
29
+
30
+ /* Background palette - Soft cream */
31
+ --palette-background-main: #fffdf9;
32
+ --palette-background-dark: #f8f4ed;
33
+ --palette-background-overlay: rgba(255, 253, 249, 0.95);
34
+ --palette-on-background: #3d3530;
35
+
36
+ /* Header background with transparency */
37
+ --palette-header-bg-start: rgba(255, 253, 249, 0.98);
38
+ --palette-header-bg-end: rgba(255, 253, 249, 0.95);
39
+ --palette-header-collapsed-bg-start: rgba(255, 253, 249, 0.99);
40
+ --palette-header-collapsed-bg-end: rgba(255, 253, 249, 0.96);
41
+
42
+ /* Text palette - Deep brown */
43
+ --palette-text-primary: #2c2520;
44
+ --palette-text-secondary: #5d5349;
45
+ --palette-text-disabled: rgba(44, 37, 32, 0.38);
46
+ --palette-text-inverted: #ffffff;
47
+
48
+ /* Border palette - Soft taupe */
49
+ --palette-border-main: #d4cdc4;
50
+ --palette-border-light: rgba(44, 37, 32, 0.12);
51
+ --palette-border-lighter: rgba(44, 37, 32, 0.05);
52
+ --palette-border-medium: #b8afa4;
53
+
54
+ /* Success palette - Emerald */
55
+ --palette-success-main: #10b981;
56
+ --palette-success-light: #d1fae5;
57
+ --palette-success-dark: #047857;
58
+ --palette-success-border: #a7f3d0;
59
+
60
+ /* Error palette - Rose */
61
+ --palette-error-main: #f43f5e;
62
+ --palette-error-light: #ffe4e6;
63
+ --palette-error-dark: #9f1239;
64
+ --palette-on-error: #ffffff;
65
+ --palette-error-border: #fecdd3;
66
+
67
+ /* Warning palette - Amber */
68
+ --palette-warning-main: #f59e0b;
69
+ --palette-warning-light: #fef3c7;
70
+ --palette-warning-dark: #d97706;
71
+ --palette-on-warning: #000000;
72
+ --palette-warning-border: #fde68a;
73
+
74
+ /* Info palette - Sky blue */
75
+ --palette-info-main: #0284c7;
76
+ --palette-info-light: #e0f2fe;
77
+ --palette-info-dark: #075985;
78
+ --palette-on-info: #ffffff;
79
+ --palette-info-border: #7dd3fc;
80
+
81
+ /* Accent palette - Navy */
82
+ --palette-accent-main: #0a1a3e;
83
+ --palette-accent-light: #1e3a73;
84
+ --palette-accent-dark: #050d1f;
85
+ --palette-on-accent: #ffffff;
86
+
87
+ /* Control palette - Deep teal */
88
+ --palette-control-main: #2a7a86;
89
+ --palette-control-light: #3ca6b6;
90
+ --palette-control-text: #ffffff;
91
+ --palette-control-border: #217380;
92
+ }
93
+
94
+ /* ===== BOUTIQUE PALETTE - DARK THEME ===== */
95
+ html[data-palette="boutique"][data-theme="dark"] {
96
+ /* Primary palette - Bright teal */
97
+ --palette-primary-main: #6bc4d1;
98
+ --palette-primary-light: #8fd5de;
99
+ --palette-primary-dark: #3ca6b6;
100
+ --palette-on-primary: #0a1a1d;
101
+
102
+ /* Secondary palette - Warm bronze */
103
+ --palette-secondary-main: #d4987e;
104
+ --palette-secondary-light: #e3b9a4;
105
+ --palette-secondary-dark: #be765e;
106
+ --palette-on-secondary: #1a1210;
107
+
108
+ /* Surface palette - Charcoal */
109
+ --palette-surface-main: #1a1614;
110
+ --palette-surface-variant: #252220;
111
+ --palette-surface-elevated: #332f2c;
112
+ --palette-on-surface: #f5f0ea;
113
+
114
+ /* Background palette - Deep slate */
115
+ --palette-background-main: #0f0d0c;
116
+ --palette-background-dark: #1a1614;
117
+ --palette-background-overlay: rgba(26, 22, 20, 0.95);
118
+ --palette-on-background: #e8e4de;
119
+
120
+ /* Header background with transparency */
121
+ --palette-header-bg-start: rgba(15, 13, 12, 0.98);
122
+ --palette-header-bg-end: rgba(15, 13, 12, 0.95);
123
+ --palette-header-collapsed-bg-start: rgba(15, 13, 12, 0.99);
124
+ --palette-header-collapsed-bg-end: rgba(15, 13, 12, 0.96);
125
+
126
+ /* Text palette - Warm light */
127
+ --palette-text-primary: #f5f0ea;
128
+ --palette-text-secondary: #cdc5bc;
129
+ --palette-text-disabled: rgba(245, 240, 234, 0.38);
130
+ --palette-text-inverted: #0f0d0c;
131
+
132
+ /* Border palette - Warm gray */
133
+ --palette-border-main: #4a4440;
134
+ --palette-border-light: rgba(245, 240, 234, 0.12);
135
+ --palette-border-lighter: rgba(245, 240, 234, 0.05);
136
+ --palette-border-medium: #3d3833;
137
+
138
+ /* Success palette - Bright emerald */
139
+ --palette-success-main: #34d399;
140
+ --palette-success-light: #064e3b;
141
+ --palette-success-dark: #10b981;
142
+ --palette-success-border: #065f46;
143
+
144
+ /* Error palette - Bright rose */
145
+ --palette-error-main: #fb7185;
146
+ --palette-error-light: #4c0519;
147
+ --palette-error-dark: #f43f5e;
148
+ --palette-on-error: #ffffff;
149
+ --palette-error-border: #881337;
150
+
151
+ /* Warning palette - Bright amber */
152
+ --palette-warning-main: #fbbf24;
153
+ --palette-warning-light: #451a03;
154
+ --palette-warning-dark: #f59e0b;
155
+ --palette-on-warning: #1c1917;
156
+ --palette-warning-border: #78350f;
157
+
158
+ /* Info palette - Bright sky */
159
+ --palette-info-main: #38bdf8;
160
+ --palette-info-light: #0c4a6e;
161
+ --palette-info-dark: #0284c7;
162
+ --palette-on-info: #ffffff;
163
+ --palette-info-border: #075985;
164
+
165
+ /* Accent palette - Bright navy */
166
+ --palette-accent-main: #3b5ba3;
167
+ --palette-accent-light: #5a7cc4;
168
+ --palette-accent-dark: #1e3a73;
169
+ --palette-on-accent: #ffffff;
170
+
171
+ /* Control palette - Teal glow */
172
+ --palette-control-main: #6bc4d1;
173
+ --palette-control-light: #8fd5de;
174
+ --palette-control-text: #0a1a1d;
175
+ --palette-control-border: #3ca6b6;
176
+ }
@@ -0,0 +1 @@
1
+ html[data-palette="boutique"]:not([data-theme="dark"]),html[data-palette="boutique"][data-theme="light"]{--palette-primary-main:#3ca6b6;--palette-primary-light:#6bc4d1;--palette-primary-dark:#2a7a86;--palette-on-primary:#ffffff;--palette-secondary-main:#be765e;--palette-secondary-light:#d4987e;--palette-secondary-dark:#9a5742;--palette-on-secondary:#ffffff;--palette-surface-main:#fefcf8;--palette-surface-variant:#f5f0ea;--palette-surface-elevated:#ffffff;--palette-on-surface:#2c2520;--palette-background-main:#fffdf9;--palette-background-dark:#f8f4ed;--palette-background-overlay:rgba(255,253,249,0.95);--palette-on-background:#3d3530;--palette-header-bg-start:rgba(255,253,249,0.98);--palette-header-bg-end:rgba(255,253,249,0.95);--palette-header-collapsed-bg-start:rgba(255,253,249,0.99);--palette-header-collapsed-bg-end:rgba(255,253,249,0.96);--palette-text-primary:#2c2520;--palette-text-secondary:#5d5349;--palette-text-disabled:rgba(44,37,32,0.38);--palette-text-inverted:#ffffff;--palette-border-main:#d4cdc4;--palette-border-light:rgba(44,37,32,0.12);--palette-border-lighter:rgba(44,37,32,0.05);--palette-border-medium:#b8afa4;--palette-success-main:#10b981;--palette-success-light:#d1fae5;--palette-success-dark:#047857;--palette-success-border:#a7f3d0;--palette-error-main:#f43f5e;--palette-error-light:#ffe4e6;--palette-error-dark:#9f1239;--palette-on-error:#ffffff;--palette-error-border:#fecdd3;--palette-warning-main:#f59e0b;--palette-warning-light:#fef3c7;--palette-warning-dark:#d97706;--palette-on-warning:#000000;--palette-warning-border:#fde68a;--palette-info-main:#0284c7;--palette-info-light:#e0f2fe;--palette-info-dark:#075985;--palette-on-info:#ffffff;--palette-info-border:#7dd3fc;--palette-accent-main:#0a1a3e;--palette-accent-light:#1e3a73;--palette-accent-dark:#050d1f;--palette-on-accent:#ffffff;--palette-control-main:#2a7a86;--palette-control-light:#3ca6b6;--palette-control-text:#ffffff;--palette-control-border:#217380}html[data-palette="boutique"][data-theme="dark"]{--palette-primary-main:#6bc4d1;--palette-primary-light:#8fd5de;--palette-primary-dark:#3ca6b6;--palette-on-primary:#0a1a1d;--palette-secondary-main:#d4987e;--palette-secondary-light:#e3b9a4;--palette-secondary-dark:#be765e;--palette-on-secondary:#1a1210;--palette-surface-main:#1a1614;--palette-surface-variant:#252220;--palette-surface-elevated:#332f2c;--palette-on-surface:#f5f0ea;--palette-background-main:#0f0d0c;--palette-background-dark:#1a1614;--palette-background-overlay:rgba(26,22,20,0.95);--palette-on-background:#e8e4de;--palette-header-bg-start:rgba(15,13,12,0.98);--palette-header-bg-end:rgba(15,13,12,0.95);--palette-header-collapsed-bg-start:rgba(15,13,12,0.99);--palette-header-collapsed-bg-end:rgba(15,13,12,0.96);--palette-text-primary:#f5f0ea;--palette-text-secondary:#cdc5bc;--palette-text-disabled:rgba(245,240,234,0.38);--palette-text-inverted:#0f0d0c;--palette-border-main:#4a4440;--palette-border-light:rgba(245,240,234,0.12);--palette-border-lighter:rgba(245,240,234,0.05);--palette-border-medium:#3d3833;--palette-success-main:#34d399;--palette-success-light:#064e3b;--palette-success-dark:#10b981;--palette-success-border:#065f46;--palette-error-main:#fb7185;--palette-error-light:#4c0519;--palette-error-dark:#f43f5e;--palette-on-error:#ffffff;--palette-error-border:#881337;--palette-warning-main:#fbbf24;--palette-warning-light:#451a03;--palette-warning-dark:#f59e0b;--palette-on-warning:#1c1917;--palette-warning-border:#78350f;--palette-info-main:#38bdf8;--palette-info-light:#0c4a6e;--palette-info-dark:#0284c7;--palette-on-info:#ffffff;--palette-info-border:#075985;--palette-accent-main:#3b5ba3;--palette-accent-light:#5a7cc4;--palette-accent-dark:#1e3a73;--palette-on-accent:#ffffff;--palette-control-main:#6bc4d1;--palette-control-light:#8fd5de;--palette-control-text:#0a1a1d;--palette-control-border:#3ca6b6}