@rvx/ui 0.3.3 → 0.3.5

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.
Files changed (51) hide show
  1. package/dist/common/id-pairs.d.ts +11 -0
  2. package/dist/common/id-pairs.d.ts.map +1 -0
  3. package/dist/common/id-pairs.js +19 -0
  4. package/dist/common/id-pairs.js.map +1 -0
  5. package/dist/components/checkbox.d.ts.map +1 -1
  6. package/dist/components/checkbox.js +3 -1
  7. package/dist/components/checkbox.js.map +1 -1
  8. package/dist/components/dialog.d.ts.map +1 -1
  9. package/dist/components/dialog.js +3 -3
  10. package/dist/components/dialog.js.map +1 -1
  11. package/dist/components/dropdown-input.d.ts +2 -1
  12. package/dist/components/dropdown-input.d.ts.map +1 -1
  13. package/dist/components/dropdown-input.js +4 -2
  14. package/dist/components/dropdown-input.js.map +1 -1
  15. package/dist/components/dropdown.d.ts +2 -1
  16. package/dist/components/dropdown.d.ts.map +1 -1
  17. package/dist/components/dropdown.js +1 -1
  18. package/dist/components/dropdown.js.map +1 -1
  19. package/dist/components/label.d.ts +0 -6
  20. package/dist/components/label.d.ts.map +1 -1
  21. package/dist/components/label.js +4 -8
  22. package/dist/components/label.js.map +1 -1
  23. package/dist/components/popover.d.ts +2 -1
  24. package/dist/components/popover.d.ts.map +1 -1
  25. package/dist/components/popover.js +1 -1
  26. package/dist/components/popover.js.map +1 -1
  27. package/dist/components/radio-buttons.d.ts.map +1 -1
  28. package/dist/components/radio-buttons.js +2 -0
  29. package/dist/components/radio-buttons.js.map +1 -1
  30. package/dist/components/slider.d.ts.map +1 -1
  31. package/dist/components/slider.js +3 -1
  32. package/dist/components/slider.js.map +1 -1
  33. package/dist/components/text-input.d.ts.map +1 -1
  34. package/dist/components/text-input.js +3 -1
  35. package/dist/components/text-input.js.map +1 -1
  36. package/dist/index.d.ts +1 -0
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +1 -0
  39. package/dist/index.js.map +1 -1
  40. package/package.json +1 -1
  41. package/src/common/id-pairs.tsx +25 -0
  42. package/src/components/checkbox.tsx +3 -1
  43. package/src/components/dialog.tsx +3 -3
  44. package/src/components/dropdown-input.tsx +6 -2
  45. package/src/components/dropdown.tsx +3 -1
  46. package/src/components/label.tsx +4 -16
  47. package/src/components/popover.tsx +4 -2
  48. package/src/components/radio-buttons.tsx +2 -0
  49. package/src/components/slider.tsx +3 -1
  50. package/src/components/text-input.tsx +3 -2
  51. package/src/index.tsx +1 -0
