@grantcodes/ui 2.9.2 → 2.10.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 (97) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/package.json +1 -1
  3. package/src/components/accordion/accordion.component.js +3 -1
  4. package/src/components/accordion/accordion.css +78 -57
  5. package/src/components/accordion/accordion.react.js +4 -4
  6. package/src/components/app-bar/app-bar.component.js +15 -9
  7. package/src/components/app-bar/app-bar.css +256 -250
  8. package/src/components/app-bar/app-bar.react.js +4 -4
  9. package/src/components/app-bar/app-bar.test.js +1 -3
  10. package/src/components/app-bar/nav-link.component.js +3 -1
  11. package/src/components/app-bar/nav-link.css +50 -45
  12. package/src/components/app-bar/nav-link.react.js +4 -4
  13. package/src/components/avatar/avatar.css +19 -21
  14. package/src/components/avatar/avatar.react.js +4 -4
  15. package/src/components/badge/badge.css +51 -51
  16. package/src/components/badge/badge.react.js +4 -4
  17. package/src/components/breadcrumb/breadcrumb.component.js +3 -1
  18. package/src/components/breadcrumb/breadcrumb.css +73 -73
  19. package/src/components/breadcrumb/breadcrumb.react.js +8 -5
  20. package/src/components/button/button.component.js +3 -1
  21. package/src/components/button/button.css +38 -38
  22. package/src/components/button/button.react.js +4 -4
  23. package/src/components/button-group/button-group.css +33 -33
  24. package/src/components/button-group/button-group.react.js +4 -4
  25. package/src/components/card/card.css +150 -150
  26. package/src/components/card/card.react.js +4 -4
  27. package/src/components/code-preview/code-preview.css +11 -12
  28. package/src/components/code-preview/code-preview.react.js +4 -4
  29. package/src/components/container/container.css +37 -37
  30. package/src/components/container/container.react.js +4 -4
  31. package/src/components/countdown/countdown.component.js +5 -3
  32. package/src/components/countdown/countdown.stories.js +1 -2
  33. package/src/components/cta/cta.css +55 -55
  34. package/src/components/cta/cta.react.js +4 -4
  35. package/src/components/dialog/dialog.css +48 -49
  36. package/src/components/dialog/dialog.react.js +4 -4
  37. package/src/components/dropdown/dropdown.css +123 -121
  38. package/src/components/dropdown/dropdown.react.js +5 -5
  39. package/src/components/dropzone/dropzone.css +5 -3
  40. package/src/components/dropzone/dropzone.react.js +4 -4
  41. package/src/components/feature-list/feature-list.css +71 -71
  42. package/src/components/feature-list/feature-list.react.js +4 -4
  43. package/src/components/footer/footer-column.css +39 -39
  44. package/src/components/footer/footer.css +68 -69
  45. package/src/components/footer/footer.react.js +5 -5
  46. package/src/components/form-field/form-field.css +40 -40
  47. package/src/components/form-field/form-field.react.js +4 -4
  48. package/src/components/gallery/gallery-image.react.js +4 -4
  49. package/src/components/gallery/gallery.css +72 -72
  50. package/src/components/gallery/gallery.react.js +4 -4
  51. package/src/components/gallery/gallery.test.js +5 -1
  52. package/src/components/hero/hero.css +61 -57
  53. package/src/components/hero/hero.react.js +4 -4
  54. package/src/components/icon/icon.css +27 -27
  55. package/src/components/icon/icon.react.js +4 -4
  56. package/src/components/loading/loading.css +30 -31
  57. package/src/components/loading/loading.react.js +4 -4
  58. package/src/components/logo-cloud/logo-cloud.css +60 -60
  59. package/src/components/logo-cloud/logo-cloud.react.js +4 -4
  60. package/src/components/map/map.component.js +3 -4
  61. package/src/components/map/map.css +36 -36
  62. package/src/components/media-text/media-text.css +58 -58
  63. package/src/components/media-text/media-text.react.js +4 -4
  64. package/src/components/newsletter/newsletter.css +78 -78
  65. package/src/components/newsletter/newsletter.react.js +4 -4
  66. package/src/components/notice/notice.css +38 -38
  67. package/src/components/notice/notice.react.js +4 -4
  68. package/src/components/pagination/pagination.css +6 -7
  69. package/src/components/pagination/pagination.react.js +4 -4
  70. package/src/components/pricing/pricing.css +137 -137
  71. package/src/components/pricing/pricing.react.js +4 -4
  72. package/src/components/sidebar/sidebar.component.js +3 -1
  73. package/src/components/sidebar/sidebar.css +180 -180
  74. package/src/components/sidebar/sidebar.react.js +4 -4
  75. package/src/components/stats/stats.css +58 -58
  76. package/src/components/stats/stats.react.js +4 -4
  77. package/src/components/tabs/internal/tabs-button.component.js +3 -1
  78. package/src/components/tabs/internal/tabs-button.react.js +4 -4
  79. package/src/components/tabs/tab.component.js +3 -1
  80. package/src/components/tabs/tab.react.js +4 -4
  81. package/src/components/tabs/tabs.component.js +3 -1
  82. package/src/components/tabs/tabs.css +82 -82
  83. package/src/components/tabs/tabs.react.js +4 -4
  84. package/src/components/testimonials/testimonials.css +72 -72
  85. package/src/components/testimonials/testimonials.react.js +4 -4
  86. package/src/components/toast/toast.component.js +3 -1
  87. package/src/components/toast/toast.css +198 -198
  88. package/src/components/toast/toast.react.js +5 -5
  89. package/src/components/tooltip/tooltip.css +52 -51
  90. package/src/components/tooltip/tooltip.react.js +4 -4
  91. package/src/css/reset.css +7 -3
  92. package/src/css/typography.css +13 -11
  93. package/src/exports.test.js +101 -95
  94. package/src/lib/styles/all.css +37 -37
  95. package/src/lib/styles/focus-ring.css +20 -20
  96. package/src/react.js +45 -39
  97. package/vite-plugin-css-import-attributes.js +5 -2
