New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

autocompleter-caba

Package Overview
Dependencies
Maintainers
0
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

autocompleter-caba - npm Package Compare versions

Comparing version 0.1.3 to 0.1.4

10

dist/src/api/urls.d.ts

@@ -1,5 +0,5 @@

export declare const address_suggestions_url = "https://api-serviciosgeo-dev.gcba.gob.ar//calles/nombre";
export declare const address_search_url = "https://api-serviciosgeo-dev.gcba.gob.ar//direcciones/geocoder";
export declare const transform_coordinates_url = "https://api-serviciosgeo-dev.gcba.gob.ar//coordenadas/transformar";
export declare const place_suggestions_url = "https://api-serviciosgeo-dev.gcba.gob.ar//lugares/sugerencias";
export declare const place_search_url = "https://api-serviciosgeo-dev.gcba.gob.ar//lugares/busqueda";
export declare const address_suggestions_url = "http://127.0.0.1:8000/calles/nombre";
export declare const address_search_url = "http://127.0.0.1:8000/direcciones/geocoder";
export declare const transform_coordinates_url = "http://127.0.0.1:8000/coordenadas/transformar";
export declare const place_suggestions_url = "http://127.0.0.1:8000/lugares/sugerencias";
export declare const place_search_url = "http://127.0.0.1:8000/lugares/busqueda";

@@ -1,6 +0,8 @@

const GCBADEV = "https://api-serviciosgeo-dev.gcba.gob.ar/";
export const address_suggestions_url = `${GCBADEV}/calles/nombre`;
export const address_search_url = `${GCBADEV}/direcciones/geocoder`;
export const transform_coordinates_url = `${GCBADEV}/coordenadas/transformar`;
export const place_suggestions_url = `${GCBADEV}/lugares/sugerencias`;
export const place_search_url = `${GCBADEV}/lugares/busqueda`;
// const API = "https://api-serviciosgeo-dev.gcba.gob.ar/";
const API = "http://127.0.0.1:8000";
// GCBA - DEV
export const address_suggestions_url = `${API}/calles/nombre`;
export const address_search_url = `${API}/direcciones/geocoder`;
export const transform_coordinates_url = `${API}/coordenadas/transformar`;
export const place_suggestions_url = `${API}/lugares/sugerencias`;
export const place_search_url = `${API}/lugares/busqueda`;
export { Autocompleter } from './services/Autocompleter.js';
// import { Autocompleter } from './services/Autocompleter.js';
// const autocompleter = new Autocompleter();
// let i=0;
// let calle = prompt("Ingrese la calle:")
// if (calle){
// autocompleter.setCredentials("97855b0c","e926c45155e52bddcfc598210c28bf41")
// autocompleter.getSuggestions(calle,"address").then(data=>
// console.log(data)
// );
// }

@@ -77,2 +77,3 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {

return __awaiter(this, void 0, void 0, function* () {
console.log(this.getCredentials());
const response = yield fetch(`${address_suggestions_url}?calle=${street}`, this.getCredentials());

@@ -93,3 +94,5 @@ return yield response.json();

if (typeof street.intersecciones !== "undefined") {
return (street.intersecciones.map((intersection) => ({ direccion: `${street.nombre_calle} Y ${intersection.nombre_oficial}` })));
return (street.intersecciones.map((intersection) => ({ direccion: `${street.nombre_calle} Y ${intersection.nombre_oficial}` })
// return `${street.nombre_calle} Y ${intersection.nombre_oficial}`;
));
}

@@ -120,2 +123,3 @@ // Alturas válidas para calle ingresada

return { direccion: `${street.nombre_calle} ${street.altura}` };
// return `${street.nombre_calle} ${street.altura}`;
}

@@ -125,2 +129,3 @@ // Calle sin altura

return { direccion: `${street.nombre_calle}` };
// return street.nombre_calle;
});

@@ -127,0 +132,0 @@ return results;

@@ -21,4 +21,4 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {

this.suggesters = {
AddressSuggester: new AddressSuggester(),
PlaceSuggester: new PlaceSuggester(),
AddressSuggester: new AddressSuggester(), // Crea una instancia de AddressSuggester
PlaceSuggester: new PlaceSuggester(), // Crea una instancia de PlaceSuggester
};

@@ -88,3 +88,3 @@ this.AuxSuggesterTypes = this.investTypesSuggesters(SuggesterTypes);

default:
return null;
return null; // Si type no coincide con ninguna opción del enum
}

@@ -91,0 +91,0 @@ }

