Git Product home page Git Product logo

Comments (10)

libero-developer avatar libero-developer commented on July 17, 2024 3

I can see in the repo that a version 2.0 is being developed with ViteJs. This will probably solve the problem. @pascalbaljet Do you have a release date in mind? Thanks!

from inertiajs-tables-laravel-query-builder.

pascalbaljet avatar pascalbaljet commented on July 17, 2024 2

It's fixed in v2, but I'll try to backport the fix to v1.

from inertiajs-tables-laravel-query-builder.

BenjaminDelacombaz avatar BenjaminDelacombaz commented on July 17, 2024

@libero-software I have the same issue but only with npm run dev not with npm run build. I have just made the migration to ''ViteJS''. For me it's related to this migration

from inertiajs-tables-laravel-query-builder.

anscharivs avatar anscharivs commented on July 17, 2024

@libero-software Same issue here. I just migrated from Laravel Mix to Vite. Before it worked.

image

from inertiajs-tables-laravel-query-builder.

libero-developer avatar libero-developer commented on July 17, 2024

The problem is the:
import qs from "qs";

If you remove this, the table will render in vitejs's 'yarn run dev'.

But the table won't work, because 'stringify' is used from the 'qs' package.

from inertiajs-tables-laravel-query-builder.

Havenstd06 avatar Havenstd06 commented on July 17, 2024

I just had the same problem. Has anyone found a solution?

from inertiajs-tables-laravel-query-builder.

Havenstd06 avatar Havenstd06 commented on July 17, 2024

When I build in production I get this message if it helps.

image

from inertiajs-tables-laravel-query-builder.

PyIter avatar PyIter commented on July 17, 2024

Vite doesnt support module.exports {} / require(), only export default {} / import .. from .. (ES6 syntax)
node_modules with require(); and module.exports should be changed or replaced or ported

Vite caches node_modules in node_modules/.vite. Rerunning npm run dev does not clear this cache.

Steps I took to work around this problem are as follows:

node_modules/qs/index.js replace content with:

'use strict';

import stringify from './stringify';
import parse from './parse';
import formats from './formats';

export default {
    formats: formats,
    parse: parse,
    stringify: stringify
};

node_modules/qs/formats.js

replace line 11

module.exports = {

with

export default {

node_modules/qs/utils.js

replace line 3

var formats = require('./formats');

with

import formats from './formats';

replace line 241

module.exports = {

with

export default {

node_modules/qs/parse.js

replace line 3

var utils = require('./utils');

with

import utils from './utils';

replace line 239

module.exports = function (str, opts) {

with

export default function (str, opts) {

node_modules/qs/stringify.js

replace line 3

var getSideChannel = require('side-channel');

with

// var getSideChannel = require('side-channel');

replace line 4,5

var utils = require('./utils');
var formats = require('./formats');

with

import utils from './utils';
import formats from './formats';

replace line 241

module.exports = function (object, opts) {

with

export default function (object, opts) {

replace line 169

var valueSideChannel = getSideChannel();

with

var valueSideChannel = new WeakMap();

replace line 285

var sideChannel = getSideChannel();

with

var sideChannel = new WeakMap();

After changing the lines remove the node_modules/.vite folder and run npm run dev.
Then the table should be functioning again.

getSideChannel contains code or leads to code that that currently cannot easily or will not be changed to ES6 syntax.
getSideChannel returns a (equivelant) of WeakMap which is available in most browsers.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap

Edited: after some time (idle) parse.js also throws an error, so also change parse.js

Maybe urlsearchparameters could be used instead of qs in the next version? weakmap and urlsearchparameters can both be polyfilled

from inertiajs-tables-laravel-query-builder.

libero-developer avatar libero-developer commented on July 17, 2024

Great, thanks!

When are you planning to release V2?

from inertiajs-tables-laravel-query-builder.

pascalbaljet avatar pascalbaljet commented on July 17, 2024

V2 has been released, but is also breaks on production builds...

#69

from inertiajs-tables-laravel-query-builder.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.