Code Monkey home page Code Monkey logo

bikes-showcase's Introduction

BikesShowcase

Este proyecto se trata de un catálogo online totalmente open source pensada para kioskos de tiendas en general, el concepto principal trata de un catálogo de bicicletas con un carrousel de imágenes con un efecto flip gracias a la librería de SwiperJs. Como página principal tienes un carrousel configurable y que funciona en tiempo real, asimismo brinda un panel de administración completo, seguro e intuitivo.

Contenido técnico y gracias a:

  • Angular universal
  • NestJS
  • MongoDb
  • Passport
  • Socket-io
  • Nodemailer
  • JWT
  • Swagger
  • SwipeJs
  • Ng2-smart-table
  • y mucho mas.

Pre-requisitos

Se require de una base de datos en MongoDB y de configuraciones iniciales en el lado de las variables de entorno. Por tanto se provee una carpeta de configuración situada en la raiz del proyecto:

./config/env.sample

En adelante si deseamos hacer el deploy con Docker necesitamos modificar el archivo .env en el root de nuestro

Parece doble trabajo pero por seguridad se ha decidido así, necesitamos definir algunas variables de entorno del lado del servidor, muestro el ejemplo en caso de que estemos en Linux, puede variar según el sistema operativo:

# Definir variables del lado del OS
export BIKES=development # o bien production
export PORT=80
export DB_PORT=27017
export DB_USERNAME=cash
export DB_PASSWORD=123
export DB_NAME=bikes

# Probar dichas variables - Se espera que retornen el valor asignado
echo $BIKES
echo $PORT
echo $DB_PORT
echo $DB_USERNAME
echo $DB_PASSWORD
echo $DB_NAME

Las variables de entorno que estemos definiendo en el lado del sistema operativo son solo en el caso que usemos Docker como nuestro anfitrión para lanzar la applicación, podemos ignorar esta parte y ajustar el archivo docker-compose.yml según nuestras necesidades.

BIKES=development // Linux

Esta variable define la versión de nuestro deploy.

NOTA: Si solo queremos lanzar la base de datos, podemos ejecutar el script npm run start:db pero no nos olvidemos que antes debemos configurar las credenciales en las variables de entorno de nuestro sistema operativo o dentro del archivo 'docker-compose.yml'.

Instalación.

Antes de nada tener en cuenta los pre-requisitos para poder usar el proyecto, luego después de descargar/clonar este repositorio, desde la raiz del mismo, ejecutamos el siguiente comando para instalarlo:

npm i.

Posteriormente genera el build del proyecto:

npm run build:ssr

Y lanza el servidor

npm run start:ssr

Deploy a producción con Docker

Tenemos varias formas de configurar el proyecto a producción pero en este caso explicaré como lanzarlo con Doker.

En primer lugar tenemos dos scripts ya pensados para esto, por

Development

Para contribuir o mejorar el proyecto necesitarás tener en cuenta los pre-requisitos y ejecutamos el siguiente comando:

npm run serve

NOTA: Ver el archivo 'package.json' para ver los demás comandos.

Actualizar proyecto

Antes de actualizar es importante leer el estado de este repositorio y si se encuentran otras actualizaciones en éste mismo.

El proceso de actualización es muy sencillo pero involucra un rebuild del proyecto por completo, para facilitar el proceso he creado un script automático para no estar ejecutando manualmente todo.

Requisitos técnicos:

  • Posibilidad de correr scripts con una terminal de comandos BASH
  • Git.

Actualización del código:

npm run upgrade

Es muy importante para que este proceso funcione, que no hayamos hechos cambios en el código huesped, intentemos hacer nuestras modificaciones en una rama paralela o en un directorio por separado para no crear conflictos innecesarios en la actualización.

Posteriormente ya solo lanzamos el proyecto, tener en cuenta que si usamos Docker como deploy a producción pues tenemos que seguir el siguiente paso

Actualización de la imagen de Docker Compose

Solo válido si nuestro deploy esta basado en la imagen de docker.

Tener en cuenta el changelog de los cambios de la nueva versión para saber si tenemos algún requisito adicional.

# Paramos los contenedores
docker-compose stop

# Eliminamos los contenedores
docker-compose rm # Confirmamos con y de que estamos seguros.

# Recreamos la imagen
docker build -t ruslanguns/bikes .

# Lanzamos el docker-compose pero recreando las imagenes.
docker-compose up --force-recreate -d

