A dynamic table component for Laravel Livewire - For Slack access, visit:

Overview

Package Logo

Latest Version on Packagist Styling Tests Total Downloads

A dynamic Laravel Livewire component for data tables.

Dark Mode

Full Table

Bootstrap 4 Demo | Bootstrap 5 Demo | Tailwind Demo | Demo Repository

Installation

You can install the package via composer:

composer require rappasoft/laravel-livewire-tables

Documentation and Usage Instructions

See the documentation for detailed installation and usage instructions.

Basic Example

<?php

namespace App\Http\Livewire\Admin\User;

use App\Domains\Auth\Models\User;
use Illuminate\Database\Eloquent\Builder;
use Rappasoft\LaravelLivewireTables\DataTableComponent;
use Rappasoft\LaravelLivewireTables\Views\Column;

class UsersTable extends DataTableComponent
{

    public function columns(): array
    {
        return [
            Column::make('Name')
                ->sortable()
                ->searchable(),
            Column::make('E-mail', 'email')
                ->sortable()
                ->searchable(),
            Column::make('Verified', 'email_verified_at')
                ->sortable(),
        ];
    }

    public function query(): Builder
    {
        return User::query();
    }
}

See advanced example

To-do/Roadmap

  • Bootstrap 4 Template
  • Bootstrap 5 Template
  • Sorting By Relationships
  • User Column Selection
  • Drag & Drop (beta)
  • Column Search
  • Greater Configurability
  • Collection/Query Support
  • Test Suite (WIP)

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please e-mail [email protected] to report any security vulnerabilities instead of the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

