@pixelated-tech/components 3.2.11 → 3.2.12

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.
@@ -315,9 +315,11 @@ import { SmartImage } from '@pixelated-tech/components';
315
315
 
316
316
  ### WordPress Components
317
317
 
318
+ WordPress integration components with automatic Photon CDN URL processing for optimized image delivery.
319
+
318
320
  #### BlogPostList
319
321
 
320
- Displays a list of WordPress blog posts with pagination support.
322
+ Displays a list of WordPress blog posts with pagination support. Automatically converts WordPress Photon CDN URLs to direct image URLs for better Next.js optimization.
321
323
 
322
324
  ```tsx
323
325
  import { BlogPostList } from '@pixelated-tech/components';
@@ -332,7 +334,7 @@ import { BlogPostList } from '@pixelated-tech/components';
332
334
 
333
335
  | Prop | Type | Default | Description |
334
336
  |------|------|---------|-------------|
335
- | `site` | `string` | - | WordPress site identifier (e.g., 'your-blog.wordpress.com') |
337
+ | `site` | `string` | - | WordPress site identifier (e.g., 'blog.pixelated.tech' or 'your-blog.wordpress.com') |
336
338
  | `count` | `number` | - | Number of posts to fetch (undefined = all) |
337
339
  | `posts` | `BlogPostType[]` | - | Pre-fetched posts array |
338
340
  | `showCategories` | `boolean` | `true` | Whether to display post categories |
@@ -1427,4 +1429,4 @@ When adding new components, please:
1427
1429
 
1428
1430
  ---
1429
1431
 
1430
- *This documentation is automatically updated when components are modified. Last updated: $(date)*
1432
+ *This documentation is automatically updated when components are modified. Last updated: December 17, 2025*
package/README.md CHANGED
@@ -18,7 +18,7 @@
18
18
  <h3 align="center">Pixelated Components</h3>
19
19
 
20
20
  <p align="center">
21
- project_description
21
+ A comprehensive React component library for modern web development, featuring CMS integrations, UI components, and SEO optimization tools.
22
22
  <br />
23
23
  <a href="https://github.com/brianwhaley/pixelated-components"><strong>Explore the docs »</strong></a>
24
24
  <br />
@@ -107,7 +107,7 @@ Reusable UI components for common patterns:
107
107
 
108
108
  ### CMS Integration
109
109
  Headless CMS and content management components:
110
- - **WordPress** - Blog post integration and display
110
+ - **WordPress** - Blog post integration and display with automatic Photon CDN URL processing
111
111
  - **Contentful** - Headless CMS components and utilities
112
112
  - **PageBuilder** - Dynamic page construction from JSON
113
113
  - **PageEngine** - Advanced page rendering with Contentful integration
@@ -173,18 +173,17 @@ npm run storybook
173
173
 
174
174
  ### Overview
175
175
 
176
- **Current Status**: ✅ 2,037 tests passing across 59 test files (all tests passing)
176
+ **Current Status**: ✅ 2,184 tests passing across 59 test files (7 skipped)
177
177
 
178
178
  | Metric | Value |
179
179
  |--------|-------|
180
- | Test Files | 58 |
181
- | Total Tests | 2,038 |
182
- | Components Tested | 52/52 (100%) |
183
- | Utility Modules Tested | 2/2 (100%) |
184
- | Coverage (Statements) | 66.81% |
185
- | Coverage (Lines) | 70.31% |
186
- | Coverage (Functions) | 74.59% |
187
- | Coverage (Branches) | 57.62% |
180
+ | Test Files | 59 |
181
+ | Total Tests | 2,184 |
182
+ | Skipped Tests | 7 |
183
+ | Coverage (Statements) | 79.26% |
184
+ | Coverage (Lines) | 82.73% |
185
+ | Coverage (Functions) | 84.73% |
186
+ | Coverage (Branches) | 67.19% |
188
187
  | Test Framework | Vitest 4.x |
189
188
  | Testing Library | @testing-library/react + jsdom |
190
189
 
@@ -199,13 +198,13 @@ npm run test:run # Single run (for CI)
199
198
 
200
199
  ### Component Coverage
201
200
 
202
- **50 of 50 Frontend Components + 1 Utility Module Fully Tested (100%)**
201
+ **52 of 52 Frontend Components + 2 Utility Modules Fully Tested (100%)**
203
202
 
204
203
  #### Component Coverage (Sorted by Statement Coverage)
205
204
  - **sitemap.ts**: 100% statements
206
205
  - **google.reviews.functions.ts**: 100% statements
207
206
  - **googlesearch.tsx**: 100% statements
208
- - **formvalidations.tsx**: 100% statements (↑ 92.69 points)
207
+ - **formvalidations.tsx**: 100% statements
209
208
  - **tiles.tsx**: 100% statements
210
209
  - **markdown.tsx**: 100% statements
211
210
  - **buzzwordbingo.tsx**: 100% statements
@@ -217,15 +216,16 @@ npm run test:run # Single run (for CI)
217
216
  - **sidepanel.tsx**: 97.5% statements
218
217
  - **resume.tsx**: 94.38% statements
219
218
  - **callout.tsx**: 93.75% statements
220
- - **contentful.delivery.ts**: 92.5% statements (↑ 45 points)
219
+ - **contentful.delivery.ts**: 92.5% statements
221
220
  - **css.tsx**: 91.42% statements
222
221
  - **functions.ts**: 90.9% statements
223
222
  - **config.client.tsx**: 90% statements
224
223
  - **api.ts**: 87.5% statements
225
224
  - **loading.tsx**: 85.71% statements
226
- - **table.tsx**: 84.48% statements (↑ 60.35 points)
227
- - **cloudinary.ts**: 83.33% statements (↑ 58.33 points)
225
+ - **table.tsx**: 84.48% statements
226
+ - **cloudinary.ts**: 83.33% statements
228
227
  - **shoppingcart.functions.ts**: 81.69% statements
228
+ - **carousel.tsx**: 76.19% statements
229
229
  - **nerdjoke.tsx**: 70.58% statements
230
230
  - **menu-accordion.tsx**: 68.13% statements
231
231
  - **carousel.tsx**: 58.49% statements
@@ -233,11 +233,17 @@ npm run test:run # Single run (for CI)
233
233
 
234
234
  ### Test Configuration
235
235
 
236
- **Coverage Targets** (Updated - Focus on Statement Coverage):
237
- - **Statements**: 66.81% ✅ ACHIEVED (Target: 70%)
238
- - **Lines**: 70.31% ✅ ACHIEVED
239
- - **Functions**: 74.59% ✅ ACHIEVED
240
- - **Branches**: 57.62% (Focus area for future)
236
+ **Coverage Summary (latest run)**:
237
+ - **Statements**: 79.26%
238
+ - **Lines**: 82.73%
239
+ - **Functions**: 84.73%
240
+ - **Branches**: 67.19%
241
+
242
+ **Coverage Targets** (configured in `vitest.config.ts`):
243
+ - **Statements**: 70% threshold
244
+ - **Lines**: 70% threshold
245
+ - **Functions**: 70% threshold
246
+ - **Branches**: 60% threshold
241
247
 
242
248
  **Coverage Thresholds in vitest.config.ts**:
243
249
  - Lines: 70% threshold
@@ -88,20 +88,20 @@ export function SmartImage(props) {
88
88
  // if(Array.isArray(src))
89
89
  const finalSrc = newProps.cloudinaryEnv
90
90
  ? buildCloudinaryUrl({
91
- src: src,
91
+ src: newProps.src,
92
92
  productEnv: newProps.cloudinaryEnv,
93
93
  cloudinaryDomain: newProps.cloudinaryDomain,
94
94
  quality,
95
95
  width: newProps.width ?? undefined,
96
96
  transforms: newProps.cloudinaryTransforms ?? undefined
97
97
  })
98
- : String(src);
98
+ : String(newProps.src);
99
99
  let responsiveSrcSet;
100
100
  let responsiveSizes;
101
101
  if (newProps.cloudinaryEnv) {
102
102
  if (newProps.width) {
103
103
  const widths = [Math.ceil(newProps.width * 0.5), newProps.width, Math.ceil(newProps.width * 1.5), Math.ceil(newProps.width * 2)];
104
- responsiveSrcSet = generateSrcSet(String(src), newProps.cloudinaryEnv, widths, {
104
+ responsiveSrcSet = generateSrcSet(String(newProps.src), newProps.cloudinaryEnv, widths, {
105
105
  quality,
106
106
  transforms: newProps.cloudinaryTransforms ?? undefined,
107
107
  cloudinaryDomain: newProps.cloudinaryDomain
@@ -110,7 +110,7 @@ export function SmartImage(props) {
110
110
  }
111
111
  else {
112
112
  const breakpoints = [320, 640, 768, 1024, 1280, 1536];
113
- responsiveSrcSet = generateSrcSet(String(src), newProps.cloudinaryEnv, breakpoints, {
113
+ responsiveSrcSet = generateSrcSet(String(newProps.src), newProps.cloudinaryEnv, breakpoints, {
114
114
  quality,
115
115
  transforms: newProps.cloudinaryTransforms ?? undefined,
116
116
  cloudinaryDomain: newProps.cloudinaryDomain
@@ -25,7 +25,12 @@ export async function getWordPressItems(props) {
25
25
  if (batch.length === 0) {
26
26
  break; // no more posts
27
27
  }
28
- posts.push(...batch);
28
+ // Process Photon URLs in featured images
29
+ const processedBatch = batch.map(post => ({
30
+ ...post,
31
+ featured_image: post.featured_image ? photonToOriginalUrl(post.featured_image) : post.featured_image
32
+ }));
33
+ posts.push(...processedBatch);
29
34
  if (requested && posts.length >= requested) {
30
35
  break; // collected enough
31
36
  }
@@ -103,3 +108,27 @@ export async function getWordPressCategories(props) {
103
108
  }
104
109
  return categories; // Return the complete list of categories
105
110
  }
111
+ /**
112
+ * Convert a WordPress Photon CDN URL to the original direct image URL
113
+ * @param photonUrl - The Photon CDN URL (e.g., https://i0.wp.com/domain.com/path)
114
+ * @returns The original direct image URL (e.g., https://domain.com/path)
115
+ */
116
+ export function photonToOriginalUrl(photonUrl) {
117
+ if (typeof photonUrl !== 'string' || !photonUrl.includes('i0.wp.com/')) {
118
+ return photonUrl; // Return unchanged if not a Photon URL
119
+ }
120
+ try {
121
+ // Photon URL format: https://i0.wp.com/domain.com/path/to/image.jpg?params
122
+ // Extract original: https://domain.com/path/to/image.jpg
123
+ const photonUrlObj = new URL(photonUrl);
124
+ const pathWithoutLeadingSlash = photonUrlObj.pathname.slice(1); // Remove leading /
125
+ const firstSlashIndex = pathWithoutLeadingSlash.indexOf('/');
126
+ const domain = pathWithoutLeadingSlash.slice(0, firstSlashIndex);
127
+ const path = pathWithoutLeadingSlash.slice(firstSlashIndex);
128
+ return `https://${domain}${path}`;
129
+ }
130
+ catch (e) {
131
+ console.warn('Failed to parse Photon URL:', photonUrl, e);
132
+ return photonUrl; // Return original on error
133
+ }
134
+ }
@@ -8,11 +8,11 @@
8
8
  display: inline-block;
