@laboratoria/sdk-react v11.1.0
@laboratoria/sdk-react
Este repo contiene componentes, hooks y otras cositas que queremos reusar entre
varias interfaces de Laboratoria. Este módulo depende de
@laboratoria/sdk-js y
contiene un hook (useApp) que nos da acceso al objeto app del SDK. Con lo
cual, si estás usando este módulo desde una app en React, no necesitas instalar
directamente @laboratoria/sdk-js.
Se asume que las interfaces en cuestión todas usan React, React router DOM y MUI.
{
"peerDependencies": {
"@mui/icons-material": "^5.15.20",
"@mui/material": "^5.15.20",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-router-dom": "^6.23.1"
}
}Variables de entorno
FIREBASE_PROJECT: Identificador del proyecto de Firebase a usar para auth.FIREBASE_API_KEY: Llave pública del proyecto de Firebase que usar para autenticación.LABORATORIA_CORE_API_URL: URL a API HTTP decore. Por defecto eshttps://us-central1-outpost-272720.cloudfunctions.net/core-api/.GA_ID: para registrar los eventos de Google Analytics en el proyecto correspondiente.SENTRY_DSN: Identificador de Sentry para ingestión de errores. Si no está presente, no se envían errores a Sentry.VERSION: Versión de la interfaz que hace uso desdk-react. Este valor se usa al reportar errores a Sentry. Esta variable normalmente la seteamos desdevite.config.jsde la app que usasdk-react. Por ejemplo.PUBLIC_POSTHOG_KEY: Llave pública del proyecto en Posthog donde enviar datos. Si no está presente no se inicializa el SDK de Posthog.PUBLIC_POSTHOG_HOST: Host the Posthog. (ver configuración de Posthog)
Hooks
El hook useApp nos da una referencia al objeto app de
@laboratoria/sdk-js, el cual se puede configurar a través de variables de
entorno.
Componentes
BooleanPickerChallengeChallengesContentCurrencyTextFieldCustomTextFieldDistinctFilterEnumPickerFlagLoadingMainBackgroundModelAutocompleteModelFormPhoneTextFieldScrollRestorationStudentProjectResultsUserAvatar
MUI
Example
Agregamos fuentes via hoja de estilos en HTML.
<link
href="https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap"
rel="stylesheet">En archivo main o index de nuestra aplicación:
import React from 'react';
import ReactDOM from 'react-dom';
import { AppProvider } from '@laboratoria/sdk-react';
import App from './components/App';
ReactDOM.render(
<React.StrictMode>
<AppProvider
App={App}
productionHostname="admin.laboratoria.la"
/>
</React.StrictMode>,
document.getElementById('root')
);Workers
Este repo incluye unos Web Workers (src/workers/) que debes incluir en tu
carpeta public o similar, para que estén disponibles el la raíz del servidor
web.
Dev install
Para usar este repo linkeado localmente en otros repos que lo usen como
dependencia (laboratoria.la, admin, etc):
# en @laboratoria/sdk-react
rm -rf node_modules
npm i --omit peer
npm run link-sdk-js
# en repo que usa @laboratoria/sdk-react
npm run link-sdk-react
rm -rf node_modules/.vite* && npm start1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago