Files
rspade_system/storage-working/rsx-tmp/babel_cache/2f7a69badf3eacce59a508a0c3f2cae7_modern.js
root 78553d4edf Fix code quality violations for publish
Remove unused blade settings pages not linked from UI
Convert remaining frontend pages to SPA actions
Convert settings user_settings and general to SPA actions
Convert settings profile pages to SPA actions
Convert contacts and projects add/edit pages to SPA actions
Convert clients add/edit page to SPA action with loading pattern
Refactor component scoped IDs from $id to $sid
Fix jqhtml comment syntax and implement universal error component system
Update all application code to use new unified error system
Remove all backwards compatibility - unified error system complete
Phase 5: Remove old response classes
Phase 3-4: Ajax response handler sends new format, old helpers deprecated
Phase 2: Add client-side unified error foundation
Phase 1: Add server-side unified error foundation
Add unified Ajax error response system with constants

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-21 04:35:01 +00:00

48 lines
5.9 KiB
JavaScript
Executable File

"use strict";
class Checkbox_Input extends Form_Input_Abstract {
on_create() {
this.data.checked = false;
this.checked_value = this.args.checked_value || '1';
this.unchecked_value = this.args.unchecked_value || '0';
}
on_ready() {
// Connect label clicks to checkbox
const $input = this.$sid('input');
const $label = this.$sid('label');
if ($label.exists()) {
const input_id = $input.attr('id');
$label.attr('for', input_id);
}
}
/**
* val() - Get or set the checkbox state
* @param {string|boolean} [value] - If provided, sets the checked state
* @returns {string} The checked_value or unchecked_value when called as getter
*/
val(value) {
if (arguments.length === 0) {
// Getter
const is_checked = this.$sid('input').prop('checked');
return is_checked ? this.checked_value : this.unchecked_value;
} else {
// Setter - accepts boolean, checked_value, or unchecked_value
let should_check = false;
if (typeof value === 'boolean') {
should_check = value;
} else if (value === this.checked_value || value === '1' || value === 1 || value === true) {
should_check = true;
}
this.data.checked = should_check;
if (this.$sid('input').exists()) {
this.$sid('input').prop('checked', should_check);
}
}
}
async seed() {
// Randomly check or uncheck
this.val(Math.random() > 0.5);
}
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDaGVja2JveF9JbnB1dCIsIkZvcm1fSW5wdXRfQWJzdHJhY3QiLCJvbl9jcmVhdGUiLCJkYXRhIiwiY2hlY2tlZCIsImNoZWNrZWRfdmFsdWUiLCJhcmdzIiwidW5jaGVja2VkX3ZhbHVlIiwib25fcmVhZHkiLCIkaW5wdXQiLCIkaWQiLCIkbGFiZWwiLCJleGlzdHMiLCJpbnB1dF9pZCIsImF0dHIiLCJ2YWwiLCJ2YWx1ZSIsImFyZ3VtZW50cyIsImxlbmd0aCIsImlzX2NoZWNrZWQiLCJwcm9wIiwic2hvdWxkX2NoZWNrIiwic2VlZCIsIk1hdGgiLCJyYW5kb20iXSwic291cmNlcyI6WyJyc3gvdGhlbWUvY29tcG9uZW50cy9pbnB1dHMvY2hlY2tib3hfaW5wdXQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiY2xhc3MgQ2hlY2tib3hfSW5wdXQgZXh0ZW5kcyBGb3JtX0lucHV0X0Fic3RyYWN0IHtcbiAgICBvbl9jcmVhdGUoKSB7XG4gICAgICAgIHRoaXMuZGF0YS5jaGVja2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2hlY2tlZF92YWx1ZSA9IHRoaXMuYXJncy5jaGVja2VkX3ZhbHVlIHx8ICcxJztcbiAgICAgICAgdGhpcy51bmNoZWNrZWRfdmFsdWUgPSB0aGlzLmFyZ3MudW5jaGVja2VkX3ZhbHVlIHx8ICcwJztcbiAgICB9XG5cbiAgICBvbl9yZWFkeSgpIHtcbiAgICAgICAgLy8gQ29ubmVjdCBsYWJlbCBjbGlja3MgdG8gY2hlY2tib3hcbiAgICAgICAgY29uc3QgJGlucHV0ID0gdGhpcy4kaWQoJ2lucHV0Jyk7XG4gICAgICAgIGNvbnN0ICRsYWJlbCA9IHRoaXMuJGlkKCdsYWJlbCcpO1xuXG4gICAgICAgIGlmICgkbGFiZWwuZXhpc3RzKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IGlucHV0X2lkID0gJGlucHV0LmF0dHIoJ2lkJyk7XG4gICAgICAgICAgICAkbGFiZWwuYXR0cignZm9yJywgaW5wdXRfaWQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogdmFsKCkgLSBHZXQgb3Igc2V0IHRoZSBjaGVja2JveCBzdGF0ZVxuICAgICAqIEBwYXJhbSB7c3RyaW5nfGJvb2xlYW59IFt2YWx1ZV0gLSBJZiBwcm92aWRlZCwgc2V0cyB0aGUgY2hlY2tlZCBzdGF0ZVxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBjaGVja2VkX3ZhbHVlIG9yIHVuY2hlY2tlZF92YWx1ZSB3aGVuIGNhbGxlZCBhcyBnZXR0ZXJcbiAgICAgKi9cbiAgICB2YWwodmFsdWUpIHtcbiAgICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIC8vIEdldHRlclxuICAgICAgICAgICAgY29uc3QgaXNfY2hlY2tlZCA9IHRoaXMuJGlkKCdpbnB1dCcpLnByb3AoJ2NoZWNrZWQnKTtcbiAgICAgICAgICAgIHJldHVybiBpc19jaGVja2VkID8gdGhpcy5jaGVja2VkX3ZhbHVlIDogdGhpcy51bmNoZWNrZWRfdmFsdWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBTZXR0ZXIgLSBhY2NlcHRzIGJvb2xlYW4sIGNoZWNrZWRfdmFsdWUsIG9yIHVuY2hlY2tlZF92YWx1ZVxuICAgICAgICAgICAgbGV0IHNob3VsZF9jaGVjayA9IGZhbHNlO1xuXG4gICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgICAgICBzaG91bGRfY2hlY2sgPSB2YWx1ZTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IHRoaXMuY2hlY2tlZF92YWx1ZSB8fCB2YWx1ZSA9PT0gJzEnIHx8IHZhbHVlID09PSAxIHx8IHZhbHVlID09PSB0cnVlKSB7XG4gICAgICAgICAgICAgICAgc2hvdWxkX2NoZWNrID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5kYXRhLmNoZWNrZWQgPSBzaG91bGRfY2hlY2s7XG4gICAgICAgICAgICBpZiAodGhpcy4kaWQoJ2lucHV0JykuZXhpc3RzKCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLiRpZCgnaW5wdXQnKS5wcm9wKCdjaGVja2VkJywgc2hvdWxkX2NoZWNrKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFzeW5jIHNlZWQoKSB7XG4gICAgICAgIC8vIFJhbmRvbWx5IGNoZWNrIG9yIHVuY2hlY2tcbiAgICAgICAgdGhpcy52YWwoTWF0aC5yYW5kb20oKSA+IDAuNSk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOztBQUFBLE1BQU1BLGNBQWMsU0FBU0MsbUJBQW1CLENBQUM7RUFDN0NDLFNBQVNBLENBQUEsRUFBRztJQUNSLElBQUksQ0FBQ0MsSUFBSSxDQUFDQyxPQUFPLEdBQUcsS0FBSztJQUN6QixJQUFJLENBQUNDLGFBQWEsR0FBRyxJQUFJLENBQUNDLElBQUksQ0FBQ0QsYUFBYSxJQUFJLEdBQUc7SUFDbkQsSUFBSSxDQUFDRSxlQUFlLEdBQUcsSUFBSSxDQUFDRCxJQUFJLENBQUNDLGVBQWUsSUFBSSxHQUFHO0VBQzNEO0VBRUFDLFFBQVFBLENBQUEsRUFBRztJQUNQO0lBQ0EsTUFBTUMsTUFBTSxHQUFHLElBQUksQ0FBQ0MsR0FBRyxDQUFDLE9BQU8sQ0FBQztJQUNoQyxNQUFNQyxNQUFNLEdBQUcsSUFBSSxDQUFDRCxHQUFHLENBQUMsT0FBTyxDQUFDO0lBRWhDLElBQUlDLE1BQU0sQ0FBQ0MsTUFBTSxDQUFDLENBQUMsRUFBRTtNQUNqQixNQUFNQyxRQUFRLEdBQUdKLE1BQU0sQ0FBQ0ssSUFBSSxDQUFDLElBQUksQ0FBQztNQUNsQ0gsTUFBTSxDQUFDRyxJQUFJLENBQUMsS0FBSyxFQUFFRCxRQUFRLENBQUM7SUFDaEM7RUFDSjs7RUFFQTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0VBQ0lFLEdBQUdBLENBQUNDLEtBQUssRUFBRTtJQUNQLElBQUlDLFNBQVMsQ0FBQ0MsTUFBTSxLQUFLLENBQUMsRUFBRTtNQUN4QjtNQUNBLE1BQU1DLFVBQVUsR0FBRyxJQUFJLENBQUNULEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQ1UsSUFBSSxDQUFDLFNBQVMsQ0FBQztNQUNwRCxPQUFPRCxVQUFVLEdBQUcsSUFBSSxDQUFDZCxhQUFhLEdBQUcsSUFBSSxDQUFDRSxlQUFlO0lBQ2pFLENBQUMsTUFBTTtNQUNIO01BQ0EsSUFBSWMsWUFBWSxHQUFHLEtBQUs7TUFFeEIsSUFBSSxPQUFPTCxLQUFLLEtBQUssU0FBUyxFQUFFO1FBQzVCSyxZQUFZLEdBQUdMLEtBQUs7TUFDeEIsQ0FBQyxNQUFNLElBQUlBLEtBQUssS0FBSyxJQUFJLENBQUNYLGFBQWEsSUFBSVcsS0FBSyxLQUFLLEdBQUcsSUFBSUEsS0FBSyxLQUFLLENBQUMsSUFBSUEsS0FBSyxLQUFLLElBQUksRUFBRTtRQUN2RkssWUFBWSxHQUFHLElBQUk7TUFDdkI7TUFFQSxJQUFJLENBQUNsQixJQUFJLENBQUNDLE9BQU8sR0FBR2lCLFlBQVk7TUFDaEMsSUFBSSxJQUFJLENBQUNYLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQ0UsTUFBTSxDQUFDLENBQUMsRUFBRTtRQUM1QixJQUFJLENBQUNGLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQ1UsSUFBSSxDQUFDLFNBQVMsRUFBRUMsWUFBWSxDQUFDO01BQ25EO0lBQ0o7RUFDSjtFQUVBLE1BQU1DLElBQUlBLENBQUEsRUFBRztJQUNUO0lBQ0EsSUFBSSxDQUFDUCxHQUFHLENBQUNRLElBQUksQ0FBQ0MsTUFBTSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7RUFDakM7QUFDSiIsImlnbm9yZUxpc3QiOltdfQ==