@net-advantage/nabs-ui-shell 0.21.0 → 0.22.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.
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("react"),t=require("@net-advantage/nabs-ui-layout/Layout"),n=require("react/jsx-runtime");var r=(0,e.forwardRef)(({header:e,navigation:r,footer:i,children:a,className:o=``,headerClassName:s=``,navigationClassName:c=``,contentClassName:l=``,footerClassName:u=``,...d},f)=>{let p=[`nabs-ui-shell`,o].filter(Boolean).join(` `),m=[`flex flex-wrap items-center justify-between gap-4 px-5 py-4`,s].filter(Boolean).join(` `),h=[`flex h-full min-h-0 flex-col gap-4 overflow-y-auto p-4`,c].filter(Boolean).join(` `),g=[`min-w-0`,l].filter(Boolean).join(` `),_=[`flex flex-wrap items-center justify-between gap-4 px-5 py-4`,u].filter(Boolean).join(` `);return(0,n.jsx)(`div`,{ref:f,className:p,...d,children:(0,n.jsx)(t.Layout,{className:`nabs-ui-shell__layout`,header:e,footer:i,leftSidePanel:r,headerClassName:m,footerClassName:_,leftSidePanelClassName:h,contentClassName:g,children:a})})});r.displayName=`Shell`,exports.Shell=r;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("react"),t=require("@net-advantage/nabs-ui-layout/Layout"),n=require("react/jsx-runtime");var r=(0,e.forwardRef)(({header:e,navigation:r,footer:i,children:a,className:o=``,headerClassName:s=``,navigationClassName:c=``,contentClassName:l=``,footerClassName:u=``,...d},f)=>{let p=[`nabs-ui-shell`,o].filter(Boolean).join(` `),m=[`nabs-ui-shell__header`,s].filter(Boolean).join(` `),h=[`nabs-ui-shell__navigation`,c].filter(Boolean).join(` `),g=[`nabs-ui-shell__content`,l].filter(Boolean).join(` `),_=[`nabs-ui-shell__footer`,u].filter(Boolean).join(` `);return(0,n.jsx)(`div`,{ref:f,className:p,...d,children:(0,n.jsx)(t.Layout,{className:`nabs-ui-shell__layout`,header:e,footer:i,leftSidePanel:r,headerClassName:m,footerClassName:_,leftSidePanelClassName:h,contentClassName:g,children:a})})});r.displayName=`Shell`,exports.Shell=r;
@@ -1,333 +1,13 @@
1
- /*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
2
- @layer theme {
3
- :root, :host {
4
- --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
5
- "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
6
- --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
7
- "Courier New", monospace;
8
- --spacing: .25rem;
9
- --default-font-family: var(--font-sans);
10
- --default-mono-font-family: var(--font-mono);
11
- }
12
- }
13
-
14
- @layer base {
15
- *, :after, :before, ::backdrop {
16
- box-sizing: border-box;
17
- border: 0 solid;
18
- margin: 0;
19
- padding: 0;
20
- }
21
-
22
- ::file-selector-button {
23
- box-sizing: border-box;
24
- border: 0 solid;
25
- margin: 0;
26
- padding: 0;
27
- }
28
-
29
- html, :host {
30
- -webkit-text-size-adjust: 100%;
31
- tab-size: 4;
32
- line-height: 1.5;
33
- font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
34
- font-feature-settings: var(--default-font-feature-settings, normal);
35
- font-variation-settings: var(--default-font-variation-settings, normal);
36
- -webkit-tap-highlight-color: transparent;
37
- }
38
-
39
- hr {
40
- height: 0;
41
- color: inherit;
42
- border-top-width: 1px;
43
- }
44
-
45
- abbr:where([title]) {
46
- -webkit-text-decoration: underline dotted;
47
- text-decoration: underline dotted;
48
- }
49
-
50
- h1, h2, h3, h4, h5, h6 {
51
- font-size: inherit;
52
- font-weight: inherit;
53
- }
54
-
55
- a {
56
- color: inherit;
57
- -webkit-text-decoration: inherit;
58
- -webkit-text-decoration: inherit;
59
- -webkit-text-decoration: inherit;
60
- text-decoration: inherit;
61
- }
62
-
63
- b, strong {
64
- font-weight: bolder;
65
- }
66
-
67
- code, kbd, samp, pre {
68
- font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
69
- font-feature-settings: var(--default-mono-font-feature-settings, normal);
70
- font-variation-settings: var(--default-mono-font-variation-settings, normal);
71
- font-size: 1em;
72
- }
73
-
74
- small {
75
- font-size: 80%;
76
- }
77
-
78
- sub, sup {
79
- vertical-align: baseline;
80
- font-size: 75%;
81
- line-height: 0;
82
- position: relative;
83
- }
84
-
85
- sub {
86
- bottom: -.25em;
87
- }
88
-
89
- sup {
90
- top: -.5em;
91
- }
92
-
93
- table {
94
- text-indent: 0;
95
- border-color: inherit;
96
- border-collapse: collapse;
97
- }
98
-
99
- :-moz-focusring {
100
- outline: auto;
101
- }
102
-
103
- progress {
104
- vertical-align: baseline;
105
- }
106
-
107
- summary {
108
- display: list-item;
109
- }
110
-
111
- ol, ul, menu {
112
- list-style: none;
113
- }
114
-
115
- img, svg, video, canvas, audio, iframe, embed, object {
116
- vertical-align: middle;
117
- display: block;
118
- }
119
-
120
- img, video {
121
- max-width: 100%;
122
- height: auto;
123
- }
124
-
125
- button, input, select, optgroup, textarea {
126
- font: inherit;
127
- font-feature-settings: inherit;
128
- font-variation-settings: inherit;
129
- letter-spacing: inherit;
130
- color: inherit;
131
- opacity: 1;
132
- background-color: #0000;
133
- border-radius: 0;
134
- }
135
-
136
- ::file-selector-button {
137
- font: inherit;
138
- font-feature-settings: inherit;
139
- font-variation-settings: inherit;
140
- letter-spacing: inherit;
141
- color: inherit;
142
- opacity: 1;
143
- background-color: #0000;
144
- border-radius: 0;
145
- }
146
-
147
- :where(select:is([multiple], [size])) optgroup {
148
- font-weight: bolder;
149
- }
150
-
151
- :where(select:is([multiple], [size])) optgroup option {
152
- padding-inline-start: 20px;
153
- }
154
-
155
- ::file-selector-button {
156
- margin-inline-end: 4px;
157
- }
158
-
159
- ::placeholder {
160
- opacity: 1;
161
- }
162
-
163
- @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
164
- ::placeholder {
165
- color: currentColor;
166
- }
167
-
168
- @supports (color: color-mix(in lab, red, red)) {
169
- ::placeholder {
170
- color: color-mix(in oklab, currentcolor 50%, transparent);
171
- }
172
- }
173
- }
174
-
175
- textarea {
176
- resize: vertical;
177
- }
178
-
179
- ::-webkit-search-decoration {
180
- -webkit-appearance: none;
181
- }
182
-
183
- ::-webkit-date-and-time-value {
184
- min-height: 1lh;
185
- text-align: inherit;
186
- }
187
-
188
- ::-webkit-datetime-edit {
189
- display: inline-flex;
190
- }
191
-
192
- ::-webkit-datetime-edit-fields-wrapper {
193
- padding: 0;
194
- }
195
-
196
- ::-webkit-datetime-edit {
197
- padding-block: 0;
198
- }
199
-
200
- ::-webkit-datetime-edit-year-field {
201
- padding-block: 0;
202
- }
203
-
204
- ::-webkit-datetime-edit-month-field {
205
- padding-block: 0;
206
- }
207
-
208
- ::-webkit-datetime-edit-day-field {
209
- padding-block: 0;
210
- }
211
-
212
- ::-webkit-datetime-edit-hour-field {
213
- padding-block: 0;
214
- }
215
-
216
- ::-webkit-datetime-edit-minute-field {
217
- padding-block: 0;
218
- }
219
-
220
- ::-webkit-datetime-edit-second-field {
221
- padding-block: 0;
222
- }
223
-
224
- ::-webkit-datetime-edit-millisecond-field {
225
- padding-block: 0;
226
- }
227
-
228
- ::-webkit-datetime-edit-meridiem-field {
229
- padding-block: 0;
230
- }
231
-
232
- ::-webkit-calendar-picker-indicator {
233
- line-height: 1;
234
- }
235
-
236
- :-moz-ui-invalid {
237
- box-shadow: none;
238
- }
239
-
240
- button, input:where([type="button"], [type="reset"], [type="submit"]) {
241
- appearance: button;
242
- }
243
-
244
- ::file-selector-button {
245
- appearance: button;
246
- }
247
-
248
- ::-webkit-inner-spin-button {
249
- height: auto;
250
- }
251
-
252
- ::-webkit-outer-spin-button {
253
- height: auto;
254
- }
255
-
256
- [hidden]:where(:not([hidden="until-found"])) {
257
- display: none !important;
258
- }
259
- }
260
-
261
- @layer components;
262
-
263
- @layer utilities {
264
- .static {
265
- position: static;
266
- }
267
-
268
- .flex {
269
- display: flex;
270
- }
271
-
272
- .h-full {
273
- height: 100%;
274
- }
275
-
276
- .min-h-0 {
277
- min-height: calc(var(--spacing) * 0);
278
- }
279
-
280
- .min-w-0 {
281
- min-width: calc(var(--spacing) * 0);
282
- }
283
-
284
- .flex-col {
285
- flex-direction: column;
286
- }
287
-
288
- .flex-wrap {
289
- flex-wrap: wrap;
290
- }
291
-
292
- .items-center {
293
- align-items: center;
294
- }
295
-
296
- .justify-between {
297
- justify-content: space-between;
298
- }
299
-
300
- .gap-4 {
301
- gap: calc(var(--spacing) * 4);
302
- }
303
-
304
- .overflow-y-auto {
305
- overflow-y: auto;
306
- }
307
-
308
- .p-4 {
309
- padding: calc(var(--spacing) * 4);
310
- }
311
-
312
- .px-5 {
313
- padding-inline: calc(var(--spacing) * 5);
314
- }
315
-
316
- .py-4 {
317
- padding-block: calc(var(--spacing) * 4);
318
- }
319
- }
320
-
321
1
  .nabs-ui-shell {
2
+ display: grid;
3
+ height: 100dvh;
322
4
  grid-template-rows: auto minmax(0, 1fr) auto;
323
5
  min-width: 0;
324
- height: 100dvh;
325
- display: grid;
326
6
  }
327
7
 
328
8
  .nabs-ui-shell__layout {
329
- height: 100%;
330
9
  min-height: 0;
10
+ height: 100%;
331
11
  }
332
12
 
333
13
  .nabs-ui-shell__layout .nabs-ui-layout__body {
@@ -3,7 +3,7 @@ import { Layout as t } from "@net-advantage/nabs-ui-layout/Layout";
3
3
  import { jsx as n } from "react/jsx-runtime";
4
4
  //#region src/Shell.tsx
5
5
  var r = e(({ header: e, navigation: r, footer: i, children: a, className: o = "", headerClassName: s = "", navigationClassName: c = "", contentClassName: l = "", footerClassName: u = "", ...d }, f) => {
6
- let p = ["nabs-ui-shell", o].filter(Boolean).join(" "), m = ["flex flex-wrap items-center justify-between gap-4 px-5 py-4", s].filter(Boolean).join(" "), h = ["flex h-full min-h-0 flex-col gap-4 overflow-y-auto p-4", c].filter(Boolean).join(" "), g = ["min-w-0", l].filter(Boolean).join(" "), _ = ["flex flex-wrap items-center justify-between gap-4 px-5 py-4", u].filter(Boolean).join(" ");
6
+ let p = ["nabs-ui-shell", o].filter(Boolean).join(" "), m = ["nabs-ui-shell__header", s].filter(Boolean).join(" "), h = ["nabs-ui-shell__navigation", c].filter(Boolean).join(" "), g = ["nabs-ui-shell__content", l].filter(Boolean).join(" "), _ = ["nabs-ui-shell__footer", u].filter(Boolean).join(" ");
7
7
  return /* @__PURE__ */ n("div", {
8
8
  ref: f,
9
9
  className: p,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@net-advantage/nabs-ui-shell",
3
- "version": "0.21.0",
3
+ "version": "0.22.0",
4
4
  "description": "Reusable React app shell for the Nabs UI library.",
5
5
  "type": "module",
6
6
  "main": "./dist/nabs-ui-shell.cjs",
@@ -18,13 +18,11 @@
18
18
  ],
19
19
  "dependencies": {
20
20
  "react": "^19.0.0",
21
- "@net-advantage/nabs-ui-layout": "0.21.0"
21
+ "@net-advantage/nabs-ui-layout": "0.22.0"
22
22
  },
23
23
  "devDependencies": {
24
- "@tailwindcss/vite": "^4.1.0",
25
24
  "@vitejs/plugin-react": "^6.0.1",
26
25
  "react-dom": "^19.2.6",
27
- "tailwindcss": "^4.1.0",
28
26
  "vite": "^8.0.12"
29
27
  },
30
28
  "scripts": {