@pixelated-tech/components 3.3.1 → 3.3.3

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.
@@ -106,6 +106,13 @@ export function getAccordionMenuData(myRoutes) {
106
106
  return menuItems;
107
107
  }
108
108
  export function generateMetaTags(props) {
109
- const { title, description, keywords, site_name, email, origin, url, image, image_height, image_width, favicon } = props;
109
+ const { title, description, keywords, origin, url, site_name: prop_site_name, email: prop_email, image: prop_image, image_height: prop_image_height, image_width: prop_image_width, favicon: prop_favicon, siteInfo } = props;
110
+ // Use props if provided, otherwise fall back to siteInfo
111
+ const site_name = prop_site_name || siteInfo?.name;
112
+ const email = prop_email || siteInfo?.email;
113
+ const image = prop_image || siteInfo?.image;
114
+ const image_height = prop_image_height || siteInfo?.image_height;
115
+ const image_width = prop_image_width || siteInfo?.image_width;
116
+ const favicon = prop_favicon || siteInfo?.favicon;
110
117
  return (_jsxs(_Fragment, { children: [_jsx("title", { children: title }), _jsx("meta", { charSet: "UTF-8" }), _jsx("meta", { httpEquiv: "content-type", content: "text/html; charset=UTF-8" }), _jsx("meta", { httpEquiv: 'Expires', content: '0' }), _jsx("meta", { httpEquiv: 'Pragma', content: 'no-cache' }), _jsx("meta", { httpEquiv: 'Cache-Control', content: 'no-cache' }), _jsx("meta", { name: "application-name", content: site_name }), _jsx("meta", { name: "author", content: site_name + ", " + email }), _jsx("meta", { name: 'copyright', content: site_name }), _jsx("meta", { name: "creator", content: site_name }), _jsx("meta", { name: "description", content: description }), _jsx("meta", { name: "keywords", content: keywords }), _jsx("meta", { name: 'language', content: 'EN' }), _jsx("meta", { name: 'owner', content: site_name }), _jsx("meta", { name: "publisher", content: site_name }), _jsx("meta", { name: 'rating', content: 'General' }), _jsx("meta", { name: 'reply-to', content: email }), _jsx("meta", { name: "robots", content: "index, follow" }), _jsx("meta", { name: 'url', content: url }), _jsx("meta", { name: "viewport", content: "width=device-width, initial-scale=1.0, shrink-to-fit=no" }), _jsx("meta", { property: "og:description", content: description }), _jsx("meta", { property: 'og:email', content: email }), _jsx("meta", { property: "og:image", content: image }), _jsx("meta", { property: "og:image:height", content: image_height }), _jsx("meta", { property: "og:image:width", content: image_width }), _jsx("meta", { property: "og:locale", content: "en_US" }), _jsx("meta", { property: "og:site_name", content: site_name }), _jsx("meta", { property: "og:title", content: title }), _jsx("meta", { property: "og:type", content: "website" }), _jsx("meta", { property: "og:url", content: url }), _jsx("meta", { itemProp: "name", content: site_name }), _jsx("meta", { itemProp: "url", content: url }), _jsx("meta", { itemProp: "description", content: description }), _jsx("meta", { itemProp: "thumbnailUrl", content: image }), _jsx("meta", { property: "twitter:domain", content: new URL(origin).hostname }), _jsx("meta", { property: "twitter:url", content: url }), _jsx("meta", { name: "twitter:card", content: "summary_large_image" }), _jsx("meta", { name: "twitter:creator", content: site_name }), _jsx("meta", { name: "twitter:description", content: description }), _jsx("meta", { name: "twitter:image", content: image }), _jsx("meta", { name: "twitter:image:height", content: image_height }), _jsx("meta", { name: "twitter:image:width", content: image_width }), _jsx("meta", { name: "twitter:title", content: title }), _jsx("link", { rel: "author", href: origin }), _jsx("link", { rel: "canonical", href: url }), _jsx("link", { rel: "icon", type: "image/x-icon", href: favicon }), _jsx("link", { rel: "shortcut icon", type: "image/x-icon", href: favicon }), _jsx("link", { rel: "manifest", href: "/manifest.webmanifest" }), _jsx("link", { rel: "preconnect", href: "https://images.ctfassets.net/" }), _jsx("link", { rel: "preconnect", href: "https://res.cloudinary.com/" }), _jsx("link", { rel: "preconnect", href: "https://farm2.static.flickr.com" }), _jsx("link", { rel: "preconnect", href: "https://farm6.static.flickr.com" }), _jsx("link", { rel: "preconnect", href: "https://farm8.static.flickr.com" }), _jsx("link", { rel: "preconnect", href: "https://farm66.static.flickr.com" })] }));
111
118
  }
