basefn 1.10.0 → 1.11.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.
Files changed (95) hide show
  1. package/package.json +3 -3
  2. package/rescript.json +1 -1
  3. package/src/Basefn__Responsive.res.mjs +5 -5
  4. package/src/Basefn__Utils.res.mjs +2 -2
  5. package/src/Demo.res +59 -59
  6. package/src/Demo.res.mjs +630 -628
  7. package/src/Example.res +3 -3
  8. package/src/Example.res.mjs +48 -47
  9. package/src/components/Basefn__Accordion.res +5 -5
  10. package/src/components/Basefn__Accordion.res.mjs +25 -26
  11. package/src/components/Basefn__Alert.res +4 -4
  12. package/src/components/Basefn__Alert.res.mjs +20 -18
  13. package/src/components/Basefn__AlertDialog.res +5 -5
  14. package/src/components/Basefn__AlertDialog.res.mjs +23 -21
  15. package/src/components/Basefn__AppLayout.res +3 -3
  16. package/src/components/Basefn__AppLayout.res.mjs +25 -24
  17. package/src/components/Basefn__AspectRatio.res +1 -1
  18. package/src/components/Basefn__AspectRatio.res.mjs +2 -2
  19. package/src/components/Basefn__Avatar.res.mjs +3 -3
  20. package/src/components/Basefn__Badge.res +1 -1
  21. package/src/components/Basefn__Badge.res.mjs +2 -2
  22. package/src/components/Basefn__Breadcrumb.res +5 -5
  23. package/src/components/Basefn__Breadcrumb.res.mjs +14 -14
  24. package/src/components/Basefn__Button.res +1 -1
  25. package/src/components/Basefn__Button.res.mjs +10 -9
  26. package/src/components/Basefn__ButtonGroup.res +1 -1
  27. package/src/components/Basefn__ButtonGroup.res.mjs +2 -2
  28. package/src/components/Basefn__Card.res +3 -3
  29. package/src/components/Basefn__Card.res.mjs +11 -11
  30. package/src/components/Basefn__Checkbox.res +1 -1
  31. package/src/components/Basefn__Checkbox.res.mjs +7 -7
  32. package/src/components/Basefn__ContextMenu.res +4 -4
  33. package/src/components/Basefn__ContextMenu.res.mjs +22 -20
  34. package/src/components/Basefn__Drawer.res +5 -5
  35. package/src/components/Basefn__Drawer.res.mjs +22 -20
  36. package/src/components/Basefn__Dropdown.res +4 -4
  37. package/src/components/Basefn__Dropdown.res.mjs +20 -18
  38. package/src/components/Basefn__Grid.res.mjs +15 -14
  39. package/src/components/Basefn__HoverCard.res +3 -3
  40. package/src/components/Basefn__HoverCard.res.mjs +14 -12
  41. package/src/components/Basefn__Icon.res.mjs +8 -7
  42. package/src/components/Basefn__Input.res.mjs +4 -4
  43. package/src/components/Basefn__Kbd.res +2 -2
  44. package/src/components/Basefn__Kbd.res.mjs +5 -5
  45. package/src/components/Basefn__Label.res +1 -1
  46. package/src/components/Basefn__Label.res.mjs +4 -4
  47. package/src/components/Basefn__Modal.res +5 -5
  48. package/src/components/Basefn__Modal.res.mjs +20 -18
  49. package/src/components/Basefn__Popover.res +3 -3
  50. package/src/components/Basefn__Popover.res.mjs +15 -13
  51. package/src/components/Basefn__Progress.res +2 -2
  52. package/src/components/Basefn__Progress.res.mjs +16 -14
  53. package/src/components/Basefn__Radio.res +1 -1
  54. package/src/components/Basefn__Radio.res.mjs +7 -7
  55. package/src/components/Basefn__Resizable.res +49 -20
  56. package/src/components/Basefn__Resizable.res.mjs +66 -36
  57. package/src/components/Basefn__ScrollArea.res +1 -1
  58. package/src/components/Basefn__ScrollArea.res.mjs +2 -2
  59. package/src/components/Basefn__Select.res +2 -2
  60. package/src/components/Basefn__Select.res.mjs +7 -6
  61. package/src/components/Basefn__Separator.res +1 -1
  62. package/src/components/Basefn__Separator.res.mjs +9 -9
  63. package/src/components/Basefn__Sidebar.res +7 -7
  64. package/src/components/Basefn__Sidebar.res.mjs +28 -24
  65. package/src/components/Basefn__Skeleton.res.mjs +2 -2
  66. package/src/components/Basefn__Slider.res +4 -4
  67. package/src/components/Basefn__Slider.res.mjs +21 -20
  68. package/src/components/Basefn__Spinner.res +1 -1
  69. package/src/components/Basefn__Spinner.res.mjs +8 -8
  70. package/src/components/Basefn__Spotlight.res +14 -14
  71. package/src/components/Basefn__Spotlight.res.mjs +69 -65
  72. package/src/components/Basefn__Stepper.res +6 -6
  73. package/src/components/Basefn__Stepper.res.mjs +20 -24
  74. package/src/components/Basefn__Switch.res +1 -1
  75. package/src/components/Basefn__Switch.res.mjs +16 -14
  76. package/src/components/Basefn__Tabs.res +4 -4
  77. package/src/components/Basefn__Tabs.res.mjs +19 -17
  78. package/src/components/Basefn__Textarea.res.mjs +4 -4
  79. package/src/components/Basefn__ThemeToggle.res +1 -1
  80. package/src/components/Basefn__ThemeToggle.res.mjs +13 -10
  81. package/src/components/Basefn__Timeline.res +6 -6
  82. package/src/components/Basefn__Timeline.res.mjs +21 -21
  83. package/src/components/Basefn__Toast.res +4 -4
  84. package/src/components/Basefn__Toast.res.mjs +23 -20
  85. package/src/components/Basefn__Toggle.res +1 -1
  86. package/src/components/Basefn__Toggle.res.mjs +8 -7
  87. package/src/components/Basefn__ToggleGroup.res +2 -2
  88. package/src/components/Basefn__ToggleGroup.res.mjs +12 -10
  89. package/src/components/Basefn__Tooltip.res +3 -3
  90. package/src/components/Basefn__Tooltip.res.mjs +14 -12
  91. package/src/components/Basefn__Topbar.res +7 -7
  92. package/src/components/Basefn__Topbar.res.mjs +22 -22
  93. package/src/components/Basefn__Typography.res +2 -2
  94. package/src/components/Basefn__Typography.res.mjs +13 -13
  95. package/src/styles/Basefn__Theme.res.mjs +5 -5
