Packages
corex
0.1.1
0.1.2
0.1.1
0.1.0
0.1.0-rc.1
0.1.0-rc.0
0.1.0-beta.5
0.1.0-beta.4
0.1.0-beta.3
0.1.0-beta.2
0.1.0-beta.1
0.1.0-alpha.33
0.1.0-alpha.32
0.1.0-alpha.31
0.1.0-alpha.30
0.1.0-alpha.29
0.1.0-alpha.28
0.1.0-alpha.27
0.1.0-alpha.26
0.1.0-alpha.25
0.1.0-alpha.24
0.1.0-alpha.23
0.1.0-alpha.22
0.1.0-alpha.21
0.1.0-alpha.20
0.1.0-alpha.19
0.1.0-alpha.18
0.1.0-alpha.17
0.1.0-alpha.16
0.1.0-alpha.15
0.1.0-alpha.14
0.1.0-alpha.13
0.1.0-alpha.12
0.1.0-alpha.11
0.1.0-alpha.10
0.1.0-alpha.9
0.1.0-alpha.8
0.1.0-alpha.7
0.1.0-alpha.6
0.1.0-alpha.5
0.1.0-alpha.4
0.1.0-alpha.3
0.1.0-alpha.2
0.1.0-alpha.1
Accessible and unstyled UI components library written in Elixir and TypeScript that integrates Zag.js state machines into the Phoenix Framework.
Current section
Files
Jump to
Current section
Files
priv/static/chunks/chunk-VMKNATWC.mjs
// lib/live-view-form-input.ts
var PHX_HAS_FOCUSED = "phx-has-focused";
function reapplyLiveViewValueInputUsage(input) {
const p = input;
if (!p.phxPrivate) p.phxPrivate = {};
p.phxPrivate[PHX_HAS_FOCUSED] = true;
}
function notifyPhoenixFormChange(input, value, options = {}) {
if (String(input.value) !== String(value)) {
input.value = value;
}
options.onTouched?.();
if (options.markUsed === false) {
return;
}
reapplyLiveViewValueInputUsage(input);
input.dispatchEvent(new Event("input", { bubbles: true }));
if (options.change !== false) {
input.dispatchEvent(new Event("change", { bubbles: true }));
}
}
function queueLiveViewFormInputSync(input, getValue, onTouched) {
queueMicrotask(() => {
notifyPhoenixFormChange(input, getValue(), { onTouched });
});
}
export {
reapplyLiveViewValueInputUsage,
notifyPhoenixFormChange,
queueLiveViewFormInputSync
};