@@ -1,119 +1,125 @@
1
- import { describe, it } from 'node:test'
2
- import assert from 'node:assert'
3
- import fs from 'node:fs'
4
- import path from 'node:path'
5
- import { fileURLToPath } from 'node:url'
1
+ import { describe, it } from "node:test";
2
+ import assert from "node:assert";
3
+ import fs from "node:fs";
4
+ import path from "node:path";
5
+ import { fileURLToPath } from "node:url";
6
6
 
7
- const __dirname = path.dirname(fileURLToPath(import.meta.url))
8
- const pkgPath = path.resolve(__dirname, '..', 'package.json')
9
- const pkgRoot = path.dirname(pkgPath)
10
- const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'))
11
- const exports = pkg.exports
7
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
8
+ const pkgPath = path.resolve(__dirname, "..", "package.json");
9
+ const pkgRoot = path.dirname(pkgPath);
10
+ const pkg = JSON.parse(fs.readFileSync(pkgPath, "utf-8"));
11
+ const exports = pkg.exports;
12
12
 
13
13
  // All 34 component CSS files expected to exist on disk
14
14
  // These are resolved via the ./components/* wildcard export
15
15
  const expectedComponentCss = [
16
- 'accordion/accordion.css',
17
- 'app-bar/app-bar.css',
18
- 'avatar/avatar.css',
19
- 'badge/badge.css',
20
- 'breadcrumb/breadcrumb.css',
21
- 'button/button.css',
22
- 'button-group/button-group.css',
23
- 'card/card.css',
24
- 'code-preview/code-preview.css',
25
- 'container/container.css',
26
- 'cta/cta.css',
27
- 'dialog/dialog.css',
28
- 'dropdown/dropdown.css',
29
- 'dropzone/dropzone.css',
30
- 'feature-list/feature-list.css',
31
- 'footer/footer.css',
32
- 'footer/footer-column.css',
33
- 'form-field/form-field.css',
34
- 'gallery/gallery.css',
35
- 'hero/hero.css',
36
- 'icon/icon.css',
37
- 'loading/loading.css',
38
- 'logo-cloud/logo-cloud.css',
39
- 'media-text/media-text.css',
40
- 'newsletter/newsletter.css',
41
- 'notice/notice.css',
42
- 'pagination/pagination.css',
43
- 'pricing/pricing.css',
44
- 'sidebar/sidebar.css',
45
- 'stats/stats.css',
46
- 'tabs/tabs.css',
47
- 'testimonials/testimonials.css',
48
- 'toast/toast.css',
49
- 'tooltip/tooltip.css',
50
- ]
16
+ "accordion/accordion.css",
17
+ "app-bar/app-bar.css",
18
+ "avatar/avatar.css",
19
+ "badge/badge.css",
20
+ "breadcrumb/breadcrumb.css",
21
+ "button/button.css",
22
+ "button-group/button-group.css",
23
+ "card/card.css",
24
+ "code-preview/code-preview.css",
25
+ "container/container.css",
26
+ "cta/cta.css",
27
+ "dialog/dialog.css",
28
+ "dropdown/dropdown.css",
29
+ "dropzone/dropzone.css",
30
+ "feature-list/feature-list.css",
31
+ "footer/footer.css",
32
+ "footer/footer-column.css",
33
+ "form-field/form-field.css",
34
+ "gallery/gallery.css",
35
+ "hero/hero.css",
36
+ "icon/icon.css",
37
+ "loading/loading.css",
38
+ "logo-cloud/logo-cloud.css",
39
+ "media-text/media-text.css",
40
+ "newsletter/newsletter.css",
41
+ "notice/notice.css",
42
+ "pagination/pagination.css",
43
+ "pricing/pricing.css",
44
+ "sidebar/sidebar.css",
45
+ "stats/stats.css",
46
+ "tabs/tabs.css",
47
+ "testimonials/testimonials.css",
48
+ "toast/toast.css",
49
+ "tooltip/tooltip.css",
50
+ ];
51
51
 
