You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

35 lines
1.3 KiB

/** @odoo-module **/
import { registry } from "@web/core/registry";
import { useInputField } from "@web/views/fields/input_field_hook";
const { Component, useRef } = owl;
/**
* We define this module for the function of creating a time picker widget
*
*/
export class FieldTimePicker extends Component {
setup() {
this.input = useRef('input_time');
useInputField({ getValue: () => this.props.record.data[this.props.name] || "", refName: "input_time" });
}
onBlur(){
/**
* Handle the blur event for the timepicker input field.
*
* This function is responsible for handling the blur event on the timepicker input field.
* It checks if the close button is present in the timepicker, and if so, it adds a click event
* listener to it to handle the closing of the timepicker.
*
* @returns {void}
*/
this.props.record.update({ [this.props.name] : this.input.el?.value})
}
}
// Set the template for the FieldTimePicker component
FieldTimePicker.template = 'FieldTimePicker';
FieldTimePicker.supportedTypes = ["char"]
export const timepicker = {
component: FieldTimePicker
}
// Add the timepicker to the fields category
registry.category("fields").add("timepicker_time", timepicker);