react-bootstrap-plugins 2.2.1 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2 @@
1
+ 'use strict';Object.defineProperty(exports,'__esModule',{value:true});var chunkH2ULQLGP_cjs=require('./chunk-H2ULQLGP.cjs');Object.defineProperty(exports,"AutoDisplay",{enumerable:true,get:function(){return chunkH2ULQLGP_cjs.a}});Object.defineProperty(exports,"default",{enumerable:true,get:function(){return chunkH2ULQLGP_cjs.b}});//# sourceMappingURL=AutoDisplay.cjs.map
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJBdXRvRGlzcGxheS5janMifQ==
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+
3
+ interface AutoDisplayProps {
4
+ /** Whether the content is visible (default false) */
5
+ visible?: boolean;
6
+ /** Additional CSS classes */
7
+ className?: string;
8
+ /** Inline styles to merge */
9
+ style?: React.CSSProperties;
10
+ /** Content to show/hide */
11
+ children?: React.ReactNode;
12
+ }
13
+ declare const AutoDisplay: React.ForwardRefExoticComponent<AutoDisplayProps & React.RefAttributes<HTMLDivElement>>;
14
+
15
+ export { AutoDisplay, type AutoDisplayProps, AutoDisplay as default };
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+
3
+ interface AutoDisplayProps {
4
+ /** Whether the content is visible (default false) */
5
+ visible?: boolean;
6
+ /** Additional CSS classes */
7
+ className?: string;
8
+ /** Inline styles to merge */
9
+ style?: React.CSSProperties;
10
+ /** Content to show/hide */
11
+ children?: React.ReactNode;
12
+ }
13
+ declare const AutoDisplay: React.ForwardRefExoticComponent<AutoDisplayProps & React.RefAttributes<HTMLDivElement>>;
14
+
15
+ export { AutoDisplay, type AutoDisplayProps, AutoDisplay as default };
@@ -0,0 +1,2 @@
1
+ export{a as AutoDisplay,b as default}from'./chunk-2UX7JYM3.js';//# sourceMappingURL=AutoDisplay.js.map
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJBdXRvRGlzcGxheS5qcyJ9
@@ -0,0 +1,2 @@
1
+ import*as e from'react';import {jsx}from'react/jsx-runtime';var a=e.forwardRef(({visible:o=false,className:s,children:t,style:l,...i},p)=>jsx("div",{ref:p,className:s,style:{...l,display:o?"block":"none"},...i,children:t}));a.displayName="AutoDisplay";var c=a;export{a,c as b};//# sourceMappingURL=chunk-2UX7JYM3.js.map
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRzL0F1dG9EaXNwbGF5LnRzeCJdLCJuYW1lcyI6WyJBdXRvRGlzcGxheSIsInZpc2libGUiLCJjbGFzc05hbWUiLCJjaGlsZHJlbiIsInN0eWxlIiwicmVzdCIsInJlZiIsImpzeCIsIkF1dG9EaXNwbGF5X2RlZmF1bHQiXSwibWFwcGluZ3MiOiI0REFhQSxJQUFNQSxDQUFBQSxDQUFvQixDQUFBLENBQUEsVUFBQSxDQUN4QixDQUFDLENBQUUsT0FBQSxDQUFBQyxFQUFVLEtBQUEsQ0FBTyxTQUFBLENBQUFDLEVBQVcsUUFBQSxDQUFBQyxDQUFBQSxDQUFVLE1BQUFDLENBQUFBLENBQU8sR0FBR0MsQ0FBSyxDQUFBLENBQUdDLENBQUFBLEdBQ3pEQyxHQUFBQSxDQUFDLE9BQ0MsR0FBQSxDQUFLRCxDQUFBQSxDQUNMLFVBQVdKLENBQUFBLENBQ1gsS0FBQSxDQUFPLENBQUUsR0FBR0UsQ0FBQUEsQ0FBTyxPQUFBLENBQVNILENBQUFBLENBQVUsT0FBQSxDQUFVLE1BQU8sRUFDdEQsR0FBR0ksQ0FBQUEsQ0FFSCxTQUFBRixDQUFBQSxDQUNILENBRUosRUFFQUgsQ0FBQUEsQ0FBWSxXQUFBLENBQWMsYUFBQSxDQUcxQixJQUFPUSxDQUFBQSxDQUFRUiIsImZpbGUiOiJjaHVuay0yVVg3SllNMy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9EaXNwbGF5UHJvcHMge1xuICAvKiogV2hldGhlciB0aGUgY29udGVudCBpcyB2aXNpYmxlIChkZWZhdWx0IGZhbHNlKSAqL1xuICB2aXNpYmxlPzogYm9vbGVhblxuICAvKiogQWRkaXRpb25hbCBDU1MgY2xhc3NlcyAqL1xuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgLyoqIElubGluZSBzdHlsZXMgdG8gbWVyZ2UgKi9cbiAgc3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzXG4gIC8qKiBDb250ZW50IHRvIHNob3cvaGlkZSAqL1xuICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0Tm9kZVxufVxuXG5jb25zdCBBdXRvRGlzcGxheSA9IFJlYWN0LmZvcndhcmRSZWY8SFRNTERpdkVsZW1lbnQsIEF1dG9EaXNwbGF5UHJvcHM+KFxuICAoeyB2aXNpYmxlID0gZmFsc2UsIGNsYXNzTmFtZSwgY2hpbGRyZW4sIHN0eWxlLCAuLi5yZXN0IH0sIHJlZikgPT4gKFxuICAgIDxkaXZcbiAgICAgIHJlZj17cmVmfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICBzdHlsZT17eyAuLi5zdHlsZSwgZGlzcGxheTogdmlzaWJsZSA/ICdibG9jaycgOiAnbm9uZScgfX1cbiAgICAgIHsuLi5yZXN0fVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L2Rpdj5cbiAgKVxuKVxuXG5BdXRvRGlzcGxheS5kaXNwbGF5TmFtZSA9ICdBdXRvRGlzcGxheSdcblxuZXhwb3J0IHsgQXV0b0Rpc3BsYXkgfVxuZXhwb3J0IGRlZmF1bHQgQXV0b0Rpc3BsYXlcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ 'use strict';var e=require('react'),jsxRuntime=require('react/jsx-runtime');function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var e__namespace=/*#__PURE__*/_interopNamespace(e);var a=e__namespace.forwardRef(({visible:o=false,className:s,children:t,style:l,...i},p)=>jsxRuntime.jsx("div",{ref:p,className:s,style:{...l,display:o?"block":"none"},...i,children:t}));a.displayName="AutoDisplay";var c=a;exports.a=a;exports.b=c;//# sourceMappingURL=chunk-H2ULQLGP.cjs.map
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRzL0F1dG9EaXNwbGF5LnRzeCJdLCJuYW1lcyI6WyJBdXRvRGlzcGxheSIsImUiLCJ2aXNpYmxlIiwiY2xhc3NOYW1lIiwiY2hpbGRyZW4iLCJzdHlsZSIsInJlc3QiLCJyZWYiLCJqc3giLCJBdXRvRGlzcGxheV9kZWZhdWx0Il0sIm1hcHBpbmdzIjoia2JBYUEsSUFBTUEsQ0FBQUEsQ0FBb0JDLFlBQUEsQ0FBQSxVQUFBLENBQ3hCLENBQUMsQ0FBRSxPQUFBLENBQUFDLEVBQVUsS0FBQSxDQUFPLFNBQUEsQ0FBQUMsRUFBVyxRQUFBLENBQUFDLENBQUFBLENBQVUsTUFBQUMsQ0FBQUEsQ0FBTyxHQUFHQyxDQUFLLENBQUEsQ0FBR0MsQ0FBQUEsR0FDekRDLGNBQUFBLENBQUMsT0FDQyxHQUFBLENBQUtELENBQUFBLENBQ0wsVUFBV0osQ0FBQUEsQ0FDWCxLQUFBLENBQU8sQ0FBRSxHQUFHRSxDQUFBQSxDQUFPLE9BQUEsQ0FBU0gsQ0FBQUEsQ0FBVSxPQUFBLENBQVUsTUFBTyxFQUN0RCxHQUFHSSxDQUFBQSxDQUVILFNBQUFGLENBQUFBLENBQ0gsQ0FFSixFQUVBSixDQUFBQSxDQUFZLFdBQUEsQ0FBYyxhQUFBLENBRzFCLElBQU9TLENBQUFBLENBQVFUIiwiZmlsZSI6ImNodW5rLUgyVUxRTEdQLmNqcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9EaXNwbGF5UHJvcHMge1xuICAvKiogV2hldGhlciB0aGUgY29udGVudCBpcyB2aXNpYmxlIChkZWZhdWx0IGZhbHNlKSAqL1xuICB2aXNpYmxlPzogYm9vbGVhblxuICAvKiogQWRkaXRpb25hbCBDU1MgY2xhc3NlcyAqL1xuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgLyoqIElubGluZSBzdHlsZXMgdG8gbWVyZ2UgKi9cbiAgc3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzXG4gIC8qKiBDb250ZW50IHRvIHNob3cvaGlkZSAqL1xuICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0Tm9kZVxufVxuXG5jb25zdCBBdXRvRGlzcGxheSA9IFJlYWN0LmZvcndhcmRSZWY8SFRNTERpdkVsZW1lbnQsIEF1dG9EaXNwbGF5UHJvcHM+KFxuICAoeyB2aXNpYmxlID0gZmFsc2UsIGNsYXNzTmFtZSwgY2hpbGRyZW4sIHN0eWxlLCAuLi5yZXN0IH0sIHJlZikgPT4gKFxuICAgIDxkaXZcbiAgICAgIHJlZj17cmVmfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICBzdHlsZT17eyAuLi5zdHlsZSwgZGlzcGxheTogdmlzaWJsZSA/ICdibG9jaycgOiAnbm9uZScgfX1cbiAgICAgIHsuLi5yZXN0fVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L2Rpdj5cbiAgKVxuKVxuXG5BdXRvRGlzcGxheS5kaXNwbGF5TmFtZSA9ICdBdXRvRGlzcGxheSdcblxuZXhwb3J0IHsgQXV0b0Rpc3BsYXkgfVxuZXhwb3J0IGRlZmF1bHQgQXV0b0Rpc3BsYXlcbiJdfQ==
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkR5OO66VE_cjs=require('./chunk-R5OO66VE.cjs'),chunkAWU5XGMI_cjs=require('./chunk-AWU5XGMI.cjs'),chunk2Q4NZKMX_cjs=require('./chunk-2Q4NZKMX.cjs'),chunk5IOLZUVD_cjs=require('./chunk-5IOLZUVD.cjs'),chunkM3OUUXZG_cjs=require('./chunk-M3OUUXZG.cjs'),chunkG26VJJWL_cjs=require('./chunk-G26VJJWL.cjs');require('./chunk-NPQQDBFB.cjs');Object.defineProperty(exports,"DatePicker",{enumerable:true,get:function(){return chunkR5OO66VE_cjs.a}});Object.defineProperty(exports,"SearchSelect",{enumerable:true,get:function(){return chunkAWU5XGMI_cjs.a}});Object.defineProperty(exports,"Label",{enumerable:true,get:function(){return chunk2Q4NZKMX_cjs.a}});Object.defineProperty(exports,"TableLoading",{enumerable:true,get:function(){return chunk5IOLZUVD_cjs.a}});Object.defineProperty(exports,"AutoTextarea",{enumerable:true,get:function(){return chunkM3OUUXZG_cjs.a}});Object.defineProperty(exports,"NavPills",{enumerable:true,get:function(){return chunkG26VJJWL_cjs.a}});//# sourceMappingURL=index.cjs.map
1
+ 'use strict';var chunkR5OO66VE_cjs=require('./chunk-R5OO66VE.cjs'),chunkAWU5XGMI_cjs=require('./chunk-AWU5XGMI.cjs'),chunk2Q4NZKMX_cjs=require('./chunk-2Q4NZKMX.cjs'),chunk5IOLZUVD_cjs=require('./chunk-5IOLZUVD.cjs'),chunkM3OUUXZG_cjs=require('./chunk-M3OUUXZG.cjs'),chunkG26VJJWL_cjs=require('./chunk-G26VJJWL.cjs');require('./chunk-NPQQDBFB.cjs');var chunkH2ULQLGP_cjs=require('./chunk-H2ULQLGP.cjs');Object.defineProperty(exports,"DatePicker",{enumerable:true,get:function(){return chunkR5OO66VE_cjs.a}});Object.defineProperty(exports,"SearchSelect",{enumerable:true,get:function(){return chunkAWU5XGMI_cjs.a}});Object.defineProperty(exports,"Label",{enumerable:true,get:function(){return chunk2Q4NZKMX_cjs.a}});Object.defineProperty(exports,"TableLoading",{enumerable:true,get:function(){return chunk5IOLZUVD_cjs.a}});Object.defineProperty(exports,"AutoTextarea",{enumerable:true,get:function(){return chunkM3OUUXZG_cjs.a}});Object.defineProperty(exports,"NavPills",{enumerable:true,get:function(){return chunkG26VJJWL_cjs.a}});Object.defineProperty(exports,"AutoDisplay",{enumerable:true,get:function(){return chunkH2ULQLGP_cjs.a}});//# sourceMappingURL=index.cjs.map
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJpbmRleC5janMifQ==
package/dist/index.d.cts CHANGED
@@ -4,4 +4,5 @@ export { Label, LabelProps } from './Label.cjs';
4
4
  export { TableLoading, TableLoadingProps } from './TableLoading.cjs';