@@ -41,2 +41,3 @@ class Suggester {

}
// abstract setConfigurations(minTextLength: number, waitingTime: number, maxSuggestions: number):void;
setConfigurations(minTextLength, waitingTime, maxSuggestions) {

@@ -43,0 +44,0 @@ this.setMinTextLength(minTextLength);

{
"name": "autocompleter-caba",
"version": "0.1.3",
"version": "0.1.4",
"private": false,

@@ -5,0 +5,0 @@ "description": "Un paquete para que permite obtener información sobre direcciones y sitios de interés de la Ciudad de Buenos Aires.",

@@ -15,9 +15,9 @@ # Documentación del Paquete Autocompleter

Primero, importar el paquete:
Importar el paquete:
```javascript
import { Autocompleter } from "autocompleter";
import { Autocompleter } from 'autocompleter-caba/dist/src/index';
```
Luego, crear una instancia de Autocompleter:
Crear una instancia de Autocompleter:

@@ -30,3 +30,3 @@ ```javascript

Antes de utilizar las funciones de búsqueda, asegurarse de establecer las credenciales del cliente utilizando el método setCredentials(clientId, clientSecret):
Establecer las credenciales del cliente utilizando el método setCredentials(clientId, clientSecret):

@@ -39,3 +39,3 @@ ```javascript

Se puede habilitar o desactivar los suggesters según necesidades utilizando los métodos enableSuggester(suggester) y disableSuggester(suggester):
Se puede habilitar o desactivar los _suggesters_ según necesidades utilizando los métodos enableSuggester(suggester) y disableSuggester(suggester):

@@ -49,3 +49,3 @@ ```javascript

Para obtener sugerencias de los suggesters seleccionados según la entrada de texto del usuario, utilizar el método getSuggestions(input) (Ver en la sección Métodos los parámetros opcionales):
Para obtener sugerencias basadas en la entrada del usuario, utilizar el método getSuggestions(input):

@@ -58,6 +58,6 @@ ```javascript

Para buscar direcciones, utilizar el método getSearchAddress(address):
Para buscar direcciones, utilizar el método getSearch(address):
```javascript
const searchResult = await autocompleter.getSearchAddress("Callao 520");
const searchResult = await autocompleter.getSearch("Callao 520");
```

@@ -73,10 +73,2 @@

## Buscar Información
Para buscar información sobre los Suggesters habilitados, utilizar el método getSearch(string_de_busqueda):
```javascript
const searchResult = await autocompleter.getSearch("Callao 520");
```
Las siguientes funciones permiten a los usuarios interactuar con la aplicación Autocompleter de diversas maneras, desde configurar sus credenciales hasta obtener sugerencias y resultados de búsqueda específicos.

@@ -98,3 +90,3 @@

- getSuggesters(): Devuelve un objeto que contiene todos los suggesters disponibles en la aplicación.
- getSuggesters(): Devuelve un objeto que contiene todos los _suggesters_ disponibles en la aplicación.

@@ -109,6 +101,229 @@ - getSuggestions(input: string, typeSuggester: string): Busca sugerencias basadas en la entrada de texto proporcionada. TypeSuggester pueder ser "address" o "place", por dafault es "all".

## Ejemplos:
### Autocompleter en Angular
#### Creación del Proyecto
Utilizar Angular CLI para crear un nuevo proyecto. Abrir una consola de comando y ejecutar:
```bash
ng new autocompleter-app
```
Seguir las instrucciones para configurar el proyecto. Una vez creado, navegar hacia la raiz del proyecto:
```bash
cd autocompleter-app
```
#### Instalación del Paquete
Instalar el autocompleter-caba:
```bash
npm install autocompleter-caba
```
#### Configuración de Componentes
En el archivo `.ts` (por ejemplo `src/app/app.component.ts`):
* Incializar e instanciar la clase Autocompleter en el constructor del componente _AppComponent_.
* Esteblecer las credenciales para el uso del Autocompleter.
* Crear y definir las funciones que utilizarán los métodos de la clase Autocompleter (ejemplo: getSuggestions y getSearch.)
```ts
export class AppComponent {
title = 'autocompleter-app';
calle: string = '';
suggestions: any[] = [];
search: any = null;
autocompleter: Autocompleter;
typingTimeout: any;
constructor() {
this.autocompleter = new Autocompleter();
this.autocompleter.setCredentials('client_id', 'client_secret_id');
}
onInputChange() {
clearTimeout(this.typingTimeout);
this.typingTimeout = setTimeout(() => {
this.getSuggestions();
}, 1000);
}
getSuggestions() {
if (this.calle) {
this.autocompleter.getSuggestions(this.calle, 'address').then((data: any) => {
this.search = null;
this.suggestions = data;
console.log(data);
}).catch((error: any) => {
console.error('Error obteniendo sugerencias:', error);
});
}
if (this.calle == ""){
this.suggestions = [];
}
}
getSearch() {
if (this.calle) {
this.autocompleter.getSearch(this.calle).then((data: any) => {
this.search = data.data;
this.suggestions = [];
}).catch((error: any) => {
console.error('Error obteniendo dirección:', error);
});
}
if (this.calle == ""){
this.suggestions = [];
}
}
}
```
En un _template_ crear la estructura necesaria para observar los resultados de la clase Autocompleter. Por ejemplo, en `src/app/app.component.html` agregar la siguiente estructura:
```html
<div style="text-align:center">
<h1> {{ title }} </h1>
<input
id="calle"
[(ngModel)]="calle"
(input)="onInputChange()"
placeholder="Ingrese la calle"
/>
<button (click)="getSearch()">Buscar</button>
<ul *ngIf="suggestions.length > 0" style="list-style: none;">
<li *ngFor="let suggestion of suggestions">{{ suggestion.value }}</li>
</ul>
<div *ngIf="search != null">{{search.direccion}}</div>
<div id="mapa"></div>
</div>
```
### Autocompleter en ReactJs
#### Creación del Proyecto
Crear un proyecto con CRA o Vite. Abrir una consola de comando y ejecutar:
```bash
npm create vite@latest autocompleter-app
```
Seguir las instrucciones para configurar el proyecto. Una vez creado, navegar hacia la raiz del proyecto:
```bash
cd autocompleter-app
```
#### Instalación del Paquete
Instalar el autocompleter-caba:
```bash
npm install autocompleter-caba
```
#### Configuración de Componentes
* Crear un archivo App.jsx y configurar el componente App para utilizar el autocompleter.
```jsx
function App() {
const [calle, setCalle] = useState('');
const [suggestions, setSuggestions] = useState([]);
const [search, setSearch] = useState(null);
const [typingTimeout, setTypingTimeout] = useState(null);
const autocompleter = new Autocompleter();
// ...
}
```
* Inicializar e instanciar la clase Autocompleter en el componente App.
```jsx
const autocompleter = new Autocompleter();
```
* Establecer las credenciales para el uso del Autocompleter.
```jsx
useEffect(() => {
autocompleter.setCredentials('client_id', 'client_secret_id');
}, []);
```
* Crear y definir las funciones que utilizarán los métodos de la clase Autocompleter (ejemplo: getSuggestions y getSearch) dentro del componente App.
```jsx
const handleInputChange = (e) => {
setCalle(e.target.value);
clearTimeout(typingTimeout);
setTypingTimeout(
setTimeout(() => {
getSuggestions();
}, 1000)
);
};
const getSuggestions = () => {
if (calle) {
autocompleter
.getSuggestions(calle, 'address')
.then((data) => {
setSearch(null);
setSuggestions(data);
console.log(data);
})
.catch((error) => {
console.error('Error obteniendo sugerencias:', error);
});
}
if (calle === '') {
setSuggestions([]);
}
};
const getSearch = () => {
if (calle) {
autocompleter
.getSearch(calle)
.then((data) => {
setSearch(data.data);
setSuggestions([]);
})
.catch((error) => {
console.error('Error obteniendo dirección:', error);
});
}
if (calle === '') {
setSuggestions([]);
}
};
```
* Estructura de la Interfaz: En el _return_ del componente se debe crear la estructura necesaria para mostrar los resultados del autocompleter.
```jsx
return (
<div style={{ textAlign: 'center' }}>
<h1>Autocompleter App</h1>
<input
id="calle"
value={calle}
onChange={handleInputChange}
placeholder="Ingrese la calle"
/>
<button onClick={getSearch}>Buscar</button>
<ul style={{ listStyle: 'none', padding: 0 }}>
{suggestions.map((suggestion, index) => (
<li key={index}>{suggestion.value}</li>
))}
</ul>
{search && <div>{search.direccion}</div>}
</div>
);
}
```
## Notas
- Asegurarse de establecer las credenciales del cliente antes de realizar cualquier búsqueda.
- Los suggesters deben estar habilitados antes de utilizar las funciones de búsqueda correspondientes.
- Los _suggesters_ deben estar habilitados antes de utilizar las funciones de búsqueda correspondientes.
- El paquete tiene restricciones en cuanto a la longitud mínima de texto y el número máximo de sugerencias.
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc