Restore select2 input functionality after Bootstrap 5 cleanup

- Restored select2 input type from earlier commit d4adf5e^
- Added select2 import to bootstrap5-editable.js bundle
- Updated demo with select2 example (requires select2 library)
- Enhanced README.md with comprehensive select2 documentation
- Includes support for static sources, AJAX sources, and advanced configuration
- Select2 library must be included separately (not bundled)
This commit is contained in:
Micha
2025-07-28 12:48:43 +02:00
parent 46a32e3c20
commit 9d84a1f21d
19 changed files with 4766 additions and 20 deletions

23
dist/README.md vendored
View File

@@ -40,10 +40,10 @@ npm install x-editable-bootstrap5
### Dependencies
This library requires:
This library automatically installs and requires:
- **Bootstrap 5** (CSS and JS)
- **jQuery 3.x**
- **bootstrap-datepicker** (for date inputs)
- **bootstrap-datepicker** (for date inputs - included as dependency)
### Quick Start
@@ -56,6 +56,9 @@ This library requires:
<!-- jQuery -->
<script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<!-- Bootstrap Icons -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css" rel="stylesheet">
<!-- Bootstrap Datepicker -->
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.10.0/css/bootstrap-datepicker.min.css" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.10.0/js/bootstrap-datepicker.min.js"></script>
@@ -65,6 +68,17 @@ This library requires:
<script src="dist/bootstrap5-editable/js/bootstrap-editable.js"></script>
```
**Or using npm/webpack:**
```javascript
import 'bootstrap/dist/css/bootstrap.min.css';
import 'bootstrap/dist/js/bootstrap.bundle.min.js';
import 'bootstrap-icons/font/bootstrap-icons.css';
import 'bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css';
import 'bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js';
import 'x-editable-bootstrap5/dist/bootstrap5-editable/css/bootstrap-editable.css';
import 'x-editable-bootstrap5/dist/bootstrap5-editable/js/bootstrap-editable.js';
```
2. **Initialize editable elements:**
```javascript
$('#my-editable').editable({
@@ -82,9 +96,8 @@ $('#my-editable').editable({
If you're migrating from the original x-editable:
1. **Update Bootstrap** to version 5
2. **Add bootstrap-datepicker** dependency (no longer bundled)
3. **Replace x-editable files** with this Bootstrap 5 version
4. **Update CSS classes** if using custom styling (Bootstrap 3 → 5 changes)
2. **Replace x-editable files** with this Bootstrap 5 version (bootstrap-datepicker included as dependency)
3. **Update CSS classes** if using custom styling (Bootstrap 3 → 5 changes)
The JavaScript API remains largely the same, making it a true drop-in replacement.

2
dist/app.js vendored

File diff suppressed because one or more lines are too long

View File

@@ -21,7 +21,302 @@
* Date: 2023-08-28T13:37Z
*/
/*! X-editable Bootstrap 5 - v25.0.4
* A maintained fork of x-editable for Bootstrap 5 support.
* https://git.24unix.net/tracer/x-editable
* Copyright (c) 2025 Micha Espey; Licensed MIT */
/*!****************************!*\
!*** ./src/inputs/list.js ***!
\****************************/
/*!****************************!*\
!*** ./src/inputs/text.js ***!
\****************************/
/*!******************************!*\
!*** ./src/inputs/select.js ***!
\******************************/
/*!********************************!*\
!*** ./src/inputs/abstract.js ***!
\********************************/
/*!********************************!*\
!*** ./src/inputs/textarea.js ***!
\********************************/
/*!*********************************!*\
!*** ./src/inputs/date/date.js ***!
\*********************************/
/*!************************************!*\
!*** ./src/bootstrap5-editable.js ***!
\************************************/
/*!**************************************!*\
!*** ./src/inputs/date/datefield.js ***!
\**************************************/
/*!*****************************************!*\
!*** ./src/element/editable-element.js ***!
\*****************************************/
/*!*******************************************!*\
!*** ./src/containers/editable-inline.js ***!
\*******************************************/
/*!********************************************!*\
!*** ./node_modules/jquery/dist/jquery.js ***!
\********************************************/
/*!********************************************!*\
!*** ./src/editable-form/editable-form.js ***!
\********************************************/
/*!*********************************************!*\
!*** ./src/containers/editable-popover5.js ***!
\*********************************************/
/*!**********************************************!*\
!*** ./src/containers/editable-container.js ***!
\**********************************************/
/*!**************************************************!*\
!*** ./node_modules/@popperjs/core/lib/enums.js ***!
\**************************************************/
/*!**************************************************!*\
!*** ./node_modules/@popperjs/core/lib/index.js ***!
\**************************************************/
/*!**************************************************!*\
!*** ./src/editable-form/editable-form-utils.js ***!
\**************************************************/
/*!***************************************************!*\
!*** ./node_modules/@popperjs/core/lib/popper.js ***!
\***************************************************/
/*!*******************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/math.js ***!
\*******************************************************/
/*!*******************************************************!*\
!*** ./src/editable-form/editable-form-bootstrap5.js ***!
\*******************************************************/
/*!********************************************************!*\
!*** ./node_modules/@popperjs/core/lib/popper-lite.js ***!
\********************************************************/
/*!*********************************************************!*\
!*** ./node_modules/@popperjs/core/lib/createPopper.js ***!
\*********************************************************/
/*!*********************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/within.js ***!
\*********************************************************/
/*!*********************************************************!*\
!*** ./node_modules/bootstrap/dist/js/bootstrap.esm.js ***!
\*********************************************************/
/*!***********************************************************!*\
!*** ./node_modules/@popperjs/core/lib/modifiers/flip.js ***!
\***********************************************************/
/*!***********************************************************!*\
!*** ./node_modules/@popperjs/core/lib/modifiers/hide.js ***!
\***********************************************************/
/*!***********************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/debounce.js ***!
\***********************************************************/
/*!************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/modifiers/arrow.js ***!
\************************************************************/
/*!************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/modifiers/index.js ***!
\************************************************************/
/*!************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/userAgent.js ***!
\************************************************************/
/*!*************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/modifiers/offset.js ***!
\*************************************************************/
/*!*************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/getAltAxis.js ***!
\*************************************************************/
/*!**************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/mergeByName.js ***!
\**************************************************************/
/*!***************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/contains.js ***!
\***************************************************************/
/*!***************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/getVariation.js ***!
\***************************************************************/
/*!****************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getWindow.js ***!
\****************************************************************/
/*!*****************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js ***!
\*****************************************************************/
/*!*****************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/computeOffsets.js ***!
\*****************************************************************/
/*!*****************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/detectOverflow.js ***!
\*****************************************************************/
/*!*****************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/orderModifiers.js ***!
\*****************************************************************/
/*!******************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js ***!
\******************************************************************/
/*!******************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/modifiers/applyStyles.js ***!
\******************************************************************/
/*!******************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/expandToHashMap.js ***!
\******************************************************************/
/*!*******************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/getBasePlacement.js ***!
\*******************************************************************/
/*!*******************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/rectToClientRect.js ***!
\*******************************************************************/
/*!********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js ***!
\********************************************************************/
/*!********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js ***!
\********************************************************************/
/*!********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js ***!
\********************************************************************/
/*!********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/modifiers/computeStyles.js ***!
\********************************************************************/
/*!********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js ***!
\********************************************************************/
/*!*********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js ***!
\*********************************************************************/
/*!*********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js ***!
\*********************************************************************/
/*!*********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/modifiers/eventListeners.js ***!
\*********************************************************************/
/*!*********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js ***!
\*********************************************************************/
/*!*********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js ***!
\*********************************************************************/
/*!**********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js ***!
\**********************************************************************/
/*!**********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js ***!
\**********************************************************************/
/*!**********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js ***!
\**********************************************************************/
/*!**********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js ***!
\**********************************************************************/
/*!**********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js ***!
\**********************************************************************/
/*!**********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js ***!
\**********************************************************************/
/*!**********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js ***!
\**********************************************************************/
/*!***********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js ***!
\***********************************************************************/
/*!***********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js ***!
\***********************************************************************/
/*!***********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js ***!
\***********************************************************************/
/*!***********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js ***!
\***********************************************************************/
/*!***********************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js ***!
\***********************************************************************/
/*!************************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js ***!
\************************************************************************/
/*!*************************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js ***!
\*************************************************************************/
/*!**************************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js ***!
\**************************************************************************/
/*!***************************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js ***!
\***************************************************************************/
/*!***************************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js ***!
\***************************************************************************/
/*!***************************************************************************!*\
!*** ./node_modules/bootstrap-datepicker/dist/js/bootstrap-datepicker.js ***!
\***************************************************************************/
/*!****************************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js ***!
\****************************************************************************/
/*!********************************************************************************!*\
!*** ./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js ***!
\********************************************************************************/

View File

@@ -1,4 +1,4 @@
/*! X-editable Bootstrap 5 - v25.0.4
/*! X-editable Bootstrap 5 - v25.0.5
* A maintained fork of x-editable for Bootstrap 5 support.
* https://git.24unix.net/tracer/x-editable
* Copyright (c) 2025 Micha Espey; Licensed MIT */

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
/*! X-editable Bootstrap 5 - v25.0.4
/*! X-editable Bootstrap 5 - v25.0.5
* A maintained fork of x-editable for Bootstrap 5 support.
* https://git.24unix.net/tracer/x-editable
* Copyright (c) 2025 Micha Espey; Licensed MIT */