Comments
  • Adds date filter type

    Adds date filter type

    Adds ability to add filter of type date and pass optionally min& max options.

    Here is example code:

    public function filters(): array
        {
            return [
                'fromDate' => Filter::make('From Date')
                    ->date([
                        'max' => now()->format('Y-m-d')
                    ]),
                'toDate' => Filter::make('To Date')
                    ->date([
                        'min' => isset($this->filters['fromDate']) && $this->filters['fromDate'] ? $this->filters['fromDate']:'',
                        'max' => now()->format('Y-m-d')
                    ])
            ];
        }
    

    Example Output screenshot: Screen Shot 2021-06-08 at 9 43 26 PM

    Awaiting Next Release 
    opened by bomshteyn 31
  • Current state of docs

    Current state of docs

    I wonder if it's possible for you @rappasoft to create a new repository called for example livewire-tables-docs which would contain all markdown files currently presented in Wiki? Or maybe even put them into new docs folder, of this repository?

    I don't think you alone can handle managing docs. And Wiki cannot be changed by anyone else this way. For example if docs were open to edit for everyone there is some code with bad practice that might be updated to look better and less confusing for new users, some typos etc.

    Also this change might give some space to publish docs on some website with better UI and more complex search (good example is Laravel, Jetstream and other docs).

    Thanks for thinking this through.

    opened by Majkie 30
  • Column select

    Column select

    This feature uniquely identifies each table for column selections stored in the session. It also allows for columns selections to be put into the query string, so that selections can be bookmarked.

    The tldr; is that we now have a fingerprinting method that uses static::class to generate a key, or slug for each component, to be used as an alias for $tableName in the session and query string arrays, which is always the same for the same component, and always different for another.

        /**
         * returns a unique id for the table, used as an alias to identify one table from another session and query string to prevent conflicts
         */
        public function dataTableFingerprint(): string
        {
            $className = str_split(static::class);
            $crc32 = sprintf('%u', crc32(serialize($className)));
    
            return base_convert($crc32, 10, 36);
        }
    
        /**
         * Set the custom query string array for this specific table
         *
         * @return array|\null[][]
         */
        public function queryString(): array
        {
            if ($this->queryStringIsEnabled()) {
                return [
                    $this->getTableName() => ['except' => null, 'as' => $this->dataTableFingerprint()],
                    'userSelectedColumns' => ['except' => null, 'as' => $this->dataTableFingerprint() . '-c']
                ];
            }
    
            return [];
        }
    

    This produces urls that look something like this: http://table-demo.test/?11mbmzx[filters][year]=2022&11mbmzx-c[0]=year

    Where 11mbmzx is the fingerprint, or unique alias for the component.

    The dynamic link above will apply a filter with the key of year and value 2022 and select to only have the year column displayed.

    checking only the year column in the columns▼ dropdown on a table fingerprinted 11mbmzx will put 11mbmzx-c[0]=year into the query string. it will also put the following array into the session:

    11mbmzx-columnSelectEnabled => array:1 [▼ 0 => year ]

    Query strings will be evaluated first to determined which columns should be displayed, after that the session, followed by the default.

    closes #760

    opened by inmanturbo 29
  • Add filterable column

    Add filterable column

    In addition to searching, will it be possible to define a filtering column?

    More often than not there is a need to filter the table based on values in one of more columns and then search through a scoped result set.

    In terms of example provided in documentation:

    • filter all users that have a role "admins"
    • search by name
    opened by nickfls 24
  • Problem with filter results - Need to refresh

    Problem with filter results - Need to refresh

    Discussed in https://github.com/rappasoft/laravel-livewire-tables/discussions/374

    Originally posted by lilouch June 23, 2021 Hi,

    I have implemented a filter that match a specific label.

    ->when($this->getFilter('color'), fn ($query, $color) => $query->where('color', $color))

    It works the first time. Then, if I select another color, the results are messed up i.e I have not only this color but others colors labels that are shown. But If I refresh the page, the filter works again.

    Also, when there are no results, I have actually the message "No items found. Try narrowing your search.", but I still have some results displayed.

    Any ideas why it happens ?

    Thank you

    help wanted wontfix 
    opened by lironesamoun 23
  • [2.0] Relationship error

    [2.0] Relationship error

    There is a problem when you have two relationships with the same table it always shows the first relationship. I'll try to explain:

    I have a model like this:

    class Employee extends Model
    {
        ...
        public function company(): BelongsTo
        {
            return $this->belongsTo(Company::class, 'company_id', 'id');
        }
    
        public function related_company(): BelongsTo
        {
            return $this->belongsTo(Company::class, 'related_company_id', 'id');
        }
        ...
    }
    
    

    I have a UserTable component with this piece of code

    ...
    Column::make("Id", "id"),
    Column::make("Com. Id.", "company_id"),
    Column::make("Company", "company.name"),
    Column::make("Rel. Id.", "related_company_id"),
    Column::make("Rel. Company", "related_company.name"),
    ...
    
    

    It shows something like this... livewire_tables_problem_1

    The last column in the first line shows "Company 3" when related_company_id = 2. If I remove two first lines, I have something like this

    livewire_tables_problem_2

    In this case, the column shows the correct value of the related table.

    bug help wanted wontfix 
    opened by jantbox 21
  • setThAttributes() Has no effect on the text in header when the column has filtering enabled

    setThAttributes() Has no effect on the text in header when the column has filtering enabled

    This is cause by the same underlying issue as https://github.com/rappasoft/laravel-livewire-tables/issues/719

    th classes on sortable columns have no effect.

    The following line is hard coding the classes on the sort button:

    https://github.com/rappasoft/laravel-livewire-tables/blob/6e30f7c510bc5f08eb53cf776de57634e29b554e/resources/views/components/table/th.blade.php#L24

    Options to fix:

    1. Add another method to call from configure like setSortButtonAttributes
    2. Merge or override classes from the $customAttributes set in setThAttributes.
    3. Leave out the duplicated classes that are targeting the text and inherit them, or I should say let them cascade from the th parent.

    Options 3 may be the simplest. However I am not 100% on the predictability as to which classes would or should actually affect the text inside the button, and this may not always achieve the desired outcome.

    Option 2 may not be the cleanest. The class lists aren't identical so the happy medium might need to be found somehow between text targeting and block targeting classes.

    Perhaps the most elegant solution would be to use option one, and also explode the button into another blade view, or component as it were, rather than adding another $customAttributes variable to the th component. $customSortButtonAttributes ? :shrug:

    @rappasoft Will you be accepting PR's for this issue?

    P.S (Added) I would like to mention: aside from his little quirk the new configure api in v2 is just very very nice. Thank you for that!

    opened by inmanturbo 19
  • Change formatting of relational column to allow proper sorting.

    Change formatting of relational column to allow proper sorting.

    All Submissions:

    • [x] Have you followed the guidelines in our Contributing document?
    • [x] Have you checked to ensure there aren't other open Pull Requests for the same update/change?

    New Feature Submissions:

    1. [x] Does your submission pass tests and did you add any new tests needed for your feature?
    2. [ ] Did you update all templates (if applicable)?
    3. [ ] Did you add the relevant documentation (if applicable)?
    4. Did you test locally to make sure your feature works as intended?

    Changes to Core Features:

    • [x] Have you added an explanation of what your changes do and why you'd like us to include them?
    • [ ] Have you written new tests for your core changes, as applicable?
    • [x] Have you successfully ran tests with your changes locally?

    When sorting a relational column, the table wouldn't actually sort. Changing the query to use a backquote (`) instead of a double quote (") seems to fix this.

    opened by korki696 13
  • Update DataTableComponent.php

    Update DataTableComponent.php

    When updates composer all the tables shows this error, just needs to add this property to the Main DataTableComponent to solve it

    TypeError count(): Argument #1 ($value) must be of type Countable|array, null given

    All Submissions:

    • [ ] Have you followed the guidelines in our Contributing document?
    • [ ] Have you checked to ensure there aren't other open Pull Requests for the same update/change?

    New Feature Submissions:

    1. [ ] Does your submission pass tests and did you add any new tests needed for your feature?
    2. [ ] Did you update all templates (if applicable)?
    3. [ ] Did you add the relevant documentation (if applicable)?
    4. Did you test locally to make sure your feature works as intended?

    Changes to Core Features:

    • [ ] Have you added an explanation of what your changes do and why you'd like us to include them?
    • [ ] Have you written new tests for your core changes, as applicable?
    • [ ] Have you successfully ran tests with your changes locally?
    opened by cobogt 12
  • Randomly dissappearing columns

    Randomly dissappearing columns

    Hi,

    First off, great package!

    We're using livewire tables (currently 20+ cruds) extensively thoughout a new project and are experiencing issues with columns not showing by default in the tables. Sometimes one or two columns will display, sometimes all columns will display and sometimes no columns at all will display.

    I've tried adding $this->setColumnSelectStatus(true); into the configure method, but this doesn't appear to have any effect.

    One possible thought is quite a few of the tables contain the same column names i.e. title, description, enabled etc and I notice that you're creating the session key by md5 hashing the column name, so I don't know whether this might be affecting things?

    Any thoughts?

    bug In Progress 
    opened by Ceepster14 11
  • Add make:table command

    Add make:table command

    I've added the make:table command. You just pass a class name and it scaffolds out a stub that helps you get started.

    Hopefully this is pretty self explanatory. I used a lot of the code and approach as the Livewire make command.

    Sorry I don't have any tests.

    Awaiting Next Release 
    opened by iAmKevinMcKee 11
  • SlideDown filter panel - adding options to allow for

    SlideDown filter panel - adding options to allow for "Open By Default" and "Closed by Default", Default is closed.

    All Submissions:

    • [Y ] Have you followed the guidelines in our Contributing document?
    • [ Y] Have you checked to ensure there aren't other open Pull Requests for the same update/change?

    New Feature Submissions:

    1. [ Y] Does your submission pass tests and did you add any new tests needed for your feature?
    2. [Y ] Did you update all templates (if applicable)?
    3. [Y ] Did you add the relevant documentation (if applicable)?
    4. [Y] Did you test locally to make sure your feature works as intended?

    Changes to Core Features:

    • [] Have you added an explanation of what your changes do and why you'd like us to include them?
    • [] Have you written new tests for your core changes, as applicable?
    • [] Have you successfully ran tests with your changes locally?

    Changes relate to the SlideDown filter layout

    Defauilt value is set to false in WIthFilters, and will show it as closed

    public bool $filterSlideDownDefaultVisible = false
    

    Two configuration options added for the configure() function

        // Shorthand for $this->setFilterSlideDownDefaultStatus(true)
        $this->setFilterSlideDownDefaultStatusEnabled();
    
    // Shorthand for $this->setFilterSlideDownDefaultStatus(false)
        $this->setFilterSlideDownDefaultStatusDisabled();
    
      public function setFilterSlideDownDefaultStatus(bool $status): self
      {
          $this->filterSlideDownDefaultVisible = $status;
    
          return $this;
      }
    

    WithFilters

    // Adding filter for use in wireable
    public bool $filterSlideDownDefaultVisible = false;
    

    views/components)/wrapper.blade.php

    Adjusted for filterOpen reflecting wire value

        @if ($component->isFilterLayoutSlideDown())
            wire:ignore.self x-data="{ filtersOpen: $wire.filterSlideDownDefaultVisible }"
        @endif
    

    Relevant tests & Helper Functions created within FilterConfigurationTest and FilterHelpersTest

    These set the initial value of the "filtersOpen" using ALpine: wire:ignore.self x-data="{ filtersOpen: $wire.filterSlideDownDefaultVisible }"

    As the initial value is set only, it will not reset to default upon refresh.

    opened by lrljoe 0
  • Reference to #864 fixes for bootstrap-5 theme

    Reference to #864 fixes for bootstrap-5 theme

    This was a change implemented via the coreui update.

    All Submissions:

    • [ ] Have you followed the guidelines in our Contributing document?
    • [ ] Have you checked to ensure there aren't other open Pull Requests for the same update/change?

    New Feature Submissions:

    1. [ ] Does your submission pass tests and did you add any new tests needed for your feature?
    2. [ ] Did you update all templates (if applicable)?
    3. [ ] Did you add the relevant documentation (if applicable)?
    4. Did you test locally to make sure your feature works as intended?

    Changes to Core Features:

    • [ ] Have you added an explanation of what your changes do and why you'd like us to include them?
    • [ ] Have you written new tests for your core changes, as applicable?
    • [ ] Have you successfully ran tests with your changes locally?
    opened by ccsliinc 0
  • Missing )

    Missing )

    All Submissions:

    • [ ] Have you followed the guidelines in our Contributing document?
    • [ ] Have you checked to ensure there aren't other open Pull Requests for the same update/change?

    New Feature Submissions:

    1. [ ] Does your submission pass tests and did you add any new tests needed for your feature?
    2. [ ] Did you update all templates (if applicable)?
    3. [ ] Did you add the relevant documentation (if applicable)?
    4. Did you test locally to make sure your feature works as intended?

    Changes to Core Features:

    • [ ] Have you added an explanation of what your changes do and why you'd like us to include them?
    • [ ] Have you written new tests for your core changes, as applicable?
    • [x] Have you successfully ran tests with your changes locally?
    opened by ken-tam 0
  • Potential issue with added 'orderByRaw' clause

    Potential issue with added 'orderByRaw' clause

    Background

    I've started testing this library today and ran into an issue where morphOne relations weren't supported by this library. I found this PR ( #844 ) which was supposed to fix the issue. As can be seen in the comment I posted there, the PR fixes the errors and it is able to successfully retrieve the data. Unfortunately, even with the PR, the sorting wasn't working for me.

    The potential issue

    After some digging, I found the following code:

    # vendor/rappasoft/laravel-livewire-tables/src/Traits/WithSorting.php:78
    if ($column->hasSortCallback()) {
        $this->setBuilder(call_user_func($column->getSortCallback(), $this->getBuilder(), $direction));
    } elseif ($column->isBaseColumn()) {
        $this->setBuilder($this->getBuilder()->orderBy($column->getColumnSelectName(), $direction));
    } else {
        $this->setBuilder($this->getBuilder()->orderByRaw('"'.$column->getColumnSelectName().'"' . ' ' . $direction));
    }
    

    Here the ordering section is added to the builder. Whilst I don't fully understand what (and why) these conditions exist and what they're supposed to do, I noticed the last line included this:

    '"'.$column->getColumnSelectName().'"'
    

    I also logged my builder ->toSql() to see what was happening and this was (the relevant part of) my SQL:

    select
        ...
    from `counsellors`
        left join `users` on `users`.`userable_id` = `counsellors`.`id`
    order by "user.name" desc
    

    Now here we can see the order by clause to be order by "user.name". And this is where the issue comes from. The key used for ordering is a string " ... " and not a reference to the field ` ... `.

    Changing the above line to the line below fixes the issue and it all seems to work like a charm!

    $this->setBuilder($this->getBuilder()->orderByRaw('`'.$column->getColumnSelectName().'`' . ' ' . $direction));
    #                                                 ^^^                                ^^^
    
    opened by KSneijders 0
Releases(v2.9.0)
  • v2.9.0(Dec 22, 2022)

    Added

    • Added support for optgroups in SelectFilter - https://github.com/rappasoft/laravel-livewire-tables/pull/962
    • Added information about applying filters on boot - https://github.com/rappasoft/laravel-livewire-tables/pull/949
    • Added ComponentColumn - https://github.com/rappasoft/laravel-livewire-tables/pull/827
    • Added ability to set the pagination mode of standard or simple

    Changed

    • Fixed formatting for relational column - https://github.com/rappasoft/laravel-livewire-tables/pull/757
    • Fixed errors when filter does not exist - https://github.com/rappasoft/laravel-livewire-tables/pull/979
    • Update basic example to represent V2 requirements - https://github.com/rappasoft/laravel-livewire-tables/pull/944
    • Fixed responsive on bootstrap 4 & 5 - https://github.com/rappasoft/laravel-livewire-tables/pull/903
    • Fix for select and checkbox inputs styling with Bootstrap 5 theme - https://github.com/rappasoft/laravel-livewire-tables/pull/864
    Source code(tar.gz)
    Source code(zip)
  • v2.8.0(Jul 25, 2022)

    Added

    • Added functionality to bookmark or deep link column selection
    • Added functionality to identify different datatable components as unique in column selection
    • Added funcitonality to configure query string alias
    • Added funcitonality to configure session key for column selection (dataTableFingerprint)
    • Added functionality to select/desect all columns in column selection dropdown
    • Added French translation - https://github.com/rappasoft/laravel-livewire-tables/pull/816
    • Added Malay translation - https://github.com/rappasoft/laravel-livewire-tables/pull/821
    • Added Dutch translation - https://github.com/rappasoft/laravel-livewire-tables/pull/834
    • Added Ukranian translation - https://github.com/rappasoft/laravel-livewire-tables/pull/840

    Changed

    • Fixed bug with sort callback on newer versions of Livewire - https://github.com/rappasoft/laravel-livewire-tables/pull/805
    • Fixed: Removed :mixed return type hint as it requires PHP8.0 - https://github.com/rappasoft/laravel-livewire-tables/pull/822
    Source code(tar.gz)
    Source code(zip)
  • v2.7.0(May 8, 2022)

    Added

    • Added functionality to hide individual filters from popover and slide down views
    • Added functionality to hide individual filters from filter pills
    • Added functionality to hide individual filters from the active filter count
    • Added functionality to say which filters get reset by the clear button
    • Added functionality to set filters as secondaryHeader or footer of columns
    Source code(tar.gz)
    Source code(zip)
  • v2.6.0(May 5, 2022)

    Added

    • Added functionality to display BooleanColumn as Yes/No instead of icons.
    • Added ButtonGroupColumn for multiple LinkColumns in one group. Pretty much built in action buttons support.
    • Added bulk action export example to docs.
    Source code(tar.gz)
    Source code(zip)
  • v2.5.0(May 3, 2022)

    Added

    • Ability to pass mount parameters to configurable areas

    Changed

    • Move configure call to boot() instead of booted().
    • Mount methods now available in configure() method.
    • Non-field columns with a searchable callback are now included in the search query.
    • Fixed debug query output duplicating select statements.
    • Fixed header issue on column hide - https://github.com/rappasoft/laravel-livewire-tables/pull/754

    Removed

    • Calls to set builder and columns in render as it doesn't seem to make a difference since it's also called in booted().
    Source code(tar.gz)
    Source code(zip)
  • v2.4.0(Apr 30, 2022)

    Added

    • Added table event listeners to sort/filter/clear from other components.
    • Added text filter.
    • Added $row as second parameter to BooleanColumn setCallback().
    • Added setThSortButtonAttributes() to set attributes for th sort button.
    • Added setHideConfigurableAreasWhenReorderingStatus() to hide configurable areas when reordering status which now defaults to true.

    Changed

    • Rework builder to fix passed parameters in builder() and columns() methods.
    • Fixed possible bug with bulk actions dropdown on Tailwind when bulk actions are hidden until a selection is made.
    Source code(tar.gz)
    Source code(zip)
  • v2.3.0(Apr 28, 2022)

    Added

    • Added ability to define additional select statements outside the scope of a column using the setAdditionalSelects(array $selects) configuration method.
    • Added 8 configurable areas, see Configurable Areas of the Datatable section of the documentation.
    Source code(tar.gz)
    Source code(zip)
  • v2.2.1(Apr 27, 2022)

  • v2.2.0(Apr 26, 2022)

    Added

    • Added space to include custom markup at the end of the component.
    • Added events documentation
    • Added ability to set columns as deselected by default - https://github.com/rappasoft/laravel-livewire-tables/pull/731
    • Added NumberFilter - https://github.com/rappasoft/laravel-livewire-tables/pull/729

    Changed

    • Fixed issue with Postgres and quotes - https://github.com/rappasoft/laravel-livewire-tables/pull/734
    Source code(tar.gz)
    Source code(zip)
  • v2.1.1(Apr 12, 2022)

    Added

    • Turkish Translation - https://github.com/rappasoft/laravel-livewire-tables/pull/686
    • Added missing table row click functionality
    • Added ability to mark column as unclickable if you need a cell to have another clickable element with clickable rows turned on.

    Changed

    • Update filter docs - https://github.com/rappasoft/laravel-livewire-tables/pull/691
    • Update getTdAttributes to take 4th missing argument
    • Add filters in the config section - https://github.com/rappasoft/laravel-livewire-tables/pull/709
    • Update some docs formatting
    Source code(tar.gz)
    Source code(zip)
  • v2.0.0(Mar 30, 2022)

  • v1.25.1(Mar 30, 2022)

  • v1.25.0(Mar 29, 2022)

    Added

    • Added missing row wire:click to BS4/5 - https://github.com/rappasoft/laravel-livewire-tables/pull/658
    • Added Turkmen Localization - https://github.com/rappasoft/laravel-livewire-tables/pull/666
    • Added filters text color for dark mode in tailwind theme - https://github.com/rappasoft/laravel-livewire-tables/pull/668
    • Added Catalan translation - https://github.com/rappasoft/laravel-livewire-tables/pull/673
    Source code(tar.gz)
    Source code(zip)
  • v1.24.0(Feb 13, 2022)

    Added

    • Russian Localization - https://github.com/rappasoft/laravel-livewire-tables/pull/633
    • Portuguese Localization - https://github.com/rappasoft/laravel-livewire-tables/pull/619

    Changed

    • Fixed white border in dark mode - https://github.com/rappasoft/laravel-livewire-tables/pull/621
    • Removed text-left to use default - https://github.com/rappasoft/laravel-livewire-tables/pull/620
    • Fixed bulk select query - https://github.com/rappasoft/laravel-livewire-tables/pull/632
    • Temp fix for dropdowns not working after sorting - https://github.com/rappasoft/laravel-livewire-tables/pull/643
    Source code(tar.gz)
    Source code(zip)
  • v1.23.0(Feb 12, 2022)

  • v1.22.0(Jan 21, 2022)

    Added

    • Added Datetime filter - https://github.com/rappasoft/laravel-livewire-tables/pull/585
    • Added wire:click to rows - https://github.com/rappasoft/laravel-livewire-tables/pull/591
    • Added button type to mobile paginate buttons - https://github.com/rappasoft/laravel-livewire-tables/pull/595
    • Added column generation to make command - https://github.com/rappasoft/laravel-livewire-tables/pull/611

    Changed

    • Updated some ES translations - https://github.com/rappasoft/laravel-livewire-tables/pull/577
    • Updated some AR translations - https://github.com/rappasoft/laravel-livewire-tables/pull/580
    • Add page name when resetting page - https://github.com/rappasoft/laravel-livewire-tables/issues/590
    Source code(tar.gz)
    Source code(zip)
  • v1.21.0(Nov 21, 2021)

    Added

    • Added Chinese translation - https://github.com/rappasoft/laravel-livewire-tables/pull/540
    • Added 'select all' checkbox for multiselect filters - https://github.com/rappasoft/laravel-livewire-tables/pull/551
    • Added attributes to filters - https://github.com/rappasoft/laravel-livewire-tables/pull/558
    • Added 4th option for pills fallback value - https://github.com/rappasoft/laravel-livewire-tables/pull/538

    Changed

    • Removed excess left padding on Bootstrap 5 form check on multiselect filters.
    • Patch bulk actions random wire:key - https://github.com/rappasoft/laravel-livewire-tables/pull/557
    Source code(tar.gz)
    Source code(zip)
  • v1.20.1(Nov 2, 2021)

  • v1.20.0(Oct 26, 2021)

    Added

    • Singular row translation - https://github.com/rappasoft/laravel-livewire-tables/pull/526

    Changed

    • Fixed bulk actions dropdown on Bootstrap - https://github.com/rappasoft/laravel-livewire-tables/pull/519
    • Fixed bulk row/select with pagination off - https://github.com/rappasoft/laravel-livewire-tables/issues/510
    • Conditionally show cursor-pointer class instead of inline style - https://github.com/rappasoft/laravel-livewire-tables/pull/529
    Source code(tar.gz)
    Source code(zip)
  • v1.19.3(Oct 25, 2021)

  • v1.19.2(Oct 15, 2021)

    Added

    • German translation - https://github.com/rappasoft/laravel-livewire-tables/pull/502

    Changed

    • Extracts just the field name from primaryKey - https://github.com/rappasoft/laravel-livewire-tables/pull/506
    • Update BS4 pagination - https://github.com/rappasoft/laravel-livewire-tables/pull/507
    • Update minimum Livewire version to 2.6
    Source code(tar.gz)
    Source code(zip)
  • v1.19.1(Oct 15, 2021)

  • v1.19.0(Oct 15, 2021)

    Added

    • Thai translation - https://github.com/rappasoft/laravel-livewire-tables/pull/491
    • Italian translation - https://github.com/rappasoft/laravel-livewire-tables/pull/493
    • Added getTableRowUrlTarget to set row click target based on the row
    • Add custom class to table - https://github.com/rappasoft/laravel-livewire-tables/pull/495

    Changed

    • Fix removing a multiselect filter - https://github.com/rappasoft/laravel-livewire-tables/pull/494
    Source code(tar.gz)
    Source code(zip)
  • v1.18.0(Oct 14, 2021)

    Added

    • Secondary header (see documentation section Secondary Header Functionality on how to implement column search)

    Changed

    • Add missing properties to reordering session
    Source code(tar.gz)
    Source code(zip)
  • v1.17.0(Oct 13, 2021)

    Added

    • Multiselect filter - https://github.com/rappasoft/laravel-livewire-tables/pull/469

    Changed

    • Fixed default version of livewire - https://github.com/rappasoft/laravel-livewire-tables/issues/486
    • Fix bulk select with search and add typed property to selected - https://github.com/rappasoft/laravel-livewire-tables/pull/439
    Source code(tar.gz)
    Source code(zip)
  • v1.16.0(Sep 26, 2021)

    Added

    Changed

    Source code(tar.gz)
    Source code(zip)
  • v1.15.0(Sep 19, 2021)

    Added

    • Dark styles for Tailwind

    Changed

    • Minimum Livewire version to 2.6.2 to avoid 2.6.1 bug.
    • Remove our custom pagination as Livewire 2.6 supports multiple pagination per page now.
    Source code(tar.gz)
    Source code(zip)
  • v1.14.0(Sep 5, 2021)

Owner
Anthony Rappa
Certified Laravel | Laravel Boilerplate Creator
Anthony Rappa
A dynamic Laravel Livewire component for multi steps form

Livewire component that provides you with a wizard that supports multiple steps form while maintaining state.

Vildan Bina 233 Jan 4, 2023
A laravel Livewire Dynamic Selects with multiple selects depending on each other values, with infinite levels and totally configurable.

Livewire Combobox: A dynamic selects for Laravel Livewire A Laravel Livewire multiple selects depending on each other values, with infinite levels of

Damián Aguilar 25 Oct 30, 2022
Dynamic Laravel Livewire Bootstrap 5 modals.

Laravel Livewire Modals Dynamic Laravel Livewire Bootstrap 5 modals. Requirements Bootstrap 5 Installation Require the package: composer require basti

null 55 Dec 27, 2022
Dynamic Laravel Livewire Bootstrap toasts.

Laravel Livewire Toasts This package allows you to dynamically show Bootstrap toasts via Laravel Livewire components. Documentation Requirements Insta

null 13 Nov 12, 2022
Laravel-comments-livewire - Livewire components for the laravel-comments package

Associate comments and reactions with Eloquent models This package contains Livewire components to be used with the spatie/laravel-comments package. S

Spatie 15 Jan 18, 2022
Control frontend access to properties/methods in Livewire using PHP 8 attributes.

This package adds PHP 8.0 attribute support to Livewire. In specific, the attributes are used for flagging component properties and methods as frontend-accessible.

ARCHTECH 83 Dec 17, 2022
LERN is a Laravel package that will record exceptions into a database and will notify you via Email, Pushover or Slack.

LERN is a Laravel package that will record exceptions into a database and will notify you via Email, Pushover or Slack.

Tyler Arbon 437 Nov 17, 2022
A Slack Invitator made with Lumen Framework.

Lumen - Slackin A Slack Invitator made with Lumen Framework and inspired by rauchg/slackin. That application uses some of my awesome packages: Badge P

Vagner Luz do Carmo 56 May 3, 2020
Laravel Livewire full page component routing.

Laravel Livewire Routes Laravel Livewire full page component routing. This package allows you to specify routes directly inside your full page Livewir

null 22 Oct 6, 2022
Laravel Livewire form component with declarative Bootstrap 5 fields and buttons.

Laravel Livewire Forms Laravel Livewire form component with declarative Bootstrap 5 fields and buttons. Requirements Bootstrap 5 Installation composer

null 49 Oct 29, 2022
Livewire component that brings Spotlight/Alfred-like functionality to your Laravel application.

About LivewireUI Spotlight LivewireUI Spotlight is a Livewire component that provides Spotlight/Alfred-like functionality to your Laravel application.

Livewire UI 792 Jan 3, 2023
A TALL-based Laravel Livewire component to replace the (multiple) select HTML input form with beautiful cards.

TALL multiselect cards A TALL-based Laravel Livewire component to replace the (multiple) select HTML input form with beautiful cards. Table of content

Frederic Habich 19 Dec 14, 2022
Laravel Livewire component to show Events in a good looking monthly calendar

Livewire Calendar This package allows you to build a Livewire monthly calendar grid to show events for each day. Events can be loaded from within the

Andrés Santibáñez 680 Jan 4, 2023
Livewire component that brings Spotlight/Alfred-like functionality to your Laravel application.

About Wire Elements Spotlight Wire Elements Spotlight is a Livewire component that provides Spotlight/Alfred-like functionality to your Laravel applic

Wire Elements 790 Dec 27, 2022
An advanced datatable component for Laravel Livewire.

Livewire Smart Table An advanced, dynamic datatable component with pagination, sorting, and searching including json data. Installation You can instal

Turan Karatuğ 87 Oct 13, 2022
Livewire component that provides you with a modal that supports multiple child modals while maintaining state.

About LivewireUI Modal LivewireUI Modal is a Livewire component that provides you with a modal that supports multiple child modals while maintaining s

Livewire UI 806 Jan 6, 2023
Livewire component that provides you with a modal that supports multiple child modals while maintaining state.

About Wire Elements Modal Wire Elements Modal is a Livewire component that provides you with a modal that supports multiple child modals while maintai

Wire Elements 806 Jan 6, 2023
Livewire component for dependant and/or searchable select inputs

Livewire Select Livewire component for dependant and/or searchable select inputs Preview Installation You can install the package via composer: compos

Andrés Santibáñez 441 Dec 19, 2022
Render a Livewire component on a specific target in the DOM.

Livewire Portals Render a Livewire component on a specific target in the DOM. Install THIS PACKAGE IS STILL IN DEVELOPMENT, TO USE, PLEASE ADD THE FOL

Jeff Ochoa 20 Aug 11, 2022