@tachui/primitives 0.10.0 → 0.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.
|
@@ -104,6 +104,15 @@ export declare class EnhancedButton extends ComponentWithCSSClasses implements C
|
|
|
104
104
|
stateSignal: () => ButtonState;
|
|
105
105
|
private setState;
|
|
106
106
|
theme: ButtonTheme;
|
|
107
|
+
/**
|
|
108
|
+
* CSS properties this component has written to its element.
|
|
109
|
+
*
|
|
110
|
+
* What separates "a modifier set this" from "I set this last time", which the
|
|
111
|
+
* element's own value cannot answer.
|
|
112
|
+
*/
|
|
113
|
+
private readonly ownStyleProperties;
|
|
114
|
+
/** So the ownerless-render notice is said once, not once per prop. */
|
|
115
|
+
private warnedOwnerless;
|
|
107
116
|
constructor(props: ButtonProps, theme?: ButtonTheme);
|
|
108
117
|
/**
|
|
109
118
|
* Set up DOM event listeners for button interactions
|
|
@@ -126,9 +135,63 @@ export declare class EnhancedButton extends ComponentWithCSSClasses implements C
|
|
|
126
135
|
*/
|
|
127
136
|
private resolveColorValue;
|
|
128
137
|
/**
|
|
129
|
-
* Check if button is enabled
|
|
138
|
+
* Check if button is enabled.
|
|
139
|
+
*
|
|
140
|
+
* Resolves, the way `isLoading` already did. Handing back the signal itself
|
|
141
|
+
* made every consumer wrong in the same direction: `if (!isEnabled)` on a
|
|
142
|
+
* function is never true, so disabled styling never applied and the press
|
|
143
|
+
* guard never fired, while a reactive effect reading this subscribed to
|
|
144
|
+
* nothing.
|
|
145
|
+
*/
|
|
146
|
+
isEnabled(): boolean;
|
|
147
|
+
/**
|
|
148
|
+
* The `isEnabled` prop in the form it was given, signal and all.
|
|
149
|
+
*
|
|
150
|
+
* `render` needs the unresolved form: a boolean it can hand straight to the
|
|
151
|
+
* renderer, or a signal the renderer can subscribe to. Everything else wants
|
|
152
|
+
* the resolved value and should use {@link isEnabled}.
|
|
153
|
+
*/
|
|
154
|
+
private enabledSource;
|
|
155
|
+
/**
|
|
156
|
+
* `disabled` as the renderer wants it.
|
|
157
|
+
*
|
|
158
|
+
* The renderer subscribes to a prop whose value is a signal and re-applies
|
|
159
|
+
* it on change, which is the only path that works here — the reactive style
|
|
160
|
+
* effect runs on DOM-ready, which `renderComponent` never fires.
|
|
161
|
+
*
|
|
162
|
+
* Built fresh on every render rather than cached, and the identity matters
|
|
163
|
+
* as much as the value. A render happens inside an effect, so an enclosing
|
|
164
|
+
* component re-rendering for any reason at all disposes this scope and takes
|
|
165
|
+
* the renderer's prop subscription with it. The renderer then diffs the new
|
|
166
|
+
* props against the old by identity and skips anything unchanged — so a
|
|
167
|
+
* cached accessor would be recognised, skipped, and never resubscribed,
|
|
168
|
+
* leaving the attribute frozen at whatever it last read. A new memo each
|
|
169
|
+
* time is a prop that has changed, which is precisely what has happened.
|
|
170
|
+
*/
|
|
171
|
+
/**
|
|
172
|
+
* The computed styles, as the renderer wants them.
|
|
173
|
+
*
|
|
174
|
+
* Owned the same way `disabled` is, and for the same reason: a subscription
|
|
175
|
+
* made where nothing disposes it is held for the life of the process. With an
|
|
176
|
+
* owner the renderer tracks the styles and re-applies them; without one they
|
|
177
|
+
* are a snapshot, which is still more than the DOM-ready effect managed on
|
|
178
|
+
* that path.
|
|
179
|
+
*
|
|
180
|
+
* Applied *before* modifiers, which is the ordering that makes modifier
|
|
181
|
+
* precedence work by construction rather than by inspecting what is already
|
|
182
|
+
* on the element.
|
|
183
|
+
*/
|
|
184
|
+
/**
|
|
185
|
+
* Says once, in development, that this Button is rendering where nothing can
|
|
186
|
+
* dispose a subscription — so its reactive props are snapshots.
|
|
187
|
+
*
|
|
188
|
+
* The alternative is a control that silently stops tracking depending on how
|
|
189
|
+
* its container happened to mount it. The comparison is written inline so a
|
|
190
|
+
* bundler can drop it.
|
|
130
191
|
*/
|
|
131
|
-
|
|
192
|
+
private warnOwnerlessRender;
|
|
193
|
+
private styleProp;
|
|
194
|
+
private disabledProp;
|
|
132
195
|
/**
|
|
133
196
|
* Render the button component
|
|
134
197
|
*/
|
|
@@ -139,7 +202,8 @@ export declare class EnhancedButton extends ComponentWithCSSClasses implements C
|
|
|
139
202
|
debugLabel?: string | undefined;
|
|
140
203
|
className: string | Signal<string>;
|
|
141
204
|
type: string;
|
|
142
|
-
disabled: boolean;
|
|
205
|
+
disabled: boolean | (() => boolean);
|
|
206
|
+
style: Record<string, any> | (() => Record<string, any>);
|
|
143
207
|
onClick: (() => void) | undefined;
|
|
144
208
|
};
|
|
145
209
|
children: import("@tachui/core").DOMNode[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/controls/Button.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,gCAAgC,EAChC,cAAc,EACd,MAAM,EACP,MAAM,cAAc,CAAA;AACrB,OAAO,
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/controls/Button.ts"],"names":[],"mappings":"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"}
|
package/dist/controls/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as s, a as t, E as l, b as n, c as g, L as i, d as o, P as c, e as T, f as h, T as k, g as r, h as d, i as u, j as B } from "../Picker-
|
|
1
|
+
import { B as s, a as t, E as l, b as n, c as g, L as i, d as o, P as c, e as T, f as h, T as k, g as r, h as d, i as u, j as B } from "../Picker-DoiXP31Q.js";
|
|
2
2
|
export {
|
|
3
3
|
s as Button,
|
|
4
4
|
t as ButtonStyles,
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Divider as y, DividerComponent as j, DividerStyles as S, DividerUtils as A, HStack as L, Spacer as O, SpacerComponent as C, VStack as V, ZStack as H, defaultDividerTheme as E } from "./layout/index.js";
|
|
2
2
|
import { E as F, H as q, T as U, a as _, b as N, c as D } from "./Text-DmpfnY1o.js";
|
|
3
3
|
import { E as R, a as M, H as G, b as K, c as Z, d as z, e as J, f as Q, g as X, I as Y, h as ee, i as te, j as oe, S as ne, k as ie } from "./ScrollView-DdlbVVKn.js";
|
|
4
|
-
import { B as ae, a as se, E as ce, b as le, c as pe, L as de, d as ge, P as ue, e as me, f as he, T as fe, g as ve, h as we, i as xe, j as ke } from "./Picker-
|
|
4
|
+
import { B as ae, a as se, E as ce, b as le, c as pe, L as de, d as ge, P as ue, e as me, f as he, T as fe, g as ve, h as we, i as xe, j as ke } from "./Picker-DoiXP31Q.js";
|
|
5
5
|
import { B as Te, a as be, b as Pe, c as Ie, d as ye, e as je, f as Se } from "./BasicInput-CxQxJL1j.js";
|
|
6
6
|
import { LayoutComponent as Le } from "@tachui/core/components";
|
|
7
7
|
import { withModifiers as Ce } from "@tachui/core";
|
|
@@ -425,7 +425,7 @@ const B = {
|
|
|
425
425
|
}
|
|
426
426
|
console.groupEnd();
|
|
427
427
|
}
|
|
428
|
-
}, w = "@tachui/primitives", x = "0.
|
|
428
|
+
}, w = "@tachui/primitives", x = "0.11.0", T = w, b = x;
|
|
429
429
|
export {
|
|
430
430
|
Te as BasicForm,
|
|
431
431
|
be as BasicFormImplementation,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tachui/primitives",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.0",
|
|
4
4
|
"description": "Basic UI components for tachUI framework",
|
|
5
5
|
"homepage": "https://tachui.dev/",
|
|
6
6
|
"type": "module",
|
|
@@ -48,8 +48,8 @@
|
|
|
48
48
|
"lint": "oxlint src"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@tachui/core": "0.
|
|
52
|
-
"@tachui/modifiers": "0.
|
|
51
|
+
"@tachui/core": "0.11.0",
|
|
52
|
+
"@tachui/modifiers": "0.11.0"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"@types/node": "^20.0.0",
|