Releases: codinglabsau/gooey
2.3.2
2.3.1
- Remove coloured border variants from Flasher toast notifications (unintended styling that only rendered in Tailwind v3 due to CSS cascade layer differences)
- Add missing
vue-sonner/style.cssimport to demo app
v2.3.0
LaravelPaginator Component & Gooey Plugin
New: LaravelPaginator component
A drop-in server-driven pagination component for Laravel apps. Pass a paginated response and it renders the navigation — no configuration needed.
<LaravelPaginator :paginator="users" />Supports both paginator types:
LengthAwarePaginator— numbered page links with "Showing X to Y of Z results" on desktop, simple prev/next with chevron icons on mobileCursorPaginator— previous/next navigation only (no page numbers possible with cursors)
The component auto-detects which type was provided by checking for the last_page property.
New: gooey Vue plugin
Gooey is framework-agnostic — consumed by Inertia apps, Nuxt apps, and plain Vue. The new plugin lets consumers configure their framework's link component once at app setup, and Gooey uses it for SPA navigation everywhere.
// Inertia
import { gooey } from '@codinglabsau/gooey'
import { Link } from '@inertiajs/vue3'
app.use(gooey, { link: Link })
// Nuxt
import { gooey } from '@codinglabsau/gooey'
import { NuxtLink } from '#components'
nuxtApp.vueApp.use(gooey, { link: NuxtLink })Fully backwards compatible — if the plugin is never installed, links render as plain <a> tags. No setup required for existing apps.
New: CursorPaginatorResponse<T> global type
Added alongside the existing Paginator<T> type. Both are globally declared — no import needed.
New files
| File | Purpose |
|---|---|
src/plugin.ts |
gooey plugin + GOOEY_LINK_KEY injection symbol |
src/components/gooey-link/GooeyLink.vue |
Internal link wrapper with inject fallback to <a> |
src/components/laravel-paginator/LaravelPaginator.vue |
Entry point — auto-detects paginator type |
src/components/laravel-paginator/LengthAwarePaginator.vue |
Numbered pagination with responsive layout |
src/components/laravel-paginator/CursorPaginator.vue |
Prev/next only |
Exports
gooey(plugin)GooeyOptions(type)LaravelPaginator(component)
GooeyLink is intentionally not exported — internal implementation detail.
Documentation
- Showcase page at
/components/laravel-paginatorwith 3 interactive demos (length-aware, cursor, empty state), props table, and code examples - Installation page updated with plugin setup instructions for Inertia and Nuxt
- Added to sidebar navigation under "Page Layout"
v2.2.6
Bug Fixes
- Restore
style.cssas CSS-only import — instead of removing it entirely (v2.2.5),@codinglabsau/gooey/style.cssis now a thin CSS file that@importsvue-sonner/style.css. This keeps the import in CSS land (resolved by your Vite/PostCSS pipeline, not Node's ESM loader) so it's SSR-safe. Consumers should keep@import "@codinglabsau/gooey/style.css"in their CSS — no change needed from v2.2.2 and earlier.
Upgrade from v2.2.5
If you removed the @import "@codinglabsau/gooey/style.css" line after upgrading to v2.2.5, add it back.
v2.2.5
Bug Fixes
- Fix SSR compatibility — externalize all runtime dependencies so importing Gooey in SSR environments (e.g. Inertia v3) no longer causes
document is not defined(#41) - Remove redundant
DropdownMenuPortalimport — already re-exported via dropdown-menu barrel - Update npm dependencies — security fixes for rollup, systeminformation, minimatch, qs
Note
v2.2.3 and v2.2.4 were yanked — v2.2.3 shipped the source fix but not the rebuilt bundle, and v2.2.4 was a corrective release that was never fully published. v2.2.5 briefly removed style.css but this was restored in v2.2.6. Upgrade directly to v2.2.6.
v2.2.2
What's Changed
- Fix gooey animation not working on mobile by @vrodriguero in #40
Full Changelog: v2.2.1...v2.2.2
v2.2.1
v2.2.0
What's New
SimpleSelect Component
Single-component wrapper for the compound Select, designed for form builders that expect a single entry point.
<SimpleSelect
v-model="country"
:options="[
{ value: 'au', label: 'Australia' },
{ value: 'nz', label: 'New Zealand' },
]"
placeholder="Select a country"
/>Features:
- Accepts
options: { value, label, disabled? }[]prop - Forwards attributes to trigger element (supports
data-cy,id, etc.) - Exports
SelectOptiontype
Full Changelog: v2.1.3...v2.2.0
v2.1.3
What's Changed
- fix: render newlines in Flasher error descriptions by @SethSharp in #37
Full Changelog: v2.1.2...v2.1.3
v2.1.2
What's Changed
Features
- GitHub Pages docs deployment — docs site now auto-deploys on push to main (
d87f52d)
Chores
- Version bump for package registry publish
Full Changelog: v2.1.1...v2.1.2