52
- describe('package.json exports', () => {
53
- describe('component CSS files exist (resolved via ./components/* wildcard)', () => {
52
+ describe("package.json exports", () => {
53
+ describe("component CSS files exist (resolved via ./components/* wildcard)", () => {
54
54
  for (const cssFile of expectedComponentCss) {
55
55
  it(`src/components/${cssFile} exists on disk`, () => {
56
- const fullPath = path.resolve(pkgRoot, 'src', 'components', cssFile)
56
+ const fullPath = path.resolve(pkgRoot, "src", "components", cssFile);
57
57
  assert.ok(
58
58
  fs.existsSync(fullPath),
59
59
  `CSS file does not exist: ${fullPath}`,
60
- )
61
- })
60
+ );
61
+ });
62
62
  }
63
63
 
64
- it('has ./components/* wildcard export that covers CSS files', () => {
64
+ it("has ./components/* wildcard export that covers CSS files", () => {
65
65
  assert.ok(
66
- exports['./components/*'],
67
- 'Missing ./components/* wildcard export',
68
- )
69
- })
70
- })
66
+ exports["./components/*"],
67
+ "Missing ./components/* wildcard export",
68
+ );
69
+ });
70
+ });
71
71
 
72
- describe('focus-ring shared styles export', () => {
73
- it('has export for ./styles/focus-ring.css', () => {
72
+ describe("focus-ring shared styles export", () => {
73
+ it("has export for ./styles/focus-ring.css", () => {
74
74
  assert.ok(
75
- exports['./styles/focus-ring.css'] !== undefined,
76
- 'Missing export for ./styles/focus-ring.css',
77
- )
78
- })
75
+ exports["./styles/focus-ring.css"] !== undefined,
76
+ "Missing export for ./styles/focus-ring.css",
77
+ );
78
+ });
79
79
 
80
- it('./styles/focus-ring.css points to an existing file', () => {
81
- const exportValue = exports['./styles/focus-ring.css']
80
+ it("./styles/focus-ring.css points to an existing file", () => {
81
+ const exportValue = exports["./styles/focus-ring.css"];
82
82
  const filePath =
83
- typeof exportValue === 'string' ? exportValue : exportValue?.import
84
- assert.ok(filePath, 'No file path found for ./styles/focus-ring.css')
85
- const fullPath = path.resolve(pkgRoot, filePath)
86
- assert.ok(
87
- fs.existsSync(fullPath),
88
- `File does not exist: ${fullPath}`,
89
- )
90
- })
91
- })
83
+ typeof exportValue === "string" ? exportValue : exportValue?.import;
84
+ assert.ok(filePath, "No file path found for ./styles/focus-ring.css");
85
+ const fullPath = path.resolve(pkgRoot, filePath);
86
+ assert.ok(fs.existsSync(fullPath), `File does not exist: ${fullPath}`);
87
+ });
88
+ });
92
89
 
