@grantcodes/ui 2.1.1 → 2.3.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 (119) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/css-import-attributes.d.ts +13 -0
  3. package/package.json +29 -4
  4. package/src/components/accordion/accordion.component.js +3 -2
  5. package/src/components/accordion/{accordion.styles.js → accordion.css} +0 -7
  6. package/src/components/accordion/accordion.react.js +9 -0
  7. package/src/components/app-bar/app-bar.component.js +7 -5
  8. package/src/components/app-bar/{app-bar.styles.js → app-bar.css} +0 -7
  9. package/src/components/app-bar/app-bar.react.js +12 -0
  10. package/src/components/avatar/avatar.component.js +1 -1
  11. package/src/components/avatar/{avatar.styles.js → avatar.css} +0 -4
  12. package/src/components/avatar/avatar.react.js +9 -0
  13. package/src/components/badge/badge.component.js +5 -4
  14. package/src/components/badge/badge.css +87 -0
  15. package/src/components/badge/badge.react.js +9 -0
  16. package/src/components/breadcrumb/breadcrumb.component.js +4 -3
  17. package/src/components/breadcrumb/{breadcrumb.styles.js → breadcrumb.css} +0 -7
  18. package/src/components/breadcrumb/breadcrumb.react.js +15 -0
  19. package/src/components/button/button.component.js +3 -2
  20. package/src/components/button/button.css +62 -0
  21. package/src/components/button/button.react.js +9 -0
  22. package/src/components/button-group/button-group.component.js +1 -1
  23. package/src/components/button-group/{button-group.styles.js → button-group.css} +0 -4
  24. package/src/components/button-group/button-group.react.js +9 -0
  25. package/src/components/card/card.component.js +1 -1
  26. package/src/components/card/{card.styles.js → card.css} +0 -4
  27. package/src/components/card/card.react.js +9 -0
  28. package/src/components/code-preview/code-preview.component.js +1 -1
  29. package/src/components/code-preview/{code-preview.styles.js → code-preview.css} +0 -4
  30. package/src/components/code-preview/code-preview.react.js +9 -0
  31. package/src/components/container/container.component.js +5 -4
  32. package/src/components/container/{container.styles.js → container.css} +0 -8
  33. package/src/components/container/container.react.js +9 -0
  34. package/src/components/cta/cta.component.js +1 -1
  35. package/src/components/cta/{cta.styles.js → cta.css} +0 -4
  36. package/src/components/cta/cta.react.js +9 -0
  37. package/src/components/dialog/dialog.component.js +1 -1
  38. package/src/components/dialog/{dialog.styles.js → dialog.css} +0 -4
  39. package/src/components/dialog/dialog.react.js +9 -0
  40. package/src/components/dropdown/dropdown.component.js +1 -1
  41. package/src/components/dropdown/{dropdown.styles.js → dropdown.css} +0 -4
  42. package/src/components/dropdown/dropdown.react.js +21 -0
  43. package/src/components/dropzone/dropzone.component.js +5 -4
  44. package/src/components/dropzone/{dropzone.styles.js → dropzone.css} +0 -4
  45. package/src/components/dropzone/dropzone.react.js +9 -0
  46. package/src/components/feature-list/feature-list.component.js +1 -1
  47. package/src/components/feature-list/{feature-list.styles.js → feature-list.css} +0 -4
  48. package/src/components/feature-list/feature-list.react.js +9 -0
  49. package/src/components/footer/footer-column.component.js +1 -1
  50. package/src/components/footer/{footer-column.styles.js → footer-column.css} +0 -4
  51. package/src/components/footer/footer.component.js +1 -1
  52. package/src/components/footer/{footer.styles.js → footer.css} +0 -4
  53. package/src/components/footer/footer.react.js +15 -0
  54. package/src/components/form-field/form-field.component.js +12 -22
  55. package/src/components/form-field/{form-field.styles.js → form-field.css} +0 -4
  56. package/src/components/form-field/form-field.react.js +9 -0
  57. package/src/components/gallery/gallery-image.component.js +1 -1
  58. package/src/components/gallery/gallery-image.react.js +9 -0
  59. package/src/components/gallery/gallery.component.js +1 -1
  60. package/src/components/gallery/{gallery.styles.js → gallery.css} +0 -4
  61. package/src/components/gallery/gallery.react.js +9 -0
  62. package/src/components/hero/hero.component.js +1 -1
  63. package/src/components/hero/{hero.styles.js → hero.css} +0 -4
  64. package/src/components/hero/hero.react.js +9 -0
  65. package/src/components/icon/icon.component.js +1 -1
  66. package/src/components/icon/{icon.styles.js → icon.css} +0 -4
  67. package/src/components/icon/icon.react.js +9 -0
  68. package/src/components/loading/loading.component.js +1 -1
  69. package/src/components/loading/{loading.styles.js → loading.css} +0 -4
  70. package/src/components/loading/loading.react.js +9 -0
  71. package/src/components/logo-cloud/logo-cloud.component.js +1 -1
  72. package/src/components/logo-cloud/{logo-cloud.styles.js → logo-cloud.css} +0 -4
  73. package/src/components/logo-cloud/logo-cloud.react.js +9 -0
  74. package/src/components/media-text/media-text.component.js +1 -1
  75. package/src/components/media-text/{media-text.styles.js → media-text.css} +0 -4
  76. package/src/components/media-text/media-text.react.js +9 -0
  77. package/src/components/newsletter/newsletter.component.js +1 -1
  78. package/src/components/newsletter/{newsletter.styles.js → newsletter.css} +0 -4
  79. package/src/components/newsletter/newsletter.react.js +9 -0
  80. package/src/components/notice/notice.component.js +7 -3
  81. package/src/components/notice/{notice.styles.js → notice.css} +0 -4
  82. package/src/components/notice/notice.react.js +9 -0
  83. package/src/components/pagination/pagination.component.js +1 -1
  84. package/src/components/pagination/{pagination.styles.js → pagination.css} +0 -4
  85. package/src/components/pagination/pagination.react.js +9 -0
  86. package/src/components/pricing/pricing.component.js +1 -1
  87. package/src/components/pricing/{pricing.styles.js → pricing.css} +0 -4
  88. package/src/components/pricing/pricing.react.js +9 -0
  89. package/src/components/sidebar/sidebar.component.js +7 -5
  90. package/src/components/sidebar/{sidebar.styles.js → sidebar.css} +0 -7
  91. package/src/components/sidebar/sidebar.react.js +13 -0
  92. package/src/components/stats/stats.component.js +1 -1
  93. package/src/components/stats/{stats.styles.js → stats.css} +0 -4
  94. package/src/components/stats/stats.react.js +9 -0
  95. package/src/components/tabs/internal/tabs-button.component.js +3 -2
  96. package/src/components/tabs/internal/tabs-button.react.js +9 -0
  97. package/src/components/tabs/tab.component.js +3 -2
  98. package/src/components/tabs/tab.react.js +9 -0
  99. package/src/components/tabs/tabs.component.js +3 -2
  100. package/src/components/tabs/{tabs.styles.js → tabs.css} +0 -7
  101. package/src/components/tabs/tabs.react.js +9 -0
  102. package/src/components/testimonials/testimonials.component.js +1 -1
  103. package/src/components/testimonials/{testimonials.styles.js → testimonials.css} +0 -4
  104. package/src/components/testimonials/testimonials.react.js +9 -0
  105. package/src/components/toast/toast.component.js +11 -8
  106. package/src/components/toast/{toast.styles.js → toast.css} +0 -7
  107. package/src/components/toast/toast.react.js +18 -0
  108. package/src/components/tooltip/tooltip.component.js +1 -1
  109. package/src/components/tooltip/{tooltip.styles.js → tooltip.css} +1 -6
  110. package/src/components/tooltip/tooltip.react.js +9 -0
  111. package/src/exports.test.js +119 -0
  112. package/src/lib/styles/focus-ring.css +30 -0
  113. package/src/react.js +36 -0
  114. package/src/react.test.js +56 -0
  115. package/vite-plugin-css-import-attributes.js +96 -0
  116. package/src/components/badge/badge.styles.js +0 -91
  117. package/src/components/button/button.styles.js +0 -69
  118. package/src/lib/classnames.js +0 -61
  119. package/src/lib/styles/focus-ring.styles.js +0 -34
