@stacksjs/defaults 0.70.358 → 0.70.363

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 (141) hide show
  1. package/ai/skills/stacks-browse/SKILL.md +7 -5
  2. package/ai/skills/stacks-browse/scripts/browse.ts +68 -9
  3. package/ai/skills/stacks-dashboard/SKILL.md +4 -0
  4. package/app/Actions/AI/AskAction.ts +12 -17
  5. package/app/Actions/AI/SummaryAction.ts +12 -17
  6. package/app/Actions/Dashboard/Models/ModelShowAction.ts +4 -1
  7. package/app/Actions/Dashboard/Models/model-write.ts +5 -0
  8. package/app/Actions/LogAction.ts +11 -11
  9. package/ide/vscode/package.json +1 -1
  10. package/package.json +1 -1
  11. package/resources/components/Buttons/Counter.stx +1 -1
  12. package/resources/components/Buttons/ToggleDark.stx +1 -1
  13. package/resources/components/Dashboard/App/RequestDetailsDialog.stx +42 -0
  14. package/resources/components/Dashboard/App/RequestsOverview.stx +1 -21
  15. package/resources/components/Dashboard/Auth/AccessTokenCreateDialog.stx +155 -0
  16. package/resources/components/Dashboard/Auth/AccessTokens.stx +41 -129
  17. package/resources/components/Dashboard/Ci/CiDashboard.stx +1 -157
  18. package/resources/components/Dashboard/Ci/CiRunHistoryDrawer.stx +127 -0
  19. package/resources/components/Dashboard/Commerce/CommerceCategoryDeleteDialog.stx +10 -8
  20. package/resources/components/Dashboard/Commerce/CommerceCategoryDetailsDialog.stx +22 -17
  21. package/resources/components/Dashboard/Commerce/CommerceCategoryDialog.stx +14 -13
  22. package/resources/components/Dashboard/Commerce/CommerceCouponDeleteDialog.stx +10 -7
  23. package/resources/components/Dashboard/Commerce/CommerceCouponDetailsDialog.stx +25 -19
  24. package/resources/components/Dashboard/Commerce/CommerceCouponDialog.stx +14 -11
  25. package/resources/components/Dashboard/Commerce/CommerceCustomerDeleteDialog.stx +10 -8
  26. package/resources/components/Dashboard/Commerce/CommerceCustomerDetailsDialog.stx +24 -16
  27. package/resources/components/Dashboard/Commerce/CommerceCustomerDialog.stx +14 -13
  28. package/resources/components/Dashboard/Commerce/CommerceGiftCardDeleteDialog.stx +10 -8
  29. package/resources/components/Dashboard/Commerce/CommerceGiftCardDetailsDialog.stx +16 -14
  30. package/resources/components/Dashboard/Commerce/CommerceGiftCardDialog.stx +17 -16
  31. package/resources/components/Dashboard/Commerce/CommerceManufacturerDeleteDialog.stx +14 -16
  32. package/resources/components/Dashboard/Commerce/CommerceManufacturerDialog.stx +17 -16
  33. package/resources/components/Dashboard/Commerce/CommerceOrderDeleteDialog.stx +10 -8
  34. package/resources/components/Dashboard/Commerce/CommerceOrderDetailsDialog.stx +15 -10
  35. package/resources/components/Dashboard/Commerce/CommerceOrderDialog.stx +14 -13
  36. package/resources/components/Dashboard/Commerce/CommercePosCheckoutDialog.stx +30 -25
  37. package/resources/components/Dashboard/Commerce/CommercePosReceiptDialog.stx +27 -20
  38. package/resources/components/Dashboard/Commerce/CommerceProductDeleteDialog.stx +14 -14
  39. package/resources/components/Dashboard/Commerce/CommerceProductDialog.stx +14 -13
  40. package/resources/components/Dashboard/Commerce/CommerceReviewDeleteDialog.stx +10 -18
  41. package/resources/components/Dashboard/Commerce/CommerceReviewEditDialog.stx +17 -16
  42. package/resources/components/Dashboard/Commerce/CommerceTaxDeleteDialog.stx +14 -14
  43. package/resources/components/Dashboard/Commerce/CommerceTaxDialog.stx +17 -16
  44. package/resources/components/Dashboard/Commerce/CommerceTaxesTable.stx +1 -1
  45. package/resources/components/Dashboard/Commerce/CommerceUnitDeleteDialog.stx +14 -17
  46. package/resources/components/Dashboard/Commerce/CommerceUnitDialog.stx +17 -16
  47. package/resources/components/Dashboard/Commerce/CommerceVariantDeleteDialog.stx +10 -8
  48. package/resources/components/Dashboard/Commerce/CommerceVariantDialog.stx +17 -16
  49. package/resources/components/Dashboard/Commerce/Delivery/DeliveryRouteDeleteDialog.stx +11 -15
  50. package/resources/components/Dashboard/Commerce/Delivery/DeliveryRouteDialog.stx +17 -16
  51. package/resources/components/Dashboard/Commerce/Delivery/DigitalDeliveryDeleteDialog.stx +11 -15
  52. package/resources/components/Dashboard/Commerce/Delivery/DigitalDeliveryDialog.stx +17 -16
  53. package/resources/components/Dashboard/Commerce/Delivery/DriverDeleteDialog.stx +11 -15
  54. package/resources/components/Dashboard/Commerce/Delivery/DriverDialog.stx +17 -16
  55. package/resources/components/Dashboard/Commerce/Delivery/LicenseKeyDeleteDialog.stx +11 -15
  56. package/resources/components/Dashboard/Commerce/Delivery/LicenseKeyDialog.stx +17 -16
  57. package/resources/components/Dashboard/Commerce/Delivery/ShippingMethodDeleteDialog.stx +11 -15
  58. package/resources/components/Dashboard/Commerce/Delivery/ShippingMethodDialog.stx +17 -16
  59. package/resources/components/Dashboard/Commerce/Delivery/ShippingRateDeleteDialog.stx +11 -15
  60. package/resources/components/Dashboard/Commerce/Delivery/ShippingRateDialog.stx +17 -16
  61. package/resources/components/Dashboard/Commerce/Delivery/ShippingZoneDeleteDialog.stx +11 -15
  62. package/resources/components/Dashboard/Commerce/Delivery/ShippingZoneDialog.stx +17 -16
  63. package/resources/components/Dashboard/Commerce/PaymentDetailsDialog.stx +16 -15
  64. package/resources/components/Dashboard/Commerce/PaymentRefundDialog.stx +16 -15
  65. package/resources/components/Dashboard/Commerce/PrintDeviceDeleteDialog.stx +10 -11
  66. package/resources/components/Dashboard/Commerce/PrintDeviceDetailsDialog.stx +16 -14
  67. package/resources/components/Dashboard/Commerce/PrintDeviceDialog.stx +17 -16
  68. package/resources/components/Dashboard/Commerce/PrintLogDeleteDialog.stx +10 -7
  69. package/resources/components/Dashboard/Commerce/PrintLogDetailsDialog.stx +13 -10
  70. package/resources/components/Dashboard/Commerce/ProductWaitlistDeleteDialog.stx +10 -18
  71. package/resources/components/Dashboard/Commerce/ProductWaitlistEntryDialog.stx +96 -105
  72. package/resources/components/Dashboard/Commerce/RestaurantWaitlistDeleteDialog.stx +10 -18
  73. package/resources/components/Dashboard/Commerce/RestaurantWaitlistEntryDialog.stx +92 -95
  74. package/resources/components/Dashboard/Content/AuthorEditorDialog.stx +94 -0
  75. package/resources/components/Dashboard/Content/AuthorsDashboard.stx +39 -31
  76. package/resources/components/Dashboard/Content/BlogDashboard.stx +87 -176
  77. package/resources/components/Dashboard/Content/BlogPostEditorDialog.stx +195 -0
  78. package/resources/components/Dashboard/Content/CommentsDashboard.stx +14 -4
  79. package/resources/components/Dashboard/Content/ContentTaxonomyDashboard.stx +40 -55
  80. package/resources/components/Dashboard/Content/CreateFolderDialog.stx +45 -0
  81. package/resources/components/Dashboard/Content/FileDetailsDrawer.stx +31 -0
  82. package/resources/components/Dashboard/Content/FileManagerDashboard.stx +47 -107
  83. package/resources/components/Dashboard/Content/FileUploadDialog.stx +89 -0
  84. package/resources/components/Dashboard/Content/PageEditorDialog.stx +93 -0
  85. package/resources/components/Dashboard/Content/PagesDashboard.stx +36 -26
  86. package/resources/components/Dashboard/Content/PostEditorDialog.stx +176 -0
  87. package/resources/components/Dashboard/Content/PostsDashboard.stx +40 -64
  88. package/resources/components/Dashboard/Content/SeoDashboard.stx +18 -84
  89. package/resources/components/Dashboard/Content/SeoEditorDialog.stx +108 -0
  90. package/resources/components/Dashboard/Content/TaxonomyEditorDialog.stx +106 -0
  91. package/resources/components/Dashboard/CreateRecordModal.stx +72 -83
  92. package/resources/components/Dashboard/Email/InboxMessageList.stx +1 -1
  93. package/resources/components/Dashboard/GlobalSearch.stx +3 -9
  94. package/resources/components/Dashboard/Infrastructure/CloudDetailsDialog.stx +2 -16
  95. package/resources/components/Dashboard/Infrastructure/DnsRecordDialog.stx +4 -16
  96. package/resources/components/Dashboard/Infrastructure/LogDetailsDialog.stx +4 -19
  97. package/resources/components/Dashboard/Infrastructure/MailboxDetailsDialog.stx +6 -16
  98. package/resources/components/Dashboard/Infrastructure/ServerInspectorDialog.stx +105 -0
  99. package/resources/components/Dashboard/Infrastructure/ServersDashboard.stx +5 -59
  100. package/resources/components/Dashboard/Jobs/JobHistory.stx +1 -11
  101. package/resources/components/Dashboard/Library/ComponentsDashboard.stx +11 -60
  102. package/resources/components/Dashboard/Library/FunctionsDashboard.stx +11 -15
  103. package/resources/components/Dashboard/Library/SourceScaffoldDialog.stx +95 -0
  104. package/resources/components/Dashboard/Management/AssignmentDrawer.stx +93 -0
  105. package/resources/components/Dashboard/Management/PermissionsDashboard.stx +47 -129
  106. package/resources/components/Dashboard/Marketing/CampaignDeleteDialog.stx +11 -12
  107. package/resources/components/Dashboard/Marketing/CampaignDeliveryDialog.stx +5 -8
  108. package/resources/components/Dashboard/Marketing/CampaignDialog.stx +17 -17
  109. package/resources/components/Dashboard/Marketing/MarketingListDeleteDialog.stx +15 -15
  110. package/resources/components/Dashboard/Marketing/MarketingListDialog.stx +17 -17
  111. package/resources/components/Dashboard/Marketing/MarketingListsTable.stx +1 -1
  112. package/resources/components/Dashboard/Marketing/SocialPostDeleteDialog.stx +11 -12
  113. package/resources/components/Dashboard/Marketing/SocialPostDialog.stx +17 -16
  114. package/resources/components/Dashboard/Models/EditRecordModal.stx +81 -0
  115. package/resources/components/Dashboard/Models/ModelRecordActions.stx +30 -0
  116. package/resources/components/Dashboard/Models/ModelRecordsDashboard.stx +42 -94
  117. package/resources/components/Dashboard/Navbar.stx +5 -5
  118. package/resources/components/Dashboard/Notifications/NotificationDeliveryDialog.stx +40 -60
  119. package/resources/components/Dashboard/UI/Button.stx +4 -0
  120. package/resources/components/Dashboard/UI/ConfirmDialog.stx +55 -53
  121. package/resources/components/Dashboard/UI/Drawer.stx +114 -0
  122. package/resources/components/Dashboard/UI/Modal.stx +32 -21
  123. package/resources/components/Docs/Demo/ComboboxDemo.stx +4 -5
  124. package/resources/components/Docs/Demo/DropdownDemo.stx +12 -5
  125. package/resources/components/Docs/Demo/ListboxDemo.stx +14 -6
  126. package/resources/components/Docs/Demo/PopoverDemo.stx +10 -5
  127. package/resources/components/Docs/Demo/RadioGroupDemo.stx +14 -6
  128. package/resources/components/Docs/Demo/StepperDemo.stx +4 -5
  129. package/resources/components/Docs/TeamMember.stx +16 -9
  130. package/resources/components/Forum/ForumReplyForm.stx +7 -7
  131. package/resources/components/Forum/ForumSidebar.stx +10 -6
  132. package/resources/components/Marketing/Faqs.stx +5 -5
  133. package/resources/components/Marketing/Feature.stx +11 -6
  134. package/resources/components/Marketing/Layout.stx +12 -8
  135. package/resources/components/Marketing/Pricing.stx +11 -5
  136. package/resources/components/Marketing/PrimaryFeatures.stx +4 -5
  137. package/resources/components/Marketing/PrimaryFeatures2.stx +6 -5
  138. package/resources/components/Marketing/SecondaryFeatures.stx +10 -5
  139. package/resources/components/Marketing/Testimonials.stx +8 -5
  140. package/resources/views/index.stx +4 -4
  141. package/views/system-tray/index.stx +1 -1