# Opcional: revisar logs del proceso para ver si no hay errores.
docker-compose logs -f

Changelog

En adelante aquí se notificarán los cambios que se realizen en la aplicación.

Proyectos relacionados

Contribución

Siéntanse libres de realizar los Pull Request que quieran para mejorar este proyecto. Eventualmente estaré colocando los nuevos retos, tareas y convenciones que someteré a este proyecto.

Contacto

Puedes contactarme a mi correo personal: [email protected]

bikes-showcase's People

Contributors

ruslanguns avatar renovate-bot avatar dependabot[bot] avatar

Stargazers

 avatar Joel Corona avatar

Watchers

James Cloos avatar  avatar  avatar

Forkers

jrbebel

bikes-showcase's Issues

Need Bikes Validation Messages with proper notifications

Necesito implementar los errores de validación y escritura desde el servidor por medio de notificaciones ya que no están siendo advertidas correctamente.

{
  "headers": {
    "normalizedNames": {},
    "lazyUpdate": null
  },
  "status": 502,
  "statusText": "Bad Gateway",
  "url": "http://192.168.0.25:4200/api/bikes",
  "ok": false,
  "name": "HttpErrorResponse",
  "message": "Http failure response for http://192.168.0.25:4200/api/bikes: 502 Bad Gateway",
  "error": {
    "statusCode": 502,
    "error": {
      "errors": {
        "productId": {
          "message": "El campo productId debe ser único.",
          "name": "ValidatorError",
          "properties": {
            "message": "El campo productId debe ser único.",
            "type": "unique",
            "path": "productId",
            "value": "E178126-0"
          },
          "kind": "unique",
          "path": "productId",
          "value": "E178126-0"
        }
      },
      "_message": "Bikes validation failed",
      "message": "Bikes validation failed: productId: El campo productId debe ser único.",
      "name": "ValidationError"
    },
    "message": "Error al guardar en DB"
  }
}

ERROR Error: Uncaught (in promise): SyntaxError: Unexpected token 'export'

Obtengo el error al entrar al panel de administrador:

D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\pnotify\dist\es\PNotify.js:1
let PNotify,posTimer,onDocumentLoaded=()=>{PNotify.defaultStack.context=document.body,window.addEventListener("resize",()=>{posTimer&&clearTimeout(posTimer)
,posTimer=setTimeout(()=>{PNotify.positionAll()},10)})},createStackOverlay=t=>{const e=document.createElement("div");e.classList.add("ui-pnotify-modal-overl
ay"),t.context!==document.body&&(e.style.height=t.context.scrollHeight+"px",e.style.width=t.context.scrollWidth+"px"),e.addEventListener("click",()=>{t.over
layClose&&PNotify.closeStack(t)}),t.overlay=e},insertStackOverlay=t=>{t.overlay.parentNode!==t.context&&(t.overlay=t.context.insertBefore(t.overlay,t.contex
t.firstChild))},removeStackOverlay=t=>{t.overlay.parentNode&&t.overlay.parentNode.removeChild(t.overlay)};const getDefaultArgs=(t,e)=>("object"!=typeof t&&(
t={text:t}),e&&(t.type=e),{target:document.body,data:t});function _styles({styling:t}){return"object"==typeof t?t:PNotify.styling[t]}function _ico

