@qwickapps/react-framework 1.7.0 → 1.7.1

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 (29) hide show
  1. package/README.md +14 -0
  2. package/dist/components/blocks/ImageGallery.d.ts.map +1 -1
  3. package/dist/components/blocks/OptionSelector.d.ts.map +1 -1
  4. package/dist/components/forms/FormCheckbox.d.ts.map +1 -1
  5. package/dist/components/forms/FormField.d.ts.map +1 -1
  6. package/dist/components/forms/FormSelect.d.ts.map +1 -1
  7. package/dist/index.esm.js +64 -5
  8. package/dist/index.js +64 -5
  9. package/dist/palettes/manifest.json +22 -22
  10. package/package.json +1 -1
  11. package/src/components/blocks/ImageGallery.tsx +6 -5
  12. package/src/components/blocks/OptionSelector.tsx +18 -3
  13. package/src/components/forms/FormCheckbox.tsx +15 -0
  14. package/src/components/forms/FormField.tsx +15 -0
  15. package/src/components/forms/FormSelect.tsx +15 -0
  16. /package/dist/palettes/{palette-autumn.1.7.0.css → palette-autumn.1.7.1.css} +0 -0
  17. /package/dist/palettes/{palette-autumn.1.7.0.min.css → palette-autumn.1.7.1.min.css} +0 -0
  18. /package/dist/palettes/{palette-boutique.1.7.0.css → palette-boutique.1.7.1.css} +0 -0
  19. /package/dist/palettes/{palette-boutique.1.7.0.min.css → palette-boutique.1.7.1.min.css} +0 -0
  20. /package/dist/palettes/{palette-cosmic.1.7.0.css → palette-cosmic.1.7.1.css} +0 -0
  21. /package/dist/palettes/{palette-cosmic.1.7.0.min.css → palette-cosmic.1.7.1.min.css} +0 -0
  22. /package/dist/palettes/{palette-default.1.7.0.css → palette-default.1.7.1.css} +0 -0
  23. /package/dist/palettes/{palette-default.1.7.0.min.css → palette-default.1.7.1.min.css} +0 -0
  24. /package/dist/palettes/{palette-ocean.1.7.0.css → palette-ocean.1.7.1.css} +0 -0
  25. /package/dist/palettes/{palette-ocean.1.7.0.min.css → palette-ocean.1.7.1.min.css} +0 -0
  26. /package/dist/palettes/{palette-spring.1.7.0.css → palette-spring.1.7.1.css} +0 -0
  27. /package/dist/palettes/{palette-spring.1.7.0.min.css → palette-spring.1.7.1.min.css} +0 -0
  28. /package/dist/palettes/{palette-winter.1.7.0.css → palette-winter.1.7.1.css} +0 -0
  29. /package/dist/palettes/{palette-winter.1.7.0.min.css → palette-winter.1.7.1.min.css} +0 -0
package/README.md CHANGED
@@ -4,6 +4,20 @@ A complete React framework for building modern, responsive applications with int
4
4
 
5
5
  ## What's New
6
6
 
7
+ ### February 4, 2026 - Bug Fixes (v1.7.1)
8
+
9
+ - **MUI v7 TypeScript Compatibility**: Fixed compilation errors in form components by excluding conflicting ViewProps
10
+ - **Component Pattern Compliance**: ImageGallery now uses GridLayout/GridCell instead of direct MUI Grid
11
+ - **Type Safety**: Added explicit TypeScript return types to OptionSelector
12
+
13
+ See [CHANGELOG.md](./CHANGELOG.md) for full details.
14
+
15
+ ### February 4, 2026 - New Palette & SSR (v1.7.0)
16
+
17
+ - **PaletteBoutique**: New premium color palette with sophisticated teal, bronze, and navy for retail/fashion brands
18
+ - **ComponentTransformer SSR**: Enhanced HTML parsing with linkedom integration for server-side rendering
19
+ - **Theme Consistency**: Added missing palette variables and replaced hardcoded colors across all palettes
20
+
7
21
  ### January 25, 2026 - E-Commerce Components (v1.5.13)