@@ -1,8 +1,25 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { generateGoogleFontsUrl } from './google-fonts';
3
+ import { ALL_WEBSAFE_FONTS } from './fonts';
3
4
  export function VisualDesignStyles({ visualdesign }) {
4
5
  const tokens = visualdesign || {};
5
6
  const resolveValue = (v) => (v && typeof v === 'object' && 'value' in v) ? v.value : v;
7
+ // Check if Google Fonts are being used
8
+ const hasGoogleFonts = () => {
9
+ for (const [key, val] of Object.entries(tokens)) {
10
+ const value = resolveValue(val);
11
+ if ((key === 'header-font' || key === 'body-font') && typeof value === 'string') {
12
+ // Check if the font stack contains non-web-safe fonts
13
+ const fonts = value.split(',').map((f) => f.trim().replace(/["']/g, ''));
14
+ for (const font of fonts) {
15
+ if (!ALL_WEBSAFE_FONTS.some(f => f.value === font)) {
16
+ return true;
17
+ }
18
+ }
19
+ }
20
+ }
21
+ return false;
22
+ };
6
23
  const varLines = [];
7
24
  // Always include base font sizing first (from pixelated.visualdesign.scss)
8
25
  varLines.push('--font-size1-min: 2.00rem;', '--font-size1-max: 3.00rem;', '--font-size2-min: 1.35rem;', '--font-size2-max: 1.75rem;', '--font-size3-min: 1.17rem;', '--font-size3-max: 1.35rem;', '--font-size4-min: 1.00rem;', '--font-size4-max: 1.25rem;', '--font-size5-min: 0.83rem;', '--font-size5-max: 1.00rem;', '--font-size6-min: 0.67rem;', '--font-size6-max: 0.85rem;', '--font-min-screen: 375px;', '--font-max-screen: 1440px;');
@@ -57,7 +74,8 @@ export function VisualDesignStyles({ visualdesign }) {
57
74
  '',
58
75
  ...fontLines
59
76
  ].join('\n');
60
- return _jsx("style", { dangerouslySetInnerHTML: { __html: css } });
77
+ const googleFontsUsed = hasGoogleFonts();
78
+ return (_jsxs(_Fragment, { children: [googleFontsUsed && (_jsxs(_Fragment, { children: [_jsx("link", { rel: "preconnect", href: "https://fonts.googleapis.com" }), _jsx("link", { rel: "preconnect", href: "https://fonts.gstatic.com", crossOrigin: "anonymous" })] })), _jsx("style", { dangerouslySetInnerHTML: { __html: css } })] }));
61
79
  }
62
80
  /**
63
81
  * Component to handle Google Fonts imports - should be used in the document head
@@ -69,8 +87,7 @@ export function GoogleFontsImports({ visualdesign }) {
69
87
  for (const [key, val] of Object.entries(tokens)) {
70
88
  if (key.endsWith('-primary') && typeof val === 'string' && val.trim()) {
71
89
  // Only include fonts that are not web-safe (web-safe fonts don't need Google Fonts import)
72
- const webSafeFonts = ['Arial', 'Helvetica', 'Times New Roman', 'Times', 'Courier New', 'Courier', 'Georgia', 'Palatino', 'Garamond', 'Bookman', 'Comic Sans MS', 'Trebuchet MS', 'Arial Black', 'Impact', 'Lucida Sans Unicode', 'Lucida Grande', 'MS Sans Serif', 'MS Serif', 'New York', 'System', 'Apple System', 'BlinkMacSystemFont', 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue'];
73
- if (!webSafeFonts.includes(val.trim())) {
90
+ if (!ALL_WEBSAFE_FONTS.some(f => f.value === val.trim())) {
74
91
  fonts.push(val.trim());
75
92
  }
76
93
  }
@@ -2,37 +2,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState, useEffect, useMemo } from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
  import { getFontOptions } from './google-fonts';
5
+ import { WEB_SAFE_FONTS, GENERIC_FAMILIES } from './fonts';
5
6
  import './FontSelector.css';
6
- const WEBSafe_FONTS = [
7
- { value: 'Arial', label: 'Arial' },
8
- { value: 'Bookman', label: 'Bookman' },
9
- { value: 'Comic Sans MS', label: 'Comic Sans MS' },
10
- { value: 'Courier New', label: 'Courier New' },
11
- { value: 'Garamond', label: 'Garamond' },
12
- { value: 'Geneva', label: 'Geneva' },
13
- { value: 'Georgia', label: 'Georgia' },
14
- { value: 'Helvetica', label: 'Helvetica' },
15
- { value: 'Impact', label: 'Impact' },
16
- { value: 'Lucida Console', label: 'Lucida Console' },
17
- { value: 'Monaco', label: 'Monaco' },
18
- { value: 'Palatino', label: 'Palatino' },
19
- { value: 'Tahoma', label: 'Tahoma' },
20
- { value: 'Times New Roman', label: 'Times New Roman' },
21
- { value: 'Trebuchet MS', label: 'Trebuchet MS' },
22
- { value: 'Verdana', label: 'Verdana' },
23
- ];
24
- const GENERIC_FAMILIES = [
25
- { value: 'cursive', label: 'cursive' },
26
- { value: 'fantasy', label: 'fantasy' },
27
- { value: 'monospace', label: 'monospace' },
28
- { value: 'sans-serif', label: 'sans-serif' },
29
- { value: 'serif', label: 'serif' },
30
- { value: 'system-ui', label: 'system-ui' },
31
- { value: 'ui-monospace', label: 'ui-monospace' },
32
- { value: 'ui-rounded', label: 'ui-rounded' },
33
- { value: 'ui-sans-serif', label: 'ui-sans-serif' },
34
- { value: 'ui-serif', label: 'ui-serif' },
35
- ];
36
7
  export function FontSelector({ id, name, label, fontType, required = false, placeholder, value = '', onChange }) {
37
8
  const [inputValue, setInputValue] = useState(value);
38
9
  const [googleFonts, setGoogleFonts] = useState([]);
@@ -56,7 +27,7 @@ export function FontSelector({ id, name, label, fontType, required = false, plac
56
27
  case 'google':
57
28
  return googleFonts;
58
29
  case 'websafe':
59
- return WEBSafe_FONTS;
30
+ return WEB_SAFE_FONTS;
60
31
  case 'generic':
61
32
  return GENERIC_FAMILIES;
62
33
  default:
@@ -0,0 +1,51 @@
1
+ // Web-safe fonts available on most operating systems
2
+ export const WEB_SAFE_FONTS = [
3
+ { value: 'Arial', label: 'Arial' },
4
+ { value: 'Bookman', label: 'Bookman' },
5
+ { value: 'Comic Sans MS', label: 'Comic Sans MS' },
6
+ { value: 'Courier', label: 'Courier' },
7
+ { value: 'Courier New', label: 'Courier New' },
8
+ { value: 'Garamond', label: 'Garamond' },
9
+ { value: 'Geneva', label: 'Geneva' },
10
+ { value: 'Georgia', label: 'Georgia' },
11
+ { value: 'Helvetica', label: 'Helvetica' },
12
+ { value: 'Helvetica Neue', label: 'Helvetica Neue' },
13
+ { value: 'Impact', label: 'Impact' },
14
+ { value: 'Lucida Console', label: 'Lucida Console' },
15
+ { value: 'Monaco', label: 'Monaco' },
16
+ { value: 'Palatino', label: 'Palatino' },
17
+ { value: 'Roboto', label: 'Roboto' },
18
+ { value: 'Segoe UI', label: 'Segoe UI' },
19
+ { value: 'System', label: 'System' },
20
+ { value: 'Apple System', label: 'Apple System' },
21
+ { value: 'BlinkMacSystemFont', label: 'BlinkMacSystemFont' },
22
+ { value: 'Tahoma', label: 'Tahoma' },
23
+ { value: 'Times', label: 'Times' },
24
+ { value: 'Times New Roman', label: 'Times New Roman' },
25
+ { value: 'Trebuchet MS', label: 'Trebuchet MS' },
26
+ { value: 'Verdana', label: 'Verdana' },
27
+ { value: 'New York', label: 'New York' },
28
+ { value: 'Oxygen', label: 'Oxygen' },
29
+ { value: 'Ubuntu', label: 'Ubuntu' },
30
+ { value: 'Cantarell', label: 'Cantarell' },
31
+ { value: 'Fira Sans', label: 'Fira Sans' },
32
+ { value: 'Droid Sans', label: 'Droid Sans' },
33
+ ];
34
+ // Generic font families that work across all systems
35
+ export const GENERIC_FAMILIES = [
36
+ { value: 'cursive', label: 'cursive' },
37
+ { value: 'fantasy', label: 'fantasy' },
38
+ { value: 'monospace', label: 'monospace' },
39
+ { value: 'sans-serif', label: 'sans-serif' },
40
+ { value: 'serif', label: 'serif' },
41
+ { value: 'system-ui', label: 'system-ui' },
42
+ { value: 'ui-monospace', label: 'ui-monospace' },
43
+ { value: 'ui-rounded', label: 'ui-rounded' },
44
+ { value: 'ui-sans-serif', label: 'ui-sans-serif' },
45
+ { value: 'ui-serif', label: 'ui-serif' },
46
+ ];
47
+ // Combined list of all web-safe fonts and generic families
48
+ export const ALL_WEBSAFE_FONTS = [
49
+ ...WEB_SAFE_FONTS,
50
+ ...GENERIC_FAMILIES
51
+ ];
@@ -3,6 +3,7 @@
3
3
  "name": "Pixelated Technologies",
4
4
  "author": "Brian Whaley",
5
5
  "description": "Custom web development and digital design agency specializing in React, Next.js, and modern web technologies",
6
+ "keywords": "pixelated, web development, react, next.js, custom websites, digital design, small business",
6
7
  "url": "https://pixelated.tech",
7
8
  "email": "info@pixelated.tech",
8
9
  "favicon": "/favicon.ico",
@@ -28,8 +29,7 @@
28
29
  "https://www.linkedin.com/in/brianwhaley",
29
30
  "https://github.com/brianwhaley",
30
31
  "https://twitter.com/brianwhaley"
31
- ],
32
- "keywords": "pixelated, web development, react, next.js, custom websites, digital design, small business"
32
+ ]
33
33
  },
34
34
  "visualdesign": {
35
35
  "primary-color": { "value": "#369", "type": "color", "group": "palette", "label": "Primary color" },
package/dist/index.js CHANGED
@@ -48,6 +48,7 @@ export * from './components/sitebuilder/config/ConfigBuilder';
48
48
  export * from './components/sitebuilder/config/ConfigEngine';
49
49
  export * from './components/sitebuilder/config/FontSelector';
50
50
  export * from './components/sitebuilder/config/CompoundFontSelector';
51
+ export * from './components/sitebuilder/config/fonts';
51
52
  export * from './components/sitebuilder/config/google-fonts';
52
53
  export * from './components/sitebuilder/form/formcomponents';
53
54
  export * from './components/sitebuilder/form/formtypes';
@@ -13,6 +13,7 @@ export * from './components/config/config';
13
13
  export * from './components/config/config.types';
14
14
  export * from './components/sitebuilder/config/ConfigEngine';
15
15
  export * from './components/sitebuilder/config/google-fonts';
16
+ export * from './components/sitebuilder/config/fonts';
16
17
  export * from './components/sitebuilder/form/formutils';
17
18
  export * from './components/sitebuilder/form/formtypes';
18
19
  export * from './components/sitebuilder/page/lib/componentGeneration';
@@ -22,14 +22,22 @@ export type GenerateMetaTagsProps = {
22
22
  title: string;
23
23
  description: string;
24
24
  keywords: string;
25
- site_name: string;
26
- email: string;
27
25
  origin: string;
28
26
  url: string;
29
- image: string;
30
- image_height: string;
31
- image_width: string;
32
- favicon: string;
27
+ site_name?: string;
28
+ email?: string;
29
+ image?: string;
30
+ image_height?: string;
31
+ image_width?: string;
32
+ favicon?: string;
33
+ siteInfo?: {
34
+ name?: string;
35
+ email?: string;
36
+ image?: string;
37
+ image_height?: string;
38
+ image_width?: string;
39
+ favicon?: string;
40
+ };
33
41
  };
34
42
  export declare function generateMetaTags(props: GenerateMetaTagsProps): import("react/jsx-runtime").JSX.Element;
35
43
  //# sourceMappingURL=metadata.functions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.functions.d.ts","sourceRoot":"","sources":["../../../../src/components/seo/metadata.functions.tsx"],"names":[],"mappings":"AAEA,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,MAAM,EAAE,WAAW,SAAI,EAAE,eAAe,GAAE,MAAM,EAAO,YA0B7G;AAED,MAAM,MAAM,KAAK,GAAG;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACnB,CAAA;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,CAgBpE;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,SAkBtD;AAED,MAAM,MAAM,QAAQ,GAAG;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,QAAQ,GAAG,EAAE,MAAK,MAAe,EAAE,QAAO,MAAe,aAiBpF,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,KAAK,OAsBnD;AAED,MAAM,MAAM,qBAAqB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,2CAqE5D"}
1
+ {"version":3,"file":"metadata.functions.d.ts","sourceRoot":"","sources":["../../../../src/components/seo/metadata.functions.tsx"],"names":[],"mappings":"AAEA,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,MAAM,EAAE,WAAW,SAAI,EAAE,eAAe,GAAE,MAAM,EAAO,YA0B7G;AAED,MAAM,MAAM,KAAK,GAAG;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACnB,CAAA;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,CAgBpE;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,SAkBtD;AAED,MAAM,MAAM,QAAQ,GAAG;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,QAAQ,GAAG,EAAE,MAAK,MAAe,EAAE,QAAO,MAAe,aAiBpF,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,KAAK,OAsBnD;AAED,MAAM,MAAM,qBAAqB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE;QACV,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACF,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,2CA6E5D"}
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigEngine.d.ts","sourceRoot":"","sources":["../../../../../src/components/sitebuilder/config/ConfigEngine.tsx"],"names":[],"mappings":"AAGA,wBAAgB,kBAAkB,CAAC,EAAE,YAAY,EAAE,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,2CAiF1F;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,YAAY,EAAE,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,kDAyB1F"}
1
+ {"version":3,"file":"ConfigEngine.d.ts","sourceRoot":"","sources":["../../../../../src/components/sitebuilder/config/ConfigEngine.tsx"],"names":[],"mappings":"AAIA,wBAAgB,kBAAkB,CAAC,EAAE,YAAY,EAAE,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,2CA8G1F;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,YAAY,EAAE,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,kDAyB1F"}
@@ -4,7 +4,7 @@ interface FontSelectorProps {
4
4
  id: string;
5
5
  name: string;
6
6
  label: string;
7
- fontType?: 'google' | 'websafe' | 'generic';
7
+ fontType: 'google' | 'websafe' | 'generic';
8
8
  required?: boolean;
9
9
  placeholder?: string;
10
10
  value?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"FontSelector.d.ts","sourceRoot":"","sources":["../../../../../src/components/sitebuilder/config/FontSelector.tsx"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,OAAO,oBAAoB,CAAC;AAQ5B,UAAU,iBAAiB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAkCD,wBAAgB,YAAY,CAAC,EAC5B,EAAE,EACF,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAgB,EAChB,WAAW,EACX,KAAU,EACV,QAAQ,EACR,EAAE,iBAAiB,2CAqInB;yBA9Ie,YAAY"}
1
+ {"version":3,"file":"FontSelector.d.ts","sourceRoot":"","sources":["../../../../../src/components/sitebuilder/config/FontSelector.tsx"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAGnC,OAAO,oBAAoB,CAAC;AAE5B,UAAU,iBAAiB;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED,wBAAgB,YAAY,CAAC,EAC5B,EAAE,EACF,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAgB,EAChB,WAAW,EACX,KAAU,EACV,QAAQ,EACR,EAAE,iBAAiB,2CAqInB;yBA9Ie,YAAY"}
@@ -0,0 +1,9 @@
1
+ export interface FontOption {
2
+ value: string;
3
+ label: string;
4
+ category?: string;
5
+ }
6
+ export declare const WEB_SAFE_FONTS: FontOption[];
7
+ export declare const GENERIC_FAMILIES: FontOption[];
8
+ export declare const ALL_WEBSAFE_FONTS: FontOption[];
9
+ //# sourceMappingURL=fonts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fonts.d.ts","sourceRoot":"","sources":["../../../../../src/components/sitebuilder/config/fonts.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAGD,eAAO,MAAM,cAAc,EAAE,UAAU,EA+BtC,CAAC;AAGF,eAAO,MAAM,gBAAgB,EAAE,UAAU,EAWxC,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,UAAU,EAGzC,CAAC"}
@@ -47,6 +47,7 @@ export * from "./components/sitebuilder/config/ConfigBuilder";
47
47
  export * from "./components/sitebuilder/config/ConfigEngine";
48
48
  export * from "./components/sitebuilder/config/FontSelector";
49
49
  export * from "./components/sitebuilder/config/CompoundFontSelector";
50
+ export * from "./components/sitebuilder/config/fonts";
50
51
  export * from "./components/sitebuilder/config/google-fonts";
51
52
  export * from "./components/sitebuilder/form/formcomponents";
52
53
  export * from "./components/sitebuilder/form/formtypes";
@@ -9,6 +9,7 @@ export * from "./components/config/config";
9
9
  export * from "./components/config/config.types";
10
10
  export * from "./components/sitebuilder/config/ConfigEngine";
11
11
  export * from "./components/sitebuilder/config/google-fonts";
12
+ export * from "./components/sitebuilder/config/fonts";
12
13
  export * from "./components/sitebuilder/form/formutils";
13
14
  export * from "./components/sitebuilder/form/formtypes";
14
15
  export * from "./components/sitebuilder/page/lib/componentGeneration";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pixelated-tech/components",
3
- "version": "3.3.1",
3
+ "version": "3.3.3",
4
4
  "private": false,
5
5
  "author": {
6
6
  "name": "Pixelated Technologies",