SyntaxError: Unexpected token 'export'
    at Module._compile (internal/modules/cjs/loader.js:895:18)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
    at Module.load (internal/modules/cjs/loader.js:815:32)
    at Function.Module._load (internal/modules/cjs/loader.js:727:14)
    at Module.require (internal/modules/cjs/loader.js:852:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at Object.pnotify/dist/es/PNotify (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:3440:18)
    at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
    at Object../src/app/shared/services/pnotify.service.ts (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:3087:19)
    at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
    at Object../src/app/@auth/login/login.component.ngfactory.js (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:440:12)
    at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
    at Object../src/app/@auth/auth.module.ngfactory.js (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:202:12)
    at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
    at D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:2682:47
    at ZoneDelegate.invoke (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:391:26)
    at resolvePromise (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:852:31)
    at resolvePromise (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:809:17)
    at D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:913:17
    at ZoneDelegate.invokeTask (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:423:31)
    at Object.onInvokeTask (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\@angular\core\bundles\core.umd.js:26362:37)
    at ZoneDelegate.invokeTask (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:422:60)
    at Zone.runTask (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:195:47)
    at drainMicroTaskQueue (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:601:35)
    at ZoneTask.invokeTask (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:502:21)
    at Server.ZoneTask.invoke (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:487:48)
    at Server.emit (events.js:210:5)
    at parserOnIncoming (_http_server.js:745:12)
    at HTTPParser.parserOnHeadersComplete (_http_common.js:115:17) {
  rejection: D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\pnotify\dist\es\PNotify.js:1
  let PNotify,posTimer,onDocumentLoaded=()=>{PNotify.defaultStack.context=document.body,window.addEventListener("resize",()=>{posTimer&&clearTimeout(posTime
r),posTimer=setTimeout(()=>{PNotify.positionAll()},10)})},createStackOverlay=t=>{const e=document.createElement("div");e.classList.add("ui-pnotify-modal-ove
rlay"),t.context!==document.body&&(e.style.height=t.context.scrollHeight+"px",e.style.width=t.context.scrollWidth+"px"),e.addEventListener("click",()=>{t.ov
erlayClose&&PNotify.closeStack(t)}),t.overlay=e},insertStackOverlay=t=>{t.overlay.parentNode!==t.context&&(t.overlay=t.context.insertBefore(t.overlay,t.cont
ext.firstChild))},removeStackOverlay=t=>{t.overlay.parentNode&&t.overlay.parentNode.removeChild(t.overlay)};const getDefaultArgs=(t,e)=>("object"!=typeof t&
&(t={text:t}),e&&(t.type=e),{target:document.body,data:t});function _styles({styling:t}){return"object"==typeof t?t:PNotify.styling[t]}function _ico

  SyntaxError: Unexpected token 'export'
      at Module._compile (internal/modules/cjs/loader.js:895:18)
      at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
      at Module.load (internal/modules/cjs/loader.js:815:32)
      at Function.Module._load (internal/modules/cjs/loader.js:727:14)
      at Module.require (internal/modules/cjs/loader.js:852:19)
      at require (internal/modules/cjs/helpers.js:74:18)
      at Object.pnotify/dist/es/PNotify (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:3440:18)
      at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
      at Object../src/app/shared/services/pnotify.service.ts (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:3087:19)
      at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
      at Object../src/app/@auth/login/login.component.ngfactory.js (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:440:12)
      at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
      at Object../src/app/@auth/auth.module.ngfactory.js (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:202:12)
      at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
      at D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:2682:47
      at ZoneDelegate.invoke (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:391:26),
  promise: ZoneAwarePromise [Promise] {
    __zone_symbol__state: 0,
    __zone_symbol__value: D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\pnotify\dist\es\PNotify.js:1
    let PNotify,posTimer,onDocumentLoaded=()=>{PNotify.defaultStack.context=document.body,window.addEventListener("resize",()=>{posTimer&&clearTimeout(posTi
mer),posTimer=setTimeout(()=>{PNotify.positionAll()},10)})},createStackOverlay=t=>{const e=document.createElement("div");e.classList.add("ui-pnotify-modal-o
verlay"),t.context!==document.body&&(e.style.height=t.context.scrollHeight+"px",e.style.width=t.context.scrollWidth+"px"),e.addEventListener("click",()=>{t.
overlayClose&&PNotify.closeStack(t)}),t.overlay=e},insertStackOverlay=t=>{t.overlay.parentNode!==t.context&&(t.overlay=t.context.insertBefore(t.overlay,t.co
ntext.firstChild))},removeStackOverlay=t=>{t.overlay.parentNode&&t.overlay.parentNode.removeChild(t.overlay)};const getDefaultArgs=(t,e)=>("object"!=typeof
t&&(t={text:t}),e&&(t.type=e),{target:document.body,data:t});function _styles({styling:t}){return"object"==typeof t?t:PNotify.styling[t]}function _ico

    SyntaxError: Unexpected token 'export'
        at Module._compile (internal/modules/cjs/loader.js:895:18)
        at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
        at Module.load (internal/modules/cjs/loader.js:815:32)
        at Function.Module._load (internal/modules/cjs/loader.js:727:14)
        at Module.require (internal/modules/cjs/loader.js:852:19)
        at require (internal/modules/cjs/helpers.js:74:18)
        at Object.pnotify/dist/es/PNotify (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:3440:18)
        at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
        at Object../src/app/shared/services/pnotify.service.ts (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:3087:19)
        at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
        at Object../src/app/@auth/login/login.component.ngfactory.js (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:440:12)
        at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
        at Object../src/app/@auth/auth.module.ngfactory.js (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:202:12)
        at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
        at D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:2682:47
        at ZoneDelegate.invoke (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:391:26)
  },
  zone: Zone {
    _parent: Zone {
      _parent: null,
      _name: '<root>',
      _properties: {},
      _zoneDelegate: [ZoneDelegate]
    },
    _name: 'angular',
    _properties: { isAngularZone: true },
    _zoneDelegate: ZoneDelegate {
      _taskCounts: [Object],
      zone: [Circular],
      _parentDelegate: [ZoneDelegate],
      _forkZS: null,
      _forkDlgt: null,
      _forkCurrZone: [Zone],
      _interceptZS: null,
      _interceptDlgt: null,
      _interceptCurrZone: [Zone],
      _invokeZS: [Object],
      _invokeDlgt: [ZoneDelegate],
      _invokeCurrZone: [Circular],
      _handleErrorZS: [Object],
      _handleErrorDlgt: [ZoneDelegate],
      _handleErrorCurrZone: [Circular],
      _scheduleTaskZS: [Object],
      _scheduleTaskDlgt: [ZoneDelegate],
      _scheduleTaskCurrZone: [Circular],
      _invokeTaskZS: [Object],
      _invokeTaskDlgt: [ZoneDelegate],
      _invokeTaskCurrZone: [Circular],
      _cancelTaskZS: [Object],
      _cancelTaskDlgt: [ZoneDelegate],
      _cancelTaskCurrZone: [Circular],
      _hasTaskZS: [Object],
      _hasTaskDlgt: [ZoneDelegate],
      _hasTaskDlgtOwner: [Circular],
      _hasTaskCurrZone: [Circular]
    }
  },
  task: ZoneTask {
    _zone: Zone {
      _parent: [Zone],
      _name: 'angular',
      _properties: [Object],
      _zoneDelegate: [ZoneDelegate]
    },
    runCount: 0,
    _zoneDelegates: null,
    _state: 'notScheduled',
    type: 'microTask',
    source: 'Promise.then',
    data: ZoneAwarePromise [Promise] {
      __zone_symbol__state: 0,
      __zone_symbol__value: D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\pnotify\dist\es\PNotify.js:1
      let PNotify,posTimer,onDocumentLoaded=()=>{PNotify.defaultStack.context=document.body,window.addEventListener("resize",()=>{posTimer&&clearTimeout(pos
Timer),posTimer=setTimeout(()=>{PNotify.positionAll()},10)})},createStackOverlay=t=>{const e=document.createElement("div");e.classList.add("ui-pnotify-modal
-overlay"),t.context!==document.body&&(e.style.height=t.context.scrollHeight+"px",e.style.width=t.context.scrollWidth+"px"),e.addEventListener("click",()=>{
t.overlayClose&&PNotify.closeStack(t)}),t.overlay=e},insertStackOverlay=t=>{t.overlay.parentNode!==t.context&&(t.overlay=t.context.insertBefore(t.overlay,t.
context.firstChild))},removeStackOverlay=t=>{t.overlay.parentNode&&t.overlay.parentNode.removeChild(t.overlay)};const getDefaultArgs=(t,e)=>("object"!=typeo
f t&&(t={text:t}),e&&(t.type=e),{target:document.body,data:t});function _styles({styling:t}){return"object"==typeof t?t:PNotify.styling[t]}function _ico

      SyntaxError: Unexpected token 'export'
          at Module._compile (internal/modules/cjs/loader.js:895:18)
          at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
          at Module.load (internal/modules/cjs/loader.js:815:32)
          at Function.Module._load (internal/modules/cjs/loader.js:727:14)
          at Module.require (internal/modules/cjs/loader.js:852:19)
          at require (internal/modules/cjs/helpers.js:74:18)
          at Object.pnotify/dist/es/PNotify (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:3440:18)
          at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
          at Object../src/app/shared/services/pnotify.service.ts (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:3087:19)
          at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
          at Object../src/app/@auth/login/login.component.ngfactory.js (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:440:12)
          at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
          at Object../src/app/@auth/auth.module.ngfactory.js (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:202:12)
          at __webpack_require__ (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:20:30)
          at D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\dist\server\main.js:2682:47
          at ZoneDelegate.invoke (D:\wamp\www\proyectos\1-proyectos_cash\bikes-showcase\node_modules\zone.js\dist\zone-node.js:391:26)
    },
    scheduleFn: undefined,
    cancelFn: undefined,
    callback: [Function],
    invoke: [Function]
  }
}

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • Update dependency @fortawesome/fontawesome-free to v5.15.4
  • Update dependency @types/jasminewd2 to v2.0.13
  • Update dependency bootstrap to v4.6.2
  • Update dependency passport-jwt to v4.0.1
  • Update dependency @angular-devkit/build-angular to v0.1102.19
  • Update dependency @nestjs/swagger to v4.8.2
  • Update dependency @types/jasmine to v3.10.18
  • Update dependency commitizen to v4.3.0
  • Update dependency jasmine-core to v3.99.1
  • Update dependency jquery to v3.7.1 (jquery, @types/jquery)
  • Update dependency karma-jasmine-html-reporter to v1.7.0
  • Update dependency ngx-socket-io to v3.4.0
  • Update dependency reflect-metadata to v0.2.2
  • Update angular-cli monorepo to v18 (major) (@angular-devkit/build-angular, @angular/cli)
  • Update dependency @auth0/angular-jwt to v5
  • Update dependency @fortawesome/fontawesome-free to v6
  • Update dependency @nestjs/jwt to v10
  • Update dependency @nestjs/mongoose to v10
  • Update dependency @nestjs/ng-universal to v8
  • Update dependency @nestjs/swagger to v7
  • Update dependency @ng-bootstrap/ng-bootstrap to v16
  • Update dependency @nguniversal/express-engine to v16
  • Update dependency @types/jasmine to v5
  • Update dependency @types/node to v20
  • Update dependency @types/swiper to v6
  • Update dependency Chart.js to v4
  • Update dependency animate.css to v4
  • Update dependency bootstrap to v5
  • Update dependency codelyzer to v6
  • Update dependency fastify-swagger to v5
  • Update dependency helmet to v7
  • Update dependency jasmine-core to v5
  • Update dependency jasmine-spec-reporter to v7
  • Update dependency jwt-decode to v4
  • Update dependency karma-chrome-launcher to v3
  • Update dependency karma-coverage-istanbul-reporter to v3
  • Update dependency karma-jasmine to v5
  • Update dependency karma-jasmine-html-reporter to v2
  • Update dependency mongoose-unique-validator to v5
  • Update dependency ng2-completer to v9
  • Update dependency ngx-moment to v6
  • Update dependency ngx-socket-io to v4
  • Update dependency ngx-toastr to v19
  • Update dependency ngx-useful-swiper to v10
  • Update dependency nodemon to v3
  • Update dependency popper.js to v2
  • Update dependency protractor to v7
  • Update dependency rimraf to v5
  • Update dependency rxjs to v7
  • Update dependency serialize-javascript to v6
  • Update dependency swagger-ui-express to v5
  • Update dependency sweetalert2 to v11
  • Update dependency swiper to v11
  • Update dependency ts-loader to v9
  • Update dependency ts-node to v10
  • Update dependency tslib to v2
  • Update dependency tslint to v6
  • Update dependency typeface-open-sans to v1
  • Update dependency typescript to v5
  • Update dependency wait-on to v7
  • Update dependency webpack-cli to v5
  • Update dependency webpack-node-externals to v3
  • Update nest monorepo to v10 (major) (@nestjs/common, @nestjs/passport, @nestjs/platform-express, @nestjs/platform-socket.io, @nestjs/websockets)
  • 🔐 Create all rate-limited PRs at once 🔐