93
- describe('existing exports preserved', () => {
94
- it('has root export (.)', () => {
95
- assert.ok(exports['.'], 'Missing root export')
96
- assert.ok(exports['.'].import, 'Missing root import')
97
- })
90
+ describe("existing exports preserved", () => {
91
+ it("has root export (.)", () => {
92
+ assert.ok(exports["."], "Missing root export");
93
+ assert.ok(exports["."].import, "Missing root import");
94
+ });
98
95
 
99
- it('has ./icons export', () => {
100
- assert.ok(exports['./icons'], 'Missing ./icons export')
101
- })
96
+ it("has ./icons export", () => {
97
+ assert.ok(exports["./icons"], "Missing ./icons export");
98
+ });
102
99
 
103
- it('has ./styles/base.css export', () => {
104
- assert.ok(exports['./styles/base.css'], 'Missing ./styles/base.css export')
105
- })
100
+ it("has ./styles/base.css export", () => {
101
+ assert.ok(
102
+ exports["./styles/base.css"],
103
+ "Missing ./styles/base.css export",
104
+ );
105
+ });
106
106
 
107
- it('has ./styles/themes/* export', () => {
108
- assert.ok(exports['./styles/themes/*'], 'Missing ./styles/themes/* export')
109
- })
107
+ it("has ./styles/themes/* export", () => {
108
+ assert.ok(
109
+ exports["./styles/themes/*"],
110
+ "Missing ./styles/themes/* export",
111
+ );
112
+ });
110
113
 
111
- it('has ./components/* wildcard export', () => {
112
- assert.ok(exports['./components/*'], 'Missing ./components/* wildcard export')
113
- })
114
+ it("has ./components/* wildcard export", () => {
115
+ assert.ok(
116
+ exports["./components/*"],
117
+ "Missing ./components/* wildcard export",
118
+ );
119
+ });
114
120
 
115
- it('has ./fonts/* export', () => {
116
- assert.ok(exports['./fonts/*'], 'Missing ./fonts/* export')
117
- })
118
- })
119
- })
121
+ it("has ./fonts/* export", () => {
122
+ assert.ok(exports["./fonts/*"], "Missing ./fonts/* export");
123
+ });
124
+ });
125
+ });
@@ -1,39 +1,39 @@
1
1
  @layer components {
2
- @import "./focus-ring.css";
3
- @import "../../components/accordion/accordion.css";
4
- @import "../../components/app-bar/app-bar.css";
5
- @import "../../components/avatar/avatar.css";
6
- @import "../../components/badge/badge.css";
7
- @import "../../components/breadcrumb/breadcrumb.css";
8
- @import "../../components/button/button.css";
9
- @import "../../components/button-group/button-group.css";
10
- @import "../../components/card/card.css";
11
- @import "../../components/code-preview/code-preview.css";
12
- @import "../../components/container/container.css";
13
- @import "../../components/countdown/countdown.css";
14
- @import "../../components/cta/cta.css";
15
- @import "../../components/dialog/dialog.css";
16
- @import "../../components/dropdown/dropdown.css";
17
- @import "../../components/dropzone/dropzone.css";
18
- @import "../../components/feature-list/feature-list.css";
19
- @import "../../components/footer/footer.css";
20
- @import "../../components/footer/footer-column.css";
21
- @import "../../components/form-field/form-field.css";
22
- @import "../../components/gallery/gallery.css";
23
- @import "../../components/hero/hero.css";
24
- @import "../../components/icon/icon.css";
25
- @import "../../components/loading/loading.css";
26
- @import "../../components/logo-cloud/logo-cloud.css";
27
- @import "../../components/map/map.css";
28
- @import "../../components/media-text/media-text.css";
29
- @import "../../components/newsletter/newsletter.css";
30
- @import "../../components/notice/notice.css";
31
- @import "../../components/pagination/pagination.css";
32
- @import "../../components/pricing/pricing.css";
33
- @import "../../components/sidebar/sidebar.css";
34
- @import "../../components/stats/stats.css";
35
- @import "../../components/tabs/tabs.css";
36
- @import "../../components/testimonials/testimonials.css";
37
- @import "../../components/toast/toast.css";
38
- @import "../../components/tooltip/tooltip.css";
2
+ @import "./focus-ring.css";
3
+ @import "../../components/accordion/accordion.css";
4
+ @import "../../components/app-bar/app-bar.css";
5
+ @import "../../components/avatar/avatar.css";
6
+ @import "../../components/badge/badge.css";
7
+ @import "../../components/breadcrumb/breadcrumb.css";
8
+ @import "../../components/button/button.css";
9
+ @import "../../components/button-group/button-group.css";
10
+ @import "../../components/card/card.css";
11
+ @import "../../components/code-preview/code-preview.css";
12
+ @import "../../components/container/container.css";
13
+ @import "../../components/countdown/countdown.css";
14
+ @import "../../components/cta/cta.css";
15
+ @import "../../components/dialog/dialog.css";
16
+ @import "../../components/dropdown/dropdown.css";
17
+ @import "../../components/dropzone/dropzone.css";
18
+ @import "../../components/feature-list/feature-list.css";
19
+ @import "../../components/footer/footer.css";
20
+ @import "../../components/footer/footer-column.css";
21
+ @import "../../components/form-field/form-field.css";
22
+ @import "../../components/gallery/gallery.css";
23
+ @import "../../components/hero/hero.css";
24
+ @import "../../components/icon/icon.css";
25
+ @import "../../components/loading/loading.css";
26
+ @import "../../components/logo-cloud/logo-cloud.css";
27
+ @import "../../components/map/map.css";
28
+ @import "../../components/media-text/media-text.css";
29
+ @import "../../components/newsletter/newsletter.css";
30
+ @import "../../components/notice/notice.css";
31
+ @import "../../components/pagination/pagination.css";
32
+ @import "../../components/pricing/pricing.css";
33
+ @import "../../components/sidebar/sidebar.css";
34
+ @import "../../components/stats/stats.css";
35
+ @import "../../components/tabs/tabs.css";
36
+ @import "../../components/testimonials/testimonials.css";
37
+ @import "../../components/toast/toast.css";
38
+ @import "../../components/tooltip/tooltip.css";
39
39
  }
