@altertable/data-app 0.61.0 → 0.62.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/AGENTS.md +5 -3
- package/CONTRIBUTING.md +7 -4
- package/README.md +14 -14
- package/dist/chunks/{contract-ehk50k7e.js → contract-3bnrf5pf.js} +25 -3
- package/dist/chunks/contract-3bnrf5pf.js.map +10 -0
- package/dist/chunks/{contract-zr4s2g7m.js → contract-4vrw9zk9.js} +41 -11
- package/dist/chunks/contract-4vrw9zk9.js.map +12 -0
- package/dist/chunks/{contract-14vxdcrs.js → contract-farfe948.js} +17 -21
- package/dist/chunks/contract-farfe948.js.map +10 -0
- package/dist/chunks/contract-nt819swq.js.map +1 -1
- package/dist/chunks/{contract-7gpsee0v.js → contract-rrm7s5zp.js} +48 -19
- package/dist/chunks/contract-rrm7s5zp.js.map +12 -0
- package/dist/chunks/{contract-d9skd1n7.js → contract-xjv197ck.js} +161 -14
- package/dist/chunks/contract-xjv197ck.js.map +13 -0
- package/dist/client/index.js +6 -4
- package/dist/client/index.js.map +1 -1
- package/dist/core/appearance.js +1 -1
- package/dist/core/contract.js +5 -3
- package/dist/core/contract.js.map +1 -1
- package/dist/embed/index.js +42 -8
- package/dist/embed/index.js.map +5 -4
- package/dist/local.js +191 -79
- package/dist/local.js.map +8 -7
- package/dist/react/embed/index.js +84 -99
- package/dist/react/embed/index.js.map +4 -5
- package/dist/react/index.css +156 -6
- package/dist/react/index.js +313 -152
- package/dist/react/index.js.map +17 -13
- package/dist/server.js +172 -76
- package/dist/server.js.map +7 -6
- package/dist/types/client/iframe.d.ts +14 -0
- package/dist/types/client/index.d.ts +19 -13
- package/dist/types/core/appearance.d.ts +7 -6
- package/dist/types/core/contract.d.ts +3 -3
- package/dist/types/core/messages.d.ts +7 -1
- package/dist/types/core/operation.d.ts +27 -0
- package/dist/types/core/presentation.d.ts +7 -0
- package/dist/types/embed/bridge.d.ts +12 -0
- package/dist/types/embed/host.d.ts +10 -3
- package/dist/types/embed/index.d.ts +7 -4
- package/dist/types/embed/{shell.d.ts → source.d.ts} +5 -4
- package/dist/types/embed/sql.d.ts +4 -0
- package/dist/types/react/embed/bridge.d.ts +19 -10
- package/dist/types/react/embed/index.d.ts +0 -2
- package/dist/types/react/ui/DataAppSkeleton.d.ts +8 -0
- package/dist/types/react/ui/SearchInput.d.ts +1 -1
- package/dist/types/react/ui/index.d.ts +2 -0
- package/dist/types/react/ui/useAppAppearance.d.ts +3 -0
- package/dist/types/react/ui/useDataAppPresentation.d.ts +3 -0
- package/dist/types/react/view-controls.d.ts +1 -1
- package/dist/{bootstrap.js → worker.js} +144 -12
- package/docs/app-authoring.md +24 -4
- package/docs/appearance.md +21 -8
- package/docs/client.md +39 -2
- package/docs/contract.md +2 -2
- package/docs/embed.md +105 -18
- package/docs/react-embed.md +84 -24
- package/docs/react.md +51 -0
- package/docs/server-bun.md +5 -0
- package/docs/worker.md +57 -0
- package/package.json +3 -3
- package/dist/chunks/contract-14vxdcrs.js.map +0 -10
- package/dist/chunks/contract-7gpsee0v.js.map +0 -11
- package/dist/chunks/contract-d9skd1n7.js.map +0 -12
- package/dist/chunks/contract-ehk50k7e.js.map +0 -10
- package/dist/chunks/contract-zr4s2g7m.js.map +0 -12
- package/dist/types/embed/standalone.d.ts +0 -1
- package/dist/types/react/embed/shell.d.ts +0 -10
- package/docs/bootstrap.md +0 -76
package/dist/react/index.css
CHANGED
|
@@ -334,7 +334,7 @@
|
|
|
334
334
|
min-width: 0;
|
|
335
335
|
}
|
|
336
336
|
|
|
337
|
-
.altertable-request-hint[data-state="error"] > svg {
|
|
337
|
+
.altertable-request-hint[data-state="error"] .altertable-request-hint-copy > svg {
|
|
338
338
|
color: var(--at-danger, #b42318);
|
|
339
339
|
}
|
|
340
340
|
|
|
@@ -444,6 +444,17 @@
|
|
|
444
444
|
}
|
|
445
445
|
}
|
|
446
446
|
|
|
447
|
+
.altertable-request-hint-copy {
|
|
448
|
+
display: inline-flex;
|
|
449
|
+
align-items: center;
|
|
450
|
+
gap: 6px;
|
|
451
|
+
min-width: 0;
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
.altertable-request-hint-copy > svg {
|
|
455
|
+
flex: none;
|
|
456
|
+
}
|
|
457
|
+
|
|
447
458
|
/* src/react/ui/GradientScroll.css */
|
|
448
459
|
.altertable-gradient-scroll {
|
|
449
460
|
overflow: auto;
|
|
@@ -558,6 +569,7 @@
|
|
|
558
569
|
.altertable-combobox-popover {
|
|
559
570
|
z-index: 150;
|
|
560
571
|
min-width: max(var(--trigger-width), 240px);
|
|
572
|
+
overflow: hidden;
|
|
561
573
|
border: 1px solid var(--at-border, #e3e6e8);
|
|
562
574
|
border-radius: var(--at-radius-surface, 12px);
|
|
563
575
|
background: var(--at-surface, #fff);
|
|
@@ -574,7 +586,25 @@
|
|
|
574
586
|
|
|
575
587
|
.altertable-combobox-dialog .altertable-search-input-wrap {
|
|
576
588
|
box-sizing: border-box;
|
|
577
|
-
|
|
589
|
+
border: 0;
|
|
590
|
+
border-bottom: 1px solid var(--at-border, #e3e6e8);
|
|
591
|
+
border-radius: 0;
|
|
592
|
+
width: calc(100% + 16px);
|
|
593
|
+
margin: -8px -8px 8px;
|
|
594
|
+
padding: 6px 17px;
|
|
595
|
+
}
|
|
596
|
+
|
|
597
|
+
.altertable-combobox-dialog .altertable-search-input-wrap:focus-within {
|
|
598
|
+
outline: none;
|
|
599
|
+
border-bottom-color: var(--at-border, #e3e6e8);
|
|
600
|
+
}
|
|
601
|
+
|
|
602
|
+
.altertable-combobox-dialog .altertable-search-input-wrap > svg {
|
|
603
|
+
opacity: .65;
|
|
604
|
+
}
|
|
605
|
+
|
|
606
|
+
.altertable-combobox-dialog .altertable-search-input-wrap:focus-within > svg {
|
|
607
|
+
opacity: 1;
|
|
578
608
|
}
|
|
579
609
|
|
|
580
610
|
.altertable-combobox-status {
|
|
@@ -672,6 +702,16 @@
|
|
|
672
702
|
height: 24px;
|
|
673
703
|
}
|
|
674
704
|
|
|
705
|
+
.altertable-combobox-dialog > .altertable-request-hint[data-state="error"] {
|
|
706
|
+
display: flex;
|
|
707
|
+
text-align: center;
|
|
708
|
+
flex-direction: column;
|
|
709
|
+
align-items: center;
|
|
710
|
+
gap: 6px;
|
|
711
|
+
height: auto;
|
|
712
|
+
margin: 12px 10px 4px;
|
|
713
|
+
}
|
|
714
|
+
|
|
675
715
|
/* src/react/ui/Checkbox.css */
|
|
676
716
|
.altertable-checkbox {
|
|
677
717
|
position: relative;
|
|
@@ -1000,7 +1040,6 @@
|
|
|
1000
1040
|
|
|
1001
1041
|
.altertable-date-range-compare {
|
|
1002
1042
|
display: flex;
|
|
1003
|
-
border-top: 1px solid var(--at-border, #e3e6e8);
|
|
1004
1043
|
cursor: pointer;
|
|
1005
1044
|
align-items: flex-start;
|
|
1006
1045
|
gap: 9px;
|
|
@@ -3046,16 +3085,16 @@ button {
|
|
|
3046
3085
|
|
|
3047
3086
|
.altertable-data-boundary-notice {
|
|
3048
3087
|
display: flex;
|
|
3049
|
-
border: 1px solid var(--at-border, #e3e6e8);
|
|
3050
3088
|
border-radius: var(--at-radius-control, 8px);
|
|
3051
3089
|
color: var(--at-muted, #687078);
|
|
3052
|
-
background:
|
|
3090
|
+
background: none;
|
|
3091
|
+
border: 0;
|
|
3053
3092
|
flex-wrap: wrap;
|
|
3054
3093
|
align-items: center;
|
|
3055
3094
|
gap: 8px;
|
|
3056
3095
|
min-height: 44px;
|
|
3057
3096
|
margin: 0 0 14px;
|
|
3058
|
-
padding: 8px
|
|
3097
|
+
padding: 8px 0;
|
|
3059
3098
|
font-size: 12px;
|
|
3060
3099
|
line-height: 1.45;
|
|
3061
3100
|
}
|
|
@@ -3128,8 +3167,11 @@ button {
|
|
|
3128
3167
|
|
|
3129
3168
|
.altertable-status-panel[data-status="error"] {
|
|
3130
3169
|
box-sizing: border-box;
|
|
3170
|
+
box-shadow: none;
|
|
3131
3171
|
display: grid;
|
|
3132
3172
|
grid-template-columns: 18px minmax(0, 1fr);
|
|
3173
|
+
background: none;
|
|
3174
|
+
border: 0;
|
|
3133
3175
|
align-items: start;
|
|
3134
3176
|
gap: 18px 14px;
|
|
3135
3177
|
width: min(100%, 520px);
|
|
@@ -3517,6 +3559,48 @@ button {
|
|
|
3517
3559
|
}
|
|
3518
3560
|
}
|
|
3519
3561
|
|
|
3562
|
+
.altertable-button.altertable-widget-heading-trigger {
|
|
3563
|
+
display: inline;
|
|
3564
|
+
box-shadow: none;
|
|
3565
|
+
color: inherit;
|
|
3566
|
+
font: inherit;
|
|
3567
|
+
letter-spacing: inherit;
|
|
3568
|
+
text-align: left;
|
|
3569
|
+
background: none;
|
|
3570
|
+
border: 0;
|
|
3571
|
+
border-radius: 2px;
|
|
3572
|
+
min-height: 0;
|
|
3573
|
+
padding: 0;
|
|
3574
|
+
}
|
|
3575
|
+
|
|
3576
|
+
.altertable-widget-heading-trigger > svg {
|
|
3577
|
+
display: inline-block;
|
|
3578
|
+
vertical-align: -2px;
|
|
3579
|
+
opacity: 0;
|
|
3580
|
+
margin-left: 4px;
|
|
3581
|
+
transition: opacity .12s;
|
|
3582
|
+
}
|
|
3583
|
+
|
|
3584
|
+
.altertable-widget-heading-trigger:hover > svg, .altertable-widget-heading-trigger[data-open="true"] > svg {
|
|
3585
|
+
opacity: 1;
|
|
3586
|
+
}
|
|
3587
|
+
|
|
3588
|
+
.altertable-widget-heading-trigger:focus-visible > svg {
|
|
3589
|
+
opacity: 1;
|
|
3590
|
+
}
|
|
3591
|
+
|
|
3592
|
+
@media (hover: none) {
|
|
3593
|
+
.altertable-widget-heading-trigger > svg {
|
|
3594
|
+
opacity: 1;
|
|
3595
|
+
}
|
|
3596
|
+
}
|
|
3597
|
+
|
|
3598
|
+
@media (prefers-reduced-motion: reduce) {
|
|
3599
|
+
.altertable-widget-heading-trigger > svg {
|
|
3600
|
+
transition: none;
|
|
3601
|
+
}
|
|
3602
|
+
}
|
|
3603
|
+
|
|
3520
3604
|
/* src/react/ui/DataWidget.css */
|
|
3521
3605
|
.altertable-data-widget {
|
|
3522
3606
|
border: 1px solid var(--at-border, #e3e6e8);
|
|
@@ -4378,6 +4462,72 @@ button {
|
|
|
4378
4462
|
font-size: 12px;
|
|
4379
4463
|
}
|
|
4380
4464
|
|
|
4465
|
+
/* src/react/ui/DataAppSkeleton.css */
|
|
4466
|
+
.altertable-data-app-skeleton {
|
|
4467
|
+
display: flex;
|
|
4468
|
+
overflow: hidden;
|
|
4469
|
+
padding: var(--at-layout-gap, 24px);
|
|
4470
|
+
background: var(--at-background, #fff);
|
|
4471
|
+
flex: 1;
|
|
4472
|
+
min-width: 0;
|
|
4473
|
+
min-height: 0;
|
|
4474
|
+
}
|
|
4475
|
+
|
|
4476
|
+
.altertable-data-app-skeleton-content {
|
|
4477
|
+
display: flex;
|
|
4478
|
+
gap: var(--at-layout-gap, 24px);
|
|
4479
|
+
max-width: var(--at-content-width, 960px);
|
|
4480
|
+
flex-direction: column;
|
|
4481
|
+
width: 100%;
|
|
4482
|
+
min-width: 0;
|
|
4483
|
+
margin-inline-start: auto;
|
|
4484
|
+
margin-inline-end: auto;
|
|
4485
|
+
}
|
|
4486
|
+
|
|
4487
|
+
.altertable-data-app-skeleton-body {
|
|
4488
|
+
display: flex;
|
|
4489
|
+
gap: var(--at-layout-gap, 24px);
|
|
4490
|
+
flex-direction: column;
|
|
4491
|
+
min-width: 0;
|
|
4492
|
+
}
|
|
4493
|
+
|
|
4494
|
+
.altertable-data-app-skeleton-header, .altertable-data-app-skeleton-footer {
|
|
4495
|
+
min-width: 0;
|
|
4496
|
+
}
|
|
4497
|
+
|
|
4498
|
+
.altertable-data-app-skeleton-widget-title {
|
|
4499
|
+
width: 144px;
|
|
4500
|
+
max-width: 100%;
|
|
4501
|
+
height: 16px;
|
|
4502
|
+
}
|
|
4503
|
+
|
|
4504
|
+
.altertable-data-app-skeleton-chart {
|
|
4505
|
+
display: flex;
|
|
4506
|
+
align-items: flex-end;
|
|
4507
|
+
gap: var(--at-space-sm, 8px);
|
|
4508
|
+
height: 180px;
|
|
4509
|
+
}
|
|
4510
|
+
|
|
4511
|
+
.altertable-data-app-skeleton-chart > * {
|
|
4512
|
+
flex: 1;
|
|
4513
|
+
min-width: 0;
|
|
4514
|
+
}
|
|
4515
|
+
|
|
4516
|
+
.altertable-data-app-skeleton-rows {
|
|
4517
|
+
display: grid;
|
|
4518
|
+
gap: 20px;
|
|
4519
|
+
}
|
|
4520
|
+
|
|
4521
|
+
.altertable-data-app-skeleton-row {
|
|
4522
|
+
display: grid;
|
|
4523
|
+
grid-template-columns: 2fr 1fr 1fr;
|
|
4524
|
+
gap: var(--at-space-md, 16px);
|
|
4525
|
+
}
|
|
4526
|
+
|
|
4527
|
+
.altertable-data-app-skeleton-row > * {
|
|
4528
|
+
height: 16px;
|
|
4529
|
+
}
|
|
4530
|
+
|
|
4381
4531
|
/* src/react/ui/RefreshRegion.css */
|
|
4382
4532
|
.altertable-refresh-content {
|
|
4383
4533
|
transition: opacity .12s;
|