Edited/Blocked

These updates have been manually edited so Renovate will no longer make changes. To discard all commits and start over, click on a checkbox.

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Ignored or Blocked

These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.

Detected dependencies

docker-compose
docker-compose-db.yml
docker-compose.yml
dockerfile
Dockerfile
html
src/assets/lib/spur-template-v1.0.0/html/blank.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/cards.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/chartjs.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/content.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/forms.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/icons.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/index.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/login.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/signup.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/stats.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/tables.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/typography.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
src/assets/lib/spur-template-v1.0.0/html/userinterface.html
  • Chart.js 2.9.4
  • popper.js 1.16.1@sha512-ubuT8Z88WxezgSqf3RLuNi5lmjstiJcyezx34yIU2gAHonIi27Na7atqzUZCOoY4CExaoFumzOsFQ2Ch+I/HCw==
npm
package.json
  • @angular/animations 8.2.14
  • @angular/cdk 8.2.3
  • @angular/common 8.2.14
  • @angular/compiler 8.2.14
  • @angular/core 8.2.14
  • @angular/forms 8.2.14
  • @angular/platform-browser 8.2.14
  • @angular/platform-browser-dynamic 8.2.14
  • @angular/platform-server 8.2.14
  • @angular/router 8.2.14
  • @auth0/angular-jwt 3.0.1
  • @nest-modules/mailer 1.1.3
  • @nestjs/common 6.10.8
  • @nestjs/core 6.10.8
  • @nestjs/jwt 6.1.2
  • @nestjs/mongoose 6.4.0
  • @nestjs/ng-universal 2.0.1
  • @nestjs/passport 6.2.0
  • @nestjs/platform-express 6.10.8
  • @nestjs/platform-socket.io 6.10.14
  • @nestjs/swagger 4.7.12
  • @nestjs/websockets 6.10.14
  • @nestjsplus/config 1.0.14
  • @ng-bootstrap/ng-bootstrap 5.3.1
  • @nguniversal/express-engine 8.1.1
  • @nguniversal/module-map-ngfactory-loader 8.2.6
  • animate.css 3.7.2
  • bootstrap 4.6.0
  • class-transformer 0.3.1
  • class-validator 0.13.1
  • compression 1.7.4
  • context-map-webpack-plugin 0.1.0
  • fastify-swagger 2.6.0
  • helmet 3.21.2
  • jquery 3.5.1
  • jwt-decode 2.2.0
  • localstorage-polyfill 1.0.1
  • material-design-icons 3.0.1
  • mock-browser 0.92.14
  • moment 2.29.1
  • mongoose 5.7.14
  • mongoose-unique-validator 2.0.3
  • ng2-completer 3.0.3
  • ng2-smart-table 1.7.2
  • ngx-moment 3.5.0
  • ngx-socket-io 3.2.0
  • ngx-toastr 11.3.0
  • ngx-useful-swiper 8.0.1
  • passport 0.4.1
  • passport-jwt 4.0.0
  • popper.js 1.16.1
  • reflect-metadata 0.1.13
  • rxjs 6.4.0
  • rxjs-compat 6.5.4
  • serialize-javascript 3.1.0
  • sharp 0.23.4
  • swagger-ui-express 4.1.2
  • sweetalert2 9.5.3
  • swiper 5.2.1
  • tslib 1.10.0
  • typeface-open-sans 0.0.75
  • validator 12.1.0
  • webpack-node-externals 1.7.2
  • zone.js 0.9.1
  • @angular-devkit/build-angular 0.1100.7
  • @angular/cli 8.3.29
  • @angular/compiler-cli 8.2.14
  • @angular/language-service 8.2.14
  • @fortawesome/fontawesome-free 5.15.2
  • @types/jasmine 3.6.3
  • @types/jasminewd2 2.0.8
  • @types/jquery 3.5.5
  • @types/mongoose 5.5.32
  • @types/node 8.10.66
  • @types/sharp 0.23.1
  • @types/swiper 5.2.0
  • codelyzer 5.2.2
  • commitizen 4.2.3
  • cz-conventional-changelog 3.3.0
  • jasmine-core 3.6.0
  • jasmine-spec-reporter 4.2.1
  • karma 4.4.1
  • karma-chrome-launcher 2.2.0
  • karma-coverage-istanbul-reporter 2.1.1
  • karma-jasmine 2.0.1
  • karma-jasmine-html-reporter 1.5.4
  • nodemon 1.19.4
  • protractor 5.4.4
  • rimraf 2.7.1
  • ts-loader 5.4.5
  • ts-node 7.0.1
  • tslint 5.20.1
  • typescript 3.5.3
  • wait-on 3.3.0
  • webpack-cli 3.3.12
  • ws 7.2.1
  • xmlhttprequest 1.8.0

  • Check this box to trigger a request for Renovate to run again on this repository

Sockets not working outsite localhost

Parece que hay algún puerto que no se está considerando en el Docker para que escuche las emiciones desde fuera de la red de localhost del server.

Bug: ENOENT: no such file or directory

Al parecer si estamos haciendo uso de una DB dump y hay algun enlace roto con alguna imagen el server colapsa. Debo poner una condición en caso que no se encuentre la imagen, permitir eliminar el objeto o modificarle.

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Error type: undefined. Note: this is a nested preset so please contact the preset author if you are unable to fix it yourself.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.