@@ -1,7 +1,7 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
- import { cx } from "../../lib/classnames.js";
4
- import { containerStyles } from "./container.styles.js";
3
+ import { classMap } from "lit/directives/class-map.js";
4
+ import containerStyles from "./container.css" with { type: "css" };
5
5
 
6
6
  export class GrantCodesContainer extends LitElement {
7
7
  // Styles are scoped to this element: they won't conflict with styles
@@ -22,7 +22,8 @@ export class GrantCodesContainer extends LitElement {
22
22
  }
23
23
 
24
24
  render() {
25
- const containerClass = cx("container", {
25
+ const classes = classMap({
26
+ container: true,
26
27
  "container--wide": this.align === "wide",
27
28
  "container--full": this.align === "full",
28
29
  "container--prose": this.align === "prose",
@@ -31,7 +32,7 @@ export class GrantCodesContainer extends LitElement {
31
32
  });
32
33
 
33
34
  return html`
34
- <div class="${containerClass}">
35
+ <div class=${classes}>
35
36
  <slot></slot>
36
37
  </div>
37
38
  `;
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const containerStyles = css`
4
1
  .container {
5
2
  display: flex;
6
3
  flex-direction: column;
@@ -29,10 +26,6 @@ export const containerStyles = css`
29
26
  inset-inline-start: 50%;
30
27
  position: relative;
31
28
  inset-inline-end: 50%;
32
- margin-inline-start: -50vw;
33
- margin-inline-end: -50vw;
34
- max-inline-size: 100vw;
35
- inline-size: 100vw;
36
29
  margin-inline-start: -50dvw;
37
30
  margin-inline-end: -50dvw;
38
31
  max-inline-size: 100dvw;
@@ -42,4 +35,3 @@ export const containerStyles = css`
42
35
  .container--nopad {
43
36
  padding-inline: 0;
44
37
  }
45
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesContainer } from "./container.js"
4
+
5
+ export const Container = createComponent({
6
+ tagName: "grantcodes-container",
7
+ elementClass: GrantCodesContainer,
8
+ react: React,
9
+ })
@@ -1,5 +1,5 @@
1
1
  import { LitElement, html } from "lit";
2
- import { ctaStyles } from "./cta.styles.js";
2
+ import ctaStyles from "./cta.css" with { type: "css" };
3
3
  import "../button/button.js";
4
4
 
5
5
  export class GrantCodesCta extends LitElement {
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const ctaStyles = css`
4
1
  :host {
5
2
  display: block;
6
3
  }
@@ -61,4 +58,3 @@ export const ctaStyles = css`
61
58
  .cta__secondary-link:hover {
62
59
  color: var(--g-theme-color-content-brand, #7c3aed);
63
60
  }
64
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesCta } from "./cta.js"
4
+
5
+ export const Cta = createComponent({
6
+ tagName: "grantcodes-cta",
7
+ elementClass: GrantCodesCta,
8
+ react: React,
9
+ })
@@ -1,6 +1,6 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
- import { dialogStyles } from "./dialog.styles.js";
3
+ import dialogStyles from "./dialog.css" with { type: "css" };
4
4
 
5
5
  export class GrantCodesDialog extends LitElement {
6
6
  // Styles are scoped to this element: they won't conflict with styles
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const dialogStyles = css`
4
1
 
5
2
  .dialog {
6
3
  width: 100%;
@@ -71,4 +68,3 @@ export const dialogStyles = css`
71
68
  --g-theme-border-radius-md: 0;
72
69
  }
73
70
 
74
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesDialog } from "./dialog.js"
4
+
5
+ export const Dialog = createComponent({
6
+ tagName: "grantcodes-dialog",
7
+ elementClass: GrantCodesDialog,
8
+ react: React,
9
+ })
@@ -1,7 +1,7 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
3
  import { generateId } from "../../lib/generate-id.js";
4
- import { dropdownStyles } from "./dropdown.styles.js";
4
+ import dropdownStyles from "./dropdown.css" with { type: "css" };
5
5
 
6
6
  export class GrantCodesDropdown extends LitElement {
7
7
  static styles = [dropdownStyles];
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const dropdownStyles = css`
4
1
  *,
5
2
  *::before,
6
3
  *::after {
@@ -125,4 +122,3 @@ export const dropdownStyles = css`
125
122
  }
126
123
  }
127
124
  }
128
- `;
@@ -0,0 +1,21 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesDropdown, GrantCodesDropdownItem } from "./dropdown.js"
4
+
5
+ export const Dropdown = createComponent({
6
+ tagName: "grantcodes-dropdown",
7
+ elementClass: GrantCodesDropdown,
8
+ react: React,
9
+ events: {
10
+ onToggle: "toggle",
11
+ },
12
+ })
13
+
14
+ export const DropdownItem = createComponent({
15
+ tagName: "grantcodes-dropdown-item",
16
+ elementClass: GrantCodesDropdownItem,
17
+ react: React,
18
+ events: {
19
+ onSelect: "select",
20
+ },
21
+ })
@@ -1,7 +1,7 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
- import { cx } from "../../lib/classnames.js";
4
- import { dropzoneStyles } from "./dropzone.styles.js";
3
+ import { classMap } from "lit/directives/class-map.js";
4
+ import dropzoneStyles from "./dropzone.css" with { type: "css" };
5
5
 
6
6
  export class GrantCodesDropzone extends LitElement {
7
7
  static styles = [dropzoneStyles];
@@ -121,13 +121,14 @@ export class GrantCodesDropzone extends LitElement {
121
121
  }
122
122
 
123
123
  render() {
124
- const dropzoneClass = cx("dropzone", {
124
+ const classes = classMap({
125
+ dropzone: true,
125
126
  "dropzone--fullscreen": this._fullscreen,
126
127
  });
127
128
 
128
129
  return html`
129
130
  <div
130
- class=${dropzoneClass}
131
+ class=${classes}
131
132
  @mouseleave=${this._forceDisableFullscreen}
132
133
  @dragend=${this._disableFullscreen}
133
134
  @dragleave=${this._disableFullscreen}
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const dropzoneStyles = css`
4
1
  *,
5
2
  *::before,
6
3
  *::after {
@@ -61,4 +58,3 @@ export const dropzoneStyles = css`
61
58
  position: fixed;
62
59
  z-index: 12;
63
60
  }
64
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesDropzone } from "./dropzone.js"
4
+
5
+ export const Dropzone = createComponent({
6
+ tagName: "grantcodes-dropzone",
7
+ elementClass: GrantCodesDropzone,
8
+ react: React,
9
+ })
@@ -1,7 +1,7 @@
1
1
  import { LitElement, html } from "lit";
2
2
  import { unsafeHTML } from "lit/directives/unsafe-html.js";
3
3
  import * as icons from "lucide-static";
4
- import { featureListStyles } from "./feature-list.styles.js";
4
+ import featureListStyles from "./feature-list.css" with { type: "css" };
5
5
  import "../icon/icon.js";
6
6
 
7
7
  export class GrantCodesFeatureList extends LitElement {
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const featureListStyles = css`
4
1
  :host {
5
2
  display: block;
6
3
  }
@@ -79,4 +76,3 @@ export const featureListStyles = css`
79
76
  .feature-list__item-desc {
80
77
  color: var(--g-theme-color-content-secondary);
81
78
  }
82
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesFeatureList } from "./feature-list.js"
4
+
5
+ export const FeatureList = createComponent({
6
+ tagName: "grantcodes-feature-list",
7
+ elementClass: GrantCodesFeatureList,
8
+ react: React,
9
+ })
@@ -1,6 +1,6 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
- import { footerColumnStyles } from "./footer-column.styles.js";
3
+ import footerColumnStyles from "./footer-column.css" with { type: "css" };
4
4
 
5
5
  export class GrantCodesFooterColumn extends LitElement {
6
6
  static styles = [footerColumnStyles];
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const footerColumnStyles = css`
4
1
  :host {
5
2
  display: block;
6
3
  }
@@ -47,4 +44,3 @@ export const footerColumnStyles = css`
47
44
  color: var(--g-theme-color-content-secondary);
48
45
  font: var(--g-typography-body-sm);
49
46
  }
50
- `;
@@ -1,6 +1,6 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
- import { footerStyles } from "./footer.styles.js";
3
+ import footerStyles from "./footer.css" with { type: "css" };
4
4
 
5
5
  export class GrantCodesFooter extends LitElement {
6
6
  static styles = [footerStyles];
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const footerStyles = css`
4
1
  *,
5
2
  *::before,
6
3
  *::after {
@@ -87,4 +84,3 @@ export const footerStyles = css`
87
84
  color: var(--g-theme-color-content-default);
88
85
  text-decoration: underline;
89
86
  }
90
- `;
@@ -0,0 +1,15 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesFooter, GrantCodesFooterColumn } from "./footer.js"
4
+
5
+ export const Footer = createComponent({
6
+ tagName: "grantcodes-footer",
7
+ elementClass: GrantCodesFooter,
8
+ react: React,
9
+ })
10
+
11
+ export const FooterColumn = createComponent({
12
+ tagName: "grantcodes-footer-column",
13
+ elementClass: GrantCodesFooterColumn,
14
+ react: React,
15
+ })
@@ -1,7 +1,7 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
- import { formFieldStyles } from "./form-field.styles.js";
4
- import { cx } from "../../lib/classnames.js";
3
+ import formFieldStyles from "./form-field.css" with { type: "css" };
4
+ import { classMap } from "lit/directives/class-map.js";
5
5
  import { generateId } from "../../lib/generate-id.js";
6
6
 
7
7
  export class GrantCodesFormField extends LitElement {
@@ -129,34 +129,24 @@ export class GrantCodesFormField extends LitElement {
129
129
  `;
130
130
  }
131
131
 
132
- /**
133
- * Template for a group of form components
134
- *
135
- * @param {string} className html class attribute
136
- *
137
- * @return {} [return description]
138
- */
139
- groupTemplate(className) {
140
- return html`
141
- <fieldset class="${className}">
142
- <legend class="form-field__label">${this.label}</legend>
143
- <slot></slot>
144
- ${this.errorTemplate()}
145
- </fieldset>
146
- `;
147
- }
148
-
149
132
  render() {
150
- const elementClass = cx("form-field", {
133
+ const classes = classMap({
134
+ "form-field": true,
151
135
  "form-field--inline": this.inlineInput,
152
136
  });
153
137
 
154
138
  if (this.groupInput) {
155
- return this.groupTemplate(elementClass);
139
+ return html`
140
+ <fieldset class=${classes}>
141
+ <legend class="form-field__label">${this.label}</legend>
142
+ <slot></slot>
143
+ ${this.errorTemplate()}
144
+ </fieldset>
145
+ `;
156
146
  }
157
147
 
158
148
  return html`
159
- <div class="${elementClass}">
149
+ <div class=${classes}>
160
150
  <label>
161
151
  <span class="form-field__label" @click=${this.handleLabelClick}
162
152
  >${this.label}</span
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const formFieldStyles = css`
4
1
  .form-field {
5
2
  display: flex;
6
3
  flex-direction: column;
@@ -42,4 +39,3 @@ export const formFieldStyles = css`
42
39
  font-size: var(--g-theme-typography-body-sm-font-size);
43
40
  color: var(--g-color-utility-red-700);
44
41
  }
45
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesFormField } from "./form-field.js"
4
+
5
+ export const FormField = createComponent({
6
+ tagName: "grantcodes-form-field",
7
+ elementClass: GrantCodesFormField,
8
+ react: React,
9
+ })
@@ -1,6 +1,6 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
- import { galleryStyles } from "./gallery.styles.js";
3
+ import galleryStyles from "./gallery.css" with { type: "css" };
4
4
 
5
5
  export class GrantCodesGalleryImage extends LitElement {
6
6
  static styles = [galleryStyles];
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesGalleryImage } from "./gallery-image.js"
4
+
5
+ export const GalleryImage = createComponent({
6
+ tagName: "grantcodes-gallery-image",
7
+ elementClass: GrantCodesGalleryImage,
8
+ react: React,
9
+ })
@@ -1,6 +1,6 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
- import { galleryStyles } from "./gallery.styles.js";
3
+ import galleryStyles from "./gallery.css" with { type: "css" };
4
4
 
5
5
  export class GrantCodesGallery extends LitElement {
6
6
  // Styles are scoped to this element: they won't conflict with styles
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const galleryStyles = css`
4
1
 
5
2
  .gallery {
6
3
  display: block;
@@ -53,4 +50,3 @@ export const galleryStyles = css`
53
50
  color: white;
54
51
  }
55
52
 
56
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesGallery } from "./gallery.js"
4
+
5
+ export const Gallery = createComponent({
6
+ tagName: "grantcodes-gallery",
7
+ elementClass: GrantCodesGallery,
8
+ react: React,
9
+ })
@@ -1,5 +1,5 @@
1
1
  import { LitElement, html } from "lit";
2
- import { heroStyles } from "./hero.styles.js";
2
+ import heroStyles from "./hero.css" with { type: "css" };
3
3
  import "../button/button.js";
4
4
 
5
5
  export class GrantCodesHero extends LitElement {
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const heroStyles = css`
4
1
  :host {
5
2
  display: block;
6
3
  }
@@ -43,4 +40,3 @@ export const heroStyles = css`
43
40
  min-height: 70vh;
44
41
  padding: var(--g-theme-spacing-3xl) var(--g-theme-spacing-md);
45
42
  }
46
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesHero } from "./hero.js"
4
+
5
+ export const Hero = createComponent({
6
+ tagName: "grantcodes-hero",
7
+ elementClass: GrantCodesHero,
8
+ react: React,
9
+ })
@@ -1,6 +1,6 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
- import { iconStyles } from "./icon.styles.js";
3
+ import iconStyles from "./icon.css" with { type: "css" };
4
4
 
5
5
  export class GrantCodesIcon extends LitElement {
6
6
  // Styles are scoped to this element: they won't conflict with styles
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const iconStyles = css`
4
1
  :host {
5
2
  display: block;
6
3
  }
@@ -27,4 +24,3 @@ export const iconStyles = css`
27
24
  .icon ::slotted(svg:not([stoke])) {
28
25
  stroke: currentColor;
29
26
  }
30
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesIcon } from "./icon.js"
4
+
5
+ export const Icon = createComponent({
6
+ tagName: "grantcodes-icon",
7
+ elementClass: GrantCodesIcon,
8
+ react: React,
9
+ })
@@ -1,6 +1,6 @@
1
1
  import { LitElement } from "lit";
2
2
  import { html } from "lit/static-html.js";
3
- import { loadingStyles } from "./loading.styles.js";
3
+ import loadingStyles from "./loading.css" with { type: "css" };
4
4
 
5
5
  export class GrantCodesLoading extends LitElement {
6
6
  // Styles are scoped to this element: they won't conflict with styles
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const loadingStyles = css`
4
1
 
5
2
  :host {
6
3
  --height: 0.5rem;
@@ -40,4 +37,3 @@ export const loadingStyles = css`
40
37
  }
41
38
  }
42
39
 
43
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesLoading } from "./loading.js"
4
+
5
+ export const Loading = createComponent({
6
+ tagName: "grantcodes-loading",
7
+ elementClass: GrantCodesLoading,
8
+ react: React,
9
+ })
@@ -1,5 +1,5 @@
1
1
  import { LitElement, html } from "lit";
2
- import { logoCloudStyles } from "./logo-cloud.styles.js";
2
+ import logoCloudStyles from "./logo-cloud.css" with { type: "css" };
3
3
 
4
4
  export class GrantCodesLogoCloud extends LitElement {
5
5
  static styles = [logoCloudStyles];
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const logoCloudStyles = css`
4
1
  :host {
5
2
  display: block;
6
3
  }
@@ -65,4 +62,3 @@ export const logoCloudStyles = css`
65
62
  .logo-cloud__item:not(:has(.logo-cloud__link)) .logo-cloud__logo {
66
63
  filter: none;
67
64
  }
68
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesLogoCloud } from "./logo-cloud.js"
4
+
5
+ export const LogoCloud = createComponent({
6
+ tagName: "grantcodes-logo-cloud",
7
+ elementClass: GrantCodesLogoCloud,
8
+ react: React,
9
+ })
@@ -1,5 +1,5 @@
1
1
  import { LitElement, html } from "lit";
2
- import { mediaTextStyles } from "./media-text.styles.js";
2
+ import mediaTextStyles from "./media-text.css" with { type: "css" };
3
3
  import "../button/button.js";
4
4
 
5
5
  export class GrantCodesMediaText extends LitElement {
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const mediaTextStyles = css`
4
1
  :host {
5
2
  display: block;
6
3
  }
@@ -63,4 +60,3 @@ export const mediaTextStyles = css`
63
60
  font: var(--g-theme-typography-body-lg);
64
61
  color: var(--g-theme-color-content-secondary);
65
62
  }
66
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesMediaText } from "./media-text.js"
4
+
5
+ export const MediaText = createComponent({
6
+ tagName: "grantcodes-media-text",
7
+ elementClass: GrantCodesMediaText,
8
+ react: React,
9
+ })
@@ -1,5 +1,5 @@
1
1
  import { LitElement, html } from "lit";
2
- import { newsletterStyles } from "./newsletter.styles.js";
2
+ import newsletterStyles from "./newsletter.css" with { type: "css" };
3
3
  import "../button/button.js";
4
4
 
5
5
  export class GrantCodesNewsletter extends LitElement {
@@ -1,6 +1,3 @@
1
- import { css } from "lit";
2
-
3
- export const newsletterStyles = css`
4
1
  :host {
5
2
  display: block;
6
3
  }
@@ -86,4 +83,3 @@ export const newsletterStyles = css`
86
83
  flex-direction: column;
87
84
  }
88
85
  }
89
- `;
@@ -0,0 +1,9 @@
1
+ import React from "react"
2
+ import { createComponent } from "@lit/react"
3
+ import { GrantCodesNewsletter } from "./newsletter.js"
4
+
5
+ export const Newsletter = createComponent({
6
+ tagName: "grantcodes-newsletter",
7
+ elementClass: GrantCodesNewsletter,
8
+ react: React,
9
+ })