@@ -1,10 +1,14 @@
1
1
  // Generated by ReScript, PLEASE EDIT WITH CARE
2
2
 
3
- import * as Xote from "xote/src/Xote.res.mjs";
4
- import * as Xote__JSX from "xote/src/Xote__JSX.res.mjs";
3
+ import * as Node$Xote from "xote/src/Node.res.mjs";
5
4
  import * as Basefn__Dom from "../Basefn__Dom.res.mjs";
5
+ import * as Effect$Xote from "xote/src/Effect.res.mjs";
6
+ import * as Signal$Xote from "xote/src/Signal.res.mjs";
6
7
  import * as Basefn__Icon from "./Basefn__Icon.res.mjs";
8
+ import * as XoteJSX$Xote from "xote/src/XoteJSX.res.mjs";
9
+ import * as Computed$Xote from "xote/src/Computed.res.mjs";
7
10
  import * as Primitive_int from "@rescript/runtime/lib/es6/Primitive_int.js";
11
+ import * as ReactiveProp$Xote from "xote/src/ReactiveProp.res.mjs";
8
12
 
9
13
  import './Basefn__Spotlight.css'
10
14
  ;
@@ -18,8 +22,8 @@ function Basefn__Spotlight(props) {
18
22
  let isOpen = props.isOpen;
19
23
  let placeholder = __placeholder !== undefined ? __placeholder : "Search...";
20
24
  let emptyMessage = __emptyMessage !== undefined ? __emptyMessage : "No results found.";
21
- let query = Xote.Signal.make("", undefined, undefined);
22
- let activeIndex = Xote.Signal.make(0, undefined, undefined);
25
+ let query = Signal$Xote.make("", undefined, undefined);
26
+ let activeIndex = Signal$Xote.make(0, undefined, undefined);
23
27
  let defaultFilter = (q, item) => {
24
28
  let q$1 = q.toLowerCase();
25
29
  if (item.label.toLowerCase().includes(q$1)) {
@@ -33,8 +37,8 @@ function Basefn__Spotlight(props) {
33
37
  }
34
38
  };
35
39
  let filterItem = filterFn !== undefined ? filterFn : defaultFilter;
36
- let filteredItems = Xote.Computed.make(() => {
37
- let q = Xote.Signal.get(query);
40
+ let filteredItems = Computed$Xote.make(() => {
41
+ let q = Signal$Xote.get(query);
38
42
  if (q === "") {
39
43
  return items;
40
44
  } else {
@@ -43,18 +47,18 @@ function Basefn__Spotlight(props) {
43
47
  }, undefined);
44
48
  let handleSelect = item => {
45
49
  item.onSelect();
46
- Xote.Signal.set(query, "");
47
- Xote.Signal.set(activeIndex, 0);
50
+ Signal$Xote.set(query, "");
51
+ Signal$Xote.set(activeIndex, 0);
48
52
  onClose();
49
53
  };
50
54
  let handleKeyDown = evt => {
51
55
  let k = evt.key;
52
- let currentItems = Xote.Signal.get(filteredItems);
56
+ let currentItems = Signal$Xote.get(filteredItems);
53
57
  let len = currentItems.length;
54
58
  switch (k) {
55
59
  case "ArrowDown" :
56
60
  Basefn__Dom.preventDefault(evt);
57
- Xote.Signal.update(activeIndex, i => Primitive_int.mod_(i + 1 | 0, Primitive_int.max(len, 1)));
61
+ Signal$Xote.update(activeIndex, i => Primitive_int.mod_(i + 1 | 0, Primitive_int.max(len, 1)));
58
62
  ((requestAnimationFrame(() => {
59
63
  const el = document.querySelector(".basefn-spotlight__item--active");
60
64
  if (el) el.scrollIntoView({ block: "nearest" });
@@ -62,7 +66,7 @@ function Basefn__Spotlight(props) {
62
66
  return;
63
67
  case "ArrowUp" :
64
68
  Basefn__Dom.preventDefault(evt);
65
- Xote.Signal.update(activeIndex, i => Primitive_int.mod_((i - 1 | 0) + Primitive_int.max(len, 1) | 0, Primitive_int.max(len, 1)));
69
+ Signal$Xote.update(activeIndex, i => Primitive_int.mod_((i - 1 | 0) + Primitive_int.max(len, 1) | 0, Primitive_int.max(len, 1)));
66
70
  ((requestAnimationFrame(() => {
67
71
  const el = document.querySelector(".basefn-spotlight__item--active");
68
72
  if (el) el.scrollIntoView({ block: "nearest" });
@@ -72,7 +76,7 @@ function Basefn__Spotlight(props) {
72
76
  if (len <= 0) {
73
77
  return;
74
78
  }
75
- let idx = Xote.Signal.get(activeIndex);
79
+ let idx = Signal$Xote.get(activeIndex);
76
80
  let item = currentItems[idx];
77
81
  if (item !== undefined) {
78
82
  return handleSelect(item);
@@ -80,8 +84,8 @@ function Basefn__Spotlight(props) {
80
84
  return;
81
85
  }
82
86
  case "Escape" :
83
- Xote.Signal.set(query, "");
84
- Xote.Signal.set(activeIndex, 0);
87
+ Signal$Xote.set(query, "");
88
+ Signal$Xote.set(activeIndex, 0);
85
89
  return onClose();
86
90
  default:
87
91
  return;
@@ -89,20 +93,20 @@ function Basefn__Spotlight(props) {
89
93
  };
90
94
  let handleInput = evt => {
91
95
  let value = Basefn__Dom.target(evt).value;
92
- Xote.Signal.set(query, value);
93
- Xote.Signal.set(activeIndex, 0);
96
+ Signal$Xote.set(query, value);
97
+ Signal$Xote.set(activeIndex, 0);
94
98
  };
95
99
  let handleBackdropClick = evt => {
96
100
  let target = evt.target;
97
101
  let currentTarget = evt.currentTarget;
98
102
  if (target === currentTarget) {
99
- Xote.Signal.set(query, "");
100
- Xote.Signal.set(activeIndex, 0);
103
+ Signal$Xote.set(query, "");
104
+ Signal$Xote.set(activeIndex, 0);
101
105
  return onClose();
102
106
  }
103
107
  };
104
- Xote.Effect.run(() => {
105
- if (Xote.Signal.get(isOpen)) {
108
+ Effect$Xote.run(() => {
109
+ if (Signal$Xote.get(isOpen)) {
106
110
  ((requestAnimationFrame(() => {
107
111
  requestAnimationFrame(() => {
108
112
  const el = document.querySelector(".basefn-spotlight__input");
@@ -112,11 +116,11 @@ function Basefn__Spotlight(props) {
112
116
  }
113
117
  }, undefined);
114
118
  let renderResults = () => {
115
- let currentItems = Xote.Signal.get(filteredItems);
119
+ let currentItems = Signal$Xote.get(filteredItems);
116
120
  if (currentItems.length === 0) {
117
- return Xote__JSX.Elements.jsx("div", {
121
+ return XoteJSX$Xote.Elements.jsx("div", {
118
122
  class: "basefn-spotlight__empty",
119
- children: Xote.Component.text(emptyMessage)
123
+ children: Node$Xote.text(emptyMessage)
120
124
  });
121
125
  }
122
126
  let lastGroup = {
@@ -127,99 +131,99 @@ function Basefn__Spotlight(props) {
127
131
  let group = item.group;
128
132
  if (group !== undefined && group !== lastGroup.contents) {
129
133
  lastGroup.contents = group;
130
- elements.push(Xote__JSX.Elements.jsxKeyed("div", {
134
+ elements.push(XoteJSX$Xote.Elements.jsxKeyed("div", {
131
135
  class: "basefn-spotlight__group-label",
132
- children: Xote.Component.text(group)
136
+ children: Node$Xote.text(group)
133
137
  }, "group-" + group, undefined));
134
138
  }
135
139
  let itemClass = "basefn-spotlight__item" + (
136
- index === Xote.Signal.get(activeIndex) ? " basefn-spotlight__item--active" : ""
140
+ index === Signal$Xote.get(activeIndex) ? " basefn-spotlight__item--active" : ""
137
141
  );
138
142
  let desc = item.description;
139
- elements.push(Xote__JSX.Elements.jsxKeyed("button", {
143
+ elements.push(XoteJSX$Xote.Elements.jsxKeyed("button", {
140
144
  class: itemClass,
141
145
  onClick: param => handleSelect(item),
142
- children: Xote__JSX.Elements.jsxs("div", {
146
+ children: XoteJSX$Xote.Elements.jsxs("div", {
143
147
  class: "basefn-spotlight__item-content",
144
- children: Xote__JSX.array([
145
- Xote__JSX.Elements.jsx("div", {
148
+ children: XoteJSX$Xote.array([
149
+ XoteJSX$Xote.Elements.jsx("div", {
146
150
  class: "basefn-spotlight__item-label",
147
- children: Xote.Component.text(item.label)
151
+ children: Node$Xote.text(item.label)
148
152
  }),
149
- desc !== undefined ? Xote__JSX.Elements.jsx("div", {
153
+ desc !== undefined ? XoteJSX$Xote.Elements.jsx("div", {
150
154
  class: "basefn-spotlight__item-description",
151
- children: Xote.Component.text(desc)
152
- }) : Xote__JSX.jsx(Xote__JSX.jsxFragment, {})
155
+ children: Node$Xote.text(desc)
156
+ }) : XoteJSX$Xote.jsx(XoteJSX$Xote.jsxFragment, {})
153
157
  ])
154
158
  })
155
159
  }, item.id, undefined));
156
160
  });
157
- return Xote.Component.fragment(elements);
161
+ return Node$Xote.fragment(elements);
158
162
  };
159
- return Xote.Component.signalFragment(Xote.Computed.make(() => {
160
- if (Xote.Signal.get(isOpen)) {
161
- return [Xote__JSX.Elements.jsx("div", {
163
+ return Node$Xote.signalFragment(Computed$Xote.make(() => {
164
+ if (Signal$Xote.get(isOpen)) {
165
+ return [XoteJSX$Xote.Elements.jsx("div", {
162
166
  class: "basefn-spotlight-backdrop",
163
167
  onClick: handleBackdropClick,
164
- children: Xote__JSX.Elements.jsxs("div", {
168
+ children: XoteJSX$Xote.Elements.jsxs("div", {
165
169
  class: "basefn-spotlight",
166
170
  onKeyDown: handleKeyDown,
167
- children: Xote__JSX.array([
168
- Xote__JSX.Elements.jsxs("div", {
171
+ children: XoteJSX$Xote.array([
172
+ XoteJSX$Xote.Elements.jsxs("div", {
169
173
  class: "basefn-spotlight__input-wrapper",
170
- children: Xote__JSX.array([
171
- Xote__JSX.jsx(Basefn__Icon.make, {
174
+ children: XoteJSX$Xote.array([
175
+ XoteJSX$Xote.jsx(Basefn__Icon.make, {
172
176
  name: "Search",
173
177
  size: "Sm"
174
178
  }),
175
- Xote__JSX.Elements.jsx("input", {
179
+ XoteJSX$Xote.Elements.jsx("input", {
176
180
  class: "basefn-spotlight__input",
177
181
  type: "text",
178
- value: Xote.ReactiveProp.reactive(query),
182
+ value: ReactiveProp$Xote.reactive(query),
179
183
  placeholder: placeholder,
180
184
  onInput: handleInput
181
185
  })
182
186
  ])
183
187
  }),
184
- Xote__JSX.Elements.jsx("div", {
188
+ XoteJSX$Xote.Elements.jsx("div", {
185
189
  class: "basefn-spotlight__results",
186
190
  children: renderResults()
187
191
  }),
188
- Xote__JSX.Elements.jsxs("div", {
192
+ XoteJSX$Xote.Elements.jsxs("div", {
189
193
  class: "basefn-spotlight__footer",
190
- children: Xote__JSX.array([
191
- Xote__JSX.Elements.jsxs("span", {
194
+ children: XoteJSX$Xote.array([
195
+ XoteJSX$Xote.Elements.jsxs("span", {
192
196
  class: "basefn-spotlight__footer-hint",
193
- children: Xote__JSX.array([
194
- Xote__JSX.Elements.jsx("span", {
197
+ children: XoteJSX$Xote.array([
198
+ XoteJSX$Xote.Elements.jsx("span", {
195
199
  class: "basefn-spotlight__footer-key",
196
- children: Xote.Component.text("\u2191")
200
+ children: Node$Xote.text("\u2191")
197
201
  }),
198
- Xote__JSX.Elements.jsx("span", {
202
+ XoteJSX$Xote.Elements.jsx("span", {
199
203
  class: "basefn-spotlight__footer-key",
200
- children: Xote.Component.text("\u2193")
204
+ children: Node$Xote.text("\u2193")
201
205
  }),
202
- Xote.Component.text("to navigate")
206
+ Node$Xote.text("to navigate")
203
207
  ])
204
208
  }),
205
- Xote__JSX.Elements.jsxs("span", {
209
+ XoteJSX$Xote.Elements.jsxs("span", {
206
210
  class: "basefn-spotlight__footer-hint",
207
- children: Xote__JSX.array([
208
- Xote__JSX.Elements.jsx("span", {
211
+ children: XoteJSX$Xote.array([
212
+ XoteJSX$Xote.Elements.jsx("span", {
209
213
  class: "basefn-spotlight__footer-key",
210
- children: Xote.Component.text("\u21b5")
214
+ children: Node$Xote.text("\u21b5")
211
215
  }),
212
- Xote.Component.text("to select")
216
+ Node$Xote.text("to select")
213
217
  ])
214
218
  }),
215
- Xote__JSX.Elements.jsxs("span", {
219
+ XoteJSX$Xote.Elements.jsxs("span", {
216
220
  class: "basefn-spotlight__footer-hint",
217
- children: Xote__JSX.array([
218
- Xote__JSX.Elements.jsx("span", {
221
+ children: XoteJSX$Xote.array([
222
+ XoteJSX$Xote.Elements.jsx("span", {
219
223
  class: "basefn-spotlight__footer-key",
220
- children: Xote.Component.text("esc")
224
+ children: Node$Xote.text("esc")
221
225
  }),
222
- Xote.Component.text("to close")
226
+ Node$Xote.text("to close")
223
227
  ])
224
228
  })
225
229
  ])
@@ -64,16 +64,16 @@ let make = (
64
64
  <div class="basefn-stepper__step-header" onClick={_ => handleStepClick(index, step.status)}>
65
65
  <div class="basefn-stepper__step-indicator">
66
66
  {switch step.status {
67
- | Completed => Component.text("\u2713")
68
- | Error => Component.text("\u00d7")
69
- | _ => Component.text(Int.toString(index + 1))
67
+ | Completed => Node.text("\u2713")
68
+ | Error => Node.text("\u00d7")
69
+ | _ => Node.text(Int.toString(index + 1))
70
70
  }}
71
71
  </div>
72
72
  <div class="basefn-stepper__step-content">
73
- <div class="basefn-stepper__step-title"> {Component.text(step.title)} </div>
73
+ <div class="basefn-stepper__step-title"> {Node.text(step.title)} </div>
74
74
  {switch step.description {
75
75
  | Some(desc) =>
76
- <div class="basefn-stepper__step-description"> {Component.text(desc)} </div>
76
+ <div class="basefn-stepper__step-description"> {Node.text(desc)} </div>
77
77
  | None => <> </>
78
78
  }}
79
79
  </div>
@@ -81,6 +81,6 @@ let make = (
81
81
  <div class="basefn-stepper__connector" />
82
82
  </div>
83
83
  })
84
- ->Component.fragment}
84
+ ->Node.fragment}
85
85
  </div>
86
86
  }
@@ -1,8 +1,8 @@
1
1
  // Generated by ReScript, PLEASE EDIT WITH CARE
2
2
 
3
- import * as Xote from "xote/src/Xote.res.mjs";
4
- import * as Xote__JSX from "xote/src/Xote__JSX.res.mjs";
3
+ import * as Node$Xote from "xote/src/Node.res.mjs";
5
4
  import * as Core__Option from "@rescript/core/src/Core__Option.res.mjs";
5
+ import * as XoteJSX$Xote from "xote/src/XoteJSX.res.mjs";
6
6
 
7
7
  import './Basefn__Stepper.css'
8
8
  ;
@@ -34,33 +34,29 @@ function Basefn__Stepper(props) {
34
34
  let clickableClass = clickable ? " basefn-stepper__step--clickable" : "";
35
35
  return "basefn-stepper__step " + statusClass + clickableClass;
36
36
  };
37
- return Xote__JSX.Elements.jsx("div", {
37
+ return XoteJSX$Xote.Elements.jsx("div", {
38
38
  class: getStepperClass(),
39
- children: Xote.Component.fragment(props.steps.map((step, index) => {
39
+ children: Node$Xote.fragment(props.steps.map((step, index) => {
40
40
  let isClickable = Core__Option.isSome(onStepClick) && (step.status === "Completed" || step.status === "Active");
41
41
  let match = step.status;
42
42
  let tmp;
43
- let exit = 0;
44
43
  switch (match) {
45
44
  case "Inactive" :
46
45
  case "Active" :
47
- exit = 1;
46
+ tmp = Node$Xote.text((index + 1 | 0).toString());
48
47
  break;
49
48
  case "Completed" :
50
- tmp = Xote.Component.text("\u2713");
49
+ tmp = Node$Xote.text("\u2713");
51
50
  break;
52
51
  case "Error" :
53
- tmp = Xote.Component.text("\u00d7");
52
+ tmp = Node$Xote.text("\u00d7");
54
53
  break;
55
54
  }
56
- if (exit === 1) {
57
- tmp = Xote.Component.text((index + 1 | 0).toString());
58
- }
59
55
  let desc = step.description;
60
- return Xote__JSX.Elements.jsxsKeyed("div", {
56
+ return XoteJSX$Xote.Elements.jsxsKeyed("div", {
61
57
  class: getStepClass(step.status, isClickable),
62
- children: Xote__JSX.array([
63
- Xote__JSX.Elements.jsxs("div", {
58
+ children: XoteJSX$Xote.array([
59
+ XoteJSX$Xote.Elements.jsxs("div", {
64
60
  class: "basefn-stepper__step-header",
65
61
  onClick: param => {
66
62
  let status = step.status;
@@ -76,27 +72,27 @@ function Basefn__Stepper(props) {
76
72
  return;
77
73
  }
78
74
  },
79
- children: Xote__JSX.array([
80
- Xote__JSX.Elements.jsx("div", {
75
+ children: XoteJSX$Xote.array([
76
+ XoteJSX$Xote.Elements.jsx("div", {
81
77
  class: "basefn-stepper__step-indicator",
82
78
  children: tmp
83
79
  }),
84
- Xote__JSX.Elements.jsxs("div", {
80
+ XoteJSX$Xote.Elements.jsxs("div", {
85
81
  class: "basefn-stepper__step-content",
86
- children: Xote__JSX.array([
87
- Xote__JSX.Elements.jsx("div", {
82
+ children: XoteJSX$Xote.array([
83
+ XoteJSX$Xote.Elements.jsx("div", {
88
84
  class: "basefn-stepper__step-title",
89
- children: Xote.Component.text(step.title)
85
+ children: Node$Xote.text(step.title)
90
86
  }),
91
- desc !== undefined ? Xote__JSX.Elements.jsx("div", {
87
+ desc !== undefined ? XoteJSX$Xote.Elements.jsx("div", {
92
88
  class: "basefn-stepper__step-description",
93
- children: Xote.Component.text(desc)
94
- }) : Xote__JSX.jsx(Xote__JSX.jsxFragment, {})
89
+ children: Node$Xote.text(desc)
90
+ }) : XoteJSX$Xote.jsx(XoteJSX$Xote.jsxFragment, {})
95
91
  ])
96
92
  })
97
93
  ])
98
94
  }),
99
- Xote__JSX.Elements.jsx("div", {
95
+ XoteJSX$Xote.Elements.jsx("div", {
100
96
  class: "basefn-stepper__connector"
101
97
  })
102
98
  ])
@@ -55,7 +55,7 @@ let make = (
55
55
  <div class="basefn-switch__slider" />
56
56
  </div>
57
57
  {switch label {
58
- | Some(labelText) => <span class="basefn-switch-label"> {Component.text(labelText)} </span>
58
+ | Some(labelText) => <span class="basefn-switch-label"> {Node.text(labelText)} </span>
59
59
  | None => <> </>
60
60
  }}
61
61
  </label>
@@ -1,7 +1,9 @@
1
1
  // Generated by ReScript, PLEASE EDIT WITH CARE
2
2
 
3
- import * as Xote from "xote/src/Xote.res.mjs";
4
- import * as Xote__JSX from "xote/src/Xote__JSX.res.mjs";
3
+ import * as Node$Xote from "xote/src/Node.res.mjs";
4
+ import * as Signal$Xote from "xote/src/Signal.res.mjs";
5
+ import * as XoteJSX$Xote from "xote/src/XoteJSX.res.mjs";
6
+ import * as Computed$Xote from "xote/src/Computed.res.mjs";
5
7
 
6
8
  import './Basefn__Switch.css'
7
9
  ;
@@ -27,7 +29,7 @@ function Basefn__Switch(props) {
27
29
  let size = __size !== undefined ? __size : "Md";
28
30
  let handleClick = param => {
29
31
  if (!disabled) {
30
- Xote.Signal.update(checked, prev => !prev);
32
+ Signal$Xote.update(checked, prev => !prev);
31
33
  if (onChange !== undefined) {
32
34
  return onChange();
33
35
  } else {
@@ -41,8 +43,8 @@ function Basefn__Switch(props) {
41
43
  };
42
44
  let getSwitchClass = () => {
43
45
  let sizeClass = size !== "Md" ? " basefn-switch--" + sizeToString(size) : "";
44
- Xote.Computed.make(() => {
45
- if (Xote.Signal.get(checked)) {
46
+ Computed$Xote.make(() => {
47
+ if (Signal$Xote.get(checked)) {
46
48
  return " basefn-switch--checked";
47
49
  } else {
48
50
  return "";
@@ -51,26 +53,26 @@ function Basefn__Switch(props) {
51
53
  let disabledClass = disabled ? " basefn-switch--disabled" : "";
52
54
  return "basefn-switch" + sizeClass + disabledClass;
53
55
  };
54
- return Xote__JSX.Elements.jsxs("label", {
56
+ return XoteJSX$Xote.Elements.jsxs("label", {
55
57
  class: getWrapperClass(),
56
- children: Xote__JSX.array([
57
- Xote__JSX.Elements.jsx("div", {
58
- class: Xote.Computed.make(() => getSwitchClass() + Xote.Signal.get(Xote.Computed.make(() => {
59
- if (Xote.Signal.get(checked)) {
58
+ children: XoteJSX$Xote.array([
59
+ XoteJSX$Xote.Elements.jsx("div", {
60
+ class: Computed$Xote.make(() => getSwitchClass() + Signal$Xote.get(Computed$Xote.make(() => {
61
+ if (Signal$Xote.get(checked)) {
60
62
  return " basefn-switch--checked";
61
63
  } else {
62
64
  return "";
63
65
  }
64
66
  }, undefined)), undefined),
65
67
  onClick: handleClick,
66
- children: Xote__JSX.Elements.jsx("div", {
68
+ children: XoteJSX$Xote.Elements.jsx("div", {
67
69
  class: "basefn-switch__slider"
68
70
  })
69
71
  }),
70
- label !== undefined ? Xote__JSX.Elements.jsx("span", {
72
+ label !== undefined ? XoteJSX$Xote.Elements.jsx("span", {
71
73
  class: "basefn-switch-label",
72
- children: Xote.Component.text(label)
73
- }) : Xote__JSX.jsx(Xote__JSX.jsxFragment, {})
74
+ children: Node$Xote.text(label)
75
+ }) : XoteJSX$Xote.jsx(XoteJSX$Xote.jsxFragment, {})
74
76
  ])
75
77
  });
76
78
  }
@@ -5,7 +5,7 @@ open Xote
5
5
  type tab = {
6
6
  value: string,
7
7
  label: string,
8
- content: Component.node,
8
+ content: Node.node,
9
9
  disabled?: bool,
10
10
  }
11
11
 
@@ -51,10 +51,10 @@ let make = (~tabs: array<tab>, ~defaultValue: option<string>=?) => {
51
51
  onClick={_ => handleTabClick(tab.value, tab.disabled)}
52
52
  disabled={tab.disabled->Option.getOr(false)}
53
53
  >
54
- {Component.text(tab.label)}
54
+ {Node.text(tab.label)}
55
55
  </button>
56
56
  })
57
- ->Component.fragment}
57
+ ->Node.fragment}
58
58
  </div>
59
59
  <div class="basefn-tabs__content">
60
60
  {
@@ -69,5 +69,5 @@ let make = (~tabs: array<tab>, ~defaultValue: option<string>=?) => {
69
69
  ]
70
70
  })
71
71
 
72
- Component.signalFragment(computed)
72
+ Node.signalFragment(computed)
73
73
  }
@@ -1,8 +1,10 @@
1
1
  // Generated by ReScript, PLEASE EDIT WITH CARE
2
2
 
3
- import * as Xote from "xote/src/Xote.res.mjs";
4
- import * as Xote__JSX from "xote/src/Xote__JSX.res.mjs";
3
+ import * as Node$Xote from "xote/src/Node.res.mjs";
4
+ import * as Signal$Xote from "xote/src/Signal.res.mjs";
5
5
  import * as Core__Option from "@rescript/core/src/Core__Option.res.mjs";
6
+ import * as XoteJSX$Xote from "xote/src/XoteJSX.res.mjs";
7
+ import * as Computed$Xote from "xote/src/Computed.res.mjs";
6
8
 
7
9
  import './Basefn__Tabs.css'
8
10
  ;
@@ -10,21 +12,21 @@ import './Basefn__Tabs.css'
10
12
  function Basefn__Tabs(props) {
11
13
  let defaultValue = props.defaultValue;
12
14
  let tabs = props.tabs;
13
- let activeTabSignal = Xote.Signal.make(defaultValue !== undefined ? defaultValue : Core__Option.getOr(Core__Option.map(tabs[0], tab => tab.value), ""), undefined, undefined);
14
- return Xote.Component.signalFragment(Xote.Computed.make(() => {
15
- let activeValue = Xote.Signal.get(activeTabSignal);
16
- return [Xote__JSX.Elements.jsxs("div", {
15
+ let activeTabSignal = Signal$Xote.make(defaultValue !== undefined ? defaultValue : Core__Option.getOr(Core__Option.map(tabs[0], tab => tab.value), ""), undefined, undefined);
16
+ return Node$Xote.signalFragment(Computed$Xote.make(() => {
17
+ let activeValue = Signal$Xote.get(activeTabSignal);
18
+ return [XoteJSX$Xote.Elements.jsxs("div", {
17
19
  class: "basefn-tabs",
18
- children: Xote__JSX.array([
19
- Xote__JSX.Elements.jsx("div", {
20
+ children: XoteJSX$Xote.array([
21
+ XoteJSX$Xote.Elements.jsx("div", {
20
22
  class: "basefn-tabs__list",
21
- children: Xote.Component.fragment(tabs.map(tab => {
22
- let isActive = Xote.Computed.make(() => Xote.Signal.get(activeTabSignal) === tab.value, undefined);
23
- let className = Xote.Computed.make(() => {
24
- let activeClass = Xote.Signal.get(isActive) ? " basefn-tabs__trigger--active" : "";
23
+ children: Node$Xote.fragment(tabs.map(tab => {
24
+ let isActive = Computed$Xote.make(() => Signal$Xote.get(activeTabSignal) === tab.value, undefined);
25
+ let className = Computed$Xote.make(() => {
26
+ let activeClass = Signal$Xote.get(isActive) ? " basefn-tabs__trigger--active" : "";
25
27
  return "basefn-tabs__trigger" + activeClass;
26
28
  }, undefined);
27
- return Xote__JSX.Elements.jsxKeyed("button", {
29
+ return XoteJSX$Xote.Elements.jsxKeyed("button", {
28
30
  class: className,
29
31
  disabled: Core__Option.getOr(tab.disabled, false),
30
32
  onClick: param => {
@@ -33,16 +35,16 @@ function Basefn__Tabs(props) {
33
35
  if (disabled !== undefined && disabled) {
34
36
  return;
35
37
  } else {
36
- return Xote.Signal.set(activeTabSignal, value);
38
+ return Signal$Xote.set(activeTabSignal, value);
37
39
  }
38
40
  },
39
- children: Xote.Component.text(tab.label)
41
+ children: Node$Xote.text(tab.label)
40
42
  }, tab.value, undefined);
41
43
  }))
42
44
  }),
43
- Xote__JSX.Elements.jsx("div", {
45
+ XoteJSX$Xote.Elements.jsx("div", {
44
46
  class: "basefn-tabs__content",
45
- children: Core__Option.getOr(Core__Option.map(tabs.find(tab => tab.value === activeValue), tab => tab.content), Xote__JSX.jsx(Xote__JSX.jsxFragment, {}))
47
+ children: Core__Option.getOr(Core__Option.map(tabs.find(tab => tab.value === activeValue), tab => tab.content), XoteJSX$Xote.jsx(XoteJSX$Xote.jsxFragment, {}))
46
48
  })
47
49
  ])
48
50
  })];
@@ -1,8 +1,8 @@
1
1
  // Generated by ReScript, PLEASE EDIT WITH CARE
2
2
 
3
- import * as Xote from "xote/src/Xote.res.mjs";
4
- import * as Xote__JSX from "xote/src/Xote__JSX.res.mjs";
5
3
  import * as Basefn__Dom from "../Basefn__Dom.res.mjs";
4
+ import * as Signal$Xote from "xote/src/Signal.res.mjs";
5
+ import * as XoteJSX$Xote from "xote/src/XoteJSX.res.mjs";
6
6
 
7
7
  import './Basefn__Textarea.css'
8
8
  ;
@@ -18,13 +18,13 @@ function Basefn__Textarea(props) {
18
18
  let t = Basefn__Dom.target(e);
19
19
  let v = t.value;
20
20
  if (value.TAG === "Reactive") {
21
- Xote.Signal.set(value._0, v);
21
+ Signal$Xote.set(value._0, v);
22
22
  }
23
23
  if (onInput !== undefined) {
24
24
  return onInput(v);
25
25
  }
26
26
  };
27
- return Xote__JSX.Elements.jsx("textarea", {
27
+ return XoteJSX$Xote.Elements.jsx("textarea", {
28
28
  class: "basefn-textarea",
29
29
  value: value,
30
30
  placeholder: placeholder,
@@ -23,7 +23,7 @@ let make = (~size: [#Sm | #Md | #Lg]=#Md) => {
23
23
  <Basefn__Button
24
24
  variant=Ghost onClick={handleClick} class={"basefn-theme-toggle"->ReactiveProp.static}
25
25
  >
26
- {Component.signalFragment(icon)}
26
+ {Node.signalFragment(icon)}
27
27
  </Basefn__Button>
28
28
  </Basefn__Tooltip>
29
29
  }
@@ -1,12 +1,15 @@
1
1
  // Generated by ReScript, PLEASE EDIT WITH CARE
2
2
 
3
- import * as Xote from "xote/src/Xote.res.mjs";
4
- import * as Xote__JSX from "xote/src/Xote__JSX.res.mjs";
3
+ import * as Node$Xote from "xote/src/Node.res.mjs";
5
4
  import * as Basefn__Dom from "../Basefn__Dom.res.mjs";
5
+ import * as Signal$Xote from "xote/src/Signal.res.mjs";
6
6
  import * as Basefn__Icon from "./Basefn__Icon.res.mjs";
7
+ import * as XoteJSX$Xote from "xote/src/XoteJSX.res.mjs";
7
8
  import * as Basefn__Theme from "../styles/Basefn__Theme.res.mjs";
9
+ import * as Computed$Xote from "xote/src/Computed.res.mjs";
8
10
  import * as Basefn__Button from "./Basefn__Button.res.mjs";
9
11
  import * as Basefn__Tooltip from "./Basefn__Tooltip.res.mjs";
12
+ import * as ReactiveProp$Xote from "xote/src/ReactiveProp.res.mjs";
10
13
 
11
14
  import './Basefn__ThemeToggle.css'
12
15
  ;
@@ -17,24 +20,24 @@ function Basefn__ThemeToggle(props) {
17
20
  Basefn__Dom.stopPropagation(e);
18
21
  Basefn__Theme.toggleTheme();
19
22
  };
20
- let icon = Xote.Computed.make(() => {
21
- let match = Xote.Signal.get(Basefn__Theme.currentTheme);
23
+ let icon = Computed$Xote.make(() => {
24
+ let match = Signal$Xote.get(Basefn__Theme.currentTheme);
22
25
  if (match === "Light") {
23
- return [Xote__JSX.jsx(Basefn__Icon.make, {
26
+ return [XoteJSX$Xote.jsx(Basefn__Icon.make, {
24
27
  name: "Sun"
25
28
  })];
26
29
  } else {
27
- return [Xote__JSX.jsx(Basefn__Icon.make, {
30
+ return [XoteJSX$Xote.jsx(Basefn__Icon.make, {
28
31
  name: "Moon"
29
32
  })];
30
33
  }
31
34
  }, undefined);
32
- return Xote__JSX.jsx(Basefn__Tooltip.make, {
35
+ return XoteJSX$Xote.jsx(Basefn__Tooltip.make, {
33
36
  content: "Toggle theme",
34
37
  position: "Bottom",
35
- children: Xote__JSX.jsx(Basefn__Button.make, {
36
- children: Xote.Component.signalFragment(icon),
37
- class: Xote.ReactiveProp.$$static("basefn-theme-toggle"),
38
+ children: XoteJSX$Xote.jsx(Basefn__Button.make, {
39
+ children: Node$Xote.signalFragment(icon),
40
+ class: ReactiveProp$Xote.$$static("basefn-theme-toggle"),
38
41
  onClick: handleClick,
39
42
  variant: "Ghost"
40
43
  })