# DateRange
## Definición
Archivo: `induxsoft.controls.js`
Es un componente que ofrece una interfaz para elegir un rango de fechas.
## Ejemplos
Maquetación Html
```html
```
**Ejemplos de uso con JavaScript**
Establecer valores al componente.
```js
function hoy() {
const fecha = new Date();
const yyyy = fecha.getFullYear();
const MM = String(fecha.getMonth() + 1).padStart(2, '0');
const dd = String(fecha.getDate()).padStart(2, '0');
return `${yyyy}-${MM}-${dd}`;
}
function establecerDatos() {
const dtr = document.getElementById("dtr");
let obj = {
start: hoy(),
end: hoy()
};
dtr.setData(obj);
}
establecerDatos();
```
Obtener el valor actual del componente.
```js
const dtr = document.getElementById("dtr");
let data = dtr.getData();
console.log(data); // Salida Esperada: {start: 'yyyy-MM-dd', end: 'yyyy-MM-dd'}
```
## Atributos
#### hidden-input-name-start (requerido)
Nombre del elemento input que guardará el valor de la fecha inicial, el nombre sera tomado por el navegador como parte de la carga útil.
Tipo: `string`, valor predeterminado: `""`
```html
```
#### hidden-input-name-end (requerido)
Nombre del elemento input que guardará el valor de la fecha final, el nombre sera tomado por el navegador como parte de la carga útil.
Tipo: `string`, valor predeterminado: `""`
```html
```
#### start (opcional)
Fecha inicial en formato: yyyy-MM-dd, este valor sera enviado por el formulario al campo establecido en el atributo `hidden-input-name-start`.
Tipo: `date`, valor predeterminado: `""`
```html
```
#### end (opcional)
Fecha final en formato: yyyy-MM-dd, este valor sera enviado por el formulario al campo establecido en el atributo `hidden-input-name-end`.
Tipo: `date`, valor predeterminado: `""`
```html
```
#### data (opcional)
Una cadena que representa un objeto JSON con la información de fecha inicial y fecha final para inicializar el componente.
Tipo: `array`, valor predeterminado: `{}`
```html
```
#### id (opcional)
Identificador del componente, este valor puede ser usado para acceder facilmente al componente mediante javascript.
Tipo: `string`, Predeterminado: `""`
```html
```
## Propiedades
- `onChanging`: (function) Permite establecer una función (callback) que sera invocada cada que se establezca un nuevo valor en el componente.
## Métodos
#### setData
Establece el valor de la fecha inicial y final
**Parámetros:**
- `array` **obj** Pares clave-valor con los datos a establecer. (requerido)
```Js
setData(obj): void
```
#### getData
Retorna un array de pares clave-valor con la información de la fecha inicial y final actual del componente.
```Js
getData(): array{}
```