@womp/kookie-ui 0.32.0 → 0.34.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.
- package/components.css +288 -35
- package/dist/cjs/components/_internal/pane-chrome.js +1 -1
- package/dist/cjs/components/_internal/pane-chrome.js.map +2 -2
- package/dist/cjs/components/_internal/shell-bottom.d.ts +7 -2
- package/dist/cjs/components/_internal/shell-bottom.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-bottom.js +1 -1
- package/dist/cjs/components/_internal/shell-bottom.js.map +3 -3
- package/dist/cjs/components/_internal/shell-inspector.d.ts +7 -2
- package/dist/cjs/components/_internal/shell-inspector.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-inspector.js +1 -1
- package/dist/cjs/components/_internal/shell-inspector.js.map +3 -3
- package/dist/cjs/components/_internal/shell-pane.js +1 -1
- package/dist/cjs/components/_internal/shell-pane.js.map +2 -2
- package/dist/cjs/components/_internal/shell-sidebar.d.ts +7 -2
- package/dist/cjs/components/_internal/shell-sidebar.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
- package/dist/cjs/components/_internal/shell-sidebar.js.map +3 -3
- package/dist/cjs/components/_internal/shell-store.d.ts +6 -6
- package/dist/cjs/components/_internal/shell-store.d.ts.map +1 -1
- package/dist/cjs/components/_internal/shell-store.js +1 -1
- package/dist/cjs/components/_internal/shell-store.js.map +3 -3
- package/dist/cjs/components/command.d.ts +133 -0
- package/dist/cjs/components/command.d.ts.map +1 -0
- package/dist/cjs/components/command.js +3 -0
- package/dist/cjs/components/command.js.map +7 -0
- package/dist/cjs/components/index.d.ts +1 -0
- package/dist/cjs/components/index.d.ts.map +1 -1
- package/dist/cjs/components/index.js +2 -2
- package/dist/cjs/components/index.js.map +4 -4
- package/dist/cjs/components/navigator.js +1 -1
- package/dist/cjs/components/navigator.js.map +2 -2
- package/dist/cjs/components/shell.context.js +1 -1
- package/dist/cjs/components/shell.context.js.map +2 -2
- package/dist/cjs/components/shell.d.ts +25 -7
- package/dist/cjs/components/shell.d.ts.map +1 -1
- package/dist/cjs/components/shell.hooks.js +1 -1
- package/dist/cjs/components/shell.hooks.js.map +2 -2
- package/dist/cjs/components/shell.js +1 -1
- package/dist/cjs/components/shell.js.map +3 -3
- package/dist/cjs/components/toolbar.js +1 -1
- package/dist/cjs/components/toolbar.js.map +2 -2
- package/dist/cjs/index.js +5 -5
- package/dist/cjs/index.js.map +4 -4
- package/dist/esm/chunk-5BXCPANF.js +3 -0
- package/dist/esm/{chunk-GHWEXMF6.js.map → chunk-5BXCPANF.js.map} +3 -3
- package/dist/esm/{chunk-K35JUIUT.js → chunk-API4DAPY.js} +2 -2
- package/dist/esm/{chunk-ZG2XQUOH.js → chunk-B447PNRD.js} +2 -2
- package/dist/esm/{chunk-QDAM2I6O.js → chunk-BR6Z2CAE.js} +2 -2
- package/dist/esm/{chunk-W35ZKQMQ.js → chunk-CAM66IXC.js} +2 -2
- package/dist/esm/chunk-GZPB6MRQ.js +3 -0
- package/dist/esm/chunk-GZPB6MRQ.js.map +7 -0
- package/dist/esm/{chunk-4G3FJUER.js → chunk-INGT6DB6.js} +2 -2
- package/dist/esm/{chunk-4ZHBNYXM.js → chunk-J6B7UCZN.js} +2 -2
- package/dist/esm/chunk-KDJM4NQQ.js +3 -0
- package/dist/esm/chunk-KDJM4NQQ.js.map +7 -0
- package/dist/esm/{chunk-LTUW36HM.js → chunk-KGCGT4MJ.js} +2 -2
- package/dist/esm/chunk-NO2JCJWI.js +3 -0
- package/dist/esm/chunk-NO2JCJWI.js.map +7 -0
- package/dist/esm/{chunk-6WHKGVWY.js → chunk-NZJRXZYX.js} +2 -2
- package/dist/esm/{chunk-NFSW36RG.js → chunk-ODHCDJ3Y.js} +2 -2
- package/dist/esm/chunk-SHKPQ3RI.js +2 -0
- package/dist/esm/chunk-UMQOTGJC.js +3 -0
- package/dist/esm/chunk-UMQOTGJC.js.map +7 -0
- package/dist/esm/chunk-XD676L6S.js +3 -0
- package/dist/esm/chunk-XD676L6S.js.map +7 -0
- package/dist/esm/{chunk-6SGJWML7.js → chunk-XKYPJTRN.js} +2 -2
- package/dist/esm/components/_internal/pane-chrome.js +1 -1
- package/dist/esm/components/_internal/shell-bottom.d.ts +7 -2
- package/dist/esm/components/_internal/shell-bottom.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-bottom.js +1 -1
- package/dist/esm/components/_internal/shell-inspector.d.ts +7 -2
- package/dist/esm/components/_internal/shell-inspector.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-inspector.js +1 -1
- package/dist/esm/components/_internal/shell-pane.js +1 -1
- package/dist/esm/components/_internal/shell-sidebar.d.ts +7 -2
- package/dist/esm/components/_internal/shell-sidebar.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-sidebar.js +1 -1
- package/dist/esm/components/_internal/shell-store.d.ts +6 -6
- package/dist/esm/components/_internal/shell-store.d.ts.map +1 -1
- package/dist/esm/components/_internal/shell-store.js +1 -1
- package/dist/esm/components/alert-dialog.js +1 -1
- package/dist/esm/components/command.d.ts +133 -0
- package/dist/esm/components/command.d.ts.map +1 -0
- package/dist/esm/components/command.js +3 -0
- package/dist/esm/components/command.js.map +7 -0
- package/dist/esm/components/dialog.js +1 -1
- package/dist/esm/components/index.d.ts +1 -0
- package/dist/esm/components/index.d.ts.map +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/navigator.js +1 -1
- package/dist/esm/components/sheet.js +1 -1
- package/dist/esm/components/shell.context.js +1 -1
- package/dist/esm/components/shell.d.ts +25 -7
- package/dist/esm/components/shell.d.ts.map +1 -1
- package/dist/esm/components/shell.hooks.js +1 -1
- package/dist/esm/components/shell.js +1 -1
- package/dist/esm/components/sidebar.js +1 -1
- package/dist/esm/components/toolbar.js +1 -1
- package/dist/esm/hooks/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/package.json +1 -1
- package/src/components/_internal/shell-bottom.tsx +11 -6
- package/src/components/_internal/shell-inspector.tsx +11 -6
- package/src/components/_internal/shell-sidebar.tsx +11 -6
- package/src/components/_internal/shell-store.tsx +13 -13
- package/src/components/command.css +197 -0
- package/src/components/command.tsx +432 -0
- package/src/components/index.css +1 -0
- package/src/components/index.tsx +24 -0
- package/src/components/shell.css +133 -47
- package/src/components/shell.tsx +50 -32
- package/src/styles/tokens/color.css +2 -0
- package/styles.css +289 -35
- package/tokens/base.css +1 -0
- package/tokens.css +1 -0
- package/dist/esm/chunk-4B3S2DM7.js +0 -3
- package/dist/esm/chunk-4B3S2DM7.js.map +0 -7
- package/dist/esm/chunk-AKMRPGNP.js +0 -3
- package/dist/esm/chunk-AKMRPGNP.js.map +0 -7
- package/dist/esm/chunk-GHWEXMF6.js +0 -3
- package/dist/esm/chunk-RSG4XWHU.js +0 -2
- package/dist/esm/chunk-ZBSGH74F.js +0 -3
- package/dist/esm/chunk-ZBSGH74F.js.map +0 -7
- package/dist/esm/chunk-ZHXEEOGI.js +0 -3
- package/dist/esm/chunk-ZHXEEOGI.js.map +0 -7
- /package/dist/esm/{chunk-K35JUIUT.js.map → chunk-API4DAPY.js.map} +0 -0
- /package/dist/esm/{chunk-ZG2XQUOH.js.map → chunk-B447PNRD.js.map} +0 -0
- /package/dist/esm/{chunk-QDAM2I6O.js.map → chunk-BR6Z2CAE.js.map} +0 -0
- /package/dist/esm/{chunk-W35ZKQMQ.js.map → chunk-CAM66IXC.js.map} +0 -0
- /package/dist/esm/{chunk-4G3FJUER.js.map → chunk-INGT6DB6.js.map} +0 -0
- /package/dist/esm/{chunk-4ZHBNYXM.js.map → chunk-J6B7UCZN.js.map} +0 -0
- /package/dist/esm/{chunk-LTUW36HM.js.map → chunk-KGCGT4MJ.js.map} +0 -0
- /package/dist/esm/{chunk-6WHKGVWY.js.map → chunk-NZJRXZYX.js.map} +0 -0
- /package/dist/esm/{chunk-NFSW36RG.js.map → chunk-ODHCDJ3Y.js.map} +0 -0
- /package/dist/esm/{chunk-RSG4XWHU.js.map → chunk-SHKPQ3RI.js.map} +0 -0
- /package/dist/esm/{chunk-6SGJWML7.js.map → chunk-XKYPJTRN.js.map} +0 -0
package/styles.css
CHANGED
|
@@ -3377,6 +3377,7 @@
|
|
|
3377
3377
|
--color-page: white;
|
|
3378
3378
|
--color-overlay: var(--black-a6);
|
|
3379
3379
|
--color-surface: white;
|
|
3380
|
+
--color-border: var(--neutral-6, var(--gray-6));
|
|
3380
3381
|
--color-ground: var(--neutral-1, var(--gray-1));
|
|
3381
3382
|
--field-fill: var(--color-surface);
|
|
3382
3383
|
--field-fill-hover: var(--neutral-2);
|
|
@@ -10158,6 +10159,208 @@
|
|
|
10158
10159
|
-webkit-transform-origin: var(--radix-context-menu-content-transform-origin);
|
|
10159
10160
|
transform-origin: var(--radix-context-menu-content-transform-origin);
|
|
10160
10161
|
}
|
|
10162
|
+
.kui-CommandOverlay {
|
|
10163
|
+
display: -webkit-box;
|
|
10164
|
+
display: -ms-flexbox;
|
|
10165
|
+
display: flex;
|
|
10166
|
+
-webkit-box-pack: center;
|
|
10167
|
+
-ms-flex-pack: center;
|
|
10168
|
+
justify-content: center;
|
|
10169
|
+
-webkit-box-align: start;
|
|
10170
|
+
-ms-flex-align: start;
|
|
10171
|
+
align-items: flex-start;
|
|
10172
|
+
padding: max(var(--space-9), 12vh) var(--space-4) var(--space-4);
|
|
10173
|
+
}
|
|
10174
|
+
.kui-CommandContent {
|
|
10175
|
+
position: relative;
|
|
10176
|
+
z-index: 1;
|
|
10177
|
+
display: -webkit-box;
|
|
10178
|
+
display: -ms-flexbox;
|
|
10179
|
+
display: flex;
|
|
10180
|
+
-webkit-box-orient: vertical;
|
|
10181
|
+
-webkit-box-direction: normal;
|
|
10182
|
+
-ms-flex-direction: column;
|
|
10183
|
+
flex-direction: column;
|
|
10184
|
+
gap: var(--space-3);
|
|
10185
|
+
width: 100%;
|
|
10186
|
+
max-width: var(--overlay-w);
|
|
10187
|
+
max-height: 100%;
|
|
10188
|
+
outline: none;
|
|
10189
|
+
}
|
|
10190
|
+
.kui-CommandContent:where(.kui-r-size-1) {
|
|
10191
|
+
--overlay-w: var(--overlay-w-1);
|
|
10192
|
+
}
|
|
10193
|
+
.kui-CommandContent:where(.kui-r-size-2) {
|
|
10194
|
+
--overlay-w: var(--overlay-w-2);
|
|
10195
|
+
}
|
|
10196
|
+
.kui-CommandContent:where(.kui-r-size-3) {
|
|
10197
|
+
--overlay-w: var(--overlay-w-3);
|
|
10198
|
+
}
|
|
10199
|
+
.kui-CommandContent:where(.kui-r-size-4) {
|
|
10200
|
+
--overlay-w: var(--overlay-w-4);
|
|
10201
|
+
}
|
|
10202
|
+
.kui-CommandRoot {
|
|
10203
|
+
display: -webkit-box;
|
|
10204
|
+
display: -ms-flexbox;
|
|
10205
|
+
display: flex;
|
|
10206
|
+
-webkit-box-orient: vertical;
|
|
10207
|
+
-webkit-box-direction: normal;
|
|
10208
|
+
-ms-flex-direction: column;
|
|
10209
|
+
flex-direction: column;
|
|
10210
|
+
gap: var(--space-3);
|
|
10211
|
+
min-height: 0;
|
|
10212
|
+
}
|
|
10213
|
+
.kui-CommandSearch {
|
|
10214
|
+
display: -webkit-box;
|
|
10215
|
+
display: -ms-flexbox;
|
|
10216
|
+
display: flex;
|
|
10217
|
+
-webkit-box-align: center;
|
|
10218
|
+
-ms-flex-align: center;
|
|
10219
|
+
align-items: center;
|
|
10220
|
+
-ms-flex-negative: 0;
|
|
10221
|
+
flex-shrink: 0;
|
|
10222
|
+
background-color: var(--color-surface);
|
|
10223
|
+
-webkit-box-shadow: var(--floating-chrome);
|
|
10224
|
+
box-shadow: var(--floating-chrome);
|
|
10225
|
+
cursor: text;
|
|
10226
|
+
}
|
|
10227
|
+
.kui-CommandSearch:where(.kui-r-size-1) {
|
|
10228
|
+
gap: var(--space-2);
|
|
10229
|
+
padding: var(--panel-p-1) var(--panel-p-2);
|
|
10230
|
+
border-radius: var(--radius-panel-1);
|
|
10231
|
+
font-size: var(--font-size-3);
|
|
10232
|
+
line-height: var(--line-height-3);
|
|
10233
|
+
}
|
|
10234
|
+
.kui-CommandSearch:where(.kui-r-size-2) {
|
|
10235
|
+
gap: var(--space-3);
|
|
10236
|
+
padding: var(--panel-p-2) var(--panel-p-3);
|
|
10237
|
+
border-radius: var(--radius-panel-2);
|
|
10238
|
+
font-size: var(--font-size-4);
|
|
10239
|
+
line-height: var(--line-height-4);
|
|
10240
|
+
}
|
|
10241
|
+
.kui-CommandSearch:where(.kui-r-size-3) {
|
|
10242
|
+
gap: var(--space-3);
|
|
10243
|
+
padding: var(--panel-p-3) var(--panel-p-4);
|
|
10244
|
+
border-radius: var(--radius-panel-3);
|
|
10245
|
+
font-size: var(--font-size-5);
|
|
10246
|
+
line-height: var(--line-height-5);
|
|
10247
|
+
}
|
|
10248
|
+
.kui-CommandSearch:where(.kui-r-size-4) {
|
|
10249
|
+
gap: var(--space-4);
|
|
10250
|
+
padding: var(--panel-p-4) var(--panel-p-4);
|
|
10251
|
+
border-radius: var(--radius-panel-4);
|
|
10252
|
+
font-size: var(--font-size-6);
|
|
10253
|
+
line-height: var(--line-height-6);
|
|
10254
|
+
}
|
|
10255
|
+
.kui-CommandSearchSlot {
|
|
10256
|
+
display: -webkit-box;
|
|
10257
|
+
display: -ms-flexbox;
|
|
10258
|
+
display: flex;
|
|
10259
|
+
-ms-flex-negative: 0;
|
|
10260
|
+
flex-shrink: 0;
|
|
10261
|
+
color: var(--neutral-a10);
|
|
10262
|
+
}
|
|
10263
|
+
.kui-CommandSearchSlot > :where(*) {
|
|
10264
|
+
width: 1em;
|
|
10265
|
+
height: 1em;
|
|
10266
|
+
}
|
|
10267
|
+
.kui-CommandInput {
|
|
10268
|
+
-webkit-box-flex: 1;
|
|
10269
|
+
-ms-flex: 1;
|
|
10270
|
+
flex: 1;
|
|
10271
|
+
min-width: 0;
|
|
10272
|
+
font: inherit;
|
|
10273
|
+
color: var(--neutral-12);
|
|
10274
|
+
background: none;
|
|
10275
|
+
outline: none;
|
|
10276
|
+
}
|
|
10277
|
+
.kui-CommandInput::-webkit-input-placeholder {
|
|
10278
|
+
color: var(--neutral-a10);
|
|
10279
|
+
}
|
|
10280
|
+
.kui-CommandInput::-moz-placeholder {
|
|
10281
|
+
color: var(--neutral-a10);
|
|
10282
|
+
}
|
|
10283
|
+
.kui-CommandInput:-ms-input-placeholder {
|
|
10284
|
+
color: var(--neutral-a10);
|
|
10285
|
+
}
|
|
10286
|
+
.kui-CommandInput::-ms-input-placeholder {
|
|
10287
|
+
color: var(--neutral-a10);
|
|
10288
|
+
}
|
|
10289
|
+
.kui-CommandInput::placeholder {
|
|
10290
|
+
color: var(--neutral-a10);
|
|
10291
|
+
}
|
|
10292
|
+
.kui-CommandPanel {
|
|
10293
|
+
min-height: 0;
|
|
10294
|
+
-ms-flex-negative: 1;
|
|
10295
|
+
flex-shrink: 1;
|
|
10296
|
+
}
|
|
10297
|
+
.kui-CommandList {
|
|
10298
|
+
max-height: min(60vh, calc(480px * var(--scale)));
|
|
10299
|
+
overflow: auto;
|
|
10300
|
+
-ms-scroll-chaining: none;
|
|
10301
|
+
overscroll-behavior: contain;
|
|
10302
|
+
outline: 0;
|
|
10303
|
+
}
|
|
10304
|
+
.kui-CommandPanel:where(:not(:has(.kui-CommandItem, .kui-CommandEmpty))) {
|
|
10305
|
+
display: none;
|
|
10306
|
+
}
|
|
10307
|
+
.kui-CommandSeat:where(:empty) {
|
|
10308
|
+
display: none;
|
|
10309
|
+
}
|
|
10310
|
+
.kui-CommandItem:where([data-disabled='false']) {
|
|
10311
|
+
color: inherit;
|
|
10312
|
+
cursor: var(--cursor-menu-item);
|
|
10313
|
+
}
|
|
10314
|
+
.kui-CommandItem:where([data-selected='true']) {
|
|
10315
|
+
background-color: var(--accent-4);
|
|
10316
|
+
}
|
|
10317
|
+
.kui-CommandItem:where([data-tone='destructive']) {
|
|
10318
|
+
color: var(--red-11);
|
|
10319
|
+
}
|
|
10320
|
+
.kui-CommandItem:where([data-disabled='true']) {
|
|
10321
|
+
color: var(--neutral-a8);
|
|
10322
|
+
cursor: default;
|
|
10323
|
+
pointer-events: none;
|
|
10324
|
+
}
|
|
10325
|
+
.kui-CommandItem:where(:-moz-any-link) {
|
|
10326
|
+
text-decoration: none;
|
|
10327
|
+
}
|
|
10328
|
+
.kui-CommandItem:where(:any-link) {
|
|
10329
|
+
text-decoration: none;
|
|
10330
|
+
}
|
|
10331
|
+
.kui-CommandItemLabel {
|
|
10332
|
+
-webkit-box-flex: 1;
|
|
10333
|
+
-ms-flex: 1;
|
|
10334
|
+
flex: 1;
|
|
10335
|
+
min-width: 0;
|
|
10336
|
+
}
|
|
10337
|
+
.kui-CommandItemSlot {
|
|
10338
|
+
display: -webkit-box;
|
|
10339
|
+
display: -ms-flexbox;
|
|
10340
|
+
display: flex;
|
|
10341
|
+
-ms-flex-negative: 0;
|
|
10342
|
+
flex-shrink: 0;
|
|
10343
|
+
}
|
|
10344
|
+
.kui-CommandItemSlot:where([data-slot='leading']) {
|
|
10345
|
+
color: var(--neutral-a11);
|
|
10346
|
+
}
|
|
10347
|
+
.kui-CommandItemSlot:where([data-slot='trailing']) {
|
|
10348
|
+
color: var(--neutral-a10);
|
|
10349
|
+
}
|
|
10350
|
+
.kui-CommandEmpty {
|
|
10351
|
+
padding: var(--space-5);
|
|
10352
|
+
text-align: center;
|
|
10353
|
+
color: var(--neutral-a11);
|
|
10354
|
+
}
|
|
10355
|
+
@media (forced-colors: active) {
|
|
10356
|
+
.kui-CommandItem:where([data-selected='true']) {
|
|
10357
|
+
outline: 2px solid Highlight;
|
|
10358
|
+
outline-offset: -2px;
|
|
10359
|
+
}
|
|
10360
|
+
.kui-CommandSearch {
|
|
10361
|
+
border: 1px solid CanvasText;
|
|
10362
|
+
}
|
|
10363
|
+
}
|
|
10161
10364
|
.kui-DialogContent {
|
|
10162
10365
|
max-width: var(--overlay-w);
|
|
10163
10366
|
}
|
|
@@ -16929,7 +17132,7 @@
|
|
|
16929
17132
|
}
|
|
16930
17133
|
}
|
|
16931
17134
|
.kui-ShellRoot {
|
|
16932
|
-
--shell-
|
|
17135
|
+
--shell-gap: var(--space-3);
|
|
16933
17136
|
--shell-rail-offset: 0px;
|
|
16934
17137
|
--kui-shell-page-top: 0px;
|
|
16935
17138
|
display: grid;
|
|
@@ -17704,51 +17907,102 @@
|
|
|
17704
17907
|
.kui-ShellRoot[data-height='auto'] > .kui-ShellPane[data-presentation='overlay'] {
|
|
17705
17908
|
position: fixed;
|
|
17706
17909
|
}
|
|
17707
|
-
.kui-
|
|
17708
|
-
.kui-
|
|
17709
|
-
|
|
17710
|
-
|
|
17711
|
-
|
|
17712
|
-
|
|
17910
|
+
.kui-ShellHeader[data-flush],
|
|
17911
|
+
.kui-ShellPane[data-flush],
|
|
17912
|
+
.kui-ShellContent[data-flush] {
|
|
17913
|
+
border: 0 solid var(--color-border);
|
|
17914
|
+
border-radius: 0;
|
|
17915
|
+
}
|
|
17916
|
+
.kui-ShellHeader[data-flush] {
|
|
17917
|
+
border-block-end-width: 1px;
|
|
17918
|
+
}
|
|
17919
|
+
.kui-ShellRail[data-flush],
|
|
17920
|
+
.kui-ShellPanel[data-flush],
|
|
17921
|
+
.kui-ShellSidebar[data-flush] {
|
|
17922
|
+
border-inline-end-width: 1px;
|
|
17923
|
+
}
|
|
17924
|
+
.kui-ShellInspector[data-flush] {
|
|
17925
|
+
border-inline-start-width: 1px;
|
|
17713
17926
|
}
|
|
17714
|
-
.kui-
|
|
17715
|
-
|
|
17716
|
-
|
|
17927
|
+
.kui-ShellBottom[data-flush] {
|
|
17928
|
+
border-block-start-width: 1px;
|
|
17929
|
+
}
|
|
17930
|
+
.kui-ShellRoot:has(> .kui-ShellContent:not([data-flush])) > .kui-ShellHeader[data-flush] {
|
|
17931
|
+
border-block-end-width: 0;
|
|
17932
|
+
}
|
|
17933
|
+
.kui-ShellRoot:has(> .kui-ShellContent:not([data-flush])) > .kui-ShellSidebar[data-flush],
|
|
17934
|
+
.kui-ShellRoot:has(> .kui-ShellContent:not([data-flush])):not(:has(> .kui-ShellSidebar[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']))) > .kui-ShellPanel[data-flush],
|
|
17935
|
+
.kui-ShellRoot:has(> .kui-ShellContent:not([data-flush])):not(:has(> .kui-ShellPanel[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']), > .kui-ShellSidebar[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']))) > .kui-ShellRail[data-flush] {
|
|
17936
|
+
border-inline-end-width: 0;
|
|
17937
|
+
}
|
|
17938
|
+
.kui-ShellRoot:has(> .kui-ShellContent:not([data-flush])) > .kui-ShellInspector[data-flush] {
|
|
17939
|
+
border-inline-start-width: 0;
|
|
17940
|
+
}
|
|
17941
|
+
.kui-ShellRoot:has(> .kui-ShellContent:not([data-flush])) > .kui-ShellBottom[data-flush] {
|
|
17942
|
+
border-block-start-width: 0;
|
|
17943
|
+
}
|
|
17944
|
+
.kui-ShellHeader:not([data-flush]),
|
|
17945
|
+
.kui-ShellPane:not([data-flush]),
|
|
17946
|
+
.kui-ShellContent:not([data-flush]) {
|
|
17947
|
+
margin: var(--shell-gap);
|
|
17717
17948
|
border-radius: var(--radius-surface-1);
|
|
17718
|
-
background: var(--color-page);
|
|
17949
|
+
background-color: var(--color-page);
|
|
17719
17950
|
-webkit-box-shadow: var(--surface-chrome);
|
|
17720
17951
|
box-shadow: var(--surface-chrome);
|
|
17721
17952
|
}
|
|
17722
|
-
.kui-
|
|
17723
|
-
|
|
17724
|
-
|
|
17725
|
-
|
|
17726
|
-
)
|
|
17727
|
-
|
|
17728
|
-
.kui-ShellRoot:has(> .kui-
|
|
17729
|
-
.kui-ShellRoot:has(> .kui-ShellPanel[data-
|
|
17730
|
-
|
|
17731
|
-
|
|
17732
|
-
|
|
17733
|
-
.kui-ShellRoot:has(> .kui-ShellRail[data-
|
|
17734
|
-
|
|
17735
|
-
)
|
|
17736
|
-
> .kui-ShellContent[data-inset],
|
|
17737
|
-
.kui-ShellRoot:has(> .kui-ShellContent[data-inset]) > .kui-ShellInspector[data-inset][data-presentation='fixed'] {
|
|
17953
|
+
.kui-ShellHeader:not([data-flush]) {
|
|
17954
|
+
z-index: 1;
|
|
17955
|
+
}
|
|
17956
|
+
.kui-ShellRoot:has(> .kui-ShellContent:not([data-flush])) {
|
|
17957
|
+
background-color: var(--neutral-2);
|
|
17958
|
+
}
|
|
17959
|
+
.kui-ShellRoot:has(> .kui-ShellRail:not([data-flush])[data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])) > .kui-ShellPanel:not([data-flush])[data-presentation='fixed'],
|
|
17960
|
+
.kui-ShellRoot:has(> .kui-ShellPanel:not([data-flush])[data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])) > .kui-ShellSidebar:not([data-flush])[data-presentation='fixed'],
|
|
17961
|
+
.kui-ShellRoot:has(> .kui-ShellRail:not([data-flush])[data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])):not(:has(> .kui-ShellPanel[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']))) > .kui-ShellSidebar:not([data-flush])[data-presentation='fixed'],
|
|
17962
|
+
.kui-ShellRoot:has(> .kui-ShellSidebar:not([data-flush])[data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])) > .kui-ShellContent:not([data-flush]),
|
|
17963
|
+
.kui-ShellRoot:has(> .kui-ShellPanel:not([data-flush])[data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])):not(:has(> .kui-ShellSidebar[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']))) > .kui-ShellContent:not([data-flush]),
|
|
17964
|
+
.kui-ShellRoot:has(> .kui-ShellRail:not([data-flush])[data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])):not(:has(> .kui-ShellPanel[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']), > .kui-ShellSidebar[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']))) > .kui-ShellContent:not([data-flush]),
|
|
17965
|
+
.kui-ShellRoot:has(> .kui-ShellContent:not([data-flush])) > .kui-ShellInspector:not([data-flush])[data-presentation='fixed'] {
|
|
17738
17966
|
-webkit-margin-start: 0;
|
|
17739
17967
|
margin-inline-start: 0;
|
|
17740
17968
|
}
|
|
17741
|
-
.kui-ShellRoot:has(
|
|
17742
|
-
|
|
17743
|
-
> .kui-ShellPanel[data-inset][data-presentation='fixed'][data-mode]:not([data-mode='collapsed']),
|
|
17744
|
-
> .kui-ShellSidebar[data-inset][data-presentation='fixed'][data-mode]:not([data-mode='collapsed']),
|
|
17745
|
-
> .kui-ShellContent[data-inset],
|
|
17746
|
-
> .kui-ShellInspector[data-inset][data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])
|
|
17747
|
-
)
|
|
17748
|
-
> .kui-ShellBottom[data-inset] {
|
|
17969
|
+
.kui-ShellRoot:has(> .kui-ShellHeader:not([data-flush])) > :is(.kui-ShellPane:not(.kui-ShellBottom), .kui-ShellContent):not([data-flush]),
|
|
17970
|
+
.kui-ShellRoot:has(> :is(.kui-ShellRail, .kui-ShellPanel, .kui-ShellSidebar, .kui-ShellInspector):not([data-flush])[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']), > .kui-ShellContent:not([data-flush])) > .kui-ShellBottom:not([data-flush]) {
|
|
17749
17971
|
-webkit-margin-before: 0;
|
|
17750
17972
|
margin-block-start: 0;
|
|
17751
17973
|
}
|
|
17974
|
+
.kui-ShellRoot:has(> .kui-ShellSidebar[data-flush][data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])) > .kui-ShellContent:not([data-flush]),
|
|
17975
|
+
.kui-ShellRoot:has(> .kui-ShellPanel[data-flush][data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])):not(:has(> .kui-ShellSidebar[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']))) > .kui-ShellContent:not([data-flush]),
|
|
17976
|
+
.kui-ShellRoot:has(> .kui-ShellRail[data-flush][data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])):not(:has(> .kui-ShellPanel[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']), > .kui-ShellSidebar[data-presentation='fixed'][data-mode]:not([data-mode='collapsed']))) > .kui-ShellContent:not([data-flush]) {
|
|
17977
|
+
-webkit-margin-start: 0;
|
|
17978
|
+
margin-inline-start: 0;
|
|
17979
|
+
}
|
|
17980
|
+
.kui-ShellRoot:has(> .kui-ShellInspector[data-flush][data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])) > .kui-ShellContent:not([data-flush]) {
|
|
17981
|
+
-webkit-margin-end: 0;
|
|
17982
|
+
margin-inline-end: 0;
|
|
17983
|
+
}
|
|
17984
|
+
.kui-ShellRoot:has(> .kui-ShellBottom[data-flush][data-presentation='fixed'][data-mode]:not([data-mode='collapsed'])) > .kui-ShellContent:not([data-flush]) {
|
|
17985
|
+
-webkit-margin-after: 0;
|
|
17986
|
+
margin-block-end: 0;
|
|
17987
|
+
}
|
|
17988
|
+
.kui-ShellRoot:has(> .kui-ShellSidebar:not([data-flush])) > .kui-ShellContent[data-flush] {
|
|
17989
|
+
grid-column-start: sidebar-start;
|
|
17990
|
+
}
|
|
17991
|
+
.kui-ShellRoot:has(> .kui-ShellPanel:not([data-flush])):not(:has(> .kui-ShellSidebar[data-flush])) > .kui-ShellContent[data-flush] {
|
|
17992
|
+
grid-column-start: panel-start;
|
|
17993
|
+
}
|
|
17994
|
+
.kui-ShellRoot:has(> .kui-ShellRail:not([data-flush])):not(:has(> .kui-ShellPanel[data-flush], > .kui-ShellSidebar[data-flush])) > .kui-ShellContent[data-flush] {
|
|
17995
|
+
grid-column-start: rail-start;
|
|
17996
|
+
}
|
|
17997
|
+
.kui-ShellRoot:has(> .kui-ShellInspector:not([data-flush])) > .kui-ShellContent[data-flush] {
|
|
17998
|
+
grid-column-end: inspector-end;
|
|
17999
|
+
}
|
|
18000
|
+
.kui-ShellRoot:has(> .kui-ShellHeader:not([data-flush])) > .kui-ShellContent[data-flush] {
|
|
18001
|
+
grid-row-start: header-start;
|
|
18002
|
+
}
|
|
18003
|
+
.kui-ShellRoot:has(> .kui-ShellBottom:not([data-flush])) > .kui-ShellContent[data-flush] {
|
|
18004
|
+
grid-row-end: bottom-end;
|
|
18005
|
+
}
|
|
17752
18006
|
@media (max-width: 767.98px) and (pointer: coarse) {
|
|
17753
18007
|
.kui-ShellRoot[data-window] {
|
|
17754
18008
|
height: auto;
|
package/tokens/base.css
CHANGED
|
@@ -61,6 +61,7 @@
|
|
|
61
61
|
--color-page: white;
|
|
62
62
|
--color-overlay: var(--black-a6);
|
|
63
63
|
--color-surface: white;
|
|
64
|
+
--color-border: var(--neutral-6, var(--gray-6));
|
|
64
65
|
--color-ground: var(--neutral-1, var(--gray-1));
|
|
65
66
|
--field-fill: var(--color-surface);
|
|
66
67
|
--field-fill-hover: var(--neutral-2);
|
package/tokens.css
CHANGED
|
@@ -3377,6 +3377,7 @@
|
|
|
3377
3377
|
--color-page: white;
|
|
3378
3378
|
--color-overlay: var(--black-a6);
|
|
3379
3379
|
--color-surface: white;
|
|
3380
|
+
--color-border: var(--neutral-6, var(--gray-6));
|
|
3380
3381
|
--color-ground: var(--neutral-1, var(--gray-1));
|
|
3381
3382
|
--field-fill: var(--color-surface);
|
|
3382
3383
|
--field-fill-hover: var(--neutral-2);
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import{b as H,d as U,g as D}from"./chunk-XUCR7L4G.js";import{a as V,c as m}from"./chunk-3QWGSRYC.js";import{a as k,b as I,c as N}from"./chunk-LTUW36HM.js";import{a as w,b as B,c as A}from"./chunk-QKCNGEX4.js";import{a as T}from"./chunk-WEBNIUEX.js";import{a as y}from"./chunk-G66WDIIV.js";import{b as M}from"./chunk-VWRPVM5K.js";import{f as E}from"./chunk-NFSW36RG.js";import{o as x}from"./chunk-GHWEXMF6.js";import*as e from"react";import Se from"classnames";import{useComposedRefs as ue}from"radix-ui/internal";var L=t=>t==="collapsed"?"closed":"open",ce=t=>t==="closed"?"collapsed":"expanded";function O(t){if(t===void 0)return;if(typeof t=="string")return L(t);let n={};for(let[r,i]of Object.entries(t))i!==void 0&&(n[r]=L(i));return n}var me={controlled:"state",default:"defaultState"},be={initial:"overlay",sm:"fixed"},_=e.forwardRef((t,n)=>{let{className:r,presentation:i=be,expandedSize:o=288,minSize:s=200,maxSize:d=400,resizable:b=!1,collapsible:$=!0,onExpand:W,onCollapse:j,onResize:q,onResizeStart:F,onResizeEnd:G,snapPoints:l,snapTolerance:K,collapseThreshold:p,paneId:S,persistence:u,children:J,style:Q,state:X,defaultState:Y,onStateChange:Z,size:f,defaultSize:P,onSizeChange:ee,sizeUpdate:ae,sizeUpdateMs:te=50,inset:g,id:ne,...c}=t,{table:h,attributes:ie}=N(i,"fixed"),a=k({name:"sidebar",label:"Sidebar",propNames:me,id:ne,controlled:O(X),defaultValue:O(Y),presentationTable:h,builtIn:H,onChange:(le,pe)=>Z?.(ce(le),{reason:pe}),onExpand:W,onCollapse:j,size:o});x("sidebar",g),e.useEffect(()=>{(l!==void 0||p!==void 0||S!==void 0||u!==void 0)&&void 0},[l,p,S,u]);let z=e.useRef(null),oe=ue(n,a.setElement,z),re=B({name:"sidebar",elementId:a.id,elementRef:z,cssVarName:"--sidebar-size",orientation:"vertical",edge:"end",growth:U,expandedSize:o,minSize:s,maxSize:d,resizable:b,collapsible:$,size:f,defaultSize:P,onSizeChange:ee,sizeUpdate:ae,sizeUpdateMs:te,onResize:q,onResizeStart:F,onResizeEnd:G,snapPoints:l,snapTolerance:K,collapseThreshold:p,paneId:S,persistence:u,overlaying:a.overlaying,overlayingNow:()=>h[y()]==="overlay",requestCollapse:()=>a.setValue("closed","toggle"),requestToggle:()=>a.toggle("toggle")}),{handles:v,content:se}=A(J,m),de=b&&a.value!=="closed"&&!a.overlaying?e.createElement(T.Provider,{value:re},v.length>0?v:e.createElement(V,null)):null,R=a.peeking?`var(--sidebar-size, ${o}px)`:void 0,C=w(f,P,s,d);return e.createElement("div",{...D(c),role:c.role??"navigation",id:a.id,ref:oe,className:Se("kui-ShellPane","kui-ShellSidebar",r),...I(a,ie),"data-inset":g||void 0,tabIndex:a.overlaying?-1:c.tabIndex,style:{...Q,"--sidebar-expanded-size":`${o}px`,...C?{"--sidebar-size":C}:{},"--sidebar-min-size":`${s}px`,"--sidebar-max-size":`${d}px`,...R?{"--peek-sidebar-width":R}:{}}},e.createElement("div",{className:"kui-ShellSidebarContent"},e.createElement(E,null,e.createElement(M,null,se))),de)});_.displayName="Shell.Sidebar";_.Handle=m;export{_ as a};
|
|
3
|
-
//# sourceMappingURL=chunk-4B3S2DM7.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/_internal/shell-sidebar.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useComposedRefs } from 'radix-ui/internal';\nimport { PaneResizeContext } from './shell-resize.js';\nimport { PaneHandle, SidebarHandle } from './shell-handles.js';\nimport { usePane, paneAttributes, usePresentationTable } from './shell-pane.js';\nimport { splitHandles, useInitialPaneSize, useResizablePane, type SizeChangeMeta } from './shell-resizable.js';\nimport { useInsetRegistration, warnOnce, type PaneValue } from './shell-store.js';\nimport { navigationRest, startAnchoredGrowth, withoutRemovedPaneProps } from './shell-rest.js';\nimport { readBreakpoint } from '../../hooks/use-breakpoint.js';\nimport { PaneChromeScope } from './pane-chrome.js';\nimport { PageScope } from './page-scope.js';\nimport type { Breakpoint, CSSPropertiesWithVars, PaneBaseProps, Responsive, SidebarMode } from '../shell.types.js';\n\ntype SidebarStateChangeMeta = { reason: 'init' | 'toggle' | 'responsive' | 'dismiss' };\ntype SidebarControlledProps = { state: Responsive<SidebarMode>; onStateChange?: (state: SidebarMode, meta: SidebarStateChangeMeta) => void; defaultState?: never };\ntype SidebarUncontrolledProps = { defaultState?: SidebarMode | Partial<Record<Breakpoint, SidebarMode>>; onStateChange?: (state: SidebarMode, meta: SidebarStateChangeMeta) => void; state?: never };\ntype SidebarPublicProps = PaneBaseProps & {\n size?: number | string;\n defaultSize?: number | string;\n onSizeChange?: (size: number, meta: SizeChangeMeta) => void;\n sizeUpdate?: 'throttle' | 'debounce';\n sizeUpdateMs?: number;\n /** When true, adds margin and triggers the gray backdrop on the Shell. */\n inset?: boolean;\n} & (SidebarControlledProps | SidebarUncontrolledProps);\n\ntype SidebarComponent = React.ForwardRefExoticComponent<SidebarPublicProps & React.RefAttributes<HTMLDivElement>> & { Handle: typeof SidebarHandle };\n\nconst toValue = (mode: SidebarMode): PaneValue => (mode === 'collapsed' ? 'closed' : 'open');\nconst toMode = (value: PaneValue): SidebarMode => (value === 'closed' ? 'collapsed' : 'expanded');\n\nfunction modeToValue(state: Responsive<SidebarMode> | undefined): PaneValue | Partial<Record<Breakpoint, PaneValue>> | undefined {\n if (state === undefined) return undefined;\n if (typeof state === 'string') return toValue(state);\n const map: Partial<Record<Breakpoint, PaneValue>> = {};\n for (const [bp, mode] of Object.entries(state) as Array<[Breakpoint, SidebarMode | undefined]>) {\n if (mode !== undefined) map[bp] = toValue(mode);\n }\n return map;\n}\n\nconst SIDEBAR_PROP_NAMES = { controlled: 'state', default: 'defaultState' };\n\n/** Since 0.8.0 the Sidebar is in the frame from 768px up, the boundary kookie-ui-v2 uses everywhere. It was 1024px. */\nconst SIDEBAR_DEFAULT_PRESENTATION = { initial: 'overlay', sm: 'fixed' } as const;\n\n\nexport const Sidebar = React.forwardRef<HTMLDivElement, SidebarPublicProps>((props, ref) => {\n const {\n className,\n presentation = SIDEBAR_DEFAULT_PRESENTATION,\n expandedSize = 288,\n minSize = 200,\n maxSize = 400,\n resizable = false,\n collapsible = true,\n onExpand,\n onCollapse,\n onResize,\n onResizeStart,\n onResizeEnd,\n snapPoints,\n snapTolerance,\n collapseThreshold,\n paneId,\n persistence,\n children,\n style,\n state,\n defaultState,\n onStateChange,\n size,\n defaultSize,\n onSizeChange,\n sizeUpdate,\n sizeUpdateMs = 50,\n inset,\n id,\n ...domProps\n } = props;\n\n const { table, attributes } = usePresentationTable(presentation, 'fixed');\n const pane = usePane({\n name: 'sidebar',\n label: 'Sidebar',\n propNames: SIDEBAR_PROP_NAMES,\n id,\n controlled: modeToValue(state),\n defaultValue: modeToValue(defaultState),\n presentationTable: table,\n builtIn: navigationRest,\n onChange: (value, reason) => onStateChange?.(toMode(value), { reason }),\n onExpand,\n onCollapse,\n size: expandedSize,\n });\n useInsetRegistration('sidebar', inset);\n\n React.useEffect(() => {\n if (snapPoints !== undefined || collapseThreshold !== undefined || paneId !== undefined || persistence !== undefined) {\n warnOnce('Shell.Sidebar: `snapPoints`, `collapseThreshold`, `paneId` and `persistence` are deprecated and are removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`.');\n }\n }, [snapPoints, collapseThreshold, paneId, persistence]);\n\n const elementRef = React.useRef<HTMLElement | null>(null);\n const composedRef = useComposedRefs(ref, pane.setElement, elementRef);\n\n const resize = useResizablePane({\n name: 'sidebar',\n elementId: pane.id,\n elementRef,\n cssVarName: '--sidebar-size',\n orientation: 'vertical',\n edge: 'end',\n growth: startAnchoredGrowth,\n expandedSize,\n minSize,\n maxSize,\n resizable,\n collapsible,\n size,\n defaultSize,\n onSizeChange,\n sizeUpdate,\n sizeUpdateMs,\n onResize,\n onResizeStart,\n onResizeEnd,\n snapPoints,\n snapTolerance,\n collapseThreshold,\n paneId,\n persistence,\n overlaying: pane.overlaying,\n overlayingNow: () => table[readBreakpoint()] === 'overlay',\n requestCollapse: () => pane.setValue('closed', 'toggle'),\n requestToggle: () => pane.toggle('toggle'),\n });\n\n const { handles, content } = splitHandles(children, SidebarHandle);\n const handle =\n resizable && pane.value !== 'closed' && !pane.overlaying ? (\n <PaneResizeContext.Provider value={resize}>{handles.length > 0 ? handles : <PaneHandle />}</PaneResizeContext.Provider>\n ) : null;\n\n // A peek previews the width the next toggle opens to.\n const peekWidth = pane.peeking ? `var(--sidebar-size, ${expandedSize}px)` : undefined;\n\n const initialSize = useInitialPaneSize(size, defaultSize, minSize, maxSize);\n return (\n <div\n {...withoutRemovedPaneProps(domProps)}\n role={domProps.role ?? 'navigation'}\n id={pane.id}\n ref={composedRef}\n className={classNames('kui-ShellPane', 'kui-ShellSidebar', className)}\n {...paneAttributes(pane, attributes)}\n data-inset={inset || undefined}\n tabIndex={pane.overlaying ? -1 : domProps.tabIndex}\n style={\n {\n ...style,\n '--sidebar-expanded-size': `${expandedSize}px`,\n ...(initialSize ? { '--sidebar-size': initialSize } : {}),\n '--sidebar-min-size': `${minSize}px`,\n '--sidebar-max-size': `${maxSize}px`,\n ...(peekWidth ? { '--peek-sidebar-width': peekWidth } : {}),\n } as CSSPropertiesWithVars\n }\n >\n <div className=\"kui-ShellSidebarContent\">\n <PaneChromeScope>\n <PageScope>{content}</PageScope>\n </PaneChromeScope>\n </div>\n {handle}\n </div>\n );\n}) as SidebarComponent;\n\nSidebar.displayName = 'Shell.Sidebar';\nSidebar.Handle = SidebarHandle;\n\nexport type { SidebarPublicProps };\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["React", "classNames", "useComposedRefs", "toValue", "mode", "toMode", "value", "modeToValue", "state", "map", "bp", "SIDEBAR_PROP_NAMES", "SIDEBAR_DEFAULT_PRESENTATION", "Sidebar", "props", "ref", "className", "presentation", "expandedSize", "minSize", "maxSize", "resizable", "collapsible", "onExpand", "onCollapse", "onResize", "onResizeStart", "onResizeEnd", "snapPoints", "snapTolerance", "collapseThreshold", "paneId", "persistence", "children", "style", "defaultState", "onStateChange", "size", "defaultSize", "onSizeChange", "sizeUpdate", "sizeUpdateMs", "inset", "id", "domProps", "table", "attributes", "usePresentationTable", "pane", "usePane", "navigationRest", "reason", "useInsetRegistration", "elementRef", "composedRef", "useComposedRefs", "resize", "useResizablePane", "startAnchoredGrowth", "readBreakpoint", "handles", "content", "splitHandles", "SidebarHandle", "handle", "PaneResizeContext", "PaneHandle", "peekWidth", "initialSize", "useInitialPaneSize", "withoutRemovedPaneProps", "classNames", "paneAttributes", "PaneChromeScope", "PageScope"]
|
|
7
|
-
}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import{a as c,c as M,e as w,g as H}from"./chunk-XUCR7L4G.js";import{a as v,d}from"./chunk-3QWGSRYC.js";import{a as y,b as x,c as O}from"./chunk-LTUW36HM.js";import{a as E,b as T,c as N}from"./chunk-QKCNGEX4.js";import{a as R}from"./chunk-WEBNIUEX.js";import{a as S}from"./chunk-G66WDIIV.js";import{b}from"./chunk-VWRPVM5K.js";import{o as C}from"./chunk-GHWEXMF6.js";import*as e from"react";import pe from"classnames";import{useComposedRefs as le}from"radix-ui/internal";var de={controlled:"open",default:"defaultOpen"},ce={initial:"overlay",sm:"fixed"},U=e.forwardRef((k,A)=>{let{className:B,presentation:V=ce,defaultOpen:L,open:_,onOpenChange:D,expandedSize:o=320,minSize:t=200,maxSize:s=500,resizable:m=!1,collapsible:$=!0,onExpand:q,onCollapse:F,onResize:W,onResizeStart:j,onResizeEnd:G,snapPoints:r,snapTolerance:K,collapseThreshold:a,paneId:i,persistence:p,children:J,style:Q,onSizeChange:X,sizeUpdate:Y,sizeUpdateMs:Z=50,size:u,defaultSize:P,inset:f,id:ee,...l}=k,{table:z,attributes:ne}=O(V,"fixed"),n=y({name:"inspector",label:"Inspector",propNames:de,id:ee,controlled:c(_),defaultValue:c(L),presentationTable:z,builtIn:M,onChange:(ae,ie)=>D?.(ae!=="closed",{reason:ie}),onExpand:q,onCollapse:F,size:o});C("inspector",f),e.useEffect(()=>{(r!==void 0||a!==void 0||i!==void 0||p!==void 0)&&void 0},[r,a,i,p]);let h=e.useRef(null),oe=le(A,n.setElement,h),te=T({name:"inspector",elementId:n.id,elementRef:h,cssVarName:"--inspector-size",orientation:"vertical",edge:"start",growth:w,expandedSize:o,minSize:t,maxSize:s,resizable:m,collapsible:$,size:u,defaultSize:P,onSizeChange:X,sizeUpdate:Y,sizeUpdateMs:Z,onResize:W,onResizeStart:j,onResizeEnd:G,snapPoints:r,snapTolerance:K,collapseThreshold:a,paneId:i,persistence:p,overlaying:n.overlaying,overlayingNow:()=>z[S()]==="overlay",requestCollapse:()=>n.setValue("closed","toggle"),requestToggle:()=>n.toggle("toggle")}),{handles:I,content:se}=N(J,d),re=m&&n.shown!==!1&&!n.overlaying?e.createElement(R.Provider,{value:te},I.length>0?I:e.createElement(v,null)):null,g=E(u,P,t,s);return e.createElement("div",{...H(l),role:l.role??"complementary",id:n.id,ref:oe,className:pe("kui-ShellPane","kui-ShellInspector",B),...x(n,ne),"data-inset":f||void 0,tabIndex:n.overlaying?-1:l.tabIndex,style:{...Q,"--inspector-expanded-size":`${o}px`,...g?{"--inspector-size":g}:{},"--inspector-min-size":`${t}px`,"--inspector-max-size":`${s}px`}},e.createElement("div",{className:"kui-ShellInspectorContent"},e.createElement(b,null,se)),re)});U.displayName="Shell.Inspector";U.Handle=d;export{U as a};
|
|
3
|
-
//# sourceMappingURL=chunk-AKMRPGNP.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/_internal/shell-inspector.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useComposedRefs } from 'radix-ui/internal';\nimport { PaneResizeContext } from './shell-resize.js';\nimport { InspectorHandle, PaneHandle } from './shell-handles.js';\nimport { usePane, paneAttributes, usePresentationTable } from './shell-pane.js';\nimport { splitHandles, useInitialPaneSize, useResizablePane, type SizeChangeMeta } from './shell-resizable.js';\nimport { useInsetRegistration, warnOnce } from './shell-store.js';\nimport { detailRest, endAnchoredGrowth, toPaneValue, withoutRemovedPaneProps } from './shell-rest.js';\nimport { PageScope } from './page-scope.js';\nimport { readBreakpoint } from '../../hooks/use-breakpoint.js';\nimport type { Breakpoint, CSSPropertiesWithVars, PaneBaseProps } from '../shell.types.js';\n\ntype InspectorOpenChangeMeta = { reason: 'init' | 'toggle' | 'responsive' | 'dismiss' };\ntype InspectorControlledProps = { open: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: InspectorOpenChangeMeta) => void; defaultOpen?: never };\ntype InspectorUncontrolledProps = { defaultOpen?: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: InspectorOpenChangeMeta) => void; open?: never };\ntype InspectorSizeControlledProps = { size: number | string; defaultSize?: never };\ntype InspectorSizeUncontrolledProps = { defaultSize?: number | string; size?: never };\ntype InspectorPublicProps = PaneBaseProps &\n (InspectorControlledProps | InspectorUncontrolledProps) &\n (InspectorSizeControlledProps | InspectorSizeUncontrolledProps) & {\n onSizeChange?: (size: number, meta: SizeChangeMeta) => void;\n sizeUpdate?: 'throttle' | 'debounce';\n sizeUpdateMs?: number;\n /** When true, adds margin and triggers the gray backdrop on the Shell. */\n inset?: boolean;\n };\n\ntype InspectorComponent = React.ForwardRefExoticComponent<InspectorPublicProps & React.RefAttributes<HTMLDivElement>> & { Handle: typeof InspectorHandle };\n\nconst INSPECTOR_PROP_NAMES = { controlled: 'open', default: 'defaultOpen' };\n\n/** Since 0.8.0 the Inspector is in the frame from 768px up, the boundary kookie-ui-v2 uses everywhere. It was 1280px. */\nconst INSPECTOR_DEFAULT_PRESENTATION = { initial: 'overlay', sm: 'fixed' } as const;\n\nexport const Inspector = React.forwardRef<HTMLDivElement, InspectorPublicProps>((props, ref) => {\n const {\n className,\n presentation = INSPECTOR_DEFAULT_PRESENTATION,\n defaultOpen,\n open,\n onOpenChange,\n expandedSize = 320,\n minSize = 200,\n maxSize = 500,\n resizable = false,\n collapsible = true,\n onExpand,\n onCollapse,\n onResize,\n onResizeStart,\n onResizeEnd,\n snapPoints,\n snapTolerance,\n collapseThreshold,\n paneId,\n persistence,\n children,\n style,\n onSizeChange,\n sizeUpdate,\n sizeUpdateMs = 50,\n size,\n defaultSize,\n inset,\n id,\n ...domProps\n } = props;\n\n const { table, attributes } = usePresentationTable(presentation, 'fixed');\n const pane = usePane({\n name: 'inspector',\n label: 'Inspector',\n propNames: INSPECTOR_PROP_NAMES,\n id,\n controlled: toPaneValue(open),\n defaultValue: toPaneValue(defaultOpen),\n presentationTable: table,\n builtIn: detailRest,\n onChange: (value, reason) => onOpenChange?.(value !== 'closed', { reason }),\n onExpand,\n onCollapse,\n size: expandedSize,\n });\n useInsetRegistration('inspector', inset);\n\n React.useEffect(() => {\n if (snapPoints !== undefined || collapseThreshold !== undefined || paneId !== undefined || persistence !== undefined) {\n warnOnce('Shell.Inspector: `snapPoints`, `collapseThreshold`, `paneId` and `persistence` are deprecated and are removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`.');\n }\n }, [snapPoints, collapseThreshold, paneId, persistence]);\n\n const elementRef = React.useRef<HTMLElement | null>(null);\n const composedRef = useComposedRefs(ref, pane.setElement, elementRef);\n\n const resize = useResizablePane({\n name: 'inspector',\n elementId: pane.id,\n elementRef,\n cssVarName: '--inspector-size',\n orientation: 'vertical',\n edge: 'start',\n growth: endAnchoredGrowth,\n expandedSize,\n minSize,\n maxSize,\n resizable,\n collapsible,\n size,\n defaultSize,\n onSizeChange,\n sizeUpdate,\n sizeUpdateMs,\n onResize,\n onResizeStart,\n onResizeEnd,\n snapPoints,\n snapTolerance,\n collapseThreshold,\n paneId,\n persistence,\n overlaying: pane.overlaying,\n overlayingNow: () => table[readBreakpoint()] === 'overlay',\n requestCollapse: () => pane.setValue('closed', 'toggle'),\n requestToggle: () => pane.toggle('toggle'),\n });\n\n const { handles, content } = splitHandles(children, InspectorHandle);\n const handle = resizable && pane.shown !== false && !pane.overlaying ? <PaneResizeContext.Provider value={resize}>{handles.length > 0 ? handles : <PaneHandle />}</PaneResizeContext.Provider> : null;\n\n const initialSize = useInitialPaneSize(size, defaultSize, minSize, maxSize);\n return (\n <div\n {...withoutRemovedPaneProps(domProps)}\n role={domProps.role ?? 'complementary'}\n id={pane.id}\n ref={composedRef}\n className={classNames('kui-ShellPane', 'kui-ShellInspector', className)}\n {...paneAttributes(pane, attributes)}\n data-inset={inset || undefined}\n tabIndex={pane.overlaying ? -1 : domProps.tabIndex}\n style={\n {\n ...style,\n '--inspector-expanded-size': `${expandedSize}px`,\n ...(initialSize ? { '--inspector-size': initialSize } : {}),\n '--inspector-min-size': `${minSize}px`,\n '--inspector-max-size': `${maxSize}px`,\n } as CSSPropertiesWithVars\n }\n >\n <div className=\"kui-ShellInspectorContent\">\n <PageScope>{content}</PageScope>\n </div>\n {handle}\n </div>\n );\n}) as InspectorComponent;\n\nInspector.displayName = 'Shell.Inspector';\nInspector.Handle = InspectorHandle;\n\nexport type { InspectorPublicProps };\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["React", "classNames", "useComposedRefs", "INSPECTOR_PROP_NAMES", "INSPECTOR_DEFAULT_PRESENTATION", "Inspector", "props", "ref", "className", "presentation", "defaultOpen", "open", "onOpenChange", "expandedSize", "minSize", "maxSize", "resizable", "collapsible", "onExpand", "onCollapse", "onResize", "onResizeStart", "onResizeEnd", "snapPoints", "snapTolerance", "collapseThreshold", "paneId", "persistence", "children", "style", "onSizeChange", "sizeUpdate", "sizeUpdateMs", "size", "defaultSize", "inset", "id", "domProps", "table", "attributes", "usePresentationTable", "pane", "usePane", "toPaneValue", "detailRest", "value", "reason", "useInsetRegistration", "elementRef", "composedRef", "useComposedRefs", "resize", "useResizablePane", "endAnchoredGrowth", "readBreakpoint", "handles", "content", "splitHandles", "InspectorHandle", "handle", "PaneResizeContext", "PaneHandle", "initialSize", "useInitialPaneSize", "withoutRemovedPaneProps", "classNames", "paneAttributes", "PageScope"]
|
|
7
|
-
}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import{b as s}from"./chunk-MAA6LEE2.js";import*as o from"react";import{useLayoutEffect as p}from"radix-ui/internal";function l(e){return typeof e=="object"&&e!==null}function d(e,n){let t={},r=null;for(let i of s){if(e!==void 0&&!l(e)){t[i]=e;continue}let a=l(e)?e[i]:void 0;a!==void 0&&(r={value:a}),t[i]=r?r.value:n(i)}return t}function f(e){let n=e.initial;return s.every(t=>e[t]===n)?n:void 0}function T(e,n){let t=f(n);if(t!==void 0)return{[`data-${e}`]:t};let r={};for(let i of s)r[`data-${e}-${i}`]=n[i];return r}function g(e){return typeof e=="object"&&e!==null?JSON.stringify(e):String(e)}var R=d("fixed",()=>"fixed");function y(){return{entries:new Map,listeners:new Set,version:0,peek:null}}function S(e){e.version+=1;for(let n of e.listeners)n()}function c(e,n){return e.listeners.add(n),()=>{e.listeners.delete(n)}}function m(e,n){e.peek!==n&&(e.peek=n,S(e))}var b=o.createContext(null);function I(e){let n=o.useContext(b);if(!n)throw new Error(`${e} must be used within <Shell.Root>`);return n}function k(e,n){let t=o.useCallback(i=>c(e,i),[e]),r=o.useCallback(()=>e.entries.get(n),[e,n]);return o.useSyncExternalStore(t,r,()=>{})}function v(e,n){let t=o.useCallback(r=>c(e,r),[e]);return o.useSyncExternalStore(t,()=>e.peek===n,()=>!1)}var x=o.createContext(null);function E(e,n){let t=o.useContext(x);if(!t)throw new Error("Shell panes must be used within <Shell.Root>");let{registerInset:r,unregisterInset:i}=t;p(()=>{if(n)return r(e),()=>i(e)},[e,n,r,i])}var u=new Set;function w(e){}export{d as a,f as b,T as c,g as d,R as e,y as f,S as g,c as h,m as i,b as j,I as k,k as l,v as m,x as n,E as o,w as p};
|
|
3
|
-
//# sourceMappingURL=chunk-GHWEXMF6.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import{a as d,c as E,f as H,g as N}from"./chunk-XUCR7L4G.js";import{a as R,e as p}from"./chunk-3QWGSRYC.js";import{a as y,b as x,c as O}from"./chunk-LTUW36HM.js";import{a as M,b as T,c as w}from"./chunk-QKCNGEX4.js";import{a as v}from"./chunk-WEBNIUEX.js";import{a as B}from"./chunk-G66WDIIV.js";import{b as S}from"./chunk-VWRPVM5K.js";import{o as C}from"./chunk-GHWEXMF6.js";import*as e from"react";import re from"classnames";import{useComposedRefs as pe}from"radix-ui/internal";var de={controlled:"open",default:"defaultOpen"},I=e.forwardRef((U,k)=>{let{className:V,presentation:A="fixed",defaultOpen:L,open:$,onOpenChange:q,expandedSize:t=200,minSize:n=100,maxSize:a=400,resizable:m=!1,collapsible:D=!0,onExpand:W,onCollapse:_,onResize:j,onResizeStart:F,onResizeEnd:G,snapPoints:i,snapTolerance:K,collapseThreshold:s,paneId:l,persistence:r,children:J,style:Q,size:c,defaultSize:u,onSizeChange:X,sizeUpdate:Y,sizeUpdateMs:Z=50,inset:P,id:ee,...f}=U,{table:z,attributes:oe}=O(A,"fixed"),o=y({name:"bottom",label:"Bottom",propNames:de,id:ee,controlled:d($),defaultValue:d(L),presentationTable:z,builtIn:E,onChange:(se,le)=>q?.(se!=="closed",{reason:le}),onExpand:W,onCollapse:_,size:t});C("bottom",P),e.useEffect(()=>{(i!==void 0||s!==void 0||l!==void 0||r!==void 0)&&void 0},[i,s,l,r]);let b=e.useRef(null),te=pe(k,o.setElement,b),ne=T({name:"bottom",elementId:o.id,elementRef:b,cssVarName:"--bottom-size",orientation:"horizontal",edge:"start",growth:H,expandedSize:t,minSize:n,maxSize:a,resizable:m,collapsible:D,size:c,defaultSize:u,onSizeChange:X,sizeUpdate:Y,sizeUpdateMs:Z,onResize:j,onResizeStart:F,onResizeEnd:G,snapPoints:i,snapTolerance:K,collapseThreshold:s,paneId:l,persistence:r,overlaying:o.overlaying,overlayingNow:()=>z[B()]==="overlay",requestCollapse:()=>o.setValue("closed","toggle"),requestToggle:()=>o.toggle("toggle")}),h=M(c,u,n,a),{handles:g,content:ae}=w(J,p),ie=m&&o.shown!==!1&&!o.overlaying?e.createElement(v.Provider,{value:ne},g.length>0?g:e.createElement(R,null)):null;return e.createElement("div",{...N(f),id:o.id,ref:te,className:re("kui-ShellPane","kui-ShellBottom",V),...x(o,oe),"data-inset":P||void 0,tabIndex:o.overlaying?-1:f.tabIndex,style:{...Q,"--bottom-expanded-size":`${t}px`,...h?{"--bottom-size":h}:{},"--bottom-min-size":`${n}px`,"--bottom-max-size":`${a}px`}},e.createElement("div",{className:"kui-ShellBottomContent"},e.createElement(S,null,ae)),ie)});I.displayName="Shell.Bottom";I.Handle=p;export{I as a};
|
|
3
|
-
//# sourceMappingURL=chunk-ZBSGH74F.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/_internal/shell-bottom.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useComposedRefs } from 'radix-ui/internal';\nimport { PaneResizeContext } from './shell-resize.js';\nimport { BottomHandle, PaneHandle } from './shell-handles.js';\nimport { usePane, paneAttributes, usePresentationTable } from './shell-pane.js';\nimport { splitHandles, useInitialPaneSize, useResizablePane, type SizeChangeMeta } from './shell-resizable.js';\nimport { useInsetRegistration, warnOnce } from './shell-store.js';\nimport { bottomAnchoredGrowth, detailRest, toPaneValue, withoutRemovedPaneProps } from './shell-rest.js';\nimport { PageScope } from './page-scope.js';\nimport { readBreakpoint } from '../../hooks/use-breakpoint.js';\nimport type { Breakpoint, CSSPropertiesWithVars, PaneBaseProps } from '../shell.types.js';\n\ntype BottomOpenChangeMeta = { reason: 'init' | 'toggle' | 'responsive' | 'dismiss' };\ntype BottomControlledProps = { open: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: BottomOpenChangeMeta) => void; defaultOpen?: never };\n/** Since 0.8.0 `defaultOpen` takes a responsive object here too, as the docs already said it did. */\ntype BottomUncontrolledProps = { defaultOpen?: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: BottomOpenChangeMeta) => void; open?: never };\ntype BottomSizeControlledProps = { size: number | string; defaultSize?: never };\ntype BottomSizeUncontrolledProps = { defaultSize?: number | string; size?: never };\ntype BottomPublicProps = PaneBaseProps &\n (BottomControlledProps | BottomUncontrolledProps) &\n (BottomSizeControlledProps | BottomSizeUncontrolledProps) & {\n onSizeChange?: (size: number, meta: SizeChangeMeta) => void;\n sizeUpdate?: 'throttle' | 'debounce';\n sizeUpdateMs?: number;\n /** When true, adds margin and triggers the gray backdrop on the Shell. */\n inset?: boolean;\n };\n\ntype BottomComponent = React.ForwardRefExoticComponent<BottomPublicProps & React.RefAttributes<HTMLDivElement>> & { Handle: typeof BottomHandle };\n\nconst BOTTOM_PROP_NAMES = { controlled: 'open', default: 'defaultOpen' };\n\nexport const Bottom = React.forwardRef<HTMLDivElement, BottomPublicProps>((props, ref) => {\n const {\n className,\n presentation = 'fixed',\n defaultOpen,\n open,\n onOpenChange,\n expandedSize = 200,\n minSize = 100,\n maxSize = 400,\n resizable = false,\n collapsible = true,\n onExpand,\n onCollapse,\n onResize,\n onResizeStart,\n onResizeEnd,\n snapPoints,\n snapTolerance,\n collapseThreshold,\n paneId,\n persistence,\n children,\n style,\n size,\n defaultSize,\n onSizeChange,\n sizeUpdate,\n sizeUpdateMs = 50,\n inset,\n id,\n ...domProps\n } = props;\n\n const { table, attributes } = usePresentationTable(presentation, 'fixed');\n const pane = usePane({\n name: 'bottom',\n label: 'Bottom',\n propNames: BOTTOM_PROP_NAMES,\n id,\n controlled: toPaneValue(open),\n defaultValue: toPaneValue(defaultOpen),\n presentationTable: table,\n builtIn: detailRest,\n onChange: (value, reason) => onOpenChange?.(value !== 'closed', { reason }),\n onExpand,\n onCollapse,\n size: expandedSize,\n });\n useInsetRegistration('bottom', inset);\n\n React.useEffect(() => {\n if (snapPoints !== undefined || collapseThreshold !== undefined || paneId !== undefined || persistence !== undefined) {\n warnOnce('Shell.Bottom: `snapPoints`, `collapseThreshold`, `paneId` and `persistence` are deprecated and are removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`.');\n }\n }, [snapPoints, collapseThreshold, paneId, persistence]);\n\n const elementRef = React.useRef<HTMLElement | null>(null);\n const composedRef = useComposedRefs(ref, pane.setElement, elementRef);\n\n const resize = useResizablePane({\n name: 'bottom',\n elementId: pane.id,\n elementRef,\n cssVarName: '--bottom-size',\n orientation: 'horizontal',\n edge: 'start',\n growth: bottomAnchoredGrowth,\n expandedSize,\n minSize,\n maxSize,\n resizable,\n collapsible,\n size,\n defaultSize,\n onSizeChange,\n sizeUpdate,\n sizeUpdateMs,\n onResize,\n onResizeStart,\n onResizeEnd,\n snapPoints,\n snapTolerance,\n collapseThreshold,\n paneId,\n persistence,\n overlaying: pane.overlaying,\n overlayingNow: () => table[readBreakpoint()] === 'overlay',\n requestCollapse: () => pane.setValue('closed', 'toggle'),\n requestToggle: () => pane.toggle('toggle'),\n });\n\n // The starting size is in the server HTML, so the pane does not jump on hydration.\n const initialSize = useInitialPaneSize(size, defaultSize, minSize, maxSize);\n const { handles, content } = splitHandles(children, BottomHandle);\n const handle = resizable && pane.shown !== false && !pane.overlaying ? <PaneResizeContext.Provider value={resize}>{handles.length > 0 ? handles : <PaneHandle />}</PaneResizeContext.Provider> : null;\n\n return (\n <div\n {...withoutRemovedPaneProps(domProps)}\n id={pane.id}\n ref={composedRef}\n className={classNames('kui-ShellPane', 'kui-ShellBottom', className)}\n {...paneAttributes(pane, attributes)}\n data-inset={inset || undefined}\n tabIndex={pane.overlaying ? -1 : domProps.tabIndex}\n style={\n {\n ...style,\n '--bottom-expanded-size': `${expandedSize}px`,\n ...(initialSize ? { '--bottom-size': initialSize } : {}),\n '--bottom-min-size': `${minSize}px`,\n '--bottom-max-size': `${maxSize}px`,\n } as CSSPropertiesWithVars\n }\n >\n <div className=\"kui-ShellBottomContent\">\n <PageScope>{content}</PageScope>\n </div>\n {handle}\n </div>\n );\n}) as BottomComponent;\n\nBottom.displayName = 'Shell.Bottom';\nBottom.Handle = BottomHandle;\n\nexport type { BottomPublicProps };\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["React", "classNames", "useComposedRefs", "BOTTOM_PROP_NAMES", "Bottom", "props", "ref", "className", "presentation", "defaultOpen", "open", "onOpenChange", "expandedSize", "minSize", "maxSize", "resizable", "collapsible", "onExpand", "onCollapse", "onResize", "onResizeStart", "onResizeEnd", "snapPoints", "snapTolerance", "collapseThreshold", "paneId", "persistence", "children", "style", "size", "defaultSize", "onSizeChange", "sizeUpdate", "sizeUpdateMs", "inset", "id", "domProps", "table", "attributes", "usePresentationTable", "pane", "usePane", "toPaneValue", "detailRest", "value", "reason", "useInsetRegistration", "elementRef", "composedRef", "useComposedRefs", "resize", "useResizablePane", "bottomAnchoredGrowth", "readBreakpoint", "initialSize", "useInitialPaneSize", "handles", "content", "splitHandles", "BottomHandle", "handle", "PaneResizeContext", "PaneHandle", "withoutRemovedPaneProps", "classNames", "paneAttributes", "PageScope"]
|
|
7
|
-
}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import{a as Ye,b as Xe}from"./chunk-4G3FJUER.js";import{a as Je}from"./chunk-ZG2XQUOH.js";import{a as Ge}from"./chunk-4B3S2DM7.js";import{a as Ke}from"./chunk-ZBSGH74F.js";import{a as je}from"./chunk-AKMRPGNP.js";import{a as J,b as _e,c as Ue,d as qe,g as $e}from"./chunk-XUCR7L4G.js";import{a as De,b as Pe}from"./chunk-3QWGSRYC.js";import{a as he,b as ve,c as Se}from"./chunk-LTUW36HM.js";import{a as Be,b as Ve,c as We}from"./chunk-QKCNGEX4.js";import{a as Fe}from"./chunk-WEBNIUEX.js";import{b as ye}from"./chunk-5ON3XLRD.js";import{a as Le}from"./chunk-G66WDIIV.js";import{b as ie}from"./chunk-VWRPVM5K.js";import{c as pe,d as fe,e as Ae,f as me,i as Ie,j as Ne,k as Oe}from"./chunk-NFSW36RG.js";import{c as ke,d as we}from"./chunk-QEDKL23P.js";import{e as ce,f as Me,h as ze,i as ne,j as He,k as de,l as ue,n as xe,o as oe}from"./chunk-GHWEXMF6.js";import{a as Te}from"./chunk-ANQLWGFN.js";import{a as it}from"./chunk-VQPANPMI.js";var ht={};it(ht,{Bottom:()=>Ke,Content:()=>rt,Header:()=>ot,Inspector:()=>je,Left:()=>lt,PaneFooter:()=>Ne,PaneHeader:()=>Ie,Panel:()=>Ee,Rail:()=>at,Root:()=>nt,Scroll:()=>Oe,Sidebar:()=>Ge,Trigger:()=>st,useResponsivePresentation:()=>Je,useShell:()=>Xe,useSidebarMode:()=>Ye});import*as e from"react";import $ from"classnames";import{Slot as ct}from"radix-ui";import{useComposedRefs as Ce,useLayoutEffect as dt}from"radix-ui/internal";var Re=0;function Qe(a){Re=Math.max(0,Re+a);let r=document.documentElement;Re>0?r.setAttribute("data-kui-shell-lock",""):r.removeAttribute("data-kui-shell-lock")}var ge="data-kui-shell-inert",ut=30;function Q(a,r){return r===null||r===a||r===a.body||r===a.documentElement}function Ze(a,r,s){for(let u of a.querySelectorAll("[data-shell-trigger][aria-controls]"))if(!(u.getAttribute("aria-controls")!==r||u.closest("[inert]"))&&!(s&&!s.some(S=>S.contains(u))))return u;return null}var pt={values:["1","2","3"]},tt=e.createContext(null),et=64;function be(a){return a.querySelector(":scope > .kui-ShellContent > .kui-ShellScroll > .kui-ScrollAreaViewport")??a.querySelector(":scope > .kui-ShellContent")}var nt=e.forwardRef(({className:a,children:r,height:s="full",contained:u,size:S,style:g,onKeyDown:F,onFocus:x,...k},T)=>{let P=ye(S,pt),[i]=e.useState(Me),C=e.useCallback(t=>ze(i,t),[i]);e.useSyncExternalStore(C,()=>i.version,()=>0);let R=e.useRef(null),D=Ce(T,R),[E,w]=e.useState(()=>new Set),A=e.useCallback(t=>{w(n=>n.has(t)?n:new Set(n).add(t))},[]),f=e.useCallback(t=>{w(n=>{if(!n.has(t))return n;let o=new Set(n);return o.delete(t),o})},[]),m=e.useMemo(()=>({registerInset:A,unregisterInset:f}),[A,f]),I=e.useCallback(()=>{for(let t of i.entries.values())t.overlayLive&&t.setValue("closed","dismiss")},[i]),M=e.useCallback(()=>[...i.entries.values()].filter(t=>t.overlayLive&&t.el).map(t=>({name:t.name,id:t.id,el:t.el})),[i]),y=[...i.entries.values()].filter(t=>t.overlayLive&&t.el).length,N=u===!0||s!=="full"&&s!=="auto",V=!N&&s==="full",[Z,le]=e.useState(void 0);e.useEffect(()=>{if(!V)return;let t=R.current,n=t?.ownerDocument.defaultView;if(!t||!n||typeof n.matchMedia!="function")return;let o=ke(),c=o?n.scrollY:be(t)?.scrollTop??0,h=0,v=0,L=()=>{v&&cancelAnimationFrame(v),v=requestAnimationFrame(()=>{v=0})},U=()=>{o&&!v&&(c=n.scrollY)},q=l=>{!o&&!v&&l.target instanceof HTMLElement&&l.target===be(t)&&(c=l.target.scrollTop)};n.addEventListener("resize",L),n.addEventListener("scroll",U,{passive:!0}),t.addEventListener("scroll",q,{passive:!0,capture:!0});let se=we(l=>{o=l;let d=c;h&&cancelAnimationFrame(h),h=requestAnimationFrame(()=>{if(h=0,l)n.scrollTo(0,d);else{let p=be(t);p&&(p.scrollTop=d)}})});return()=>{h&&cancelAnimationFrame(h),v&&cancelAnimationFrame(v),n.removeEventListener("resize",L),n.removeEventListener("scroll",U),t.removeEventListener("scroll",q,{capture:!0}),se()}},[V]);let K=e.useCallback(()=>{let t=R.current;if(!t)return;let n=M().map(o=>o.el);for(let o of t.children){if(!(o instanceof HTMLElement)||o.classList.contains("kui-ShellScrim"))continue;let c=n.some(h=>o===h||o.contains(h));n.length===0||c?o.hasAttribute(ge)&&(o.removeAttribute(ge),o.inert=!1):o.inert||(o.setAttribute(ge,""),o.inert=!0)}},[M]),j=e.useRef(null),G=e.useRef([]),ee=e.useRef(null),O=e.useRef(!1),z=e.useRef(0),W=e.useCallback(()=>{z.current&&cancelAnimationFrame(z.current),z.current=0},[]),_=e.useCallback((t,n)=>{W();let o=0,c=()=>{if(z.current=0,!!t.isConnected){if(n(t.ownerDocument.activeElement)){t.focus({preventScroll:!0});return}o+=1,o<ut&&(z.current=requestAnimationFrame(c))}};z.current=requestAnimationFrame(c)},[W]);e.useEffect(()=>()=>{W(),O.current&&(O.current=!1,Qe(-1))},[W]),e.useEffect(()=>{let t=R.current;if(!t)return;let n=t.ownerDocument,o=M(),c=o.map(l=>l.el),h=!N&&o.length>0;h!==O.current&&(O.current=h,Qe(h?1:-1));let v=G.current;G.current=o;let L=v.filter(l=>{if(c.includes(l.el))return!1;let d=i.entries.get(l.name);return!l.el.isConnected||!d||d.el!==l.el||d.value==="closed"}),U=l=>l!==null&&L.some(d=>d.el.contains(l));if(v.length===0&&o.length>0){let l=n.activeElement,d=l instanceof HTMLElement&&!Q(n,l)&&!c.some(p=>p.contains(l))?l:null;if(d&&!t.contains(d)){let p=ee.current;p&&p.isConnected&&!c.some(te=>te.contains(p))&&(d=p)}j.current=d}if(K(),o.length===0){let l=j.current;if(j.current=null,L.length===0)return;let p=(H=>H!==null&&H.isConnected&&!H.closest("[inert]")&&!U(H))(l)?l:null;for(let H of L)p??(p=Ze(n,H.id));if(!p)return;let te=H=>Q(n,H)||U(H);te(n.activeElement)?p.focus({preventScroll:!0}):_(p,te);return}if(L.length>0){let l=n.activeElement;if(Q(n,l)||U(l)){let d=null;for(let p of L)d??(d=Ze(n,p.id,c));(d??c[c.length-1]).focus({preventScroll:!0})}}let q=c.filter(l=>!v.some(d=>d.el===l)),se=n.activeElement;q.length>0&&!c.some(l=>l.contains(se))&&(q[0].focus({preventScroll:!0}),_(q[0],l=>Q(n,l)||l instanceof Element&&l.closest("[inert]")!==null))}),e.useEffect(()=>{let t=R.current;if(!t||y===0||typeof MutationObserver>"u")return;let n=new MutationObserver(K);return n.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["inert"]}),()=>n.disconnect()},[y,K]);let Y=t=>{F?.(t),!(t.key!=="Escape"||t.defaultPrevented||y===0)&&(I(),t.stopPropagation())};e.useEffect(()=>{let t=R.current;if(!t||y===0)return;let n=t.ownerDocument,o=c=>{c.key!=="Escape"||c.defaultPrevented||!Q(n,c.target)||I()};return n.addEventListener("keydown",o),()=>n.removeEventListener("keydown",o)},[y,I]);let ae=t=>{x?.(t),t.target instanceof HTMLElement&&R.current?.contains(t.target)&&(ee.current=t.target)},B=i.entries.get("rail"),X=B!==void 0&&B.value!==void 0&&B.value!=="closed"?E.has("rail")?`calc(${B.size}px + 2 * var(--shell-inset-gap))`:`${B.size}px`:void 0,re=s==="full"?{}:s==="auto"?{height:"auto"}:typeof s=="number"?{height:`${s}px`}:{height:s};return e.createElement(He.Provider,{value:i},e.createElement(pe.Provider,{value:P},e.createElement(fe.Provider,{value:!1},e.createElement(Ae.Provider,{value:V},e.createElement(tt.Provider,{value:le},e.createElement(xe.Provider,{value:m},e.createElement(Te.Provider,{value:void 0},e.createElement("div",{...k,ref:D,className:$("kui-ShellRoot",a),"data-height":s==="auto"&&!N?"auto":void 0,"data-contained":N||void 0,"data-window":V||void 0,"data-has-inset":E.size>0||void 0,"data-overlay-live":y>0||void 0,onKeyDown:Y,onFocus:ae,style:{...re,...X?{"--shell-rail-offset":X}:{},...Z!==void 0?{"--kui-shell-header-h":`${Z}px`}:{},...g}},r,e.createElement("div",{className:"kui-ShellScrim","aria-hidden":!0,onClick:I})))))))))});nt.displayName="Shell.Root";var ot=e.forwardRef(({className:a,height:r=et,style:s,...u},S)=>{let g=e.useContext(tt);return dt(()=>{if(g)return g(r===et?void 0:r),()=>g(void 0)},[g,r]),e.createElement("header",{...u,ref:S,className:$("kui-ShellHeader",a),style:{...s,"--shell-header-height":`${r}px`}})});ot.displayName="Shell.Header";var lt=e.forwardRef(({children:a},r)=>(e.useEffect(()=>{},[]),e.createElement(e.Fragment,null,a)));lt.displayName="Shell.Left";var ft={controlled:"open",default:"defaultOpen"},at=e.forwardRef((a,r)=>{let{className:s,presentation:u,expandedSize:S=64,collapsible:g,onExpand:F,onCollapse:x,children:k,style:T,open:P,defaultOpen:i,onOpenChange:C,inset:R,id:D,...E}=a,{table:w,attributes:A}=Se(u,"fixed"),f=he({name:"rail",label:"Rail",propNames:ft,id:D,controlled:J(P),defaultValue:J(i),presentationTable:w,builtIn:_e,onChange:(I,M)=>C?.(I!=="closed",{reason:M}),onExpand:F,onCollapse:x,size:S});oe("rail",R);let m=Ce(r,f.setElement);return e.createElement("div",{...E,role:E.role??"navigation",id:f.id,ref:m,className:$("kui-ShellPane","kui-ShellRail",s),...ve(f,A),"data-inset":R||void 0,tabIndex:f.overlaying?-1:E.tabIndex,style:{...T,"--rail-size":`${S}px`}},e.createElement(mt,null,k))});at.displayName="Shell.Rail";function mt({children:a}){let r=e.useContext(pe);return e.createElement("div",{className:$("kui-ShellRailContent",`kui-r-size-${r}`)},e.createElement(me,{presentation:"thin"},a))}var Pt={controlled:"open",default:"defaultOpen"},Ee=e.forwardRef((a,r)=>{let{className:s,presentation:u,defaultOpen:S,open:g,onOpenChange:F,size:x,defaultSize:k,expandedSize:T=288,minSize:P=100,maxSize:i=800,resizable:C=!1,collapsible:R=!0,onExpand:D,onCollapse:E,onResize:w,onResizeStart:A,onResizeEnd:f,snapPoints:m,snapTolerance:I,collapseThreshold:M,paneId:y,persistence:N,children:V,style:Z,onSizeChange:le,sizeUpdate:K,sizeUpdateMs:j=50,inset:G,id:ee,...O}=a,z=de("Shell.Panel"),W=ue(z,"rail"),_=Se(u,"fixed"),Y=u===void 0,ae=Y?W?.presentationTable??ce:_.table,B=Y?{"data-presentation-follows":""}:_.attributes,b=he({name:"panel",label:"Panel",propNames:Pt,id:ee,controlled:J(g),defaultValue:J(S),presentationTable:ae,builtIn:Ue,onChange:(v,L)=>F?.(v!=="closed",{reason:L}),onExpand:D,onCollapse:E,size:T});oe("panel",G),e.useEffect(()=>{(m!==void 0||M!==void 0||y!==void 0||N!==void 0)&&void 0},[m,M,y,N]);let X=e.useRef(null),re=Ce(r,b.setElement,X),t=Ve({name:"panel",elementId:b.id,elementRef:X,cssVarName:"--panel-size",orientation:"vertical",edge:"end",growth:qe,expandedSize:T,minSize:P,maxSize:i,resizable:C,collapsible:R,size:x,defaultSize:k,onSizeChange:le,sizeUpdate:K,sizeUpdateMs:j,onResize:w,onResizeStart:A,onResizeEnd:f,snapPoints:m,snapTolerance:I,collapseThreshold:M,paneId:y,persistence:N,overlaying:b.overlaying,overlayingNow:()=>(Y?z.entries.get("rail")?.presentationTable??ce:_.table)[Le()]==="overlay",requestCollapse:()=>b.setValue("closed","toggle"),requestToggle:()=>b.toggle("toggle")}),n=Be(x,k,P,i),{handles:o,content:c}=We(V,Pe),h=C&&b.shown!==!1&&!b.overlaying?e.createElement(Fe.Provider,{value:t},o.length>0?o:e.createElement(De,null)):null;return e.createElement("div",{...$e(O),role:O.role??"navigation",id:b.id,ref:re,className:$("kui-ShellPane","kui-ShellPanel",s),...ve(b,B),"data-inset":G||void 0,tabIndex:b.overlaying?-1:O.tabIndex,style:{...Z,"--panel-expanded-size":`${T}px`,...n?{"--panel-size":n}:{}}},e.createElement("div",{className:"kui-ShellPanelContent"},e.createElement(me,null,e.createElement(ie,null,c))),h)});Ee.displayName="Shell.Panel";Ee.Handle=Pe;var rt=e.forwardRef(({className:a,inset:r,children:s,...u},S)=>(oe("content",r),e.createElement("main",{...u,ref:S,className:$("kui-ShellContent",a),"data-inset":r||void 0},e.createElement(fe.Provider,{value:!0},e.createElement(ie,null,s)))));rt.displayName="Shell.Content";var st=e.forwardRef(({target:a,action:r="toggle",peekOnHover:s,asChild:u=!1,onClick:S,onMouseEnter:g,onMouseLeave:F,children:x,...k},T)=>{let P=de("Shell.Trigger");e.useEffect(()=>{a==="left"&&void 0,s&&void 0},[a,s]);let i=a==="left"?"rail":a,C=ue(P,i),R=C?.value===void 0?void 0:C.value!=="closed",D=f=>{if(S?.(f),f.defaultPrevented)return;let m=P.entries.get(i);m&&(P.peek===i&&ne(P,null),r==="toggle"?m.toggle("toggle"):r==="expand"?m.setValue("open","toggle"):m.setValue("closed","toggle"))},E=f=>{if(g?.(f),!s)return;let m=P.entries.get(i);m&&m.value==="closed"&&m.presentation!=="overlay"&&ne(P,i)},w=f=>{F?.(f),s&&P.peek===i&&ne(P,null)},A=u?ct.Root:"button";return e.createElement(A,{...!u&&{type:"button"},"aria-controls":C?.id,"aria-expanded":R,...k,ref:T,onClick:D,onMouseEnter:E,onMouseLeave:w,"data-shell-trigger":a,"data-shell-action":r},x)});st.displayName="Shell.Trigger";export{nt as a,ot as b,lt as c,at as d,Ee as e,rt as f,st as g,ht as h};
|
|
3
|
-
//# sourceMappingURL=chunk-ZHXEEOGI.js.map
|