@@ -1,30 +1,30 @@
1
1
  .focus-ring,
2
2
  :host(.focus-ring) {
3
- outline: 0px solid transparent;
4
- outline-offset: var(--g-theme-focus-ring-offset-default);
5
- transition-duration: var(--g-animation-duration-20);
6
- transition-property: outline-color, width;
3
+ outline: 0px solid transparent;
4
+ outline-offset: var(--g-theme-focus-ring-offset-default);
5
+ transition-duration: var(--g-animation-duration-20);
6
+ transition-property: outline-color, width;
7
7
  }
8
8
 
9
9
  .focus-ring:focus-visible,
10
10
  :host(.focus-ring):focus-visible {
11
- outline: var(--g-theme-focus-ring-width-default) solid
12
- var(--g-theme-focus-ring-color-default);
11
+ outline: var(--g-theme-focus-ring-width-default) solid
12
+ var(--g-theme-focus-ring-color-default);
13
13
  }
14
14
 
15
15
  @media (prefers-contrast: more) {
16
- .focus-ring:focus-visible,
17
- :host(.focus-ring):focus-visible {
18
- outline: var(--g-theme-focus-ring-width-default) solid
19
- var(--g-theme-focus-ring-color-contrast);
20
- box-shadow: 0 0 0
21
- calc(
22
- (
23
- var(--g-theme-focus-ring-width-default) +
24
- var(--g-theme-focus-ring-offset-default)
25
- ) *
26
- 1.5
27
- )
28
- var(--g-theme-focus-ring-color-contrast-shadow);
29
- }
16
+ .focus-ring:focus-visible,
17
+ :host(.focus-ring):focus-visible {
18
+ outline: var(--g-theme-focus-ring-width-default) solid
19
+ var(--g-theme-focus-ring-color-contrast);
20
+ box-shadow: 0 0 0
21
+ calc(
22
+ (
23
+ var(--g-theme-focus-ring-width-default) +
24
+ var(--g-theme-focus-ring-offset-default)
25
+ ) *
26
+ 1.5
27
+ )
28
+ var(--g-theme-focus-ring-color-contrast-shadow);
29
+ }
30
30
  }