9
9
  }
10
10
 
11
- details.menuExpandoWrapper {
11
+ details.menu-expando-wrapper {
12
12
  display: inline-block;
13
13
  }
14
14
 
15
- details.menuExpandoWrapper > summary {
15
+ details.menu-expando-wrapper > summary {
16
16
  cursor: pointer;
17
17
  user-select: none;
18
18
  background: #336699;
@@ -24,26 +24,31 @@ details.menuExpandoWrapper > summary {
24
24
  transition: background 0.3s ease;
25
25
  }
26
26
 
27
- details.menuExpandoWrapper > summary:hover {
27
+
28
+ details.menu-expando-wrapper > summary:hover {
28
29
  background: #2d5a8a;
29
30
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
30
31
  }
31
32
 
32
- details.menuExpandoWrapper > summary::marker,
33
- details.menuExpandoWrapper > summary::-webkit-details-marker {
33
+
34
+ details.menu-expando-wrapper > summary::marker,
35
+ details.menu-expando-wrapper > summary::-webkit-details-marker {
34
36
  display: none;
35
37
  }
36
38
 
37
- details.menuExpandoWrapper > summary::before {
39
+
40
+ details.menu-expando-wrapper > summary::before {
38
41
  content: '▼';
39
42
  display: inline-block;
40
43
  }
41
44
 
42
- details.menuExpandoWrapper[open] > summary::before {
45
+
46
+ details.menu-expando-wrapper[open] > summary::before {
43
47
  content: '▲';
44
48
  }
45
49
 
46
- details.menuExpandoWrapper ul {
50
+
51
+ details.menu-expando-wrapper ul {
47
52
  margin-top: 10px;
48
53
  padding-left: 20px;
49
54
  list-style: none;
@@ -51,17 +56,17 @@ details.menuExpandoWrapper ul {
51
56
  max-height: 1000px;
52
57
  }
53
58
 
54
- details.menuExpandoWrapper li {
59
+ details.menu-expando-wrapper li {
55
60
  margin: 5px 0;
56
61
  }
57
62
 
58
- details.menuExpandoWrapper a {
63
+ details.menu-expando-wrapper a {
59
64
  color: #333;
60
65
  text-decoration: none;
61
66
  transition: color 0.2s ease;
62
67
  }
63
68
 
64
- details.menuExpandoWrapper a:hover {
69
+ details.menu-expando-wrapper a:hover {
65
70
  color: #336699;
66
71
  text-decoration: underline;
67
72
  }
@@ -109,7 +109,7 @@ export function MenuExpando(props) {
109
109
  }
110
110
  return myItems;
111
111
  }
112
- return (_jsx("div", { className: "menuExpando", id: "menuExpando", children: _jsxs("details", { className: "menuExpandoWrapper", id: "menuExpandoWrapper", ref: detailsRef, children: [_jsx("summary", {}), _jsx("ul", { ref: ulRef, children: generateMenuItems() })] }) }));
112
+ return (_jsx("div", { className: "menuExpando", id: "menuExpando", children: _jsxs("details", { className: "menu-expando-wrapper", id: "menu-expando-wrapper", ref: detailsRef, children: [_jsx("summary", {}), _jsx("ul", { ref: ulRef, children: generateMenuItems() })] }) }));
113
113
  }
114
114
  MenuExpando.propTypes = {
115
115
  menuItems: PropTypes.oneOfType([
@@ -132,7 +132,7 @@ export function MenuExpandoButton() {
132
132
  function handleMenuExpandoButtonClick(event) {
133
133
  event.preventDefault();
134
134
  event.stopPropagation();
135
- const details = document.getElementById('menuExpandoWrapper');
135
+ const details = document.getElementById('menu-expando-wrapper');
136
136
  if (details)
137
137
  details.open = !details.open;
138
138
  }
@@ -174,7 +174,8 @@ export function FormBuild(props) {
174
174
  function handlePhaseOneSubmit(event) {
175
175
  // GENERATE THE JSON TO DISPLAY A FORM TO ADD A FIELD - EXTERNAL
176
176
  const target = event.target;
177
- const myType = target.type.value;
177
+ const typeElement = target.elements.namedItem('type');
178
+ const myType = typeElement ? typeElement.value : '';
178
179
  const myComponent = mapTypeToComponent(myType);
179
180
  const fieldJSON = generateFieldJSON(myComponent, myType);
180
181
  props.setFormData(fieldJSON);
@@ -60,4 +60,10 @@ export declare namespace getWordPressCategories {
60
60
  baseURL: PropTypes.Requireable<string>;
61
61
  };
62
62
  }
63
+ /**
64
+ * Convert a WordPress Photon CDN URL to the original direct image URL
65
+ * @param photonUrl - The Photon CDN URL (e.g., https://i0.wp.com/domain.com/path)
66
+ * @returns The original direct image URL (e.g., https://domain.com/path)
67
+ */
68
+ export declare function photonToOriginalUrl(photonUrl: string): string;
63
69
  //# sourceMappingURL=wordpress.functions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wordpress.functions.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/wordpress.functions.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAWnD,MAAM,MAAM,YAAY,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE;QAChB,GAAG,EAAE,MAAM,CAAC;KACZ,CAAA;IACD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC,CAAC;AAMF,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACnF,wBAAsB,iBAAiB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,uCA2BhG;yBA3BqB,iBAAiB;;;;;;;AAiCvC,MAAM,MAAM,qBAAqB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAIF,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC7F,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,qBAAqB,EAAE,CAuClF;yBAvCe,sBAAsB;;;;;AA8CtC,MAAM,MAAM,oBAAoB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CACjB,CAAC;AAKF,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC7F,wBAAsB,sBAAsB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,8BAerF;yBAfqB,sBAAsB"}
1
+ {"version":3,"file":"wordpress.functions.d.ts","sourceRoot":"","sources":["../../../../src/components/cms/wordpress.functions.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAWnD,MAAM,MAAM,YAAY,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE;QAChB,GAAG,EAAE,MAAM,CAAC;KACZ,CAAA;IACD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC,CAAC;AAMF,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACnF,wBAAsB,iBAAiB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,uCAkChG;yBAlCqB,iBAAiB;;;;;;;AAwCvC,MAAM,MAAM,qBAAqB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAIF,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC7F,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,qBAAqB,EAAE,CAuClF;yBAvCe,sBAAsB;;;;;AA8CtC,MAAM,MAAM,oBAAoB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CACjB,CAAC;AAKF,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC7F,wBAAsB,sBAAsB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,8BAerF;yBAfqB,sBAAsB;;;;;;AAiB5C;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAkB7D"}
@@ -1 +1 @@
1
- {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../../../src/components/pagebuilder/form/form.tsx"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAInD,OAAO,YAAY,CAAC;AAcpB,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC;AACrE,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,2CA+D/C;yBA/De,UAAU;;;;;;;;;AAmF1B,wBAAgB,WAAW,4CA4D1B;AAaD,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC;AAC5D,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,2CAmF7C;yBAnFe,SAAS;;;;;AAgGzB,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,SAAS,CAAC,CAAC;AAC3E,wBAAgB,aAAa,CAAC,KAAK,EAAE,iBAAiB,2CAyCrD;yBAzCe,aAAa;;;;;AA8C7B,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,SAAS,CAAC,CAAC;AACpE,wBAAgB,aAAa,CAAC,KAAK,EAAE,iBAAiB,2CAmCrD;yBAnCe,aAAa;;;;;AA0C7B,KAAK,qBAAqB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAC5E,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,qBAAqB,2CAmL7D;yBAnLe,iBAAiB"}
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../../../src/components/pagebuilder/form/form.tsx"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAInD,OAAO,YAAY,CAAC;AAcpB,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC;AACrE,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,2CA+D/C;yBA/De,UAAU;;;;;;;;;AAmF1B,wBAAgB,WAAW,4CA4D1B;AAaD,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC;AAC5D,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,2CAoF7C;yBApFe,SAAS;;;;;AAiGzB,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,SAAS,CAAC,CAAC;AAC3E,wBAAgB,aAAa,CAAC,KAAK,EAAE,iBAAiB,2CAyCrD;yBAzCe,aAAa;;;;;AA8C7B,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,SAAS,CAAC,CAAC;AACpE,wBAAgB,aAAa,CAAC,KAAK,EAAE,iBAAiB,2CAmCrD;yBAnCe,aAAa;;;;;AA0C7B,KAAK,qBAAqB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAC5E,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,qBAAqB,2CAmL7D;yBAnLe,iBAAiB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=wordpress.functions.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wordpress.functions.test.d.ts","sourceRoot":"","sources":["../../../src/tests/wordpress.functions.test.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pixelated-tech/components",
3
- "version": "3.2.11",
3
+ "version": "3.2.12",
4
4
  "private": false,
5
5
  "author": {
6
6
  "name": "Pixelated Technologies",
@@ -96,7 +96,7 @@
96
96
  "@testing-library/react": "^16.3.1",
97
97
  "@testing-library/user-event": "^14.6.1",
98
98
  "@types/md5": "^2.3.6",
99
- "@types/node": "^25.0.2",
99
+ "@types/node": "^25.0.3",
100
100
  "@types/prop-types": "^15.7.15",
101
101
  "@types/react": "^19.2.7",
102
102
  "@types/react-dom": "^19.2.3",