@marxa/devkit
v12.2209.3
Published
Librería de servicios auxiliares para proyectos de **Angular**.
Downloads
6
Readme
@marxa/devkit
Librería de servicios auxiliares para proyectos de Angular.
| ❗ IMPORTANTE ❗ | |-----------------------------------------| | Esta librería requiere @angular/material y opcionalmente @angular/fire | | Esta librería no funciona en proyectos de versiones anteriores a Angular 11, puedes usar la versión para Angular 9 si lo necesitas |
This library was generated with Angular CLI version 11.0.9.
| ❗ IMPORTANT ❗ | |----------------------------------------| | This documentation is writed in mexican spanish for latin developers for motivate to they always read software documentation. But you always can count on the cunning of google translate XD.|
| ❗ IMPORTANT ❗ | |----------------------------------------| | MxAlert cambió a la versión oficial 2 que maneja el soporte directo de sweetalert |
Instalación
Para que algunos componentes funciones, primero deberás instalar también @angular/material
ng add @angular/material
Para opciónes del módulo de alertas, si deseas registrar errores en producción en Firestore deberás instalar @angular/fire Para instrucciones detalladas ve al módulo de alertas
ng add @angular/fire
Instalación simple
Para instalación manual de la librería, puedes uar el siguiente comando
Como dependencia Node
- Inicia sesión en https://marxa.jfrog.io/. En el menú de navegación ve a Set me up. y sigue las instrucciones para ingresar tus contraseñas.
- Si usas VSCode, en la terminal corre el comando
code ~/.npmrc
, si no, navega a~/.npmrc
en tu explorador de archivos y ábrelo. - Pega el código resultante de las instrucciones, asegurándote que la URL del artifact tenga el prefijo
@marxa:
en cada uno de los registros. Ejemplo:
_auth = <PASSWORD> (converted to base 64)
email = [email protected]
always-auth = true
@marxa:registry = https://marxa.jfrog.io/artifactory/api/npm/mx-library-npm/
- Importa la dependencia
npm i -s @marxa/devkit
Como submódulo
- Asegúrate de que tienes permisos para copiar el repositorio
- Abre la terminal en la raíz de tu proyecto
- Corre los comandos
git submodule init git submodule add -b develop https://github.com/Marxa-Digital/mx-devkit libs/marxa/devkit
- Configura el archivo
angular.json
incluyendo este bloque de códgio dentro deprojects
{ "projects":{ "@marxa/devkit": { "projectType": "library", "root": "projects/marxa/devkit", "sourceRoot": "projects/marxa/devkit/src", "prefix": "mx", "architect": { "build": { "builder": "@angular-devkit/build-angular:ng-packagr", "options": { "project": "projects/marxa/devkit/ng-package.json" }, "configurations": { "production": { "tsConfig": "projects/marxa/devkit/tsconfig.lib.prod.json" }, "development": { "tsConfig": "projects/marxa/devkit/tsconfig.lib.json" } }, "defaultConfiguration": "production" }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "projects/marxa/devkit/src/test.ts", "tsConfig": "projects/marxa/devkit/tsconfig.spec.json", "karmaConfig": "projects/marxa/devkit/karma.conf.js" } } } } } }
- Configura el archivo
tsconfig.json
incluyendo este bloque de códgio dentro depaths
{ "compilerOptions": { ... "paths":{ "@marxa/devkit": [ "dist/marxa/devkit/marxa-devkit", "dist/marxa/devkit" ], } } }
- Corre el siguiente comando
cd libs/marxa/devkit && start cmd /k ng build @marxa/devkit --watch
- Instala la lib de manera manual con el siguiente comando
npm i "./dist/marxa/devkit"
Configuración de estilos
En el archivo styles.scss importa los estilos de la biblioteca
@import '~@marxa/devkit/src/lib/styles/stylesheets/all.scss';
Instalación con compatibilidad
Puedes instalar también mediante ng add
lo que también modificará y agregará algunos archivos que pueden ser de mucha utilidad.
ng add @marxa/devkit
| ❗ IMPORTANTE ❗ | |-----------------------------------------| | Esta opción sobreescribirá los archivos ya existentes. |
Arbol de archivos que se crearán o sobreescribirán
src
| app
| | shared
| | | firebase.module.ts
| | | marxa.module.ts
| | | material.module.ts
| | app.component.ts
| | app.module.ts
| environments
| | environment.ts
| | environment.prod.ts
| styles.scss
Este comando modificará el archivo app.component.ts
con las siguientes configuraciones por defecto:
import { Component } from '@angular/core';
import { MxAlert, MxColor, MxText } from "@marxa/devkit";
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss']
})
export class AppComponent {
constructor(
private _color: MxColor,
private _text: MxText,
private _alert: MxAlert
) {
// Activa el registro de errores en una colecciónde firestore si es `true`. Recuerda que debes configurar un proyecto de firebase primero.
this._alert.storeError = false
// Carga la librería de íconos Font Awesome 5 Free en el head del html
this._text.loadFontAwesome()
// Configura la paleta de colores para la librería MxColor
this._color.ColorPalette = {
main: '#005daa',
accent: '#09b8a9',
dark1: '#00307f',
dark2: '#001d4d',
dark3: '#000a1a',
ligth1: '#80aed5',
ligth2: '#b3cee6',
ligth3: '#e0ecf5',
}
}
}
Módulos
Los módulos y sus documataciones se enlistan acontinuación
| Módulo | Descripción | |--------|-------------| | Alert | Cuádros de diálogo de alertas para proyectos de stack Angular/Material + Firebase | | Cache | Sistema de guardado de data en Local o Session Storage con estretegias de Promesas, Observables y suscripciones | | Color | Un auxilar de estilos y colores de elementos del DOM de tu aplicación. | | DateTime | Servicio en desarrollo, próximamente más completo. Por ahora puedes disfrutar de algunos métodos o componentes de este módulo. | | Loading | Servicio que permite hacer magia en el loading de la aplicación o para optimizar las promesas | | Responsive | Un servicio auxiliar de ts para cuestiones responsivas. Sí, existen las media queries pero a veces se necesitan acciones desde TypeScript. | | SEO | Un auxilar para configuración de SEO de manera reactiva. La estrategía de renderizado desde el servidor no es responsabilidad de esta librería. | | Text | Un auxilar de métodos typescript para transformaciones de texto |
Styles
Esta librería también cuenta con la inclusión de la librería de estilo de materialize y algunas cosas más.
De manera que puedes hacer uso de las funciones de esta librería y proximamente se publicará la documentación ofi cial aquí en esta misma.