package/src/react.js CHANGED
@@ -1,39 +1,45 @@
1
- export { Accordion } from "./components/accordion/accordion.react.js"
2
- export { AppBar } from "./components/app-bar/app-bar.react.js"
3
- export { NavLink } from "./components/app-bar/nav-link.react.js"
4
- export { Avatar } from "./components/avatar/avatar.react.js"
5
- export { Badge } from "./components/badge/badge.react.js"
6
- export { Breadcrumb, BreadcrumbItem } from "./components/breadcrumb/breadcrumb.react.js"
7
- export { Button } from "./components/button/button.react.js"
8
- export { ButtonGroup } from "./components/button-group/button-group.react.js"
9
- export { Card } from "./components/card/card.react.js"
10
- export { CodePreview } from "./components/code-preview/code-preview.react.js"
11
- export { Container } from "./components/container/container.react.js"
12
- export { Countdown } from "./components/countdown/countdown.react.js"
13
- export { Cta } from "./components/cta/cta.react.js"
14
- export { Dialog } from "./components/dialog/dialog.react.js"
15
- export { Dropdown, DropdownItem } from "./components/dropdown/dropdown.react.js"
16
- export { Dropzone } from "./components/dropzone/dropzone.react.js"
17
- export { FeatureList } from "./components/feature-list/feature-list.react.js"
18
- export { Footer, FooterColumn } from "./components/footer/footer.react.js"
19
- export { FormField } from "./components/form-field/form-field.react.js"
20
- export { Gallery } from "./components/gallery/gallery.react.js"
21
- export { GalleryImage } from "./components/gallery/gallery-image.react.js"
22
- export { Hero } from "./components/hero/hero.react.js"
23
- export { Icon } from "./components/icon/icon.react.js"
24
- export { Loading } from "./components/loading/loading.react.js"
25
- export { LogoCloud } from "./components/logo-cloud/logo-cloud.react.js"
26
- export { MapEmbed } from "./components/map/map.react.js"
27
- export { MediaText } from "./components/media-text/media-text.react.js"
28
- export { Newsletter } from "./components/newsletter/newsletter.react.js"
29
- export { Notice } from "./components/notice/notice.react.js"
30
- export { Pagination } from "./components/pagination/pagination.react.js"
31
- export { Pricing } from "./components/pricing/pricing.react.js"
32
- export { Sidebar } from "./components/sidebar/sidebar.react.js"
33
- export { Stats } from "./components/stats/stats.react.js"
34
- export { Tab } from "./components/tabs/tab.react.js"
35
- export { Tabs } from "./components/tabs/tabs.react.js"
36
- export { TabsButton } from "./components/tabs/internal/tabs-button.react.js"
37
- export { Testimonials } from "./components/testimonials/testimonials.react.js"
38
- export { Toast, ToastContainer } from "./components/toast/toast.react.js"
39
- export { Tooltip } from "./components/tooltip/tooltip.react.js"
1
+ export { Accordion } from "./components/accordion/accordion.react.js";
2
+ export { AppBar } from "./components/app-bar/app-bar.react.js";
3
+ export { NavLink } from "./components/app-bar/nav-link.react.js";
4
+ export { Avatar } from "./components/avatar/avatar.react.js";
5
+ export { Badge } from "./components/badge/badge.react.js";
6
+ export {
7
+ Breadcrumb,
8
+ BreadcrumbItem,
9
+ } from "./components/breadcrumb/breadcrumb.react.js";
10
+ export { Button } from "./components/button/button.react.js";
11
+ export { ButtonGroup } from "./components/button-group/button-group.react.js";
12
+ export { Card } from "./components/card/card.react.js";
13
+ export { CodePreview } from "./components/code-preview/code-preview.react.js";
14
+ export { Container } from "./components/container/container.react.js";
15
+ export { Countdown } from "./components/countdown/countdown.react.js";
16
+ export { Cta } from "./components/cta/cta.react.js";
17
+ export { Dialog } from "./components/dialog/dialog.react.js";
18
+ export {
19
+ Dropdown,
20
+ DropdownItem,
21
+ } from "./components/dropdown/dropdown.react.js";
22
+ export { Dropzone } from "./components/dropzone/dropzone.react.js";
23
+ export { FeatureList } from "./components/feature-list/feature-list.react.js";
24
+ export { Footer, FooterColumn } from "./components/footer/footer.react.js";
25
+ export { FormField } from "./components/form-field/form-field.react.js";
26
+ export { Gallery } from "./components/gallery/gallery.react.js";
27
+ export { GalleryImage } from "./components/gallery/gallery-image.react.js";
28
+ export { Hero } from "./components/hero/hero.react.js";
29
+ export { Icon } from "./components/icon/icon.react.js";
30
+ export { Loading } from "./components/loading/loading.react.js";
31
+ export { LogoCloud } from "./components/logo-cloud/logo-cloud.react.js";
32
+ export { MapEmbed } from "./components/map/map.react.js";
33
+ export { MediaText } from "./components/media-text/media-text.react.js";
34
+ export { Newsletter } from "./components/newsletter/newsletter.react.js";
35
+ export { Notice } from "./components/notice/notice.react.js";
36
+ export { Pagination } from "./components/pagination/pagination.react.js";
37
+ export { Pricing } from "./components/pricing/pricing.react.js";
38
+ export { Sidebar } from "./components/sidebar/sidebar.react.js";
39
+ export { Stats } from "./components/stats/stats.react.js";
40
+ export { Tab } from "./components/tabs/tab.react.js";
41
+ export { Tabs } from "./components/tabs/tabs.react.js";
42
+ export { TabsButton } from "./components/tabs/internal/tabs-button.react.js";
43
+ export { Testimonials } from "./components/testimonials/testimonials.react.js";
44
+ export { Toast, ToastContainer } from "./components/toast/toast.react.js";
45
+ export { Tooltip } from "./components/tooltip/tooltip.react.js";
@@ -45,12 +45,15 @@ export function cssImportAttributes() {
45
45
  );
46
46
  const regex = new RegExp(
47
47
  escapedSource +
48
- `['"] *(?:with|assert) *{ *type: *['"]css['"]`,
48
+ `['"]\\s*(?:with|assert)\\s*{\\s*type:\\s*['"]css['"]`,
49
49
  );
50
50
  if (!regex.test(importerContent)) return;
51
51
 
52
52
  // Resolve to absolute path
53
- const resolved = (await this.resolve(source, importer, options))
53
+ const resolved = (await this.resolve(source, importer, {
54
+ ...options,
55
+ skipSelf: true,
56
+ }))
54
57
  ?.id;
55
58
  if (!resolved) return;
56
59