{"_id":"@dootix-developer/inertiajs-tables-laravel-query-builder","_rev":"17-b26f4203bd598964b7015d67fd0b7318","name":"@dootix-developer/inertiajs-tables-laravel-query-builder","dist-tags":{"latest":"5.0.0"},"versions":{"2.2.0":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"2.2.0","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@2.2.0","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"5f135b5f7672559352264390d3d020cef8025809","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-2.2.0.tgz","fileCount":5,"integrity":"sha512-+VeSpOzMGVjLsZq+/6Jty57f5MGqzuBjsNeEFsolpI9WT6NHSWh82SL41+79kW0j+tLTnZXLGwJD51TYxYs1mw==","signatures":[{"sig":"MEYCIQD1CYmHUNTSYuofz2ZaGoPEeJ90X9x6+ZBx+6dXE3K/mAIhAK61MGtUJD+6Fb8QfW7diVArNx8sL4HHchL5WuA/nThN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSmdNACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrTdhAAgrWpU0Qc5taL58ofE/NqmF11JSnUlcOyGmzVsaUdOOxzfR10\r\nxA27tJzpl7IbcIuXsbxJWUj0pclxUcXO8xVbnQZAKATi+lcdWOiMsTGvqVzD\r\nBlJ2vgxJo6OKIZQAiraYkAR+k7VnYotPmWW6L0C6fbSKG8xzM7GwiD0a0QM5\r\nBPhnpLblkPAa9RdrK6AgaIJUuJEALe82wBTAsnvMM3C8ZykCYi7NVSCjBrgY\r\nnlncT/pMv4ph6oe4TujCbEeW5dwj0J07TykdKwUW3O85ephaoVR/A60gtXNO\r\ner4U5oD68wEcGPqFegMCXOStjBMR06kfMyouzFbhicYduf+MnaBPUvMuEcxG\r\nImpVit8FwpatWn0A3WGIGeHvc3S+ArJCuj9J0sEYAjJuhf8EOQv9uXk4FQLv\r\nrS2eqsfuVQVK0hg9fbxTrx4RjUCA5zW9kXIZTPB5JPhnaYVbLAcmzf3i9uby\r\nFTc9oW6pEm03Z6k8tnF+F/d9psu3W8bWnJCuCByzGqGp6toD1m244W9MBkKU\r\nGulxLKN2Nxi63+jPqP2ReFYQkrlP3AXvRtYmOjtqlG9Y6LTY2gKW3UUk/q08\r\nbStlvYsGQWg9xo1sbbOQWB/92ZAIrAZgYdR07yNaJSF9S6pMX1lcrojtPFYm\r\n7RR+rKg4cic9n5TbBdKE1og3cUENC3Gx++c=\r\n=Ii7u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"1ce99a034576a824c2be5a112bec8e6355fe8356","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"9.6.4","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"20.0.0","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_2.2.0_1682597709405_0.21598509132873822","host":"s3://npm-registry-packages"}},"2.2.1":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"2.2.1","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@2.2.1","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"0bdd995fd62d08f785744f7dfed5a31e5ab051d7","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-2.2.1.tgz","fileCount":5,"integrity":"sha512-Unw+GPnFFXz/RLRsSLH5stFKFQM9haze4HgQVvxjzcCrxIHXeD8iUbBW0kUopvxoE3i05KB+fHz2TwYCQWkabQ==","signatures":[{"sig":"MEUCIQDhDY0oKENqKj2U/B5iSOgmYZzB8l3uxQTyXBaXBZd9LgIgeE7kczzk3KyLRCMW4t8gtB6qcS23FUdSa2lId77mrL8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95871,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSnJxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoB1A//Vof+Aiuz2ZS2dAaf5F+hvjIurIJfxoDm+f7jU4Q8kzDxEY1H\r\nUUg1YkuWZSLreefykeMhJ+gFYCAO+Vs4kJEBpw32K9UXGjBTmIzFFMtWp5QR\r\nbmAUkDuaOSW1miykf9cGTybZBjuRGM57z/7MJLd9dLLAvsRQwHQSWNuSdyVU\r\ndV8efTGtiQiJVv64zfxTm3Ua0dxHE0y1hb8vM6U1gZfdds8Y2UowXz8e/kC1\r\nBv/mNaZYQ7PfB+mb3IZCr4aK4EDOHJyuZxcH/y7U9+8QpAK+PuZgWE076yZq\r\nx7zU+p2avEkzZOdNBM+NLQ0rrG0+ZVQa7XtDcBGAY2kage3r9r5OqaoatsvK\r\nXnA6i1vZuq9kxVNZAZWa2jlYMXhaji5a+ggbTXf1rakZHDeCBHzg+0TbSLle\r\nukEEmCqDyEDKPxxzBWQdwciZ5TO8GThP5vDqMUuP5lKvnM2dhc0sjgl0amBm\r\nZWeNKyBXbG7azOywAezrYJjDorwwQc/opLF/hnpAXoO6/UAcjkX+HfVlKRhC\r\nnadBdpzK1bwkU5/URKxmTJj+c75lH2iEbxGoK2xOYqpbqWdFJ2c3np1m3R7j\r\n3byRrsUI3F2P4YnZIpYoRhW/CwSg0SikaeA0U/sFAY7Qv5AJBjIwY8AAdJ4c\r\nNFC/myx5bybYuIg5rZbd8lZpen1InjwZALA=\r\n=N8lw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"1ce99a034576a824c2be5a112bec8e6355fe8356","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"9.6.4","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"20.0.0","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_2.2.1_1682600560937_0.05527239337728962","host":"s3://npm-registry-packages"}},"2.2.2":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"2.2.2","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@2.2.2","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"8f844e411e5e6ea20917c49e8cd05470acc53e09","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-2.2.2.tgz","fileCount":5,"integrity":"sha512-2F2L0tz7IHlDbQCC5OUWtFN6/rS4c8VnUwMzyNpnLYTWUfwaqWSYGTxMM9AXFmlWj8uDyJZZn0oJ5DSL/4k1+A==","signatures":[{"sig":"MEUCIQCK6PaVgXLr26mqd6ZgExD32nGnijAfsMXadrfCFFZU2gIgNnHWYjseR/3GLedijL5IjUxyW6JO3ca/E0iIcRxcswA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95774,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSnqnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr9hw//RkZbf6NhDwWa3xf+LIOZjwSYM+r4Q2l0klPaCYqQEJf0ZVRo\r\nG0X/t6xu2tvYcfgi5Sef8zadLutmVCpazD4OHmtqhFR15N/S+MvCeNC7Ol6b\r\nYamUzOdRAN5mzF8suovZ4H8aNyxZUdXOnAU/4udayUHv/48WBCrOSOeYI5jI\r\nBA2UGAl2Ldm1vvBVCmI+Eb28zRvJfIX4PiK5pfSf6NKUtPwC8haqtl2h1HVJ\r\nep/G7XtstkCzbnfNafu/2ZMXzH8YzYydPS03nSCVM1W2nzcUBCmH0/9Z+DKd\r\nhKgzS7thT7bC5IKko00Lem9cwSJob8ee8pSmnvsuM/VeDuuwCuUrZ3Y067aq\r\nuq9GJFlPmGrkPmSLgqRNPHntYb4vPTqGaFoiR5RZtnBYfxCiWB6+hIkYx92o\r\neVvL0wn5joVYPyHn6q7h5+1Y3RU9zztDLk/Hi3A1eHaKKuJeluiU2ZrEIULG\r\ns7FRNMO9NWFMQJr1GaDGfrKTiEnGCLVOnuAE9i7TXNsgC8INtYssACSgRdGu\r\nKoZXXGjuvoC1UL6sUOv3DjYk2iMBcozMGi1ZmtvZrBqlqyDt15tqBy9823z1\r\nCqBelcpCdp+uynRhdxKNnVfTd2L8MvwX2hEylBDQ8YnZGLnFRM7/IBQLC72O\r\nlKAQdistC1uEQ2xb90PhzFYZJc6ihklHuL4=\r\n=iFwC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"1ce99a034576a824c2be5a112bec8e6355fe8356","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"9.6.4","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"20.0.0","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_2.2.2_1682602663723_0.8572165239840559","host":"s3://npm-registry-packages"}},"2.2.3":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"2.2.3","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@2.2.3","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"1d057b66a1511ee7ac6418891deb919e8514b6fa","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-2.2.3.tgz","fileCount":5,"integrity":"sha512-NQK0F6QZYqZZm947/5saCisRUnK9aYuPhKb3dvkxcHWdba7FqSUEKQ12bJft7KmR4s6l5ZO822rcvuzYoJQyrg==","signatures":[{"sig":"MEYCIQCdwjmWuD01rzkMDnJchce+rM96pJTzrbq0rn8ddTIyQAIhAK4LB6hpH2xfEoM3/eo1Jux0Omiciy2TMIj3tIgI7zIU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95657,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSoNPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoRKA//SSr8D6Pitn0b9GXkmlH1qoqCU+W+sVbaS4WQjaSaMIVL/fk0\r\n14mZnpTNaVKshEalx6Y3CM8d3Qwk9Tp+Osr8bnV9nDGI+JeaCtMdxSqsVg7q\r\nKwUCXSBdnaKouZc2DMW3kPXtPMuFEBIIdI84I6hr0B10WOOSv8C/OGG/7seb\r\nhWQ5u0re7jtTq79CKkH05oupG2ZGm9f7iDSzrlSJMjfslS11vIE53eXxmViE\r\nNspVnqzoRlemrcqIX/fsWoDGn8ZIQBaMS5RQh5N/vXPM1CU8eMgQmXTx7Kxh\r\nOKZElJlILwEttbT4MvWnyn9muetHjhBjJYFkmEeC36wqrMNfjINimMf8+HVG\r\nWKS90kD2BmmxqwhWT7xgmG5lv0zAxCQysekay+OoC2jwCxIaZVtjl2yB53Yh\r\nUdn4D0KHB4g4+ew5lgFtjfG1laCcwY8NIxI8GUs1vSIpfk6EL8tZD3zoMnE0\r\nTesGxkTuKRXDMX3r82zqLuOlcmNLaZV5CvcccLXXidMrFYG1/1lBUrwvXwFI\r\nNjTMMcqk9RM8dGBFaWHsL/vp762E2c9ujswfK3oVgx0poD6/P99kPbLF3Lrf\r\nFUGjXyzD/egFTBpkBhi8voPeu4+acyOgcFYUckFrhFJWylNPnngMovgZQdOc\r\nU2Uggq0BlvF0o73g+PjvfLj8XjA1LrlzZxQ=\r\n=IS/k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"1ce99a034576a824c2be5a112bec8e6355fe8356","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"9.6.4","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"20.0.0","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_2.2.3_1682604879271_0.31629215972690705","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"3.0.0","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@3.0.0","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"5592eb3b0d515deb5a0524cd1c855e1d28d6daa4","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-3.0.0.tgz","fileCount":5,"integrity":"sha512-anye8MpWd25cmaGDMDNZ8IF/e+SHMNFAAqCslse775+9z08bDqGNZZOkcamyvdaHQ9+azrZOMq1HMC1Ujzuo6w==","signatures":[{"sig":"MEQCIQDtihXhwVjffiPXdwi8acL4B0iAPIxkEbfQESd1WH9K/AIfamtmfMynYrp4XR18winNCnlFcdj3uHaey4domjopfw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95665,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkS7zBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmphjRAAgh8U8uvugfBeYL/Da/CRNKO+ndu4g+7Qq8dfduQIjkkmdHb5\r\nVjMaYkIi3kIDvafN8l3NEEp2JouWAYcmZqKb7GjUyFz983APaPajXsw5qU0b\r\nBtd83Q7REFWpVjr+a7Z1tXRON12fwT1OOvABXLaFY+BQaWmsqdOg9SrVe9Gb\r\nb9AgDjwJgh5s+QPz8HX1synWDKqZkjsVSoHz/4DaYKCsyFUw1ja2zmP180Iv\r\ngSFjfn3aPAjHUpsF+Gi5/2w1d8IKbvaPQfqgNbNK67m7xVJ3grlNj8zGeivr\r\nHdp4PBjS20hiS6DEIHmXM/GGXgyaKnX4qKVvMcKaFj/E8v/ZRX3h/TjnbTcX\r\nLlDGV4+ObHYsiluQxyEfA3PUCcmrgkpmOaN2riQmU+yNr+tOEP0WQqs1v4NZ\r\nLPKyHZUYNzl93D2RZj3+S0UvXfIksbIp/aCP4G3VWTuGJSAlryYfRPLrkXpC\r\nTifmUhSgnlc1LpG+C2XQK5v5vb3lX9Fka+WDbsClcOijEmJxINbs6fv+T5CU\r\nH2uwIsOqwIPluSQA/UV2bjBVvli3ZNVCphI1kJA83SsBseiuN1zPe/wgwiHf\r\nkk9dNmS4sNcrKhPdtELoUCOSfu0YvKHX8U1WR7DOmuZY7Ky9haT2T+zR9P0/\r\nl1Nu4GbZuxGRzBc/SXlGkdA6K4oueP1XCpg=\r\n=NUx6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"1ce99a034576a824c2be5a112bec8e6355fe8356","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"9.6.5","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"14.21.3","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_3.0.0_1682685121369_0.6828907379182598","host":"s3://npm-registry-packages"}},"3.0.1":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"3.0.1","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@3.0.1","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"8b905b27198b5aebfea2ed43398b545bc2c6de05","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-3.0.1.tgz","fileCount":5,"integrity":"sha512-OWe6wz114xNCmeYoKf2gSQFYmLsO7LQJpmMjxuPrBdCj/11IHinGPx+s5GuybkhR784yY+jVU/9FVYka5OXuiA==","signatures":[{"sig":"MEUCIEtNy28iS5Wz/+6S6VamsE1tNRbd3RWgWvVDWu9rCHDGAiEAnJZvsGGlgG3pyzFE4660xlA0BkIimR5ZciZGa3MY8SY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95656,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkS8RgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo61Q/9GvUhTw/JTcnRFixbOHqhVUGCjeO757K8i0Uh0Xn0ItYy1Sk/\r\nuhv+vFO62ayzAAjtzmbfUW5LZAaliuc1ayDfNiF3u4I4+zUMBtpVM0sXrdl0\r\nAe92h+80t1sSbmRgbx7Ll9Oa2fqoy6qmooyh6to6/4T3rF+LYY/oEssWxWQ2\r\nzVQhTyF8p/r3b2oBBuI12ql2ax4X7+836t03SdOKn7KxZ6OifAvd4F9Aukdy\r\nfBiz69FD2yPEwIw3vjLnqDtSheFnybpvhLhcnh2iFjVV+hrFZhzzmo5OMIYA\r\nbjc2u+o7aAvfcPBbFTHleHfn3JxthiQDrv6CrxdCt6qmZdT8vp3/Ij5MNJc5\r\n/4fA9nQoUBgRr9EWE3jG3OjjM6xpkOeMPHMN6cF6pckyJnezB7xplWI2CHRe\r\nkyalWIwATnXBwnOuV4hCI1MFCbBxrO3qsCo3sZIeyUIKyJj5BCtCyjDYxJxU\r\n+CLAhnyvI8LVSuQtEaD36Ha7wEyH969HHN6UD+ydlINJ+3vDi1SicD5GYvlE\r\nf7dfesyHN4JIJpZAJBwW9oaMxZka/gcJmaFyHDCLcFLb5tt3sUPAs1X2perZ\r\nH9wVlFIiFSfh4IyfCdliO5VTAajKikf9sTHK/jjX1pNpNndgBLp8lczo4QcQ\r\n6VTT6VD5aJsnBTCYrZdWVu5wDfcN04jrEFM=\r\n=6xYt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"fa41bcc81191c4484b4fcff8c681b04fa7b8fe3c","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"9.6.5","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"14.21.3","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_3.0.1_1682687072158_0.8923185365373929","host":"s3://npm-registry-packages"}},"3.0.2":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"3.0.2","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@3.0.2","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"a7d6a599354db099d881ea8a295a11086421755d","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-3.0.2.tgz","fileCount":5,"integrity":"sha512-tJHAco2/oSlCb6l1e1UInGvEHmcvJMojZFaPdvgRicWwixCpKwsQJEYejUnVhO9MGPPfWDZFam1QDSn9QFBYaQ==","signatures":[{"sig":"MEUCIQCajIVcwCvK462t4FHfwUBsEs9h8Z/oXwYgKxyiw04cjQIgedsYe78PTyC8yVHlmxNRb+7YIpYwnuBibVthsq3l+rc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95640},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"43015fdc31a52593894f1d105cc098d8d8388c50","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"9.6.4","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"20.4.0","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_3.0.2_1692172707649_0.4514549669622263","host":"s3://npm-registry-packages"}},"3.0.3":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"3.0.3","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@3.0.3","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"147a6791bafa410fd31c7f27792dfa140bc00156","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-3.0.3.tgz","fileCount":5,"integrity":"sha512-DxFP+7sNhZ92ASzkWaWrXCSjhzcQBFxy9lxFmuWKedmCR5d2El6SB7YtOFWBGyVbz3hDytmUh5rCKxehyNqqpw==","signatures":[{"sig":"MEUCIACSLcGaFphXSbj02/LrPbhmTYbtl7rLd0yQBJexs201AiEA4gAzPCpw0ERHDW8A0TxU8ikw+Ic1DZ0p0MHseXM2xac=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97029},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"9bd561cdeae42d683c6042e52c3327d2b48b8a6f","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"6.14.18","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"14.21.3","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_3.0.3_1696511878277_0.12556157443038596","host":"s3://npm-registry-packages"}},"3.0.4":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"3.0.4","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@3.0.4","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"aef9921d5466a6efafed8028198cc02d42db1f77","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-3.0.4.tgz","fileCount":5,"integrity":"sha512-lvinSA/DGOO/8lCnqkqLRuFIfs72R4JPEfVITQMqHcQEzENtP0nSZLLkyeAvEsSx80HBBKm9JhxFyWguEBqXQA==","signatures":[{"sig":"MEYCIQDhZ2yuYCi/KLjy3A1hylt+iMgYBSKdXx+SPTsLeecQfAIhAPbTWtD03H2txN0PV1jTel8svhyxGIY/s2KgbN0ahaFI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104072},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"f2c599afde22de8ec9f6d1f67e37f3bb1b064ce3","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"10.2.0","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"21.1.0","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_3.0.4_1698321522369_0.9852880580423415","host":"s3://npm-registry-packages"}},"3.0.5":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"3.0.5","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@3.0.5","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"9bd0c4105b2a454b229cf3a71e7ceaf0facc0fd3","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-3.0.5.tgz","fileCount":5,"integrity":"sha512-cL9rqdgdLnqF9T5FRwV15C6ynQOpSHB20kyiVPntUjt9TYoUPz0Dn3bp8O/hPr/V5bPA8FDM/+f9jpw/kgj7bw==","signatures":[{"sig":"MEYCIQDH+L7xQRKxNaPriggROH0G1nOCEMRg5+/KtlM2wA53lQIhAKq1CHNDdoES/da3d7XYyd0CT4qeqHk0kXwk9t0aTRCq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104072},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"8daaa1fbfaa0689ec90bf968a383ba91974fed8a","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"10.2.0","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"21.1.0","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_3.0.5_1698322471825_0.7941939988958338","host":"s3://npm-registry-packages"}},"3.1.0":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"3.1.0","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@3.1.0","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"5e46de4b4edd256ed1a8a6ba8fed1a8fbbbae651","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-3.1.0.tgz","fileCount":5,"integrity":"sha512-G9Gk8U8HtsWp5rdYHrY/7cebghfGLewj3xM8oDMMywAewsG8o6PwV02ej6QF2di26FbLPtvhTLdDlwJSCoHMlw==","signatures":[{"sig":"MEYCIQDI0h+DCa0DrTWSuLz2T2F50GHqmhQ0z8EzHCCjI/I3BwIhAIWZBxEWcGdGZJJc3K2iHqAmX9aju+pB7+ibuX0lVSOi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157666},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"23441a620421846d9561fc0777317c3015b20ef4","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"10.2.0","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"21.1.0","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_3.1.0_1699884177762_0.9583039334781676","host":"s3://npm-registry-packages"}},"3.2.0":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"3.2.0","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@3.2.0","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"4f7f30886438a09b7e4dc9525869dd40729e35d2","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-3.2.0.tgz","fileCount":5,"integrity":"sha512-XU+CtlFY3iyQ8zzDfuu/JmqiGTKDIIzPn2UaSuCzMidSDAYBFi2jGJxbQ3lp7UtRkCBzDIjV2B+Z/zOl9SpKmA==","signatures":[{"sig":"MEYCIQCW8Jv8KyaB9Kamp7xvPQrYip2tWiRx0Q+ycT1bP7ZqCgIhAL8LKNDSjetqeBuAt/BoNSBBfU3d7tQhGEZOLXVcN9ZX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211758},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"893e8c25efcaa4db31f58715e9e66dc024c90bb8","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"10.2.4","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"21.3.0","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","tailwind-merge":"^2.2.0","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_3.2.0_1704983323560_0.14407918047165702","host":"s3://npm-registry-packages"}},"3.2.1":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"3.2.1","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@3.2.1","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"c109de4ad981cfa01f515c6ca7c0ca496b2aa4a3","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-3.2.1.tgz","fileCount":5,"integrity":"sha512-y1AqUZTIwZcmy++XgTRwfHfAevXwiXaJLvP/gJcobNNlclMhtEJLHkfUHPoOStwhmg2pR+lvKjac9uU5E8A2xA==","signatures":[{"sig":"MEUCIQDao1l8nqHCKx1Qi5cNWifMx1mpJUs5HyGbJ1vOw3fHDwIgbI3AyrSeUcxmZ/imxkxosVKgb6xjt0wlHNeufjwS6RA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211960},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"0049bd3a5f50b5acd461419ffc63dc355edf0ea8","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"10.2.4","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"21.6.1","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","tailwind-merge":"^2.2.0","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_3.2.1_1711958842660_0.9022624247017152","host":"s3://npm-registry-packages"}},"3.2.2":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"3.2.2","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@3.2.2","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"f5f9a2cdcbb1d833e9f43fc0676c7f1b6accc103","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-3.2.2.tgz","fileCount":5,"integrity":"sha512-K6N43K9TtT0Km8fhezaJ4MEgbTuwSPX/0WPAuwzLBBQi316pjYMVydxx5dviKvHyFQ8Ldp6N7FxSMsw639YS+A==","signatures":[{"sig":"MEUCIHDP5u+RPuGGmuehrjvw3B9DHfSwlYA2hibn+4mACC1cAiEA3Hfu8yPUFdUERGN6m6otbS2LOJanMHA/ih7Jq88B+tY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":214055},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"4eaad1deecd6b7139724fdbd6f1ed9681c7031a4","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"10.5.0","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"21.7.3","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","tailwind-merge":"^2.2.0","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_3.2.2_1717593908250_0.8917217548802998","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"4.0.0","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@4.0.0","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"baef0d44614c7467ab8bf65045f10883bf3deb66","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-4.0.0.tgz","fileCount":5,"integrity":"sha512-1wZ6BjkZn66/GTNj5RXaDfnW3swrZtR4UvofBW+Xj3tO1qJ9P8mv+eR0C9zaZ3G86PTXyAfcRN9WLzTpeSgktw==","signatures":[{"sig":"MEQCICibcxtK3pyVlY/1NfEov4S5D/oeWo6y+WVitQO8WXkDAiAxRUP9g9d15Y9P7UEOOjXDR0RKDeqwMDDp2siDdgkPNg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":217821},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"ae3ef7311fccf2a461db0610b3bffa9a225cba8d","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"9.5.0","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"18.20.2","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","tailwind-merge":"^2.2.0","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_4.0.0_1721373537701_0.4966386193811052","host":"s3://npm-registry-packages"}},"4.0.1":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"4.0.1","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@4.0.1","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"07afea669370cd7475e2bee0b4222d54d167ca47","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-4.0.1.tgz","fileCount":5,"integrity":"sha512-0HQC5cazps2mQaxANdXnjHkx1GLSJQ1HKvJYQunsqQZEnvTYhLJCemcsbppgdAzjpFNNYz0jd2ldurmNhU+PdA==","signatures":[{"sig":"MEUCIQDD2ddpV1gb0Xv7OhSUmu8p0NhlJVfQYg90llOTGB3zDgIgJ1w1fWrWp0MFOlSgk+Tbnxcjezhv0uLuvdgpUibfJ3g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":217935},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"b72df94e833c9cd2f40a14eacbbfd7adddf099d3","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"9.5.0","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"18.20.2","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","tailwind-merge":"^2.2.0","@inertiajs/vue3":"^1.0.6"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_4.0.1_1721377922985_0.1651878704216041","host":"s3://npm-registry-packages"}},"4.1.0":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"4.1.0","author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@4.1.0","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"dist":{"shasum":"721fa51f8ab3e811ca7072a6d28041265484f82a","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-4.1.0.tgz","fileCount":5,"integrity":"sha512-X+WdE5rDwu+HL7w39wCTD6UURenu50LOO6fAcIzQivZehwNUP8gO1LLEh8sVjGT2fzEjrVAE6xNTXfNnDfkfFQ==","signatures":[{"sig":"MEQCICJ01/UHRT2PrvE2A1DxNBYqOwgWbwnRKwTgutDMHV75AiBpqT3MwyNrP3MS8pyNQQ+Xk46XH1UxCWaq/eM15ANQrA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219403},"main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","type":"module","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"gitHead":"6d2efaaee417f7f0eccfeb36647c307b54bd5843","private":false,"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"_npmVersion":"9.5.0","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","directories":{},"_nodeVersion":"18.20.2","dependencies":{"qs":"^6.10.5","lodash-es":"^4.17.21","@popperjs/core":"^2.11.5"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","@vitejs/plugin-vue":"^3.0"},"peerDependencies":{"vue":"^3.2.37","tailwind-merge":"^2.2.0","@inertiajs/vue3":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/inertiajs-tables-laravel-query-builder_4.1.0_1734431936976_0.6509608143358461","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"@dootix-developer/inertiajs-tables-laravel-query-builder","version":"5.0.0","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","private":false,"author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","type":"module","main":"./dist/inertiajs-tables-laravel-query-builder.umd.js","module":"./dist/inertiajs-tables-laravel-query-builder.es.js","exports":{".":{"import":"./dist/inertiajs-tables-laravel-query-builder.es.js","require":"./dist/inertiajs-tables-laravel-query-builder.umd.js"}},"scripts":{"dev":"vite build --watch","build":"vite build","eslint":"eslint app/resources/js/ js/ --ext .js,.vue --fix"},"peerDependencies":{"@inertiajs/vue3":"^2.0.0","vue":"^3.2.37","tailwind-merge":"^2.2.0"},"dependencies":{"@popperjs/core":"^2.11.5","lodash-es":"^4.17.21","qs":"^6.10.5"},"devDependencies":{"@vitejs/plugin-vue":"^3.0","eslint":"^8.18.0","eslint-plugin-vue":"^9.1.1","vite":"^3.0"},"gitHead":"5fe856b7d019290257d36584a27a7708cfeb3063","_id":"@dootix-developer/inertiajs-tables-laravel-query-builder@5.0.0","_nodeVersion":"18.20.2","_npmVersion":"9.5.0","dist":{"integrity":"sha512-mWuvlLncOy5jbXZ072ixLTLrV0iE/6aXDiF/vyfqu76g9m5KFKbN9OBtCSNv3D6qaKXL8o06VWTG+T/4jJF4QQ==","shasum":"e287af8fd0cd73d7b67db9696bff0fd943ae4a79","tarball":"https://registry.npmjs.org/@dootix-developer/inertiajs-tables-laravel-query-builder/-/inertiajs-tables-laravel-query-builder-5.0.0.tgz","fileCount":5,"unpackedSize":219401,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDX74eTdmm96OvPqwPG+3Cyt1Eo/n4SwClAcYK0v/1OBgIgWd5UYNT5kU2QVAerE69oo5rgujzIn+Sy7VQGUers87M="}]},"_npmUser":{"name":"dootix","email":"it@dootix.com"},"directories":{},"maintainers":[{"name":"dootix","email":"it@dootix.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/inertiajs-tables-laravel-query-builder_5.0.0_1739777815210_0.39702023713610757"},"_hasShrinkwrap":false}},"time":{"created":"2023-04-27T12:15:09.333Z","modified":"2025-02-17T07:36:55.589Z","2.2.0":"2023-04-27T12:15:09.676Z","2.2.1":"2023-04-27T13:02:41.179Z","2.2.2":"2023-04-27T13:37:43.888Z","2.2.3":"2023-04-27T14:14:39.457Z","3.0.0":"2023-04-28T12:32:01.669Z","3.0.1":"2023-04-28T13:04:32.326Z","3.0.2":"2023-08-16T07:58:27.895Z","3.0.3":"2023-10-05T13:17:58.409Z","3.0.4":"2023-10-26T11:58:42.588Z","3.0.5":"2023-10-26T12:14:32.021Z","3.1.0":"2023-11-13T14:02:57.944Z","3.2.0":"2024-01-11T14:28:43.707Z","3.2.1":"2024-04-01T08:07:22.834Z","3.2.2":"2024-06-05T13:25:08.547Z","4.0.0":"2024-07-19T07:18:57.899Z","4.0.1":"2024-07-19T08:32:03.166Z","4.1.0":"2024-12-17T10:38:57.169Z","5.0.0":"2025-02-17T07:36:55.386Z"},"author":{"name":"Dootix","email":"it@dootix.com"},"license":"MIT","description":"Inertia.js Front-end Components for Spatie's Laravel Query Builder","maintainers":[{"name":"dootix","email":"it@dootix.com"}],"readme":"# Inertia.js Tables for Laravel Query Builder\n\n[![Latest Version on NPM](https://img.shields.io/npm/v/@dootix-developer/inertiajs-tables-laravel-query-builder.svg?style=flat-square)](https://npmjs.com/package/@dootix-developer/inertiajs-tables-laravel-query-builder)\n[![npm](https://img.shields.io/npm/dt/@dootix-developer/inertiajs-tables-laravel-query-builder.svg?style=flat-square)](https://www.npmjs.com/package/@dootix-developer/inertiajs-tables-laravel-query-builder)\n[![Latest Version on Packagist](https://img.shields.io/packagist/v/protonemedia/inertiajs-tables-laravel-query-builder.svg?style=flat-square)](https://packagist.org/packages/dootix-developer/inertiajs-tables-laravel-query-builder)\n[![Software License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat-square)](LICENSE.md)\n\nThis package provides a *DataTables-like* experience for [Inertia.js](https://inertiajs.com/) with support for searching, filtering, sorting, toggling columns, and pagination. It generates URLs that can be consumed by Spatie's excellent [Laravel Query Builder](https://github.com/spatie/laravel-query-builder) package, with no additional logic needed. The components are styled with [Tailwind CSS 3.0](https://tailwindcss.com/), but it's fully customizable with slots. The data refresh logic is based on Inertia's [Ping CRM demo](https://github.com/inertiajs/pingcrm).\n\n![Inertia.js Table for Laravel Query Builder](https://user-images.githubusercontent.com/8403149/177773377-86c32d69-8f86-47e4-8063-ea227e480d10.mp4)\n\n## Features\n\n* Auto-fill: auto generates `thead` and `tbody` with support for custom cells\n* Global Search\n* Search per field\n* Select filters\n* Toggle columns\n* Sort columns\n* Pagination (support for Eloquent/API Resource/Simple/Cursor)\n* Automatically updates the query string (by using [Inertia's replace](https://inertiajs.com/manual-visits#browser-history) feature)\n\n## Compatibility\n\n* [Vue 3](https://v3.vuejs.org/guide/installation.html)\n* [Laravel 10](https://laravel.com/)\n* [Inertia.js](https://inertiajs.com/)\n* [Tailwind CSS v3](https://tailwindcss.com/) + [Forms plugin](https://github.com/tailwindlabs/tailwindcss-forms)\n* PHP 8.2+\n\n**Note**: There is currently an [issue](https://github.com/protonemedia/inertiajs-tables-laravel-query-builder/issues/69) with using this package with Vite!\n\n## Installation\n\nYou need to install both the server-side package and the client-side package. Note that this package is only compatible with Laravel 10, Vue 3.0, and requires the Tailwind Forms plugin.\n\n### Server-side installation (Laravel)\n\nYou can install the package via composer:\n\n```bash\ncomposer require dootix-developer/inertiajs-tables-laravel-query-builder\n```\n\nThe package will automatically register the Service Provider which provides a `table` method you can use on an Interia Response.\n\n#### Search fields\n\nWith the `searchInput` method, you can specify which attributes are searchable. Search queries are passed to the URL query as a `filter`. This integrates seamlessly with the [filtering feature](https://spatie.be/docs/laravel-query-builder/v5/features/filtering) of the Laravel Query Builder package.\n\n\nThough it's enough to pass in the column key, you may specify a custom label and default value.\n\n```php\nuse ProtoneMedia\\LaravelQueryBuilderInertiaJs\\InertiaTable;\n\nInertia::render('Page/Index')->table(function (InertiaTable $table) {\n    $table->searchInput('name');\n\n    $table->searchInput(\n        key: 'framework',\n        label: 'Find your framework',\n        defaultValue: 'Laravel'\n    );\n});\n```\n\n#### Select Filters\n\nSelect Filters are similar to search fields but use a `select` element instead of an `input` element. This way, you can present the user a predefined set of options. Under the hood, this uses the same filtering feature of the Laravel Query Builder package.\n\nThe `selectFilter` method requires two arguments: the key, and a key-value array with the options.\n\n```php\nInertia::render('Page/Index')->table(function (InertiaTable $table) {\n    $table->selectFilter('language_code', [\n        'en' => 'Engels',\n        'nl' => 'Nederlands',\n    ]);\n});\n```\n\nThe `selectFilter` will, by default, add a *no filter* option to the array. You may disable this or specify a custom label for it.\n\n```php\nInertia::render('Page/Index')->table(function (InertiaTable $table) {\n    $table->selectFilter(\n        key: 'language_code',\n        options: $languages,\n        label: 'Language',\n        defaultValue: 'nl',\n        noFilterOption: true,\n        noFilterOptionLabel: 'All languages'\n    );\n});\n```\n\n#### Boolean Filters\n\nThis way, you can present the user a toggle. Under the hood, this uses the same filtering feature of the Laravel Query Builder package.\n\nThe `toggleFilter` method requires one argument: the key.\n\n```php\nInertia::render('Page/Index')->table(function (InertiaTable $table) {\n    $table->toggleFilter('is_verified');\n});\n```\n\nYou can specify a custom label for it and a default value.\n\n```php\nInertia::render('Page/Index')->table(function (InertiaTable $table) {\n    $table->toggleFilter(\n        key: 'is_verified',\n        label: 'Is email verified',\n        defaultValue: true,\n    );\n});\n```\n\n#### Number range Filters\n\nThis way, you can present the user a number range.\n\nThe `numberRangeFilter` method requires two arguments: the key and the max value.\n\n```php\nInertia::render('Page/Index')->table(function (InertiaTable $table) {\n    $table->numberRangeFilter('invoice_recall_count', 5);\n});\n```\n\nYou can specify a some other params.\n```php\nInertia::render('Page/Index')->table(function (InertiaTable $table) {\n    $table->toggleFilter(\n        key: 'invoice_recall_count',\n        max: 5,\n        min: 0,\n        prefix: '',\n        suffix: '',\n        step: 1,\n        label: 'Invoice recall count',\n        defaultValue: [1,4],\n    );\n});\n```\n\nYou need to use a custom allowed filter for this filter.\n```php\n$users = QueryBuilder::for(/*...*/)\n            ->allowedFilters([NumberRangeFilter::getQueryBuilderFilter('invoice_recall_count')]);\n```\n\n#### Custom Filters\n\nThis way, you can present the user a custom filter.\n\nThe `customFilter` method requires one argument: the key.\n\n```php\nInertia::render('Page/Index')->table(function (InertiaTable $table) {\n    $table->customFilter('date_range');\n});\n```\n\nYou can specify a some other params.\n```php\nInertia::render('Page/Index')->table(function (InertiaTable $table) {\n    $table->toggleFilter(\n        key: 'date_range',\n        label: 'Date range',\n        params: ['min_date' => '2022-01-01', 'max_date' => '2022-12-31']\n        defaultValue: ['start' => '2022-01-01', 'end' => '2022-12-31'],\n    );\n});\n```\n\nYou need to use a custom allowed filter for this filter.\n```php\n$dateRangeFilter = AllowedFilter::custom('date_range', new DateRangeFilter());\n$users = QueryBuilder::for(/*...*/)\n            ->allowedFilters([$dateRangeFilter]);\n```\n\nFor the frontend, you can use the `#custom_filter(<< your key >>)` slot to add your custom filter. You can access to the filter data (like params), the color and the onFilterChange function.\nThe onFilterChange function is a function that you need to call when you want to update the filter value. You need to pass the key and the new value.\n\n```vue\n<Table>\n    <template #custom_filter(date_range)=\"{ filter: filter, color: color, onFilterChange: onFilterChange }\">\n        <!--        Your custom filter        -->\n    </template>\n</Table>\n```\n\nThe `searchable` option is a shortcut to the `searchInput` method. The example below will essentially call `$table->searchInput('name', 'User Name')`.\n\n#### Global Search\n\nYou may enable Global Search with the `withGlobalSearch` method, and optionally specify a placeholder.\n\n```php\nInertia::render('Page/Index')->table(function (InertiaTable $table) {\n    $table->withGlobalSearch();\n\n    $table->withGlobalSearch('Search through the data...');\n});\n```\n\nIf you want to enable Global Search for every table by default, you may use the static `defaultGlobalSearch` method, for example, in the `AppServiceProvider` class:\n\n```php\nInertiaTable::defaultGlobalSearch();\nInertiaTable::defaultGlobalSearch('Default custom placeholder');\nInertiaTable::defaultGlobalSearch(false); // disable\n```\n\n#### Example controller\n\n```php\n<?php\n\nnamespace App\\Http\\Controllers;\n\nuse App\\Models\\User;\nuse Illuminate\\Support\\Collection;\nuse Inertia\\Inertia;\nuse ProtoneMedia\\LaravelQueryBuilderInertiaJs\\InertiaTable;\nuse Spatie\\QueryBuilder\\AllowedFilter;\nuse Spatie\\QueryBuilder\\QueryBuilder;\n\nclass UserIndexController\n{\n    public function __invoke()\n    {\n        $globalSearch = AllowedFilter::callback('global', function ($query, $value) {\n            $query->where(function ($query) use ($value) {\n                Collection::wrap($value)->each(function ($value) use ($query) {\n                    $query\n                        ->orWhere('name', 'LIKE', \"%{$value}%\")\n                        ->orWhere('email', 'LIKE', \"%{$value}%\");\n                });\n            });\n        });\n\n        $users = QueryBuilder::for(User::class)\n            ->defaultSort('name')\n            ->allowedSorts(['name', 'email', 'language_code'])\n            ->allowedFilters(['name', 'email', 'language_code', $globalSearch])\n            ->paginate()\n            ->withQueryString();\n\n        return Inertia::render('Users/Index', [\n            'users' => $users,\n        ])->table(function (InertiaTable $table) {\n            $table\n              ->withGlobalSearch()\n              ->defaultSort('name')\n              ->column(key: 'name', searchable: true, sortable: true, canBeHidden: false)\n              ->column(key: 'email', searchable: true, sortable: true)\n              ->column(key: 'language_code', label: 'Language')\n              ->column(label: 'Actions')\n              ->selectFilter(key: 'language_code', label: 'Language', options: [\n                  'en' => 'English',\n                  'nl' => 'Dutch',\n              ]);\n    }\n}\n```\n\n### Client-side installation (Inertia)\n\nYou can install the package via either `npm` or `yarn`:\n\n```bash\nnpm install @dootix-developer/inertiajs-tables-laravel-query-builder --save\n\nyarn add @dootix-developer/inertiajs-tables-laravel-query-builder\n```\n\nAdd the repository path to the `content` array of your [Tailwind configuration file](https://tailwindcss.com/docs/content-configuration). This ensures that the styling also works on production builds.\n\n```js\nmodule.exports = {\n  content: [\n    './node_modules/@dootix-developer/inertiajs-tables-laravel-query-builder/**/*.{js,vue}',\n  ]\n}\n```\n\n#### Table component\n\nTo use the `Table` component and all its related features, you must import the `Table` component and pass the `users` data to the component.\n\n```vue\n<script setup>\nimport { Table } from \"@dootix-developer/inertiajs-tables-laravel-query-builder\";\n\ndefineProps([\"users\"])\n</script>\n\n<template>\n  <Table :resource=\"users\" />\n</template>\n```\n\nThe `resource` property automatically detects the data and additional pagination meta data. You may also pass this manually to the component with the `data` and `meta` properties:\n\n```vue\n<template>\n  <Table :data=\"users.data\" :meta=\"users.meta\" />\n</template>\n```\n\nIf you want to manually render the table, like in v1 of this package, you may use the `head` and `body` slot. Additionally, you can still use the `meta` property to render the paginator.\n\n```vue\n<template>\n  <Table :meta=\"users\">\n    <template #head>\n      <tr>\n        <th>User</th>\n      </tr>\n    </template>\n\n    <template #body>\n      <tr\n        v-for=\"(user, key) in users.data\"\n        :key=\"key\"\n      >\n        <td>{{ user.name }}</td>\n      </tr>\n    </template>\n  </Table>\n</template>\n```\n\nThe `Table` has some additional properties to tweak its front-end behaviour.\n\n```vue\n<template>\n  <Table\n    :striped=\"true\"\n    :prevent-overlapping-requests=\"false\"\n    :input-debounce-ms=\"1000\"\n    :preserve-scroll=\"true\"\n  />\n</template>\n```\n\n| Property | Description | Default |\n| --- | --- | --- |\n| striped | Adds a *striped* layout to the table. | `false` |\n| preventOverlappingRequests | Cancels a previous visit on new user input to prevent an inconsistent state. | `true` |\n| inputDebounceMs | Number of ms to wait before refreshing the table on user input. | 350 |\n| preserveScroll | Configures the [Scroll preservation](https://inertiajs.com/scroll-management#scroll-preservation) behavior. You may also pass `table-top` to this property to scroll to the top of the table on new data. | false |\n\nThe `Table` has some events that you can use\n\n* rowClicked: this event is fired when the user click on the row. The event give you this informations: event, item, key. Be careful if you use this event with a clickable element inside the row like an action button. Don't forget to use `event.stopPropagation()` for all other clickable elements\n\n#### Custom column cells\n\nWhen using *auto-fill*, you may want to transform the presented data for a specific column while leaving the other columns untouched. For this, you may use a cell template. This example is taken from the [Example Controller](#example-controller) above.\n\n```vue\n<template>\n  <Table :resource=\"users\">\n    <template #cell(actions)=\"{ item: user }\">\n      <a :href=\"`/users/${user.id}/edit`\">\n        Edit\n      </a>\n    </template>\n  </Table>\n</template>\n```\n\n#### Custom header cells\n\nWhen using *auto-fill*, you may want to transform the presented data for a specific header while leaving the other columns untouched. For this, you may use a header template. This example is taken from the [Example Controller](#example-controller) above.\n\n```vue\n<template>\n  <Table :resource=\"users\">\n    <template #header(email)=\"{ label: label, column: column }\">\n      <span class=\"lowercase\">{{ label }}</span>\n    </template>\n  </Table>\n</template>\n```\n\n#### Multiple tables per page\n\nYou may want to use more than one table component per page. Displaying the data is easy, but using features like filtering, sorting, and pagination requires a slightly different setup. For example, by default, the `page` query key is used for paginating the data set, but now you want two different keys for each table. Luckily, this package takes care of that and even provides a helper method to support Spatie's query package. To get this to work, you need to *name* your tables.\n\nLet's take a look at Spatie's `QueryBuilder`. In this example, there's a table for the companies and a table for the users. We name the tables accordingly. So first, call the static `updateQueryBuilderParameters` method to tell the package to use a different set of query parameters. Now, `filter` becomes `companies_filter`, `column` becomes `companies_column`, and so forth. Secondly, change the `pageName` of the database paginator.\n\n```php\nInertiaTable::updateQueryBuilderParameters('companies');\n\n$companies = QueryBuilder::for(Company::query())\n    ->defaultSort('name')\n    ->allowedSorts(['name', 'email'])\n    ->allowedFilters(['name', 'email'])\n    ->paginate(pageName: 'companiesPage')\n    ->withQueryString();\n\nInertiaTable::updateQueryBuilderParameters('users');\n\n$users = QueryBuilder::for(User::query())\n    ->defaultSort('name')\n    ->allowedSorts(['name', 'email'])\n    ->allowedFilters(['name', 'email'])\n    ->paginate(pageName: 'usersPage')\n    ->withQueryString();\n```\n\nThen, we need to apply these two changes to the `InertiaTable` class. There's a `name` and `pageName` method to do so.\n\n```php\nreturn Inertia::render('TwoTables', [\n    'companies' => $companies,\n    'users'     => $users,\n])->table(function (InertiaTable $inertiaTable) {\n    $inertiaTable\n        ->name('users')\n        ->pageName('usersPage')\n        ->defaultSort('name')\n        ->column(key: 'name', searchable: true)\n        ->column(key: 'email', searchable: true);\n})->table(function (InertiaTable $inertiaTable) {\n    $inertiaTable\n        ->name('companies')\n        ->pageName('companiesPage')\n        ->defaultSort('name')\n        ->column(key: 'name', searchable: true)\n        ->column(key: 'address', searchable: true);\n});\n```\n\nLastly, pass the correct `name` property to each table in the Vue template. Optionally, you may set the `preserve-scroll` property to `table-top`. This makes sure to scroll to the top of the table on new data. For example, when changing the page of the *second* table, you want to scroll to the top of the table, instead of the top of the page.\n\n```vue\n<script setup>\nimport { Table } from \"@dootix-developer/inertiajs-tables-laravel-query-builder\";\n\ndefineProps([\"companies\", \"users\"])\n</script>\n\n<template>\n  <Table\n    :resource=\"companies\"\n    name=\"companies\"\n    preserve-scroll=\"table-top\"\n  />\n\n  <Table\n    :resource=\"users\"\n    name=\"users\"\n    preserve-scroll=\"table-top\"\n  />\n</template>\n```\n\n#### Pagination translations\n\nYou can override the default pagination translations with the `setTranslations` method. You can do this in your main JavaScript file:\n\n```js\nimport { setTranslations } from \"@dootix-developer/inertiajs-tables-laravel-query-builder\";\n\nsetTranslations({\n  next: \"Next\",\n  no_results_found: \"No results found\",\n  of: \"of\",\n  per_page: \"per page\",\n  previous: \"Previous\",\n  results: \"results\",\n  to: \"to\",\n  search: \"Search\",\n  reset: \"Reset\",\n  grouped_reset: \"Reset\",\n  add_search_fields: \"Add search field\",\n  show_hide_columns: \"Show / Hide columns\",\n});\n```\n\n#### Table.vue slots\n\nThe `Table.vue` has several slots that you can use to inject your own implementations.\n\n| Slot              | Description                                                                            |\n|-------------------|----------------------------------------------------------------------------------------|\n| tableFilter       | The location of the button + dropdown to select filters.                               |\n| tableGlobalSearch | The location of the input element that handles the global search.                      |\n| tableReset        | The location of the button that resets the table.                                      |\n| tableAddSearchRow | The location of the button + dropdown to add additional search rows.                   |\n| tableColumns      | The location of the button + dropdown to toggle columns.                               |\n| tableSearchRows   | The location of the input elements that handle the additional search rows.             |\n| tableWrapper      | The component that *wraps* the table element, handling overflow, shadow, padding, etc. |\n| table             | The actual table element.                                                              |\n| head              | The location of the table header.                                                      |\n| body              | The location of the table body.                                                        |\n| pagination        | The location of the paginator.                                                         |\n| with-grouped-menu | Use the grouped menu instead of multiple buttons                                       |\n| color             | The style of the table                                                                 |\n\nEach slot is provided with props to interact with the parent `Table` component.\n\n```vue\n<template>\n  <Table>\n    <template v-slot:tableGlobalSearch=\"slotProps\">\n      <input\n        placeholder=\"Custom Global Search Component...\"\n        @input=\"slotProps.onChange($event.target.value)\"\n      />\n    </template>\n  </Table>\n</template>\n```\n\n### Customizations available\n\nYou can customize some parts of the table.\n\nProvide an object with the desired customizations in `app.js` file like this:\n```javascript\nconst themeVariables = {\n    inertia_table: {\n        per_page_selector: {\n            select: {\n                primary: 'your classes',\n            },\n        },\n    },\n}\n\ncreateInertiaApp({\n    progress: {\n        color: '#4B5563',\n    },\n    title: (title) => `${title} - ${appName}`,\n    resolve: (name) => resolvePageComponent(`./Pages/${name}.vue`, import.meta.glob('./Pages/**/*.vue')),\n    setup({ el, App, props, plugin }) {\n        return createApp({ render: () => h(App, props) })\n            // ...\n            .provide('themeVariables', themeVariables)\n            // ...\n            .mount(el);\n    },\n})\n```\n\nYou can customize the default style by overiding the default style like that: \n\n```javascript\nconst themeVariables = {\n    inertia_table: {\n        per_page_selector: {\n            select: {\n                base: \"block min-w-max shadow-sm text-sm rounded-md\",\n                color: {\n                    primary: \"border-gray-300 focus:ring-yellow-500 focus:border-yellow-500\",\n                },\n            },\n        },\n    },\n}\n```\n\nOr you can create a new style and using the `color` prop on the `Table.vue`\n\n```javascript\nconst themeVariables = {\n    inertia_table: {\n        per_page_selector: {\n            select: {\n                base: \"block min-w-max shadow-sm text-sm rounded-md\",\n                color: {\n                    red_style: 'border-gray-300 focus:ring-red-500 focus:border-red-500',\n                },\n            },\n        },\n    },\n}\n```\n\n```vue\n<template>\n  <Table color=\"red_style\" />\n</template>\n```\n\nAvailable customizations\n\n```javascript\nconst themeVariables = {\n    inertia_table: {\n        button_with_dropdown: {\n            button: {\n                base: \"w-full border rounded-md shadow-sm px-4 py-2 inline-flex justify-center text-sm font-medium focus:outline-none focus:ring-2 focus:ring-offset-2\",\n                color: {\n                    primary: \"bg-white text-gray-700 hover:bg-gray-50 border-gray-300 focus:ring-indigo-500\",\n                    dootix: \"bg-white text-gray-700 hover:bg-gray-50 border-gray-300 focus:ring-cyan-500\",\n                },\n            },\n        },\n        per_page_selector: {\n            select: {\n                base: \"block min-w-max shadow-sm text-sm rounded-md\",\n                color: {\n                    primary: \"border-gray-300 focus:ring-indigo-500 focus:border-indigo-500\",\n                    dootix: \"border-gray-300 focus:ring-cyan-500 focus:border-blue-500\",\n                },\n            },\n        },\n        table_filter: {\n            select_filter: {\n                select: {\n                    base: \"block w-full shadow-sm text-sm rounded-md\",\n                    color: {\n                        primary: \"border-gray-300 focus:ring-indigo-500 focus:border-indigo-500\",\n                        dootix: \"border-gray-300 focus:ring-cyan-500 focus:border-blue-500\",\n                    },\n                },\n            },\n            togle_filter: {\n                toggle: {\n                    base: \"w-11 h-6 rounded-full after:border after:rounded-full after:h-5 after:w-5\",\n                    color: {\n                        primary: \"after:bg-white after:border-white peer-checked:bg-indigo-500 bg-red-500\",\n                        dootix: \"after:bg-white after:border-white peer-checked:bg-gradient-to-r peer-checked:from-cyan-500 peer-checked:to-blue-600 bg-red-500\",\n                        disabled: \"after:bg-white after:border-white bg-gray-200\",\n                    }\n                },\n                reset_button: {\n                    base: \"rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2\",\n                    color: {\n                        primary: \"text-gray-400 hover:text-gray-500 focus:ring-indigo-500\",\n                        dootix: \"text-gray-400 hover:text-gray-500 focus:ring-cyan-500\",\n                    },\n                },\n            },\n            number_range_filter: {\n                main_bar: {\n                    base: \"h-2 rounded-full\",\n                    color: {\n                        primary: \"bg-gray-200\",\n                        dootix: \"bg-gray-200\",\n                    },\n                },\n                selected_bar: {\n                    base: \"h-2 rounded-full\",\n                    color: {\n                        primary: \"bg-indigo-600\",\n                        dootix: \"bg-gradient-to-r from-cyan-500 to-blue-600\",\n                    },\n                },\n                button: {\n                    base: \"h-4 w-4 rounded-full shadow border\",\n                    color: {\n                        primary: \"bg-white border-gray-300\",\n                        dootix: \"bg-white border-gray-300\",\n                    },\n                },\n                popover: {\n                    base: \"truncate text-xs rounded py-1 px-4\",\n                    color: {\n                        primary: \"bg-gray-600 text-white\",\n                        dootix: \"bg-gray-600 text-white\",\n                    },\n                },\n                popover_arrow: {\n                    color: {\n                        primary: \"text-gray-600\",\n                        dootix: \"text-gray-600\",\n                    },\n                },\n                text: {\n                    color: {\n                        primary: \"text-gray-700\",\n                        dootix: \"text-gray-700\",\n                    },\n                },\n            },\n        },\n        global_search: {\n            input: {\n                base: \"block w-full pl-9 text-sm rounded-md shadow-sm\",\n                color: {\n                    primary: \"focus:ring-indigo-500 focus:border-indigo-500 border-gray-300\",\n                    dootix: \"focus:ring-cyan-500 focus:border-blue-500 border-gray-300\",\n                },\n            },\n        },\n        reset_button: {\n            button: {\n                base: \"w-full border rounded-md shadow-sm px-4 py-2 inline-flex justify-center text-sm font-medium focus:outline-none focus:ring-2 focus:ring-offset-2\",\n                color: {\n                    primary: \"bg-white text-gray-700 hover:bg-gray-50 border-gray-300 focus:ring-indigo-500\",\n                    dootix: \"bg-white text-gray-700 hover:bg-gray-50 border-gray-300 focus:ring-cyan-500\",\n                },\n            },\n        },\n        table_search_rows: {\n            input: {\n                base: \"flex-1 min-w-0 block w-full px-3 py-2 rounded-none rounded-r-md text-sm\",\n                color: {\n                    primary: \"border-gray-300 focus:ring-indigo-500 focus:border-indigo-500\",\n                    dootix: \"border-gray-300 focus:ring-cyan-500 focus:border-blue-500\",\n                },\n            },\n            remove_button: {\n                base: \"rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2\",\n                color: {\n                    primary: \"text-gray-400 hover:text-gray-500 focus:ring-indigo-500\",\n                    dootix: \"text-gray-400 hover:text-gray-500 focus:ring-cyan-500\",\n                },\n            },\n        },\n    },\n}\n```\n\n## Testing\n\nA huge [Laravel Dusk](https://laravel.com/docs/9.x/dusk) E2E test-suite can be found in the `app` directory. Here you'll find a Laravel + Inertia application.\n\n```bash\ncd app\ncp .env.example .env\ncomposer install\nnpm install\nnpm run production\ntouch database/database.sqlite\nphp artisan migrate:fresh --seed\nphp artisan dusk:chrome-driver\nphp artisan serve\nphp artisan dusk\n```\n\n## Upgrading from v1\n\n### Server-side\n\n* The `addColumn` method has been renamed to `column`.\n* The `addFilter` method has been renamed to `selectFilter`.\n* The `addSearch` method has been renamed to `searchInput`.\n* For all renamed methods, check out the arguments as some have been changed.\n* The `addColumns` and `addSearchRows` methods have been removed.\n* Global Search is not enabled by default anymore.\n\n### Client-side\n\n* The `InteractsWithQueryBuilder` mixin has been removed and is no longer needed.\n* The `Table` component no longer needs the `filters`, `search`, `columns`, and `on-update` properties.\n* When using a custom `thead` or `tbody` slot, you need to provide [the styling](https://github.com/protonemedia/inertiajs-tables-laravel-query-builder/blob/c8e21649ad372d309eeb62a8f771aa4c7cd0089e/js/Tailwind2/Table.vue#L1) manually.\n* When using a custom `thead`, the `showColumn` method has been renamed to `show`.\n* The `setTranslations` method is no longer part of the `Pagination` component, but should be imported.\n* The templates and logic of the components are not separated anymore. Use slots to inject your own implementations.\n\n## v2.1 Roadmap\n\n* Date filters\n* Date range filters\n* Switch to Vite for the demo app\n\n## Changelog\n\nPlease see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.\n\n## Contributing\n\nPlease see [CONTRIBUTING](CONTRIBUTING.md) for details.\n\n## Security\n\nIf you discover any security related issues, please email pascal@protone.media instead of using the issue tracker.\n\n## Credits\n\n- [Pascal Baljet](https://github.com/protonemedia)\n- [All Contributors](../../contributors)\n\n## License\n\nThe MIT License (MIT). Please see [License File](LICENSE.md) for more information.\n","readmeFilename":"README.md"}