@@ -1,18 +1,23 @@
1
1
  <script>
2
2
  interface FeatureProps {
3
3
  className?: string
4
- feature?: string
4
+ feature?: {
5
+ name: string
6
+ summary: string
7
+ description: string
8
+ image: string
9
+ icon: string
10
+ }
5
11
  isActive?: boolean
6
12
  }
7
13
 
8
- const { className = '', feature = {, isActive = false } = defineProps<FeatureProps>()
9
-
10
- name: '',
14
+ const { className = '', feature = {
15
+ name: '',
11
16
  summary: '',
12
17
  description: '',
13
18
  image: '',
14
- icon: ''
15
- }
19
+ icon: '',
20
+ }, isActive = false } = defineProps<FeatureProps>()
16
21
  </script>
17
22
  <div class="{{ className }} {{ !isActive ? 'opacity-75 hover:opacity-100' : '' }}">
18
23
  <div class="w-9 rounded-lg {{ isActive ? 'bg-blue-600' : 'bg-slate-500' }}">
@@ -1,20 +1,24 @@
1
1
  <script>
2
- interface LayoutProps {
3
- inter?: string
4
- lexend?: string
2
+ interface FontConfig {
3
+ subsets: string[]
4
+ display: string
5
+ variable: string
5
6
  }
6
7
 
7
- const { inter = {, lexend = { } = defineProps<LayoutProps>()
8
+ interface LayoutProps {
9
+ inter?: FontConfig
10
+ lexend?: FontConfig
11
+ }
8
12
 
9
- subsets: ['latin'],
13
+ const { inter = {
14
+ subsets: ['latin'],
10
15
  display: 'swap',
11
16
  variable: '--font-inter',
12
- }
13
-
17
+ }, lexend = {
14
18
  subsets: ['latin'],
15
19
  display: 'swap',
16
20
  variable: '--font-lexend',
17
- }
21
+ } } = defineProps<LayoutProps>()
18
22
  </script>
19
23
  <html
20
24
  lang="en"
@@ -1,11 +1,17 @@
1
1
  <script>
2
2
  interface PricingProps {
3
- plans?: string
3
+ plans?: Array<{
4
+ name: string
5
+ price: string
6
+ description: string
7
+ href: string
8
+ features: string[]
9
+ featured: boolean
10
+ }>
4
11
  }
5
12
 
6
- const { plans = [ } = defineProps<PricingProps>()
7
-
8
- {
13
+ const { plans = [
14
+ {
9
15
  name: 'Hobby (Early Bird Pricing)',
10
16
  price: '$19',
11
17
  description: 'Get a lifetime access with all upgrades included in the future.',
@@ -49,7 +55,7 @@ const { plans = [ } = defineProps<PricingProps>()
49
55
  ],
50
56
  featured: false,
51
57
  },
52
- ]
58
+ ] } = defineProps<PricingProps>()
53
59
  </script>
54
60
  <section
55
61
  id="pricing"
@@ -1,12 +1,11 @@
1
1
  <script>
2
2
  interface PrimaryFeaturesProps {
3
- features?: string
3
+ features?: Array<{ title: string, description: string, image: string }>
4
4
  selectedIndex?: number
5
5
  }
6
6
 
7
- const { features = [, selectedIndex = 0 } = defineProps<PrimaryFeaturesProps>()
8
-
9
- {
7
+ const { features = [
8
+ {
10
9
  title: 'Frontend',
11
10
  description: 'Powered by a progressive UI Engine, building application interfaces has never been easier.',
12
11
  image: 'https://salient.tailwindui.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fpayroll.517af4e7.png&w=1920&q=75',
@@ -26,7 +25,7 @@ const { features = [, selectedIndex = 0 } = defineProps<PrimaryFeaturesProps>()
26
25
  description: 'Lorem ipsum dolor sit, amet consectetur adipisicing elit. Tempora in cum blanditiis? Qui omnis unde.',
27
26
  image: 'https://salient.tailwindui.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fpayroll.517af4e7.png&w=1920&q=75',
28
27
  },
29
- ]
28
+ ], selectedIndex = 0 } = defineProps<PrimaryFeaturesProps>()
30
29
  </script>
31
30
  <section id="features" aria-label="Features for running your books" class="overflow-hidden relative pb-28 pt-20 sm:py-32 bg-blue-600">
32
31
  <Container class="relative">
@@ -2,14 +2,15 @@
2
2
  interface PrimaryFeatures2Props {
3
3
  backgroundImage?: string
4
4
  screenshotPayroll?: string
5
- features?: string
5
+ features?: Array<{ title: string, description: string, image: string }>
6
6
  selectedIndex?: number
7
7
  tabOrientation?: string
8
8
  }
9
9
 
10
- const { backgroundImage = '/images/screenshots/background-features.jpg', screenshotPayroll = '/images/screenshots/payroll.webp', features = [, selectedIndex = 0, tabOrientation = 'vertical' } = defineProps<PrimaryFeatures2Props>()
11
-
12
- {
10
+ // `features` defaults reference `screenshotPayroll`, which is bound earlier in
11
+ // the same pattern — destructuring initializes left to right, so that is legal.
12
+ const { backgroundImage = '/images/screenshots/background-features.jpg', screenshotPayroll = '/images/screenshots/payroll.webp', features = [
13
+ {
13
14
  title: 'Payroll',
14
15
  description: "Keep track of everyone's salaries and whether or not they've been paid. Direct deposit not supported.",
15
16
  image: screenshotPayroll,
@@ -29,7 +30,7 @@ const { backgroundImage = '/images/screenshots/background-features.jpg', screens
29
30
  description: 'Easily export your data into an Excel spreadsheet where you can do whatever the hell you want with it.',
30
31
  image: '',
31
32
  },
32
- ]
33
+ ], selectedIndex = 0, tabOrientation = 'vertical' } = defineProps<PrimaryFeatures2Props>()
33
34
  </script>
34
35
  <section
35
36
  id="features"
@@ -1,12 +1,17 @@
1
1
  <script>
2
2
  interface SecondaryFeaturesProps {
3
- features?: string
3
+ features?: Array<{
4
+ name: string
5
+ summary: string
6
+ description: string
7
+ image: string
8
+ icon: string
9
+ }>
4
10
  selectedIndex?: number
5
11
  }
6
12
 
7
- const { features = [, selectedIndex = 0 } = defineProps<SecondaryFeaturesProps>()
8
-
9
- {
13
+ const { features = [
14
+ {
10
15
  name: 'Dashboard',
11
16
  summary: 'The UI to your application.',
12
17
  description: 'Whether you are a developer or a client, The Dashboard visualizes your data. Easily extend your admin panel.',
@@ -27,7 +32,7 @@ const { features = [, selectedIndex = 0 } = defineProps<SecondaryFeaturesProps>(
27
32
  image: 'https://salient.tailwindui.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fprofit-loss.2a2f85d5.png&w=1200&q=75',
28
33
  icon: '',
29
34
  },
30
- ]
35
+ ], selectedIndex = 0 } = defineProps<SecondaryFeaturesProps>()
31
36
  </script>
32
37
  <section id="secondary-features" aria-label="Features for simplifying everyday business tasks" class="pb-14 pt-20 sm:pb-20 sm:pt-32 lg:pb-32">
33
38
  <Container>
@@ -1,11 +1,14 @@
1
1
  <script>
2
2
  interface TestimonialsProps {
3
- testimonials?: string
3
+ /** One inner array per rendered column. */
4
+ testimonials?: Array<Array<{
5
+ content: string
6
+ author: { name: string, role: string, image: string }
7
+ }>>
4
8
  }
5
9
 
6
- const { testimonials = [ } = defineProps<TestimonialsProps>()
7
-
8
- [
10
+ const { testimonials = [
11
+ [
9
12
  {
10
13
  content: 'Stacks is a rapid development framework that has helped me create and maintain frontends, backends, and clouds without worrying about the boilerplate.',
11
14
  author: {
@@ -59,7 +62,7 @@ const { testimonials = [ } = defineProps<TestimonialsProps>()
59
62
  },
60
63
  },
61
64
  ],
62
- ]
65
+ ] } = defineProps<TestimonialsProps>()
63
66
  </script>
64
67
  <section
65
68
  id="testimonials"
@@ -2636,22 +2636,22 @@ export default {
2636
2636
  </button>
2637
2637
  <div class="taskbar-divider"></div>
2638
2638
  <div class="quick-launch">
2639
- <a href="https://stacksjs.com/docs" target="_blank" class="quick-launch-icon" title="Documentation">
2639
+ <a href="https://stacksjs.com/docs" target="_blank" class="quick-launch-icon" x-tooltip="Documentation" title="Documentation">
2640
2640
  <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
2641
2641
  <path d="M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1 0-5H20"/>
2642
2642
  </svg>
2643
2643
  </a>
2644
- <a href="https://github.com/stacksjs/stacks" target="_blank" class="quick-launch-icon" title="GitHub Repository">
2644
+ <a href="https://github.com/stacksjs/stacks" target="_blank" class="quick-launch-icon" x-tooltip="GitHub Repository" title="GitHub Repository">
2645
2645
  <svg width="20" height="20" viewBox="0 0 16 16" fill="currentColor">
2646
2646
  <path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"/>
2647
2647
  </svg>
2648
2648
  </a>
2649
- <a href="https://github.com/sponsors/chrisbbreuer" target="_blank" class="quick-launch-icon" title="Sponsor">
2649
+ <a href="https://github.com/sponsors/chrisbbreuer" target="_blank" class="quick-launch-icon" x-tooltip="Sponsor" title="Sponsor">
2650
2650
  <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
2651
2651
  <path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/>
2652
2652
  </svg>
2653
2653
  </a>
2654
- <a href="https://stacksjs.com/discord" target="_blank" class="quick-launch-icon" title="Discord">
2654
+ <a href="https://stacksjs.com/discord" target="_blank" class="quick-launch-icon" x-tooltip="Discord" title="Discord">
2655
2655
  <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
2656
2656
  <path d="M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515a.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0a12.64 12.64 0 0 0-.617-1.25a.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057a19.9 19.9 0 0 0 5.993 3.03a.078.078 0 0 0 .084-.028a14.09 14.09 0 0 0 1.226-1.994a.076.076 0 0 0-.041-.106a13.107 13.107 0 0 1-1.872-.892a.077.077 0 0 1-.008-.128a10.2 10.2 0 0 0 .372-.292a.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127a12.299 12.299 0 0 1-1.873.892a.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028a19.839 19.839 0 0 0 6.002-3.03a.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.956-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.955-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.946 2.418-2.157 2.418z"/>
2657
2657
  </svg>
@@ -83,7 +83,7 @@ void loadProjects()
83
83
  <p class="text-neutral-500 text-xs dark:text-neutral-400">Project shortcuts</p>
84
84
  </div>
85
85
  </div>
86
- <button type="button" class="flex items-center justify-center h-9 w-9 text-neutral-500 hover:text-neutral-900 dark:hover:text-white bg-white dark:bg-white/5 border border-black/5 rounded-lg dark:border-white/10" @click="run('refresh')" title="Refresh">
86
+ <button type="button" class="flex items-center justify-center h-9 w-9 text-neutral-500 hover:text-neutral-900 dark:hover:text-white bg-white dark:bg-white/5 border border-black/5 rounded-lg dark:border-white/10" @click="run('refresh')" x-tooltip="Refresh" title="Refresh">
87
87
  <span :class="running() === 'refresh' ? 'h-4 w-4 animate-spin i-hugeicons-loading-03' : 'h-4 w-4 i-hugeicons-refresh'"></span>
88
88
  </button>
89
89
  </header>