snapappointments / bootstrap-select

:rocket: The jQuery plugin that brings select elements into the 21st century with intuitive multiselection, searching, and much more.
https://developer.snapappointments.com/bootstrap-select/
MIT License
9.85k stars 2.72k forks source link

Couple idea for next major version (roadmap) #2706

Open fabienwnklr opened 2 years ago

fabienwnklr commented 2 years ago

Hi, i have couple idea for upgrade and maintening this good project (and i would be happy to contribute there).

  1. In reference to bootstrap, remove jquery from this project seems a good idea
  2. Use most modern syntax it's also a good idea... Maybe js Class ? (like bootstrap 5) Don't hesitate to propose another approach. In first time support bootstrap 5 with Jquery it's better, but after this maybe interesting to do ?
  3. I also see the project use less and sass , why ? Use only sass isn't a good approach ?
  4. Automatise test (jest or another)
  5. Add script into package.json for simplify development
  6. Integrating Typescript ?

Don't hesitate to correct me or suggest other ideas that I would add.

Best regards.

NicolasCARPi commented 2 years ago

For 5. I already added a bunch of stuff in the Gruntfile ;)

fabienwnklr commented 2 years ago

Oh okay, sorry about that, i didn't know this approach and grunt neither. Maybe it's conceivable to use "generic" method with script into package.json ? I don't know if it's "generic" but it's what i see a lot.. And this involves to change bundler or not? Thanks for the feedback. :)

NicolasCARPi commented 2 years ago

I think it's fine to use grunt, as it allow more things than npm scripts. So if Grunt is here, let's use that.

As for the rest of your ideas, my point of vue is that we should focus on fixing bugs first, before planning a big rewrite that will never happen ;)

Everyone wants to drop jquery but this is actually a jquery plugin, so IMHO something that doesn't rely on jquery or bootstrap (it has been asked) would be a different project altogether!

EduVillas commented 2 years ago

How can I put the liveSearchNormalize option for all selects?

I'm using bootstrap 5.1.3 + Bootstrap-select v1.14.0-beta2 $('select').selectpicker( ??? ); or what I do and work but I don't know if it is a missil on an ant.. $.fn.selectpicker.Constructor.DEFAULTS.liveSearchNormalize = 'true';

fabienwnklr commented 2 years ago

@EduVillas hmm please use this issues section with parsimony, you're issue has exactly 0% relation with this discussion..

But to respond.. for put liveSearchNormalize for all selects best thing yes, it's this -> $.fn.selectpicker.Constructor.DEFAULTS.liveSearchNormalize = 'true'