@@ -0,0 +1,11 @@
1
+ import { Content, Context } from "rvx";
2
+ export declare class IdPair {
3
+ #private;
4
+ prefix(): string;
5
+ consume(): string | undefined;
6
+ }
7
+ export declare const ID_PAIR: Context<IdPair>;
8
+ export declare function PairId(props: {
9
+ children?: (id: string | undefined) => Content;
10
+ }): Content;
11
+ //# sourceMappingURL=id-pairs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id-pairs.d.ts","sourceRoot":"","sources":["../../src/common/id-pairs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAY,MAAM,KAAK,CAAC;AAEjD,qBAAa,MAAM;;IAGlB,MAAM;IAKN,OAAO,IAAI,MAAM,GAAG,SAAS;CAK7B;AAED,eAAO,MAAM,OAAO,iBAA4B,CAAC;AAEjD,wBAAgB,MAAM,CAAC,KAAK,EAAE;IAC7B,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,KAAK,OAAO,CAAC;CAC/C,GAAG,OAAO,CAGV"}
@@ -0,0 +1,19 @@
1
+ import { Context, uniqueId } from "rvx";
2
+ export class IdPair {
3
+ #prefix;
4
+ prefix() {
5
+ this.#prefix = uniqueId();
6
+ return this.#prefix;
7
+ }
8
+ consume() {
9
+ const value = this.#prefix;
10
+ this.#prefix = undefined;
11
+ return value;
12
+ }
13
+ }
14
+ export const ID_PAIR = new Context(new IdPair());
15
+ export function PairId(props) {
16
+ const id = ID_PAIR.current.consume();
17
+ return props.children?.(id);
18
+ }
19
+ //# sourceMappingURL=id-pairs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id-pairs.js","sourceRoot":"","sources":["../../src/common/id-pairs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAEjD,MAAM,OAAO,MAAM;IAClB,OAAO,CAAqB;IAE5B,MAAM;QACL,IAAI,CAAC,OAAO,GAAG,QAAQ,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,OAAO;QACN,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,OAAO,KAAK,CAAC;IACd,CAAC;CACD;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;AAEjD,MAAM,UAAU,MAAM,CAAC,KAEtB;IACA,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACrC,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;AAC7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../src/components/checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAe,UAAU,EAAmB,MAAM,KAAK,CAAC;AAQvF,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAC/B,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE1C,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE3C,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CA4CV"}
1
+ {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../src/components/checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAe,UAAU,EAAmB,MAAM,KAAK,CAAC;AASvF,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAC/B,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE1C,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE3C,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CA6CV"}
@@ -2,11 +2,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "rvx/jsx-runtime";
2
2
  import { get, Signal, uniqueId, watch } from "rvx";
3
3
  import { isPending } from "rvx/async";
4
4
  import { optionalString, string } from "rvx/convert";
5
+ import { ID_PAIR } from "../common/id-pairs.js";
5
6
  import { THEME } from "../common/theme.js";
6
7
  import { Text } from "./text.js";
7
8
  import { closestValidator } from "./validation.js";
8
9
  export function Checkbox(props) {
9
- const id = uniqueId();
10
+ const pairId = ID_PAIR.current.consume();
11
+ const id = props.children === undefined ? pairId : uniqueId();
10
12
  const theme = THEME.current;
11
13
  const disabled = props.checked instanceof Signal
12
14
  ? () => isPending() || get(props.disabled)
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../src/components/checkbox.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA0B,GAAG,EAAE,MAAM,EAAc,QAAQ,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,UAAU,QAAQ,CAAC,KASxB;IACA,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;IACtB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAE5B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,YAAY,MAAM;QAC/C,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC1C,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;IAEd,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,YAAY,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEhG,MAAM,KAAK,GAAG,gBACb,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,KAAK,EAAE,cAAc,cAClB,GAAG,EAAE;YACd,IAAI,KAAK,CAAC,OAAO,YAAY,MAAM,EAAE,CAAC;gBACrC,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;YACrC,CAAC;QACF,CAAC,mBACc,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,MAAM,CAAC,CAAC,kBAC3C,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,uBACpD,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAC/D,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,QAAQ,EAAE,QAAQ,GACG,CAAC;IAEvB,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QAC9B,KAAK,CAAC,aAAa,GAAG,OAAO,KAAK,SAAS,CAAC;QAC5C,KAAK,CAAC,OAAO,GAAG,OAAO,KAAK,IAAI,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,OAAO,iBACN,GAAG,EAAE,EAAE,EACP,KAAK,EAAE;YACN,KAAK,EAAE,cAAc;YACrB,KAAK,CAAC,KAAK;SACX,EACD,KAAK,EAAE,KAAK,CAAC,KAAK,aAEjB,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,cAAK,KAAK,EAAE,KAAK,CAAC,gBAAgB,YAAG,KAAK,GAAO,CAAC,CAAC,CAAC,KAAK,EACpF,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,EAAE,gBAAgB,YAClC,KAAK,CAAC,QAAQ,GACT,IACA,CAAC;AACV,CAAC"}
1
+ {"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../src/components/checkbox.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA0B,GAAG,EAAE,MAAM,EAAc,QAAQ,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,UAAU,QAAQ,CAAC,KASxB;IACA,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACzC,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC9D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAE5B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,YAAY,MAAM;QAC/C,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC1C,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;IAEd,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,YAAY,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEhG,MAAM,KAAK,GAAG,gBACb,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,KAAK,EAAE,cAAc,cAClB,GAAG,EAAE;YACd,IAAI,KAAK,CAAC,OAAO,YAAY,MAAM,EAAE,CAAC;gBACrC,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;YACrC,CAAC;QACF,CAAC,mBACc,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,MAAM,CAAC,CAAC,kBAC3C,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,uBACpD,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAC/D,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,QAAQ,EAAE,QAAQ,GACG,CAAC;IAEvB,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QAC9B,KAAK,CAAC,aAAa,GAAG,OAAO,KAAK,SAAS,CAAC;QAC5C,KAAK,CAAC,OAAO,GAAG,OAAO,KAAK,IAAI,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,OAAO,iBACN,GAAG,EAAE,EAAE,EACP,KAAK,EAAE;YACN,KAAK,EAAE,cAAc;YACrB,KAAK,CAAC,KAAK;SACX,EACD,KAAK,EAAE,KAAK,CAAC,KAAK,aAEjB,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,cAAK,KAAK,EAAE,KAAK,CAAC,gBAAgB,YAAG,KAAK,GAAO,CAAC,CAAC,CAAC,KAAK,EACpF,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,EAAE,gBAAgB,YAClC,KAAK,CAAC,QAAQ,GACT,IACA,CAAC;AACV,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../src/components/dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAkB,UAAU,EAAE,OAAO,EAAW,KAAK,EAAE,UAAU,EAAe,UAAU,EAAsB,MAAM,KAAK,CAAC;AAEnI,OAAO,EAAE,MAAM,EAA0D,MAAM,aAAa,CAAC;AAI7F,qBAAa,gBAAiB,SAAQ,KAAK;CAAI;AAE/C,MAAM,WAAW,MAAM,CAAC,CAAC;IACxB,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC5B,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;AAE3D,MAAM,WAAW,aAAa;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,cAAc,sDAA6D,CAAC;AAEzF,wBAAgB,UAAU,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,CA2C7F;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC;AAElD,wBAAgB,UAAU,CAAC,KAAK,EAAE;IACjC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,UAAU,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE3C,iBAAiB,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACnD,kBAAkB,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACpD,GAAG,OAAO,CAwDV;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,WAEzF;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE;IACnC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAoBV"}
1
+ {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../src/components/dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAkB,UAAU,EAAE,OAAO,EAAW,KAAK,EAAE,UAAU,EAAe,UAAU,EAAsB,MAAM,KAAK,CAAC;AAGnI,OAAO,EAAE,MAAM,EAA0D,MAAM,aAAa,CAAC;AAG7F,qBAAa,gBAAiB,SAAQ,KAAK;CAAI;AAE/C,MAAM,WAAW,MAAM,CAAC,CAAC;IACxB,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC5B,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;AAE3D,MAAM,WAAW,aAAa;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,cAAc,sDAA6D,CAAC;AAEzF,wBAAgB,UAAU,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,CA2C7F;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC;AAElD,wBAAgB,UAAU,CAAC,KAAK,EAAE;IACjC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,UAAU,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE3C,iBAAiB,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACnD,kBAAkB,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACpD,GAAG,OAAO,CAwDV;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,WAEzF;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE;IACnC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAoBV"}
@@ -1,9 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "rvx/jsx-runtime";
2
2
  import { $, captureSelf, Context, Emitter, map, render, teardown, uniqueId } from "rvx";
3
3
  import { TASKS, Tasks, useMicrotask } from "rvx/async";
4
+ import { inOverlayContext } from "../common/context.js";
4
5
  import { Column, FlexSpace, Group, Heading, Row, Separated, Text, THEME } from "../index.js";
5
6
  import { LAYER, Layer } from "./layer.js";
6
- import { inOverlayContext } from "../common/context.js";
7
7
  export class DialogAbortError extends Error {
8
8
  }
9
9
  export const DIALOG_FADEOUT = new Context();
@@ -23,12 +23,12 @@ export function showDialog(init, options) {
23
23
  },
24
24
  reject(reason) {
25
25
  dispose();
26
- reject(reason);
26
+ reject(reason ?? new DialogAbortError());
27
27
  },
28
28
  };
29
29
  if (options?.cancellable ?? true) {
30
30
  LAYER.current.useHotkey("escape", () => {
31
- dialog.reject(new DialogAbortError());
31
+ dialog.reject();
32
32
  });
33
33
  }
34
34
  return init(dialog);
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../src/components/dialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../src/components/dialog.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ClassValue, Expression, StyleValue } from "rvx";
1
+ import { ClassValue, Expression, StyleValue, View } from "rvx";
2
2
  import { ButtonVariant } from "./button.js";
3
3
  import { PopoutAlignment, PopoutPlacement } from "./popout.js";
4
4
  export interface DropdownValue<T> {
@@ -21,6 +21,7 @@ export declare function DropdownInput<T>(props: {
21
21
  dropdownId?: string;
22
22
  dropdownClass?: ClassValue;
23
23
  dropdownStyle?: StyleValue;
24
+ anchorRect?: Expression<View | undefined>;
24
25
  placement?: Expression<PopoutPlacement | undefined>;
25
26
  alignment?: Expression<PopoutAlignment | undefined>;
26
27
  foreignEvents?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-input.d.ts","sourceRoot":"","sources":["../../src/components/dropdown-input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAoB,UAAU,EAAE,MAAM,KAAK,CAAC;AAC3E,OAAO,EAAU,aAAa,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG/D,MAAM,WAAW,aAAa,CAAC,CAAC;IAC/B,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,OAAO,CAAC;CACf;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEvC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE3C,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,SAAS,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC5C,KAAK,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9C,iBAAiB,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEnD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IACpD,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IACpD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,GAAG,OAAO,CA+CV"}
1
+ {"version":3,"file":"dropdown-input.d.ts","sourceRoot":"","sources":["../../src/components/dropdown-input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAoB,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAEjF,OAAO,EAAU,aAAa,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG/D,MAAM,WAAW,aAAa,CAAC,CAAC;IAC/B,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,OAAO,CAAC;CACf;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEvC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE3C,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,SAAS,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC5C,KAAK,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9C,iBAAiB,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEnD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,UAAU,CAAC,EAAE,UAAU,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;IAC1C,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IACpD,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IACpD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,GAAG,OAAO,CAiDV"}
@@ -1,14 +1,16 @@
1
1
  import { jsx as _jsx } from "rvx/jsx-runtime";
2
2
  import { get, map, Signal } from "rvx";
3
+ import { ID_PAIR } from "../common/id-pairs.js";
3
4
  import { Button } from "./button.js";
4
5
  import { Dropdown } from "./dropdown.js";
5
6
  import { closestValidator } from "./validation.js";
6
7
  export function DropdownInput(props) {
8
+ const id = props.id ?? ID_PAIR.current.consume();
7
9
  const items = new WeakMap();
8
- return _jsx(Dropdown, { anchor: a => _jsx(Button, { ...a, variant: map(props.variant, v => v ?? "input"), disabled: props.value instanceof Signal ? props.disabled : true, class: props.class, style: props.style, id: props.id, autofocus: props.autofocus, title: props.title, role: "combobox", "aria-label": props["aria-label"], "aria-labelledby": props["aria-labelledby"], validator: props.value instanceof Signal ? closestValidator(props.value) : undefined, children: props.children ?? (() => {
10
+ return _jsx(Dropdown, { anchor: a => _jsx(Button, { ...a, variant: map(props.variant, v => v ?? "input"), disabled: props.value instanceof Signal ? props.disabled : true, class: props.class, style: props.style, id: id, autofocus: props.autofocus, title: props.title, role: "combobox", "aria-label": props["aria-label"], "aria-labelledby": props["aria-labelledby"], validator: props.value instanceof Signal ? closestValidator(props.value) : undefined, children: props.children ?? (() => {
9
11
  const value = get(props.value);
10
12
  return get(props.values).find(v => v.value === value)?.label;
11
- }) }), items: () => get(props.values).map(value => {
13
+ }) }), anchorRect: props.anchorRect, items: () => get(props.values).map(value => {
12
14
  let item = items.get(value);
13
15
  if (item === undefined) {
14
16
  item = {
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-input.js","sourceRoot":"","sources":["../../src/components/dropdown-input.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA0B,GAAG,EAAE,GAAG,EAAE,MAAM,EAAc,MAAM,KAAK,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAiB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAgB,MAAM,eAAe,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAOnD,MAAM,UAAU,aAAa,CAAI,KAsBhC;IACA,MAAM,KAAK,GAAG,IAAI,OAAO,EAAkC,CAAC;IAC5D,OAAO,KAAC,QAAQ,IACf,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,KAAC,MAAM,OACf,CAAC,EACL,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,EAC9C,QAAQ,EAAE,KAAK,CAAC,KAAK,YAAY,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAC/D,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,IAAI,EAAC,UAAU,gBACH,KAAK,CAAC,YAAY,CAAC,qBACd,KAAK,CAAC,iBAAiB,CAAC,EACzC,SAAS,EAAE,KAAK,CAAC,KAAK,YAAY,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,YAEnF,KAAK,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE;gBACxB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC/B,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,KAAK,CAAC;YAC9D,CAAC,CAAC,GACM,EACT,KAAK,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAe,KAAK,CAAC,EAAE;YACxD,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC5B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,GAAG;oBACN,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;oBAChD,MAAM,EAAE,GAAG,EAAE;wBACZ,IAAI,KAAK,CAAC,KAAK,YAAY,MAAM,EAAE,CAAC;4BACnC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;wBACjC,CAAC;6BAAM,CAAC;4BACP,OAAO,KAAK,CAAC;wBACd,CAAC;oBACF,CAAC;iBACD,CAAC;gBACF,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACxB,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC,CAAC,EACF,EAAE,EAAE,KAAK,CAAC,UAAU,EACpB,KAAK,EAAE,KAAK,CAAC,aAAa,EAC1B,KAAK,EAAE,KAAK,CAAC,aAAa,EAC1B,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,aAAa,EAAE,KAAK,CAAC,aAAa,GACjC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"dropdown-input.js","sourceRoot":"","sources":["../../src/components/dropdown-input.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ClassValue, Expression, StyleValue } from "rvx";
1
+ import { ClassValue, Expression, StyleValue, View } from "rvx";
2
2
  import { Action } from "../common/events.js";
3
3
  import { Popout, PopoutAlignment, PopoutPlacement } from "./popout.js";
4
4
  export interface DropdownItem {
@@ -82,6 +82,7 @@ export declare function Dropdown(props: {
82
82
  * A function to immediately render the anchor.
83
83
  */
84
84
  anchor: (props: DropdownAnchorProps) => unknown;
85
+ anchorRect?: Expression<View | undefined>;
85
86
  /**
86
87
  * The items contained in this dropdown.
87
88
  *
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown.d.ts","sourceRoot":"","sources":["../../src/components/dropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAK,UAAU,EAAE,UAAU,EAA+B,UAAU,EAAyB,MAAM,KAAK,CAAC;AAEhH,OAAO,EAAE,MAAM,EAAqF,MAAM,qBAAqB,CAAC;AAGhI,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,WAAW,YAAY;IAC5B;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACrC;;;;OAIG;IACH,KAAK,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IAElC;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,mCAAmC;IACnC,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,oCAAoC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,qCAAqC;IACrC,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IAEpD;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IAEpD;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,GAAG,MAAM,CA4KT;AAED,MAAM,WAAW,mBAAmB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAChD,eAAe,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAChD,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;CACrC;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAC/B;;OAEG;IACH,MAAM,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC;IAEhD;;;;OAIG;IACH,KAAK,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IAElC,mCAAmC;IACnC,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,oCAAoC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,qCAAqC;IACrC,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IAEpD;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IAEpD;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,GAAG,OAAO,CAwBV"}
1
+ {"version":3,"file":"dropdown.d.ts","sourceRoot":"","sources":["../../src/components/dropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAK,UAAU,EAAE,UAAU,EAA+B,UAAU,EAAY,IAAI,EAAS,MAAM,KAAK,CAAC;AAEhH,OAAO,EAAE,MAAM,EAAqF,MAAM,qBAAqB,CAAC;AAGhI,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,WAAW,YAAY;IAC5B;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACrC;;;;OAIG;IACH,KAAK,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IAElC;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,mCAAmC;IACnC,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,oCAAoC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,qCAAqC;IACrC,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IAEpD;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IAEpD;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,GAAG,MAAM,CA4KT;AAED,MAAM,WAAW,mBAAmB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAChD,eAAe,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAChD,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;CACrC;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAC/B;;OAEG;IACH,MAAM,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC;IAEhD,UAAU,CAAC,EAAE,UAAU,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;IAE1C;;;;OAIG;IACH,KAAK,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IAElC,mCAAmC;IACnC,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,oCAAoC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,qCAAqC;IACrC,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IAEpD;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC,eAAe,GAAG,SAAS,CAAC,CAAC;IAEpD;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,GAAG,OAAO,CAwBV"}
@@ -159,7 +159,7 @@ export function Dropdown(props) {
159
159
  });
160
160
  const anchor = render(props.anchor({
161
161
  action: event => {
162
- dropdown.toggle(anchor, event);
162
+ dropdown.toggle(get(props.anchorRect) ?? anchor, event);
163
163
  },
164
164
  "aria-haspopup": "listbox",
165
165
  "aria-controls": () => dropdown.visible ? get(id) : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../src/components/dropdown.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,CAAC,EAA0B,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAc,QAAQ,EAAQ,KAAK,EAAE,MAAM,KAAK,CAAC;AAChH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAU,wBAAwB,EAAE,iBAAiB,EAAE,KAAK,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAChI,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,EAAoC,MAAM,aAAa,CAAC;AA8BvE,MAAM,UAAU,cAAc,CAAC,KAkD9B;IACA,OAAO,IAAI,MAAM,CAAC;QACjB,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,WAAW,CAAC;QACtD,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC;QAClD,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;YAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAQ,CAAC;YAE7B,MAAM,UAAU,GAAG,CAAC,CAA2B,SAAS,CAAC,CAAC;YAC1D,MAAM,SAAS,GAAG,IAAI,OAAO,EAKzB,CAAC;YAEL,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAChC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;gBACpB,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC;gBACjC,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBACvD,UAAU,CAAC,KAAK,GAAG,SAAS,CAAC;gBAC9B,CAAC;YACF,CAAC,CAAC,CAAC;YAEH,MAAM,cAAc,GAAG,GAAG,EAAE;gBAC3B,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC;gBAChC,IAAI,MAAM,EAAE,CAAC;oBACZ,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;gBACrF,CAAC;YACF,CAAC,CAAC;YAEF,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE;gBACjC,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC;gBACjC,IAAI,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;oBAC5B,MAAM,CAAC,IAAI,EAAE,CAAC;gBACf,CAAC;qBAAM,IAAI,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC;oBACtC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;wBACrB,MAAM,CAAC,IAAI,EAAE,CAAC;oBACf,CAAC;yBAAM,CAAC;wBACP,OAAO;oBACR,CAAC;gBACF,CAAC;qBAAM,IAAI,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC;oBACtC,UAAU,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;oBACzH,cAAc,EAAE,CAAC;gBAClB,CAAC;qBAAM,IAAI,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;oBACpC,MAAM,KAAK,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC/E,UAAU,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC7E,cAAc,EAAE,CAAC;gBAClB,CAAC;qBAAM,IAAI,KAAK,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC;oBACvC,IAAI,OAAO,EAAE,CAAC;wBACb,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;wBACxC,IAAI,QAAQ,EAAE,QAAQ,EAAE,CAAC;4BACxB,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;4BAC7C,KAAK,CAAC,wBAAwB,EAAE,CAAC;4BACjC,KAAK,CAAC,cAAc,EAAE,CAAC;wBACxB,CAAC;oBACF,CAAC;gBACF,CAAC;qBAAM,IAAI,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;oBAClC,IAAI,OAAO,EAAE,MAAM,IAAI,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;wBACjE,MAAM,CAAC,IAAI,EAAE,CAAC;oBACf,CAAC;yBAAM,IAAI,OAAO,EAAE,CAAC;wBACpB,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;wBACxC,IAAI,QAAQ,EAAE,QAAQ,EAAE,CAAC;4BACxB,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;4BAC7C,KAAK,CAAC,wBAAwB,EAAE,CAAC;4BACjC,KAAK,CAAC,cAAc,EAAE,CAAC;wBACxB,CAAC;oBACF,CAAC;gBACF,CAAC;gBACD,KAAK,CAAC,wBAAwB,EAAE,CAAC;gBACjC,KAAK,CAAC,cAAc,EAAE,CAAC;YACxB,CAAC,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,cAAK,KAAK,EAAE;oBAC3B,KAAK,EAAE,gBAAgB;iBACvB,YACA,KAAC,GAAG,IAAC,IAAI,EAAE,KAAK,YACd,IAAI,CAAC,EAAE;wBACP,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;wBAEtB,IAAI,UAA8B,CAAC;wBACnC,IAAI,QAA4B,CAAC;wBACjC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;4BACnB,UAAU,GAAG,QAAQ,EAAE,CAAC;4BACxB,QAAQ,GAAG,cAAc,CAAC;gCACzB,SAAS,EAAE,GAAG,EAAE;oCACf,MAAM,eAAe,GAAG,GAAG,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;oCAClD,IAAI,eAAe,KAAK,WAAW,IAAI,eAAe,KAAK,aAAa,EAAE,CAAC;wCAC1E,OAAO,YAAY,CAAC;oCACrB,CAAC;oCACD,OAAO,eAAe,IAAI,YAAY,CAAC;gCACxC,CAAC;gCACD,SAAS,EAAE,KAAK,CAAC,SAAS;gCAC1B,KAAK,EAAE,IAAI,CAAC,QAAQ;gCACpB,SAAS,EAAE,IAAI;gCACf,aAAa,EAAE,KAAK,CAAC,aAAa;gCAClC,KAAK,EAAE,KAAK,CAAC,KAAK;gCAClB,KAAK,EAAE,KAAK,CAAC,KAAK;6BAClB,CAAC,CAAC;wBACJ,CAAC;wBAED,MAAM,IAAI,GAAG,cACZ,EAAE,EAAE,EAAE,EACN,KAAK,EAAE;gCACN,KAAK,EAAE,aAAa;gCACpB,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,EAAE,oBAAoB;6BAC9D,EACD,IAAI,EAAC,QAAQ,mBACE,IAAI,CAAC,QAAQ,mBACb,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,mBAChC,GAAG,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,mBAChD,cAAc,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,cAC5C,KAAK,CAAC,EAAE;gCACjB,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC;gCACxB,IAAI,IAAI,CAAC,MAAM,IAAI,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;oCAC1D,MAAM,CAAC,IAAI,EAAE,CAAC;gCACf,CAAC;qCAAM,IAAI,QAAQ,EAAE,CAAC;oCACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oCAC3B,KAAK,CAAC,wBAAwB,EAAE,CAAC;oCACjC,KAAK,CAAC,cAAc,EAAE,CAAC;gCACxB,CAAC;4BACF,CAAC,mBACc,KAAK,CAAC,EAAE;gCACtB,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC;gCACxB,6BAA6B,CAAC,KAAK,EAAE,GAAG,EAAE;oCACzC,KAAK,CAAC,MAAM,EAAE,aAAa,CAAC,wBAAwB,EAAE,CAAC,CAAC;oCACxD,IAAI,UAAU,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;wCAC/B,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oCAC7B,CAAC;gCACF,CAAC,CAAC,CAAC;4BACJ,CAAC,YAEA,IAAI,CAAC,KAAK,GACS,CAAC;wBACtB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;wBAC1B,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;wBAClD,OAAO,IAAI,CAAC;oBACb,CAAC,GACI,GACD,CAAC;YAEP,MAAM,IAAI,GAAG,cACZ,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,KAAK,EAAE;oBACN,KAAK,CAAC,KAAK;oBACX,KAAK,EAAE,QAAQ;oBACf,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,EAAE,kBAAkB,CAAC;iBACzD,EACD,IAAI,EAAC,SAAS,EACd,QAAQ,EAAC,GAAG,2BACW,GAAG,EAAE;oBAC3B,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC;oBAC9B,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACjE,CAAC,cACS,GAAG,EAAE;oBACd,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;wBACvB,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;wBAC7B,UAAU,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;oBAC/E,CAAC;gBACF,CAAC,YAED,cAAK,KAAK,EAAE,KAAK,EAAE,oBAAoB,YACrC,OAAO,GACH,GACc,CAAC;YACtB,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;QACb,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,QAAQ,CAAC,KAgDxB;IACA,MAAM,SAAS,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;IAE9C,MAAM,QAAQ,GAAG,cAAc,CAAC;QAC/B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,EAAE;QACF,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;KAClC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAClC,MAAM,EAAE,KAAK,CAAC,EAAE;YACf,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAChC,CAAC;QACD,eAAe,EAAE,SAAS;QAC1B,eAAe,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;QAC7D,eAAe,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO;KACvC,CAAC,CAAC,CAAC;IAEJ,OAAO,MAAM,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../src/components/dropdown.tsx"],"names":[],"mappings":"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"}
@@ -6,10 +6,4 @@ export declare function Label(props: {
6
6
  id?: Expression<string | undefined>;
7
7
  children?: unknown;
8
8
  }): unknown;
9
- export declare function LabelFor(props: {
10
- class?: ClassValue;
11
- style?: StyleValue;
12
- label: unknown;
13
- children: (id: string) => unknown;
14
- }): unknown;
15
9
  //# sourceMappingURL=label.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../src/components/label.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAY,MAAM,KAAK,CAAC;AAInE,wBAAgB,KAAK,CAAC,KAAK,EAAE;IAC5B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,GAAG,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACrC,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAaV;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAC/B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;CAClC,GAAG,OAAO,CAMV"}
1
+ {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../src/components/label.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAIzD,wBAAgB,KAAK,CAAC,KAAK,EAAE;IAC5B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,GAAG,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACrC,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAcV"}
@@ -1,16 +1,12 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "rvx/jsx-runtime";
2
- import { uniqueId } from "rvx";
1
+ import { jsx as _jsx } from "rvx/jsx-runtime";
2
+ import { ID_PAIR } from "../common/id-pairs.js";
3
3
  import { THEME } from "../common/theme.js";
4
- import { Group } from "./column.js";
5
4
  export function Label(props) {
6
5
  const theme = THEME.current;
6
+ const idFor = props.for ?? ID_PAIR.current.prefix();
7
7
  return _jsx("label", { class: [
8
8
  theme?.label,
9
9
  props.class,
10
- ], style: props.style, for: props.for, id: props.id, children: props.children });
11
- }
12
- export function LabelFor(props) {
13
- const id = uniqueId();
14
- return _jsxs(Group, { children: [_jsx(Label, { class: props.class, style: props.style, for: id, children: props.label }), props.children(id)] });
10
+ ], style: props.style, for: idFor, id: props.id, children: props.children });
15
11
  }
16
12
  //# sourceMappingURL=label.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"label.js","sourceRoot":"","sources":["../../src/components/label.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAsC,QAAQ,EAAE,MAAM,KAAK,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,MAAM,UAAU,KAAK,CAAC,KAMrB;IACA,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,OAAO,gBACN,KAAK,EAAE;YACN,KAAK,EAAE,KAAK;YACZ,KAAK,CAAC,KAAK;SACX,EACD,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,EAAE,EAAE,KAAK,CAAC,EAAE,YAEX,KAAK,CAAC,QAAQ,GACR,CAAC;AACV,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAKxB;IACA,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;IACtB,OAAO,MAAC,KAAK,eACZ,KAAC,KAAK,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,YAAG,KAAK,CAAC,KAAK,GAAS,EAC5E,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,IACZ,CAAC;AACV,CAAC"}
1
+ {"version":3,"file":"label.js","sourceRoot":"","sources":["../../src/components/label.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,MAAM,UAAU,KAAK,CAAC,KAMrB;IACA,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IACpD,OAAO,gBACN,KAAK,EAAE;YACN,KAAK,EAAE,KAAK;YACZ,KAAK,CAAC,KAAK;SACX,EACD,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,GAAG,EAAE,KAAK,EACV,EAAE,EAAE,KAAK,CAAC,EAAE,YAEX,KAAK,CAAC,QAAQ,GACR,CAAC;AACV,CAAC"}
@@ -1,4 +1,4 @@
1
- import { ClassValue, Expression, StyleValue } from "rvx";
1
+ import { ClassValue, Expression, StyleValue, View } from "rvx";
2
2
  import { Action } from "../common/events.js";
3
3
  import { DialogRole } from "./dialog.js";
4
4
  import { Popout, PopoutAlignment, PopoutPlacement } from "./popout.js";
@@ -71,6 +71,7 @@ export declare function Popover(props: {
71
71
  * A function to immediately render the anchor.
72
72
  */
73
73
  anchor: (props: PopoverAnchorProps) => unknown;
74
+ anchorRect?: Expression<View | undefined>;
74
75
  /**
75
76
  * The anchor id.
76
77
  *
@@ -1 +1 @@
1
- {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../src/components/popover.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../src/components/popover.tsx"],"names":[],"mappings":"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"}
@@ -92,7 +92,7 @@ export function Popover(props) {
92
92
  });
93
93
  const anchor = render(props.anchor({
94
94
  action: event => {
95
- popover.toggle(anchor, event);
95
+ popover.toggle(get(props.anchorRect) ?? anchor, event);
96
96
  },
97
97
  id,
98
98
  "aria-label": props["aria-label"],
@@ -1 +1 @@
1
- {"version":3,"file":"popover.js","sourceRoot":"","sources":["../../src/components/popover.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,CAAC,EAA0B,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAc,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC;AAEnH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,2BAA2B,CAAC;AAElF,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,EAAoC,MAAM,aAAa,CAAC;AAavE,MAAM,UAAU,aAAa,CAAC,KAsD7B;IACA,OAAO,IAAI,MAAM,CAAC;QACjB,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC;QAClD,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC;QACnD,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,EAAE,EAAE;YACjE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;YAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAQ,CAAC;YAC7B,MAAM,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;YAE7B,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE;gBAC9B,MAAM,CAAC,IAAI,EAAE,CAAC;YACf,CAAC,CAAC,CAAC;YAEH,WAAW,CAAC,IAAI,CAAC,EAAE;gBAClB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,qBAAqB,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3F,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;gBAC5B,IAAI,SAAS,EAAE,CAAC;oBACf,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;oBAC3D,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;oBAC9D,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;oBACzH,MAAM,MAAM,GAAG,4CAA4C,SAAS,OAAO,OAAO,CAAC,WAAW,EAAE,UAAU,CAAC,wCAAwC,CAAC;oBACpJ,QAAQ,YAAY,EAAE,CAAC;wBACtB,KAAK,IAAI;4BACR,cAAc,CAAC,KAAK,GAAG,aAAa,MAAM,QAAQ,CAAC;4BACnD,MAAM;wBACP,KAAK,EAAE;4BACN,cAAc,CAAC,KAAK,GAAG,aAAa,MAAM,KAAK,WAAW,CAAC,MAAM,oBAAoB,CAAC;4BACtF,MAAM;wBACP,KAAK,KAAK;4BACT,cAAc,CAAC,KAAK,GAAG,kBAAkB,MAAM,kBAAkB,CAAC;4BAClE,MAAM;wBACP,KAAK,IAAI;4BACR,cAAc,CAAC,KAAK,GAAG,aAAa,WAAW,CAAC,KAAK,OAAO,MAAM,iBAAiB,CAAC;4BACpF,MAAM;oBACR,CAAC;gBACF,CAAC;YACF,CAAC,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,cAAK,KAAK,EAAE,KAAK,EAAE,kBAAkB,YACtD,cAAK,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,YACrE,KAAC,MAAM,IAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,YAChC,GAAG,EAAE;4BACL,OAAO,cAAK,OAAO,EAAC,WAAW,EAAC,mBAAmB,EAAC,MAAM,YACzD,eAAM,CAAC,EAAC,qBAAqB,GAAG,GAC3B,CAAC;wBACR,CAAC,GACO,GACJ,GACc,CAAC;YAEtB,MAAM,OAAO,GAAG,cAAK,KAAK,EAAE;oBAC3B,KAAK,EAAE,MAAM;oBACb,KAAK,EAAE,cAAc;oBACrB,KAAK,EAAE,eAAe;oBACtB,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;iBAC3D,YACC,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,GACN,CAAC;YACtB,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAE1B,MAAM,IAAI,GAAG,eACZ,QAAQ,EAAC,IAAI,EACb,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC,EACzC,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,KAAK,EAAE;oBACN,KAAK,EAAE,OAAO;oBACd,KAAK,CAAC,KAAK;iBACX,EACD,KAAK,EAAE;oBACN,KAAK,CAAC,KAAK;oBACX;wBACC,aAAa,EAAE,KAAK,CAAC,UAAU;wBAC/B,iBAAiB,EAAE,KAAK,CAAC,aAAa;wBACtC,YAAY,EAAE,KAAK,CAAC,SAAS;wBAC7B,gBAAgB,EAAE,KAAK,CAAC,YAAY;qBACpC;iBACD,gBACW,KAAK,CAAC,YAAY,CAAC,qBACd,KAAK,CAAC,iBAAiB,CAAC,sBACvB,KAAK,CAAC,kBAAkB,CAAC,aAE1C,SAAS,EACV,cAAK,KAAK,EAAE,KAAK,EAAE,mBAAmB,YACpC,OAAO,GACH,IACc,CAAC;YACtB,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;QACb,CAAC;QACD,aAAa,EAAE,KAAK,CAAC,aAAa;KAClC,CAAC,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,OAAO,CAAC,KAqFvB;IACA,MAAM,SAAS,GAAG,QAAQ,EAAE,CAAC;IAC7B,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;IAE9C,MAAM,OAAO,GAAG,aAAa,CAAC;QAC7B,OAAO,EAAE,KAAK,CAAC,QAAQ;QACvB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG,EAAE,KAAK,CAAC,GAAG;QAEd,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC;QACjC,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,KAAK,SAAS;YAC/D,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5C,CAAC,CAAC,SAAS,CAAC;QACb,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,CAAC;KAC7C,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAClC,MAAM,EAAE,KAAK,CAAC,EAAE;YACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/B,CAAC;QACD,EAAE;QACF,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC;QACjC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,CAAC;KAC3C,CAAC,CAAC,CAAC;IAEJ,OAAO,MAAM,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"popover.js","sourceRoot":"","sources":["../../src/components/popover.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"radio-buttons.d.ts","sourceRoot":"","sources":["../../src/components/radio-buttons.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAyB,UAAU,EAAY,MAAM,KAAK,CAAC;AAO1F,MAAM,WAAW,WAAW,CAAC,CAAC;IAC7B,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,OAAO,CAAC;CACf;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE;IACtC,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAClC,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEtC,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE3C,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC5C,YAAY,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9C,iBAAiB,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEnD,QAAQ,CAAC,EAAE,KAAK,CAAC;CACjB,GAAG,OAAO,CAuDV"}
1
+ {"version":3,"file":"radio-buttons.d.ts","sourceRoot":"","sources":["../../src/components/radio-buttons.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAyB,UAAU,EAAY,MAAM,KAAK,CAAC;AAQ1F,MAAM,WAAW,WAAW,CAAC,CAAC;IAC7B,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,OAAO,CAAC;CACf;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE;IACtC,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAClC,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEtC,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE3C,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC5C,YAAY,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9C,iBAAiB,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEnD,QAAQ,CAAC,EAAE,KAAK,CAAC;CACjB,GAAG,OAAO,CAwDV"}
@@ -2,10 +2,12 @@ import { jsx as _jsx, jsxs as _jsxs } from "rvx/jsx-runtime";
2
2
  import { For, get, map, Signal, uniqueId } from "rvx";
3
3
  import { isPending } from "rvx/async";
4
4
  import { optionalString, string } from "rvx/convert";
5
+ import { ID_PAIR } from "../common/id-pairs.js";
5
6
  import { THEME } from "../common/theme.js";
6
7
  import { Text } from "./text.js";
7
8
  import { closestValidator } from "./validation.js";
8
9
  export function RadioButtons(props) {
10
+ const id = props.id ?? ID_PAIR.current.consume();
9
11
  const group = uniqueId();
10
12
  const theme = THEME.current;
11
13
  const disabled = props.value instanceof Signal
@@ -1 +1 @@
1
- {"version":3,"file":"radio-buttons.js","sourceRoot":"","sources":["../../src/components/radio-buttons.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA0B,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAc,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1F,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAOnD,MAAM,UAAU,YAAY,CAAI,KAc/B;IACA,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAE5B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,YAAY,MAAM;QAC7C,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC1C,CAAC,CAAC,IAAI,CAAC;IAER,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,YAAY,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE5F,OAAO,cACN,IAAI,EAAC,YAAY,EACjB,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,KAAK,EAAE;YACN,KAAK,EAAE,aAAa;YACpB,KAAK,CAAC,KAAK;SACX,EACD,KAAK,EAAE,KAAK,CAAC,KAAK,mBACH,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,MAAM,CAAC,CAAC,kBAC3C,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,uBACpD,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,gBACnD,KAAK,CAAC,YAAY,CAAC,qBACd,KAAK,CAAC,iBAAiB,CAAC,YAEzC,KAAC,GAAG,IAAC,IAAI,EAAE,KAAK,CAAC,OAAO,YACtB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBAClB,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;gBACtB,MAAM,KAAK,GAAG,gBACb,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,OAAO,EACZ,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAChC,IAAI,EAAE,KAAK,EACX,KAAK,EAAE,EAAE,EACT,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,EAAE,KAAK,CAAC,kBACxC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,cAC7C,GAAG,EAAE;wBACd,IAAI,KAAK,CAAC,KAAK,YAAY,MAAM,EAAE,CAAC;4BACnC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;wBAClC,CAAC;oBACF,CAAC,GACA,CAAC;gBAEH,OAAO,iBACN,GAAG,EAAE,EAAE,EACP,KAAK,EAAE,KAAK,EAAE,kBAAkB,aAE/B,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,cAAK,KAAK,EAAE,KAAK,CAAC,oBAAoB,YAAG,KAAK,GAAO,CAAC,CAAC,CAAC,KAAK,EAC5F,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,EAAE,oBAAoB,YACtC,MAAM,CAAC,KAAK,GACP,IACA,CAAC;YACV,CAAC,GACI,GACD,CAAC;AACR,CAAC"}
1
+ {"version":3,"file":"radio-buttons.js","sourceRoot":"","sources":["../../src/components/radio-buttons.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA0B,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAc,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1F,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAOnD,MAAM,UAAU,YAAY,CAAI,KAc/B;IACA,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACjD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAE5B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,YAAY,MAAM;QAC7C,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC1C,CAAC,CAAC,IAAI,CAAC;IAER,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,YAAY,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE5F,OAAO,cACN,IAAI,EAAC,YAAY,EACjB,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,KAAK,EAAE;YACN,KAAK,EAAE,aAAa;YACpB,KAAK,CAAC,KAAK;SACX,EACD,KAAK,EAAE,KAAK,CAAC,KAAK,mBACH,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,MAAM,CAAC,CAAC,kBAC3C,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,uBACpD,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,gBACnD,KAAK,CAAC,YAAY,CAAC,qBACd,KAAK,CAAC,iBAAiB,CAAC,YAEzC,KAAC,GAAG,IAAC,IAAI,EAAE,KAAK,CAAC,OAAO,YACtB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBAClB,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;gBACtB,MAAM,KAAK,GAAG,gBACb,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,OAAO,EACZ,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAChC,IAAI,EAAE,KAAK,EACX,KAAK,EAAE,EAAE,EACT,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,EAAE,KAAK,CAAC,kBACxC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,cAC7C,GAAG,EAAE;wBACd,IAAI,KAAK,CAAC,KAAK,YAAY,MAAM,EAAE,CAAC;4BACnC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;wBAClC,CAAC;oBACF,CAAC,GACA,CAAC;gBAEH,OAAO,iBACN,GAAG,EAAE,EAAE,EACP,KAAK,EAAE,KAAK,EAAE,kBAAkB,aAE/B,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,cAAK,KAAK,EAAE,KAAK,CAAC,oBAAoB,YAAG,KAAK,GAAO,CAAC,CAAC,CAAC,KAAK,EAC5F,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,EAAE,oBAAoB,YACtC,MAAM,CAAC,KAAK,GACP,IACA,CAAC;YACV,CAAC,GACI,GACD,CAAC;AACR,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../src/components/slider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA+B,MAAM,KAAK,CAAC;AAG9D,wBAAgB,MAAM,CAAC,KAAK,EAAE;IAC7B,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACvC,GAAG,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACrC,GAAG,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,WAgCA;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAS9E"}
1
+ {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../src/components/slider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA+B,MAAM,KAAK,CAAC;AAI9D,wBAAgB,MAAM,CAAC,KAAK,EAAE;IAC7B,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,KAAK,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACvC,GAAG,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACrC,GAAG,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB,WAiCA;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAS9E"}
@@ -1,10 +1,12 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "rvx/jsx-runtime";
2
2
  import { map, Show, Signal, uniqueId } from "rvx";
3
+ import { ID_PAIR } from "../common/id-pairs.js";
3
4
  import { THEME } from "../common/theme.js";
4
5
  export function Slider(props) {
5
6
  const theme = THEME.current;
6
7
  const markerId = uniqueId();
7
- const input = _jsx("input", { id: props.id, type: "range", min: map(props.min, min => min ?? 0), max: map(props.max, max => max ?? 100), step: map(props.step, step => step ?? 1), "prop:value": map(props.value, value => value ?? "0"), "on:input": () => {
8
+ const id = props.id ?? ID_PAIR.current.consume();
9
+ const input = _jsx("input", { id: id, type: "range", min: map(props.min, min => min ?? 0), max: map(props.max, max => max ?? 100), step: map(props.step, step => step ?? 1), "prop:value": map(props.value, value => value ?? "0"), "on:input": () => {
8
10
  if (props.value instanceof Signal) {
9
11
  props.value.value = Number(input.value);
10
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"slider.js","sourceRoot":"","sources":["../../src/components/slider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAc,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,MAAM,UAAU,MAAM,CAAC,KAQtB;IACA,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,MAAM,QAAQ,GAAG,QAAQ,EAAE,CAAC;IAE5B,MAAM,KAAK,GAAG,gBACb,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,IAAI,EAAC,OAAO,EACZ,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EACpC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,EACtC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,gBAC5B,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,CAAC,cACzC,GAAG,EAAE;YACd,IAAI,KAAK,CAAC,KAAK,YAAY,MAAM,EAAE,CAAC;gBACnC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACzC,CAAC;QACF,CAAC,EACD,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAC9C,CAAC;IAEvB,OAAO,eACN,KAAK,EAAE,KAAK,EAAE,WAAW,aAExB,KAAK,EAEN,KAAC,IAAI,IAAC,IAAI,EAAE,KAAK,CAAC,OAAO,YACvB,OAAO,CAAC,EAAE,CAAC,mBAAU,EAAE,EAAE,QAAQ,YAChC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAQ,KAAK,EAAE,MAAM,GAAI,CAAC,GACvC,GACL,EAEN,KAAK,CAAC,QAAQ,IACV,CAAC;AACR,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,GAAW,EAAE,IAAY;IACnE,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACf,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACzB,CAAC;IACD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"slider.js","sourceRoot":"","sources":["../../src/components/slider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAc,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,MAAM,UAAU,MAAM,CAAC,KAQtB;IACA,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,MAAM,QAAQ,GAAG,QAAQ,EAAE,CAAC;IAC5B,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IAEjD,MAAM,KAAK,GAAG,gBACb,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,OAAO,EACZ,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EACpC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,EACtC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,gBAC5B,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,CAAC,cACzC,GAAG,EAAE;YACd,IAAI,KAAK,CAAC,KAAK,YAAY,MAAM,EAAE,CAAC;gBACnC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACzC,CAAC;QACF,CAAC,EACD,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAC9C,CAAC;IAEvB,OAAO,eACN,KAAK,EAAE,KAAK,EAAE,WAAW,aAExB,KAAK,EAEN,KAAC,IAAI,IAAC,IAAI,EAAE,KAAK,CAAC,OAAO,YACvB,OAAO,CAAC,EAAE,CAAC,mBAAU,EAAE,EAAE,QAAQ,YAChC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAQ,KAAK,EAAE,MAAM,GAAI,CAAC,GACvC,GACL,EAEN,KAAK,CAAC,QAAQ,IACV,CAAC;AACR,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,GAAW,EAAE,IAAY;IACnE,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACf,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACzB,CAAC;IACD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"text-input.d.ts","sourceRoot":"","sources":["../../src/components/text-input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAe,UAAU,EAAE,MAAM,KAAK,CAAC;AAOtE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,UAAU,CAAC;AAChD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3C,wBAAgB,SAAS,CAAC,KAAK,EAAE,CAAC;IACjC;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;IAElB;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;CAC7C,GAAG;IACH;;OAEG;IACH,SAAS,EAAE,IAAI,CAAC;IAEhB;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEtC;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC;CAC5C,CAAC,GAAG;IACJ;;;;OAIG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE3C;;;;OAIG;IACH,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAE1B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,SAAS,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC7C,YAAY,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9C,iBAAiB,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACnD,GAAG,OAAO,CAqCV"}
1
+ {"version":3,"file":"text-input.d.ts","sourceRoot":"","sources":["../../src/components/text-input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAe,UAAU,EAAE,MAAM,KAAK,CAAC;AAOtE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,UAAU,CAAC;AAChD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3C,wBAAgB,SAAS,CAAC,KAAK,EAAE,CAAC;IACjC;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;IAElB;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;CAC7C,GAAG;IACH;;OAEG;IACH,SAAS,EAAE,IAAI,CAAC;IAEhB;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEtC;;;;OAIG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC;CAC5C,CAAC,GAAG;IACJ;;;;OAIG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAE3C;;;;OAIG;IACH,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAE1B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,EAAE,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpC,SAAS,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC7C,YAAY,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9C,iBAAiB,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACnD,GAAG,OAAO,CAsCV"}
@@ -2,9 +2,11 @@ import { jsx as _jsx } from "rvx/jsx-runtime";
2
2
  import { get, Signal } from "rvx";
3
3
  import { isPending } from "rvx/async";
4
4
  import { optionalString } from "rvx/convert";
5
+ import { ID_PAIR } from "../common/id-pairs.js";
5
6
  import { THEME } from "../common/theme.js";
6
7
  import { closestValidator } from "./validation.js";
7
8
  export function TextInput(props) {
9
+ const id = props.id ?? ID_PAIR.current.consume();
8
10
  const theme = THEME.current;
9
11
  const disabled = () => isPending() || get(props.disabled);
10
12
  const validator = props.value instanceof Signal ? closestValidator(props.value) : undefined;
@@ -12,7 +14,7 @@ export function TextInput(props) {
12
14
  const input = _jsx(InputTag, { type: props.multiline ? undefined : (() => get(props.type) ?? "text"), rows: props.multiline ? props.rows : undefined, wrap: props.multiline ? props.wrap : undefined, disabled: disabled, class: [
13
15
  theme?.text_input,
14
16
  props.class,
15
- ], style: props.style, id: props.id, autofocus: props.autofocus, spellcheck: optionalString(props.spellcheck), readonly: !(props.value instanceof Signal), "prop:value": props.value, "on:input": () => {
17
+ ], style: props.style, id: id, autofocus: props.autofocus, spellcheck: optionalString(props.spellcheck), readonly: !(props.value instanceof Signal), "prop:value": props.value, "on:input": () => {
16
18
  if (props.value instanceof Signal) {
17
19
  props.value.value = input.value;
18
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"text-input.js","sourceRoot":"","sources":["../../src/components/text-input.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA0B,GAAG,EAAE,MAAM,EAAc,MAAM,KAAK,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKnD,MAAM,UAAU,SAAS,CAAC,KAqDzB;IACA,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAE1D,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,YAAY,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE5F,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;IACxD,MAAM,KAAK,GAAG,KAAC,QAAQ,IACtB,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,EACrE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAC9C,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAC9C,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE;YACN,KAAK,EAAE,UAAU;YACjB,KAAK,CAAC,KAAK;SACX,EACD,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,EAAE,EAAE,KAAK,CAAC,EAAE,EACZ,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,EAC5C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,YAAY,MAAM,CAAC,gBAE9B,KAAK,CAAC,KAAK,cACb,GAAG,EAAE;YACd,IAAI,KAAK,CAAC,KAAK,YAAY,MAAM,EAAE,CAAC;gBACnC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YACjC,CAAC;QACF,CAAC,gBAEW,KAAK,CAAC,YAAY,CAAC,qBACd,KAAK,CAAC,iBAAiB,CAAC,kBAE3B,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,uBACpD,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,GAC1C,CAAC;IAEvB,OAAO,KAAK,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"text-input.js","sourceRoot":"","sources":["../../src/components/text-input.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA0B,GAAG,EAAE,MAAM,EAAc,MAAM,KAAK,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKnD,MAAM,UAAU,SAAS,CAAC,KAqDzB;IACA,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACjD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAE1D,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,YAAY,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE5F,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;IACxD,MAAM,KAAK,GAAG,KAAC,QAAQ,IACtB,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,EACrE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAC9C,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAC9C,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE;YACN,KAAK,EAAE,UAAU;YACjB,KAAK,CAAC,KAAK;SACX,EACD,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,EAC5C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,YAAY,MAAM,CAAC,gBAE9B,KAAK,CAAC,KAAK,cACb,GAAG,EAAE;YACd,IAAI,KAAK,CAAC,KAAK,YAAY,MAAM,EAAE,CAAC;gBACnC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YACjC,CAAC;QACF,CAAC,gBAEW,KAAK,CAAC,YAAY,CAAC,qBACd,KAAK,CAAC,iBAAiB,CAAC,kBAE3B,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,uBACpD,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,GAC1C,CAAC;IAEvB,OAAO,KAAK,CAAC;AACd,CAAC"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,7 @@ export * from "./common/context.js";
2
2
  export * from "./common/coupling.js";
3
3
  export * from "./common/events.js";
4
4
  export * from "./common/focus-trap.js";
5
+ export * from "./common/id-pairs.js";
5
6
  export * from "./common/theme.js";
6
7
  export * from "./common/types.js";
7
8
  export * from "./common/writing-mode.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC"}
package/dist/index.js CHANGED
@@ -2,6 +2,7 @@ export * from "./common/context.js";
2
2
  export * from "./common/coupling.js";
3
3
  export * from "./common/events.js";
4
4
  export * from "./common/focus-trap.js";
5
+ export * from "./common/id-pairs.js";
5
6
  export * from "./common/theme.js";
6
7
  export * from "./common/types.js";
7
8
  export * from "./common/writing-mode.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC"}
package/package.json CHANGED
@@ -12,7 +12,7 @@
12
12
  "rvx"
13
13
  ],
14
14
  "license": "MIT",
15
- "version": "0.3.3",
15
+ "version": "0.3.5",
16
16
  "type": "module",
17
17
  "main": "./dist/index.js",
18
18
  "sideEffects": false,
@@ -0,0 +1,25 @@
1
+ import { Content, Context, uniqueId } from "rvx";
2
+
3
+ export class IdPair {
4
+ #prefix: string | undefined;
5
+
6
+ prefix() {
7
+ this.#prefix = uniqueId();
8
+ return this.#prefix;
9
+ }
10
+
11
+ consume(): string | undefined {
12
+ const value = this.#prefix;
13
+ this.#prefix = undefined;
14
+ return value;
15
+ }
16
+ }
17
+
18
+ export const ID_PAIR = new Context(new IdPair());
19
+
20
+ export function PairId(props: {
21
+ children?: (id: string | undefined) => Content;
22
+ }): Content {
23
+ const id = ID_PAIR.current.consume();
24
+ return props.children?.(id);
25
+ }
@@ -2,6 +2,7 @@ import { ClassValue, Expression, get, Signal, StyleValue, uniqueId, watch } from
2
2
  import { isPending } from "rvx/async";
3
3
 
4
4
  import { optionalString, string } from "rvx/convert";
5
+ import { ID_PAIR } from "../common/id-pairs.js";
5
6
  import { THEME } from "../common/theme.js";
6
7
  import { Text } from "./text.js";
7
8
  import { closestValidator } from "./validation.js";
@@ -16,7 +17,8 @@ export function Checkbox(props: {
16
17
  autofocus?: Expression<boolean | undefined>;
17
18
  children?: unknown;
18
19
  }): unknown {
19
- const id = uniqueId();
20
+ const pairId = ID_PAIR.current.consume();
21
+ const id = props.children === undefined ? pairId : uniqueId();
20
22
  const theme = THEME.current;
21
23
 
22
24
  const disabled = props.checked instanceof Signal
@@ -1,8 +1,8 @@
1
1
  import { $, captureSelf, ClassValue, Context, Emitter, Event, Expression, map, render, StyleValue, teardown, uniqueId } from "rvx";
2
2
  import { TASKS, Tasks, useMicrotask } from "rvx/async";
3
+ import { inOverlayContext } from "../common/context.js";
3
4
  import { Column, FlexSpace, Group, Heading, Row, Separated, Text, THEME } from "../index.js";
4
5
  import { LAYER, Layer } from "./layer.js";
5
- import { inOverlayContext } from "../common/context.js";
6
6
 
7
7
  export class DialogAbortError extends Error { }
8
8
 
@@ -37,12 +37,12 @@ export function showDialog<T = void>(init: DialogInit<T>, options?: DialogOption
37
37
  },
38
38
  reject(reason) {
39
39
  dispose();
40
- reject(reason);
40
+ reject(reason ?? new DialogAbortError());
41
41
  },
42
42
  };
43
43
  if (options?.cancellable ?? true) {
44
44
  LAYER.current!.useHotkey("escape", () => {
45
- dialog.reject(new DialogAbortError());
45
+ dialog.reject();
46
46
  });
47
47
  }
48
48
  return init(dialog);
@@ -1,4 +1,5 @@
1
- import { ClassValue, Expression, get, map, Signal, StyleValue } from "rvx";
1
+ import { ClassValue, Expression, get, map, Signal, StyleValue, View } from "rvx";
2
+ import { ID_PAIR } from "../common/id-pairs.js";
2
3
  import { Button, ButtonVariant } from "./button.js";
3
4
  import { Dropdown, DropdownItem } from "./dropdown.js";
4
5
  import { PopoutAlignment, PopoutPlacement } from "./popout.js";
@@ -28,10 +29,12 @@ export function DropdownInput<T>(props: {
28
29
  dropdownId?: string;
29
30
  dropdownClass?: ClassValue;
30
31
  dropdownStyle?: StyleValue;
32
+ anchorRect?: Expression<View | undefined>;
31
33
  placement?: Expression<PopoutPlacement | undefined>;
32
34
  alignment?: Expression<PopoutAlignment | undefined>;
33
35
  foreignEvents?: string[];
34
36
  }): unknown {
37
+ const id = props.id ?? ID_PAIR.current.consume();
35
38
  const items = new WeakMap<DropdownValue<T>, DropdownItem>();
36
39
  return <Dropdown
37
40
  anchor={a => <Button
@@ -40,7 +43,7 @@ export function DropdownInput<T>(props: {
40
43
  disabled={props.value instanceof Signal ? props.disabled : true}
41
44
  class={props.class}
42
45
  style={props.style}
43
- id={props.id}
46
+ id={id}
44
47
  autofocus={props.autofocus}
45
48
  title={props.title}
46
49
  role="combobox"
@@ -53,6 +56,7 @@ export function DropdownInput<T>(props: {
53
56
  return get(props.values).find(v => v.value === value)?.label;
54
57
  })}
55
58
  </Button>}
59
+ anchorRect={props.anchorRect}
56
60
  items={() => get(props.values).map<DropdownItem>(value => {
57
61
  let item = items.get(value);
58
62
  if (item === undefined) {
@@ -270,6 +270,8 @@ export function Dropdown(props: {
270
270
  */
271
271
  anchor: (props: DropdownAnchorProps) => unknown;
272
272
 
273
+ anchorRect?: Expression<View | undefined>;
274
+
273
275
  /**
274
276
  * The items contained in this dropdown.
275
277
  *
@@ -328,7 +330,7 @@ export function Dropdown(props: {
328
330
 
329
331
  const anchor = render(props.anchor({
330
332
  action: event => {
331
- dropdown.toggle(anchor, event);
333
+ dropdown.toggle(get(props.anchorRect) ?? anchor, event);
332
334
  },
333
335
  "aria-haspopup": "listbox",
334
336
  "aria-controls": () => dropdown.visible ? get(id) : undefined,
@@ -1,6 +1,6 @@
1
- import { ClassValue, Expression, StyleValue, uniqueId } from "rvx";
1
+ import { ClassValue, Expression, StyleValue } from "rvx";
2
+ import { ID_PAIR } from "../common/id-pairs.js";
2
3
  import { THEME } from "../common/theme.js";
3
- import { Group } from "./column.js";
4
4
 
5
5
  export function Label(props: {
6
6
  class?: ClassValue;
@@ -10,28 +10,16 @@ export function Label(props: {
10
10
  children?: unknown;
11
11
  }): unknown {
12
12
  const theme = THEME.current;
13
+ const idFor = props.for ?? ID_PAIR.current.prefix();
13
14
  return <label
14
15
  class={[
15
16
  theme?.label,
16
17
  props.class,
17
18
  ]}
18
19
  style={props.style}
19
- for={props.for}
20
+ for={idFor}
20
21
  id={props.id}
21
22
  >
22
23
  {props.children}
23
24
  </label>;
24
25
  }
25
-
26
- export function LabelFor(props: {
27
- class?: ClassValue;
28
- style?: StyleValue;
29
- label: unknown;
30
- children: (id: string) => unknown;
31
- }): unknown {
32
- const id = uniqueId();
33
- return <Group>
34
- <Label class={props.class} style={props.style} for={id}>{props.label}</Label>
35
- {props.children(id)}
36
- </Group>;
37
- }
@@ -1,4 +1,4 @@
1
- import { $, ClassValue, Expression, get, Inject, map, render, StyleValue, SVG, uniqueId, watch, XMLNS } from "rvx";
1
+ import { $, ClassValue, Expression, get, Inject, map, render, StyleValue, SVG, uniqueId, View, watch, XMLNS } from "rvx";
2
2
  import { Action } from "../common/events.js";
3
3
  import { THEME } from "../common/theme.js";
4
4
  import { DOWN, getSize, getXY, LEFT, RIGHT, UP } from "../common/writing-mode.js";
@@ -179,6 +179,8 @@ export function Popover(props: {
179
179
  */
180
180
  anchor: (props: PopoverAnchorProps) => unknown;
181
181
 
182
+ anchorRect?: Expression<View | undefined>;
183
+
182
184
  /**
183
185
  * The anchor id.
184
186
  *
@@ -285,7 +287,7 @@ export function Popover(props: {
285
287
 
286
288
  const anchor = render(props.anchor({
287
289
  action: event => {
288
- popover.toggle(anchor, event);
290
+ popover.toggle(get(props.anchorRect) ?? anchor, event);
289
291
  },
290
292
  id,
291
293
  "aria-label": props["aria-label"],
@@ -1,6 +1,7 @@
1
1
  import { ClassValue, Expression, For, get, map, Signal, StyleValue, uniqueId } from "rvx";
2
2
  import { isPending } from "rvx/async";
3
3
  import { optionalString, string } from "rvx/convert";
4
+ import { ID_PAIR } from "../common/id-pairs.js";
4
5
  import { THEME } from "../common/theme.js";
5
6
  import { Text } from "./text.js";
6
7
  import { closestValidator } from "./validation.js";
@@ -25,6 +26,7 @@ export function RadioButtons<T>(props: {
25
26
 
26
27
  children?: never;
27
28
  }): unknown {
29
+ const id = props.id ?? ID_PAIR.current.consume();
28
30
  const group = uniqueId();
29
31
  const theme = THEME.current;
30
32
 
@@ -1,4 +1,5 @@
1
1
  import { Expression, map, Show, Signal, uniqueId } from "rvx";
2
+ import { ID_PAIR } from "../common/id-pairs.js";
2
3
  import { THEME } from "../common/theme.js";
3
4
 
4
5
  export function Slider(props: {
@@ -12,9 +13,10 @@ export function Slider(props: {
12
13
  }) {
13
14
  const theme = THEME.current;
14
15
  const markerId = uniqueId();
16
+ const id = props.id ?? ID_PAIR.current.consume();
15
17
 
16
18
  const input = <input
17
- id={props.id}
19
+ id={id}
18
20
  type="range"
19
21
  min={map(props.min, min => min ?? 0)}
20
22
  max={map(props.max, max => max ?? 100)}
@@ -1,7 +1,7 @@
1
1
  import { ClassValue, Expression, get, Signal, StyleValue } from "rvx";
2
2
  import { isPending } from "rvx/async";
3
3
  import { optionalString } from "rvx/convert";
4
- import { handleActionEvent, isKey } from "../common/events.js";
4
+ import { ID_PAIR } from "../common/id-pairs.js";
5
5
  import { THEME } from "../common/theme.js";
6
6
  import { closestValidator } from "./validation.js";
7
7
 
@@ -62,6 +62,7 @@ export function TextInput(props: ({
62
62
  "aria-label"?: Expression<string | undefined>;
63
63
  "aria-labelledby"?: Expression<string | undefined>;
64
64
  }): unknown {
65
+ const id = props.id ?? ID_PAIR.current.consume();
65
66
  const theme = THEME.current;
66
67
  const disabled = () => isPending() || get(props.disabled);
67
68
 
@@ -78,7 +79,7 @@ export function TextInput(props: ({
78
79
  props.class,
79
80
  ]}
80
81
  style={props.style}
81
- id={props.id}
82
+ id={id}
82
83
  autofocus={props.autofocus}
83
84
  spellcheck={optionalString(props.spellcheck)}
84
85
  readonly={!(props.value instanceof Signal)}
package/src/index.tsx CHANGED
@@ -2,6 +2,7 @@ export * from "./common/context.js";
2
2
  export * from "./common/coupling.js";
3
3
  export * from "./common/events.js";
4
4
  export * from "./common/focus-trap.js";
5
+ export * from "./common/id-pairs.js";
5
6
  export * from "./common/theme.js";
6
7
  export * from "./common/types.js";
7
8
  export * from "./common/writing-mode.js";