@jsenv/navi 0.29.487 → 0.29.488

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.
@@ -77620,11 +77620,6 @@ const PickerCustom = props => {
77620
77620
  // button) hangs its popup off the whole control instead.
77621
77621
  anchor: props.anchor || props.ref,
77622
77622
  openController,
77623
- // Before the content is built and shown, so it is laid out and placed
77624
- // at the size it is read at (see .navi_picker_content in picker.jsx).
77625
- onOpen: () => {
77626
- writeContainerFont(ref.current, popupRef.current);
77627
- },
77628
77623
  // A picker whose value was never given to it reads it off the control in
77629
77624
  // its popup (see useUIFacadeStateController), so that control is built as
77630
77625
  // soon as something reads the value: at mount when the picker sees the
@@ -78449,30 +78444,6 @@ const showNativePicker = (pickerInput, event) => {
78449
78444
  }
78450
78445
  };
78451
78446
 
78452
- // The popup of a picker is opened where the picker stands, so it writes at the
78453
- // size and weight of what is around it — the ones a Dialog rendered there
78454
- // inherits — and never at the ones the trigger is drawn at. CSS cannot reach
78455
- // past the picker's own: its root holds the popup and sets both. Written on the
78456
- // holder only when they differ, so an opening that changes nothing invalidates
78457
- // no style.
78458
- const writeContainerFont = (pickerEl, popupEl) => {
78459
- const container = pickerEl?.parentElement;
78460
- const holder = popupEl?.closest("[data-picker-content]");
78461
- if (!container || !holder) {
78462
- return;
78463
- }
78464
- const {
78465
- fontSize,
78466
- fontWeight
78467
- } = getComputedStyle(container);
78468
- if (holder.style.fontSize !== fontSize) {
78469
- holder.style.fontSize = fontSize;
78470
- }
78471
- if (holder.style.fontWeight !== fontWeight) {
78472
- holder.style.fontWeight = fontWeight;
78473
- }
78474
- };
78475
-
78476
78447
  installImportMetaCssBuild(import.meta);
78477
78448
  const css$y = /* css */`.navi_picker_confirm_body {
78478
78449
  min-width: 180px;
@@ -89127,7 +89098,17 @@ const PickerFileUI = /*#__PURE__*/asPickerOwnUI(() => {
89127
89098
  });
89128
89099
 
89129
89100
  installImportMetaCssBuild(import.meta);
89130
- const css$r = /* css */`@layer navi {
89101
+ const css$r = /* css */`@property --navi-picker-container-font-size {
89102
+ syntax: "<length>";
89103
+ inherits: true;
89104
+ initial-value: 16px;
89105
+ }
89106
+
89107
+ @layer navi {
89108
+ :where(:has( > .navi_picker)) {
89109
+ --navi-picker-container-font-size: 1em;
89110
+ }
89111
+
89131
89112
  .navi_picker {
89132
89113
  --picker-border-radius: var(--navi-control-border-radius);
89133
89114
  --picker-border-width: var(--navi-control-border-width);
@@ -89138,6 +89119,7 @@ const css$r = /* css */`@layer navi {
89138
89119
  --picker-padding-x-default: var(--navi-picker-padding-x-default);
89139
89120
  --picker-padding-y-default: var(--navi-picker-padding-y-default);
89140
89121
  --picker-font-size: var(--navi-control-font-size);
89122
+ --picker-font-weight: initial;
89141
89123
  --picker-font-family: var(--navi-control-font-family, inherit);
89142
89124
  --picker-loader-color: var(--navi-loader-color);
89143
89125
  --picker-cta-background-color: var(--navi-accent-color);
@@ -89364,6 +89346,7 @@ const css$r = /* css */`@layer navi {
89364
89346
  padding-bottom: var(--x-picker-padding-bottom);
89365
89347
  align-items: var(--x-picker-align-y);
89366
89348
  justify-content: var(--x-picker-align-x);
89349
+ font-weight: var(--picker-font-weight, inherit);
89367
89350
  background-color: var(--x-picker-background-color);
89368
89351
  border-width: var(--picker-border-width);
89369
89352
  border-style: solid;
@@ -89542,9 +89525,8 @@ const css$r = /* css */`@layer navi {
89542
89525
  --x-corner-top-right-radius: initial;
89543
89526
  --x-corner-bottom-right-radius: initial;
89544
89527
  --x-corner-bottom-left-radius: initial;
89545
- font-weight: initial;
89528
+ font-size: var(--navi-picker-container-font-size);
89546
89529
  text-align: initial;
89547
- font-size: 1rem;
89548
89530
  display: contents;
89549
89531
  }
89550
89532
 
@@ -90362,6 +90344,9 @@ const PickerInputPseudoClasses = [":focus", ":focus-visible", ":read-only", ":di
90362
90344
  // picker_custom.jsx: a variable on the root inherits into everything the popup
90363
90345
  // holds, and the pickers in there would read it as their own.
90364
90346
  const PickerStyleCSSVars = {
90347
+ // Onto the trigger's frame rather than the root, which holds the popup too
90348
+ // (see --picker-font-weight).
90349
+ "fontWeight": "--picker-font-weight",
90365
90350
  "outlineWidth": "--picker-outline-width",
90366
90351
  "borderWidth": "--picker-border-width",
90367
90352
  "borderRadius": "--picker-border-radius",