5
5
  export { AutoTextarea, AutoTextareaProps } from './AutoTextarea.cjs';
6
6
  export { NavPill, NavPills, NavPillsProps } from './NavPills.cjs';
7
+ export { AutoDisplay, AutoDisplayProps } from './AutoDisplay.cjs';
7
8
  import 'react';
package/dist/index.d.ts CHANGED
@@ -4,4 +4,5 @@ export { Label, LabelProps } from './Label.js';
4
4
  export { TableLoading, TableLoadingProps } from './TableLoading.js';
5
5
  export { AutoTextarea, AutoTextareaProps } from './AutoTextarea.js';
6
6
  export { NavPill, NavPills, NavPillsProps } from './NavPills.js';
7
+ export { AutoDisplay, AutoDisplayProps } from './AutoDisplay.js';
7
8
  import 'react';
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export{a as DatePicker}from'./chunk-GCPYN7WB.js';export{a as SearchSelect}from'./chunk-ZCAQ7S2A.js';export{a as Label}from'./chunk-HYB5IGJK.js';export{a as TableLoading}from'./chunk-7LXLWNUR.js';export{a as AutoTextarea}from'./chunk-KKWFIJKN.js';export{a as NavPills}from'./chunk-KVUHNUBG.js';import'./chunk-RR7TBRGI.js';//# sourceMappingURL=index.js.map
1
+ export{a as DatePicker}from'./chunk-GCPYN7WB.js';export{a as SearchSelect}from'./chunk-ZCAQ7S2A.js';export{a as Label}from'./chunk-HYB5IGJK.js';export{a as TableLoading}from'./chunk-7LXLWNUR.js';export{a as AutoTextarea}from'./chunk-KKWFIJKN.js';export{a as NavPills}from'./chunk-KVUHNUBG.js';import'./chunk-RR7TBRGI.js';export{a as AutoDisplay}from'./chunk-2UX7JYM3.js';//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJpbmRleC5qcyJ9
@@ -0,0 +1,109 @@
1
+ # AutoDisplay
2
+
3
+ > A lightweight visibility toggle component that conditionally renders content using CSS `display` instead of unmounting from the DOM.
4
+
5
+ ---
6
+
7
+ ## Import
8
+
9
+ ```js
10
+ // Default import (recommended for single-component tree-shaking)
11
+ import AutoDisplay from 'react-bootstrap-plugins/AutoDisplay'
12
+
13
+ // Named import from individual entry point
14
+ import { AutoDisplay } from 'react-bootstrap-plugins/AutoDisplay'
15
+
16
+ // Barrel import
17
+ import { AutoDisplay } from 'react-bootstrap-plugins'
18
+ ```
19
+
20
+ ---
21
+
22
+ ## Basic Usage
23
+
24
+ ```jsx
25
+ import { AutoDisplay } from 'react-bootstrap-plugins'
26
+
27
+ <AutoDisplay visible={showContent}>
28
+ <p>This content is toggled via CSS display.</p>
29
+ </AutoDisplay>
30
+ ```
31
+
32
+ ---
33
+
34
+ ## Props
35
+
36
+ | Prop | Type | Default | Description |
37
+ |---|---|---|---|
38
+ | `visible` | `boolean` | `false` | When `true`, sets `display: block`; when `false`, sets `display: none` |
39
+ | `className` | `string` | — | Additional CSS classes |
40
+ | `style` | `React.CSSProperties` | — | Inline styles (merged with the display rule) |
41
+ | `children` | `React.ReactNode` | — | Content to show/hide |
42
+
43
+ ---
44
+
45
+ ## Examples
46
+
47
+ ### Toggle content visibility
48
+
49
+ ```jsx
50
+ const [open, setOpen] = useState(false)
51
+
52
+ <button onClick={() => setOpen(!open)}>Toggle</button>
53
+ <AutoDisplay visible={open}>
54
+ <div className="card card-body mt-2">
55
+ This content stays in the DOM but is hidden via CSS.
56
+ </div>
57
+ </AutoDisplay>
58
+ ```
59
+
60
+ ### With custom inline styles
61
+
62
+ ```jsx
63
+ <AutoDisplay visible style={{ padding: '1rem', border: '1px solid #ddd' }}>
64
+ <p>Styled container that toggles on/off.</p>
65
+ </AutoDisplay>
66
+ ```
67
+
68
+ ### Preserving form state across toggles
69
+
70
+ Unlike conditional rendering (`{open && <Form />}`), AutoDisplay keeps children mounted so form inputs, scroll positions, and component state are preserved:
71
+
72
+ ```jsx
73
+ <AutoDisplay visible={activeTab === 'details'}>
74
+ <input type="text" className="form-control" defaultValue="Preserved value" />
75
+ </AutoDisplay>
76
+ ```
77
+
78
+ ---
79
+
80
+ ## When to Use
81
+
82
+ Use **AutoDisplay** when you need to hide content without losing DOM state:
83
+
84
+ - **Multi-step forms** — preserve filled-in values when switching steps
85
+ - **Tab panels** — keep scroll position and input state across tabs
86
+ - **Animations** — pair with CSS transitions for fade/slide effects
87
+ - **Performance** — avoid re-mounting expensive subtrees
88
+
89
+ For simple conditional rendering where state preservation doesn't matter, plain `{condition && <Content />}` is fine.
90
+
91
+ ---
92
+
93
+ ## Dark Mode
94
+
95
+ AutoDisplay is a wrapper `<div>` with no built-in styling — it inherits dark mode from any parent with `data-bs-theme="dark"`.
96
+
97
+ ---
98
+
99
+ ## Bundle Size
100
+
101
+ ~0.2 KB (min+gzip).
102
+
103
+ ---
104
+
105
+ ## See Also
106
+
107
+ - [NavPills](./NAVPILLS.md) — Tab navigation with optional pill styling
108
+ - [TableLoading](./TABLELOADING.md) — Skeleton loading placeholders
109
+ - [Main README](../README.md) — Package overview, installation, and general info
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-bootstrap-plugins",
3
- "version": "2.2.1",
3
+ "version": "2.3.0",
4
4
  "description": "Production-grade Bootstrap 5 UI plugins for React — DatePicker, SearchSelect, Label, TableLoading, and more. Zero runtime dependencies beyond React.",
5
5
  "license": "MIT",
6
6
  "author": {
@@ -72,6 +72,16 @@
72
72
  "default": "./dist/AutoTextarea.cjs"
73
73
  }
74
74
  },
75
+ "./AutoDisplay": {
76
+ "import": {
77
+ "types": "./dist/AutoDisplay.d.ts",
78
+ "default": "./dist/AutoDisplay.js"
79
+ },
80
+ "require": {
81
+ "types": "./dist/AutoDisplay.d.ts",
82
+ "default": "./dist/AutoDisplay.cjs"
83
+ }
84
+ },
75
85
  "./NavPills": {
76
86
  "import": {
77
87
  "types": "./dist/NavPills.d.ts",