@wpmoo/ui 1.1.0-dev.1 → 1.2.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/ASSET_LICENSE.md CHANGED
@@ -14,6 +14,6 @@ product, site, template, library, training dataset, or marketing asset without
14
14
  prior written permission from WPMoo.
15
15
 
16
16
  Third-party assets remain under their own licenses. See the
17
- [version-pinned third-party notices](https://github.com/wpmoo-org/ui/blob/v1.0.0/THIRD_PARTY_NOTICES.md).
17
+ [version-pinned third-party notices](https://github.com/wpmoo-org/ui/blob/v1.2.0/THIRD_PARTY_NOTICES.md).
18
18
  Those notices are repository-only and are intentionally not shipped in the npm
19
19
  package.
package/README.md CHANGED
@@ -194,11 +194,9 @@ calm.
194
194
 
195
195
  ## Status And Support
196
196
 
197
- The current development snapshot is `1.1.0-dev.1`. It adds a shared Table of
198
- Contents component and is not published to npm; use the locally packed tarball
199
- when evaluating this snapshot.
200
-
201
- The stable public-contract release is `1.0.0`. Component certification remains
197
+ The `1.2.0` release target adds the Empty component and optional Tabs content
198
+ height, with fixes for App container sizing and release validation. It preserves
199
+ the frozen 1.1.0 public package contract. Component certification remains
202
200
  `preview`, with its documented manual and browser/device limits. Public exports, package boundaries, browser support, and release evidence live in [Support & Evidence](https://ui.wpmoo.org/support/).
203
201
  Complete release notes are on
204
202
  [GitHub Releases](https://github.com/wpmoo-org/ui/releases).
@@ -224,4 +222,4 @@ The published `LICENSE` also retains the full MIT notices for bundled
224
222
  Chart.js and `@kurkle/color`.
225
223
  Asset terms live in [ASSET_LICENSE.md](ASSET_LICENSE.md); dependency notices
226
224
  live in the
227
- [version-pinned third-party notices](https://github.com/wpmoo-org/ui/blob/v1.0.0/THIRD_PARTY_NOTICES.md).
225
+ [version-pinned third-party notices](https://github.com/wpmoo-org/ui/blob/v1.2.0/THIRD_PARTY_NOTICES.md).
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": "0.1",
3
3
  "status": "preview",
4
- "coreVersion": "1.1.0-dev.1",
4
+ "coreVersion": "1.2.0",
5
5
  "bootstrap": {
6
6
  "canonicalVersion": "5.3.3",
7
7
  "targetRange": ">=5.3.0 <5.4",
@@ -28,6 +28,7 @@
28
28
  "./context-menu.js",
29
29
  "./datatable.js",
30
30
  "./slider.js",
31
+ "./toc.js",
31
32
  "./table-of-contents.js",
32
33
  "./sheet.js",
33
34
  "./chart.js",
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Moo UI v1.1.0-dev.1 (https://wpmoo.org/)
2
+ * Moo UI v1.2.0 (https://wpmoo.org/)
3
3
  * Copyright 2026 WPMoo Authors
4
4
  * Licensed under MIT (https://github.com/wpmoo-org/ui/blob/main/LICENSE)
5
5
  *
@@ -13318,6 +13318,61 @@ label.btn {
13318
13318
  color: var(--moo-muted-foreground);
13319
13319
  }
13320
13320
 
13321
+ /* Empty */
13322
+ .empty-state {
13323
+ display: flex;
13324
+ flex-direction: column;
13325
+ align-items: center;
13326
+ justify-content: center;
13327
+ width: 100%;
13328
+ min-width: 0;
13329
+ gap: 1.5rem;
13330
+ padding: 1.5rem;
13331
+ text-align: center;
13332
+ border-width: var(--bs-border-width);
13333
+ border-style: dashed;
13334
+ border-color: var(--bs-border-color);
13335
+ border-radius: var(--bs-border-radius-lg);
13336
+ }
13337
+ .empty-state-header {
13338
+ display: flex;
13339
+ flex-direction: column;
13340
+ align-items: inherit;
13341
+ gap: 0.5rem;
13342
+ }
13343
+ .empty-state-icon {
13344
+ display: inline-flex;
13345
+ align-items: center;
13346
+ justify-content: center;
13347
+ padding: 0.75rem;
13348
+ font-size: 1.53125rem;
13349
+ line-height: 1;
13350
+ color: var(--bs-secondary-color);
13351
+ background-color: var(--bs-tertiary-bg);
13352
+ border-radius: var(--bs-border-radius-lg);
13353
+ }
13354
+ .empty-state-icon > [data-icon] {
13355
+ width: 1.5rem;
13356
+ height: 1.5rem;
13357
+ }
13358
+ .empty-state-title {
13359
+ margin: 0;
13360
+ font-size: 1.09375rem;
13361
+ font-weight: 600;
13362
+ line-height: 1.2;
13363
+ }
13364
+ .empty-state-description {
13365
+ margin: 0;
13366
+ font-size: 0.875rem;
13367
+ color: var(--bs-secondary-color);
13368
+ }
13369
+ .empty-state-actions {
13370
+ display: flex;
13371
+ flex-wrap: wrap;
13372
+ justify-content: inherit;
13373
+ gap: 0.5rem;
13374
+ }
13375
+
13321
13376
  /* Table */
13322
13377
  .card .table {
13323
13378
  --bs-table-bg: transparent;
@@ -14977,6 +15032,12 @@ label.btn {
14977
15032
  pointer-events: auto;
14978
15033
  transition-delay: 0s;
14979
15034
  }
15035
+ .tabs--content-height > .tab-content {
15036
+ display: block;
15037
+ }
15038
+ .tabs--content-height > .tab-content > .tab-pane:not(.active) {
15039
+ display: none;
15040
+ }
14980
15041
 
14981
15042
  /* Collapsible */
14982
15043
  .collapsible {
@@ -17144,6 +17205,84 @@ label.btn {
17144
17205
  .wrapper[data-layout="app"] > [data-slot="page"] > footer {
17145
17206
  flex: 0 0 auto;
17146
17207
  }
17208
+ @supports (container-type: inline-size) {
17209
+ .wrapper[data-layout="app"] > [data-slot="page"] {
17210
+ container: moo-shell / inline-size;
17211
+ }
17212
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > :is( .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl ) {
17213
+ max-width: none;
17214
+ }
17215
+ @container moo-shell (min-width: 576px) {
17216
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container {
17217
+ max-width: 540px;
17218
+ }
17219
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-sm {
17220
+ max-width: 540px;
17221
+ }
17222
+ }
17223
+ @container moo-shell (min-width: 768px) {
17224
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container {
17225
+ max-width: 720px;
17226
+ }
17227
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-sm {
17228
+ max-width: 720px;
17229
+ }
17230
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-md {
17231
+ max-width: 720px;
17232
+ }
17233
+ }
17234
+ @container moo-shell (min-width: 992px) {
17235
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container {
17236
+ max-width: 960px;
17237
+ }
17238
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-sm {
17239
+ max-width: 960px;
17240
+ }
17241
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-md {
17242
+ max-width: 960px;
17243
+ }
17244
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-lg {
17245
+ max-width: 960px;
17246
+ }
17247
+ }
17248
+ @container moo-shell (min-width: 1200px) {
17249
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container {
17250
+ max-width: 1140px;
17251
+ }
17252
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-sm {
17253
+ max-width: 1140px;
17254
+ }
17255
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-md {
17256
+ max-width: 1140px;
17257
+ }
17258
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-lg {
17259
+ max-width: 1140px;
17260
+ }
17261
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-xl {
17262
+ max-width: 1140px;
17263
+ }
17264
+ }
17265
+ @container moo-shell (min-width: 1400px) {
17266
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container {
17267
+ max-width: 1320px;
17268
+ }
17269
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-sm {
17270
+ max-width: 1320px;
17271
+ }
17272
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-md {
17273
+ max-width: 1320px;
17274
+ }
17275
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-lg {
17276
+ max-width: 1320px;
17277
+ }
17278
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-xl {
17279
+ max-width: 1320px;
17280
+ }
17281
+ .wrapper[data-layout="app"] > [data-slot="page"] > :is(header, main, footer) > .container-xxl {
17282
+ max-width: 1320px;
17283
+ }
17284
+ }
17285
+ }
17147
17286
  .wrapper[data-layout="app"] > [data-slot="page"] > main {
17148
17287
  display: flex;
17149
17288
  min-height: 0;