8
22
 
9
23
  #### New Components
@@ -1 +1 @@
1
- {"version":3,"file":"ImageGallery.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/ImageGallery.tsx"],"names":[],"mappings":"AAoCA,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,8BAA8B;IAC9B,MAAM,EAAE,YAAY,EAAE,CAAC;IAEvB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IAEpB,8BAA8B;IAC9B,OAAO,CAAC,EAAE,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;IAE7C,2DAA2D;IAC3D,iBAAiB,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IAEhD,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AA+XD,eAAO,MAAM,YAAY,EAAE,qBAAqB,CAAC,iBAAiB,CAM9D,CAAC;AAEL,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"ImageGallery.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/ImageGallery.tsx"],"names":[],"mappings":"AAqCA,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,8BAA8B;IAC9B,MAAM,EAAE,YAAY,EAAE,CAAC;IAEvB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IAEpB,8BAA8B;IAC9B,OAAO,CAAC,EAAE,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;IAE7C,2DAA2D;IAC3D,iBAAiB,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IAEhD,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AA+XD,eAAO,MAAM,YAAY,EAAE,qBAAqB,CAAC,iBAAiB,CAM9D,CAAC;AAEL,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"OptionSelector.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/OptionSelector.tsx"],"names":[],"mappings":"AAkDA,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,MAAM,WAAW,YAAY;IAC3B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IAEX,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,qDAAqD;IACrD,SAAS,EAAE,OAAO,CAAC;IAEnB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,iCAAiC;IACjC,OAAO,EAAE,YAAY,EAAE,CAAC;IAExB,mCAAmC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,uCAAuC;IACvC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAE5C,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IAEzC,sBAAsB;IACtB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IAE1C,6CAA6C;IAC7C,MAAM,CAAC,EAAE,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;IAE5C,0CAA0C;IAC1C,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IAE1C,sDAAsD;IACtD,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,6BAA6B;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAqVD,eAAO,MAAM,cAAc,EAAE,qBAAqB,CAAC,mBAAmB,CAMlE,CAAC;AAEL,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"OptionSelector.d.ts","sourceRoot":"","sources":["../../../src/components/blocks/OptionSelector.tsx"],"names":[],"mappings":"AAkDA,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,MAAM,WAAW,YAAY;IAC3B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IAEX,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,qDAAqD;IACrD,SAAS,EAAE,OAAO,CAAC;IAEnB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,iCAAiC;IACjC,OAAO,EAAE,YAAY,EAAE,CAAC;IAExB,mCAAmC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,uCAAuC;IACvC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAE5C,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IAEzC,sBAAsB;IACtB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IAE1C,6CAA6C;IAC7C,MAAM,CAAC,EAAE,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;IAE5C,0CAA0C;IAC1C,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IAE1C,sDAAsD;IACtD,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,6BAA6B;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAoWD,eAAO,MAAM,cAAc,EAAE,qBAAqB,CAAC,mBAAmB,CAMlE,CAAC;AAEL,eAAe,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormCheckbox.d.ts","sourceRoot":"","sources":["../../../src/components/forms/FormCheckbox.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEjG;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,SAAS,EAAE,WAAW,CAAC,OAAO,iBAAiB,CAAC;IACzF,2CAA2C;IAC3C,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CACtC;AAiED;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,qBAAqB,CAAC,iBAAiB,CAKhE,CAAC;AAEH,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"FormCheckbox.d.ts","sourceRoot":"","sources":["../../../src/components/forms/FormCheckbox.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEjG;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,SAAS,EAAE,WAAW,CAAC,OAAO,iBAAiB,CAAC;IACzF,2CAA2C;IAC3C,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CACtC;AAgFD;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,qBAAqB,CAAC,iBAAiB,CAKhE,CAAC;AAEH,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../src/components/forms/FormField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEjG;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,SAAS,EAAE,WAAW,CAAC,OAAO,cAAc,CAAC;IACnF,kCAAkC;IAClC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC5C,oCAAoC;IACpC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,KAAK,IAAI,CAAC;IACrF,yCAAyC;IACzC,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACjC,uCAAuC;IACvC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,6BAA6B;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AA+GD;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,qBAAqB,CAAC,cAAc,CAK1D,CAAC;AAEH,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../src/components/forms/FormField.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEjG;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,SAAS,EAAE,WAAW,CAAC,OAAO,cAAc,CAAC;IACnF,kCAAkC;IAClC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC5C,oCAAoC;IACpC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,KAAK,IAAI,CAAC;IACrF,yCAAyC;IACzC,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACjC,uCAAuC;IACvC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,6BAA6B;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AA8HD;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,qBAAqB,CAAC,cAAc,CAK1D,CAAC;AAEH,eAAe,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormSelect.d.ts","sourceRoot":"","sources":["../../../src/components/forms/FormSelect.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,eAAe,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEjG,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,SAAS,EAAE,WAAW,CAAC,OAAO,eAAe,CAAC;IACrF,kCAAkC;IAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC3C,qDAAqD;IACrD,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAiFD;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,qBAAqB,CAAC,eAAe,CAK5D,CAAC;AAEH,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"FormSelect.d.ts","sourceRoot":"","sources":["../../../src/components/forms/FormSelect.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,eAAe,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAA0B,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEjG,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,SAAS,EAAE,WAAW,CAAC,OAAO,eAAe,CAAC;IACrF,kCAAkC;IAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC3C,qDAAqD;IACrD,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAgGD;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,qBAAqB,CAAC,eAAe,CAK5D,CAAC;AAEH,eAAe,UAAU,CAAC"}
package/dist/index.esm.js CHANGED
@@ -21743,11 +21743,10 @@ function ImageGalleryView({
21743
21743
  if (variant === 'grid') {
21744
21744
  return jsxs(Box, {
21745
21745
  ...restProps,
21746
- children: [jsx(Grid, {
21747
- container: true,
21748
- spacing: 2,
21749
- children: displayImages.map((image, index) => jsx(Grid, {
21750
- item: true,
21746
+ children: [jsx(GridLayout, {
21747
+ columns: 4,
21748
+ spacing: "medium",
21749
+ children: displayImages.map((image, index) => jsx(GridCell, {
21751
21750
  xs: 6,
21752
21751
  sm: 4,
21753
21752
  md: 3,
@@ -21807,6 +21806,21 @@ function OptionSelectorView({
21807
21806
  label = 'Select Option',
21808
21807
  dataSource,
21809
21808
  bindingOptions,
21809
+ // Exclude ViewProps that conflict with MUI FormControl types
21810
+ margin: _margin,
21811
+ marginTop: _marginTop,
21812
+ marginRight: _marginRight,
21813
+ marginBottom: _marginBottom,
21814
+ marginLeft: _marginLeft,
21815
+ marginX: _marginX,
21816
+ marginY: _marginY,
21817
+ padding: _padding,
21818
+ paddingTop: _paddingTop,
21819
+ paddingRight: _paddingRight,
21820
+ paddingBottom: _paddingBottom,
21821
+ paddingLeft: _paddingLeft,
21822
+ paddingX: _paddingX,
21823
+ paddingY: _paddingY,
21810
21824
  ...restProps
21811
21825
  }) {
21812
21826
  const handleOptionClick = useCallback((optionId, available) => {
@@ -23035,6 +23049,21 @@ function FormFieldView({
23035
23049
  startAdornment,
23036
23050
  endAdornment,
23037
23051
  inputProps,
23052
+ // Exclude ViewProps that conflict with MUI FormControl types
23053
+ margin: _margin,
23054
+ marginTop: _marginTop,
23055
+ marginRight: _marginRight,
23056
+ marginBottom: _marginBottom,
23057
+ marginLeft: _marginLeft,
23058
+ marginX: _marginX,
23059
+ marginY: _marginY,
23060
+ padding: _padding,
23061
+ paddingTop: _paddingTop,
23062
+ paddingRight: _paddingRight,
23063
+ paddingBottom: _paddingBottom,
23064
+ paddingLeft: _paddingLeft,
23065
+ paddingX: _paddingX,
23066
+ paddingY: _paddingY,
23038
23067
  ...restProps
23039
23068
  }) {
23040
23069
  const fieldId = React.useId();
@@ -23131,6 +23160,21 @@ function FormSelectView({
23131
23160
  fullWidth = true,
23132
23161
  size = 'small',
23133
23162
  placeholder,
23163
+ // Exclude ViewProps that conflict with MUI FormControl types
23164
+ margin: _margin,
23165
+ marginTop: _marginTop,
23166
+ marginRight: _marginRight,
23167
+ marginBottom: _marginBottom,
23168
+ marginLeft: _marginLeft,
23169
+ marginX: _marginX,
23170
+ marginY: _marginY,
23171
+ padding: _padding,
23172
+ paddingTop: _paddingTop,
23173
+ paddingRight: _paddingRight,
23174
+ paddingBottom: _paddingBottom,
23175
+ paddingLeft: _paddingLeft,
23176
+ paddingX: _paddingX,
23177
+ paddingY: _paddingY,
23134
23178
  ...restProps
23135
23179
  }) {
23136
23180
  const handleChange = e => {
@@ -23205,6 +23249,21 @@ function FormCheckboxView({
23205
23249
  helperText,
23206
23250
  required = false,
23207
23251
  disabled = false,
23252
+ // Exclude ViewProps that conflict with MUI FormControl types
23253
+ margin: _margin,
23254
+ marginTop: _marginTop,
23255
+ marginRight: _marginRight,
23256
+ marginBottom: _marginBottom,
23257
+ marginLeft: _marginLeft,
23258
+ marginX: _marginX,
23259
+ marginY: _marginY,
23260
+ padding: _padding,
23261
+ paddingTop: _paddingTop,
23262
+ paddingRight: _paddingRight,
23263
+ paddingBottom: _paddingBottom,
23264
+ paddingLeft: _paddingLeft,
23265
+ paddingX: _paddingX,
23266
+ paddingY: _paddingY,
23208
23267
  ...restProps
23209
23268
  }) {
23210
23269
  const handleChange = e => {
package/dist/index.js CHANGED
@@ -21745,11 +21745,10 @@ function ImageGalleryView({
21745
21745
  if (variant === 'grid') {
21746
21746
  return jsxRuntime.jsxs(material.Box, {
21747
21747
  ...restProps,
21748
- children: [jsxRuntime.jsx(material.Grid, {
21749
- container: true,
21750
- spacing: 2,
21751
- children: displayImages.map((image, index) => jsxRuntime.jsx(material.Grid, {
21752
- item: true,
21748
+ children: [jsxRuntime.jsx(GridLayout, {
21749
+ columns: 4,
21750
+ spacing: "medium",
21751
+ children: displayImages.map((image, index) => jsxRuntime.jsx(GridCell, {
21753
21752
  xs: 6,
21754
21753
  sm: 4,
21755
21754
  md: 3,
@@ -21809,6 +21808,21 @@ function OptionSelectorView({
21809
21808
  label = 'Select Option',
21810
21809
  dataSource,
21811
21810
  bindingOptions,
21811
+ // Exclude ViewProps that conflict with MUI FormControl types
21812
+ margin: _margin,
21813
+ marginTop: _marginTop,
21814
+ marginRight: _marginRight,
21815
+ marginBottom: _marginBottom,
21816
+ marginLeft: _marginLeft,
21817
+ marginX: _marginX,
21818
+ marginY: _marginY,
21819
+ padding: _padding,
21820
+ paddingTop: _paddingTop,
21821
+ paddingRight: _paddingRight,
21822
+ paddingBottom: _paddingBottom,
21823
+ paddingLeft: _paddingLeft,
21824
+ paddingX: _paddingX,
21825
+ paddingY: _paddingY,
21812
21826
  ...restProps
21813
21827
  }) {
21814
21828
  const handleOptionClick = React.useCallback((optionId, available) => {
@@ -23037,6 +23051,21 @@ function FormFieldView({
23037
23051
  startAdornment,
23038
23052
  endAdornment,
23039
23053
  inputProps,
23054
+ // Exclude ViewProps that conflict with MUI FormControl types
23055
+ margin: _margin,
23056
+ marginTop: _marginTop,
23057
+ marginRight: _marginRight,
23058
+ marginBottom: _marginBottom,
23059
+ marginLeft: _marginLeft,
23060
+ marginX: _marginX,
23061
+ marginY: _marginY,
23062
+ padding: _padding,
23063
+ paddingTop: _paddingTop,
23064
+ paddingRight: _paddingRight,
23065
+ paddingBottom: _paddingBottom,
23066
+ paddingLeft: _paddingLeft,
23067
+ paddingX: _paddingX,
23068
+ paddingY: _paddingY,
23040
23069
  ...restProps
23041
23070
  }) {
23042
23071
  const fieldId = React.useId();
@@ -23133,6 +23162,21 @@ function FormSelectView({
23133
23162
  fullWidth = true,
23134
23163
  size = 'small',
23135
23164
  placeholder,
23165
+ // Exclude ViewProps that conflict with MUI FormControl types
23166
+ margin: _margin,
23167
+ marginTop: _marginTop,
23168
+ marginRight: _marginRight,
23169
+ marginBottom: _marginBottom,
23170
+ marginLeft: _marginLeft,
23171
+ marginX: _marginX,
23172
+ marginY: _marginY,
23173
+ padding: _padding,
23174
+ paddingTop: _paddingTop,
23175
+ paddingRight: _paddingRight,
23176
+ paddingBottom: _paddingBottom,
23177
+ paddingLeft: _paddingLeft,
23178
+ paddingX: _paddingX,
23179
+ paddingY: _paddingY,
23136
23180
  ...restProps
23137
23181
  }) {
23138
23182
  const handleChange = e => {
@@ -23207,6 +23251,21 @@ function FormCheckboxView({
23207
23251
  helperText,
23208
23252
  required = false,
23209
23253
  disabled = false,
23254
+ // Exclude ViewProps that conflict with MUI FormControl types
23255
+ margin: _margin,
23256
+ marginTop: _marginTop,
23257
+ marginRight: _marginRight,
23258
+ marginBottom: _marginBottom,
23259
+ marginLeft: _marginLeft,
23260
+ marginX: _marginX,
23261
+ marginY: _marginY,
23262
+ padding: _padding,
23263
+ paddingTop: _paddingTop,
23264
+ paddingRight: _paddingRight,
23265
+ paddingBottom: _paddingBottom,
23266
+ paddingLeft: _paddingLeft,
23267
+ paddingX: _paddingX,
23268
+ paddingY: _paddingY,
23210
23269
  ...restProps
23211
23270
  }) {
23212
23271
  const handleChange = e => {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "./manifest.schema.json",
3
- "version": "1.7.0",
3
+ "version": "1.7.1",
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.7.0",
12
- "file": "palette-default.1.7.0.css",
11
+ "version": "1.7.1",
12
+ "file": "palette-default.1.7.1.css",
13
13
  "primaryColor": "#007bff",
14
14
  "inlined": true,
15
- "fileMinified": "palette-default.1.7.0.min.css",
15
+ "fileMinified": "palette-default.1.7.1.min.css",
16
16
  "fileLatest": "palette-default.latest.css",
17
17
  "fileLatestMinified": "palette-default.latest.min.css"
18
18
  },
@@ -22,11 +22,11 @@
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.7.0",
26
- "file": "palette-autumn.1.7.0.css",
25
+ "version": "1.7.1",
26
+ "file": "palette-autumn.1.7.1.css",
27
27
  "primaryColor": "#ea580c",
28
28
  "inlined": false,
29
- "fileMinified": "palette-autumn.1.7.0.min.css",
29
+ "fileMinified": "palette-autumn.1.7.1.min.css",
30
30
  "fileLatest": "palette-autumn.latest.css",
31
31
  "fileLatestMinified": "palette-autumn.latest.min.css"
32
32
  },
@@ -36,11 +36,11 @@
36
36
  "description": "Sophisticated teal, bronze, and navy - perfect for premium retail and fashion brands",
37
37
  "author": "QwickApps",
38
38
  "license": "PolyForm-Shield-1.0.0",
39
- "version": "1.7.0",
40
- "file": "palette-boutique.1.7.0.css",
39
+ "version": "1.7.1",
40
+ "file": "palette-boutique.1.7.1.css",
41
41
  "primaryColor": "#3ca6b6",
42
42
  "inlined": false,
43
- "fileMinified": "palette-boutique.1.7.0.min.css",
43
+ "fileMinified": "palette-boutique.1.7.1.min.css",
44
44
  "fileLatest": "palette-boutique.latest.css",
45
45
  "fileLatestMinified": "palette-boutique.latest.min.css"
46
46
  },
@@ -50,11 +50,11 @@
50
50
  "description": "Modern purple gradient for creative and tech brands - inspired by cosmic nebulae",
51
51
  "author": "QwickApps",
52
52
  "license": "PolyForm-Shield-1.0.0",
53
- "version": "1.7.0",
54
- "file": "palette-cosmic.1.7.0.css",
53
+ "version": "1.7.1",
54
+ "file": "palette-cosmic.1.7.1.css",
55
55
  "primaryColor": "#8b5cf6",
56
56
  "inlined": false,
57
- "fileMinified": "palette-cosmic.1.7.0.min.css",
57
+ "fileMinified": "palette-cosmic.1.7.1.min.css",
58
58
  "fileLatest": "palette-cosmic.latest.css",
59
59
  "fileLatestMinified": "palette-cosmic.latest.min.css"
60
60
  },
@@ -64,11 +64,11 @@
64
64
  "description": "Deep blues, aqua teals, and seafoam greens - inspired by ocean depths",
65
65
  "author": "QwickApps",
66
66
  "license": "PolyForm-Shield-1.0.0",
67
- "version": "1.7.0",
68
- "file": "palette-ocean.1.7.0.css",
67
+ "version": "1.7.1",
68
+ "file": "palette-ocean.1.7.1.css",
69
69
  "primaryColor": "#0891b2",
70
70
  "inlined": false,
71
- "fileMinified": "palette-ocean.1.7.0.min.css",
71
+ "fileMinified": "palette-ocean.1.7.1.min.css",
72
72
  "fileLatest": "palette-ocean.latest.css",
73
73
  "fileLatestMinified": "palette-ocean.latest.min.css"
74
74
  },
@@ -78,11 +78,11 @@
78
78
  "description": "Fresh greens, soft pinks, and bright yellows - inspired by spring blooms",
79
79
  "author": "QwickApps",
80
80
  "license": "PolyForm-Shield-1.0.0",
81
- "version": "1.7.0",
82
- "file": "palette-spring.1.7.0.css",
81
+ "version": "1.7.1",
82
+ "file": "palette-spring.1.7.1.css",
83
83
  "primaryColor": "#16a34a",
84
84
  "inlined": false,
85
- "fileMinified": "palette-spring.1.7.0.min.css",
85
+ "fileMinified": "palette-spring.1.7.1.min.css",
86
86
  "fileLatest": "palette-spring.latest.css",
87
87
  "fileLatestMinified": "palette-spring.latest.min.css"
88
88
  },
@@ -92,11 +92,11 @@
92
92
  "description": "Cool blues, icy whites, and frosty grays - inspired by winter landscapes",
93
93
  "author": "QwickApps",
94
94
  "license": "PolyForm-Shield-1.0.0",
95
- "version": "1.7.0",
96
- "file": "palette-winter.1.7.0.css",
95
+ "version": "1.7.1",
96
+ "file": "palette-winter.1.7.1.css",
97
97
  "primaryColor": "#0077be",
98
98
  "inlined": false,
99
- "fileMinified": "palette-winter.1.7.0.min.css",
99
+ "fileMinified": "palette-winter.1.7.1.min.css",
100
100
  "fileLatest": "palette-winter.latest.css",
101
101
  "fileLatestMinified": "palette-winter.latest.min.css"
102
102
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qwickapps/react-framework",
3
- "version": "1.7.0",
3
+ "version": "1.7.1",
4
4
  "description": "Complete React framework with responsive navigation, flexible layouts, theming system, and reusable components for building modern applications.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",
@@ -29,7 +29,8 @@
29
29
  */
30
30
 
31
31
  import React, { useState, useCallback } from 'react';
32
- import { Box, IconButton, Modal, Grid, Skeleton } from '@mui/material';
32
+ import { Box, IconButton, Modal, Skeleton } from '@mui/material';
33
+ import { GridLayout, GridCell } from '../layout';
33
34
  import CloseIcon from '@mui/icons-material/Close';
34
35
  import ZoomInIcon from '@mui/icons-material/ZoomIn';
35
36
  import ChevronLeftIcon from '@mui/icons-material/ChevronLeft';
@@ -409,9 +410,9 @@ function ImageGalleryView({
409
410
  if (variant === 'grid') {
410
411
  return (
411
412
  <Box {...restProps}>
412
- <Grid container spacing={2}>
413
+ <GridLayout columns={4} spacing="medium">
413
414
  {displayImages.map((image, index) => (
414
- <Grid item xs={6} sm={4} md={3} key={index}>
415
+ <GridCell xs={6} sm={4} md={3} key={index}>
415
416
  <Box
416
417
  onClick={() => {
417
418
  setSelectedIndex(index);
@@ -441,9 +442,9 @@ function ImageGalleryView({
441
442
  }}
442
443
  />
443
444
  </Box>
444
- </Grid>
445
+ </GridCell>
445
446
  ))}
446
- </Grid>
447
+ </GridLayout>
447
448
  {renderZoomModal()}
448
449
  </Box>
449
450
  );
@@ -123,6 +123,21 @@ function OptionSelectorView({
123
123
  label = 'Select Option',
124
124
  dataSource,
125
125
  bindingOptions,
126
+ // Exclude ViewProps that conflict with MUI FormControl types
127
+ margin: _margin,
128
+ marginTop: _marginTop,
129
+ marginRight: _marginRight,
130
+ marginBottom: _marginBottom,
131
+ marginLeft: _marginLeft,
132
+ marginX: _marginX,
133
+ marginY: _marginY,
134
+ padding: _padding,
135
+ paddingTop: _paddingTop,
136
+ paddingRight: _paddingRight,
137
+ paddingBottom: _paddingBottom,
138
+ paddingLeft: _paddingLeft,
139
+ paddingX: _paddingX,
140
+ paddingY: _paddingY,
126
141
  ...restProps
127
142
  }: OptionSelectorProps) {
128
143
  const handleOptionClick = useCallback((optionId: string, available: boolean) => {
@@ -226,14 +241,14 @@ function OptionSelectorView({
226
241
  }
227
242
 
228
243
  // Buttons/Grid variant with visual modes
229
- const getLayoutStyles = () => {
244
+ const getLayoutStyles = (): React.CSSProperties => {
230
245
  if (variant === 'grid') {
231
246
  const minWidth = displayMode === 'text' ? 60 : sizeInPx + 16;
232
247
  return {
233
248
  display: 'grid',
234
249
  gridTemplateColumns: `repeat(auto-fill, minmax(${minWidth}px, 1fr))`,
235
250
  gap: displayMode === 'text' ? 1 : 2,
236
- };
251
+ } as React.CSSProperties;
237
252
  }
238
253
 
239
254
  return {
@@ -241,7 +256,7 @@ function OptionSelectorView({
241
256
  flexDirection: layout === 'vertical' ? 'column' : 'row',
242
257
  flexWrap: layout === 'wrap' ? 'wrap' : 'nowrap',
243
258
  gap: 1,
244
- };
259
+ } as React.CSSProperties;
245
260
  };
246
261
 
247
262
  return (
@@ -42,6 +42,21 @@ function FormCheckboxView({
42
42
  helperText,
43
43
  required = false,
44
44
  disabled = false,
45
+ // Exclude ViewProps that conflict with MUI FormControl types
46
+ margin: _margin,
47
+ marginTop: _marginTop,
48
+ marginRight: _marginRight,
49
+ marginBottom: _marginBottom,
50
+ marginLeft: _marginLeft,
51
+ marginX: _marginX,
52
+ marginY: _marginY,
53
+ padding: _padding,
54
+ paddingTop: _paddingTop,
55
+ paddingRight: _paddingRight,
56
+ paddingBottom: _paddingBottom,
57
+ paddingLeft: _paddingLeft,
58
+ paddingX: _paddingX,
59
+ paddingY: _paddingY,
45
60
  ...restProps
46
61
  }: FormCheckboxProps) {
47
62
  const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {
@@ -63,6 +63,21 @@ function FormFieldView({
63
63
  startAdornment,
64
64
  endAdornment,
65
65
  inputProps,
66
+ // Exclude ViewProps that conflict with MUI FormControl types
67
+ margin: _margin,
68
+ marginTop: _marginTop,
69
+ marginRight: _marginRight,
70
+ marginBottom: _marginBottom,
71
+ marginLeft: _marginLeft,
72
+ marginX: _marginX,
73
+ marginY: _marginY,
74
+ padding: _padding,
75
+ paddingTop: _paddingTop,
76
+ paddingRight: _paddingRight,
77
+ paddingBottom: _paddingBottom,
78
+ paddingLeft: _paddingLeft,
79
+ paddingX: _paddingX,
80
+ paddingY: _paddingY,
66
81
  ...restProps
67
82
  }: FormFieldProps) {
68
83
  const fieldId = React.useId();
@@ -54,6 +54,21 @@ function FormSelectView({
54
54
  fullWidth = true,
55
55
  size = 'small',
56
56
  placeholder,
57
+ // Exclude ViewProps that conflict with MUI FormControl types
58
+ margin: _margin,
59
+ marginTop: _marginTop,
60
+ marginRight: _marginRight,
61
+ marginBottom: _marginBottom,
62
+ marginLeft: _marginLeft,
63
+ marginX: _marginX,
64
+ marginY: _marginY,
65
+ padding: _padding,
66
+ paddingTop: _paddingTop,
67
+ paddingRight: _paddingRight,
68
+ paddingBottom: _paddingBottom,
69
+ paddingLeft: _paddingLeft,
70
+ paddingX: _paddingX,
71
+ paddingY: _paddingY,
57
72
  ...restProps
58
73
  }: FormSelectProps) {
59
74
  const handleChange = (e: { target: { value: unknown } }) => {