From e5076b445d13922bd34534321360a0d08031fc65 Mon Sep 17 00:00:00 2001 From: "Gabriel R. Antunes" Date: Thu, 9 May 2024 13:16:01 -0400 Subject: [PATCH] chore: core and integrations folder --- .github/workflows/ci-js-spec.yml | 8 ++--- Makefile | 4 +-- {javascript/sisgea-spec => core}/.eslintrc.js | 0 {javascript/sisgea-spec => core}/.npmrc | 0 {javascript/sisgea-spec => core}/.prettierrc | 0 {javascript/sisgea-spec => core}/.releaserc | 0 {javascript/sisgea-spec => core}/CHANGELOG.md | 0 {javascript/sisgea-spec => core}/README.md | 2 +- .../sisgea-spec => core}/package-lock.json | 0 {javascript/sisgea-spec => core}/package.json | 0 .../proto/sisgea.authz.proto | 0 .../sisgea-spec => core}/src/core/index.ts | 0 .../dated-object.declaration.ts | 0 .../src/core/object-identity/index.ts | 0 .../object-identity/object-id.declaration.ts | 0 .../object-uuid.declaration.ts | 0 .../src/core/pagination/index.ts | 0 .../core/pagination/pagination.declaration.ts | 0 .../src/core/search/ISearchInputDto.ts | 0 .../src/core/search/index.ts | 0 .../src/core/validation/Validator.ts | 0 .../src/core/validation/index.ts | 0 .../core/validation/yup/extensions/index.ts | 0 .../validation/yup/extensions/yup-extend.ts | 0 .../yup/extensions/yup-extensions.ts | 0 .../src/core/validation/yup/index.ts | 0 .../src/core/validation/yup/yup-helpers.ts | 0 .../EntityDeclaration/EntityDeclaration.ts | 0 .../src/helpers/EntityDeclaration/index.ts | 0 .../OperationDeclaration.ts | 0 .../src/helpers/OperationDeclaration/index.ts | 0 .../sisgea-spec => core}/src/helpers/array.ts | 0 .../sisgea-spec => core}/src/helpers/index.ts | 0 .../sisgea-spec => core}/src/helpers/pick.ts | 0 {javascript/sisgea-spec => core}/src/index.ts | 0 .../ambiente/ambiente.declaration.ts | 0 .../ambientes/ambiente/ambiente.operations.ts | 0 .../src/sisgea/ambientes/ambiente/index.ts | 0 .../ambientes/bloco/bloco.declaration.ts | 0 .../ambientes/bloco/bloco.operations.ts | 0 .../src/sisgea/ambientes/bloco/index.ts | 0 .../ambientes/campus/campus.declaration.ts | 0 .../ambientes/campus/campus.operations.ts | 0 .../src/sisgea/ambientes/campus/index.ts | 0 .../ambientes/cidade/cidade.declaration.ts | 0 .../ambientes/cidade/cidade.operations.ts | 0 .../src/sisgea/ambientes/cidade/index.ts | 0 .../endereco/endereco.declaration.ts | 0 .../ambientes/endereco/endereco.operations.ts | 0 .../src/sisgea/ambientes/endereco/index.ts | 0 .../ambientes/estado/estado.declaration.ts | 0 .../ambientes/estado/estado.operations.ts | 0 .../src/sisgea/ambientes/estado/index.ts | 0 .../src/sisgea/ambientes/index.ts | 0 .../src/sisgea/ambientes/reserva/index.ts | 0 .../ambientes/reserva/reserva.declaration.ts | 0 .../ambientes/reserva/reserva.operations.ts | 0 .../autenticacao/autenticacao.declaration.ts | 0 .../autenticacao/autenticacao.operators.ts | 0 .../src/sisgea/autenticacao/index.ts | 0 .../src/sisgea/autenticacao/usuario/index.ts | 0 .../usuario/usuario.declaration.ts | 0 .../usuario/usuario.operations.ts | 0 .../src/sisgea/autenticacao/vinculo/index.ts | 0 .../vinculo/vinculo.declaration.ts | 0 .../vinculo/vinculo.operations.ts | 0 .../base/arquivo/arquivo.declaration.ts | 0 .../sisgea/base/arquivo/arquivo.operations.ts | 0 .../src/sisgea/base/arquivo/index.ts | 0 .../imagem-arquivo.declaration.ts | 0 .../src/sisgea/base/imagem-arquivo/index.ts | 0 .../sisgea/base/imagem/imagem.declaration.ts | 0 .../src/sisgea/base/imagem/index.ts | 0 .../src/sisgea/base/index.ts | 0 .../calendario/aula/aula.declaration.ts | 0 .../calendario-letivo.declaration.ts | 0 .../calendario-letivo.operations.ts | 0 .../calendario/calendario-letivo/index.ts | 0 .../dia-calendario.declaration.ts | 0 .../calendario/etapa/etapa.declaration.ts | 0 .../calendario/evento/evento.declaration.ts | 0 .../src/sisgea/calendario/index.ts | 0 .../intervalo-de-tempo.declaration.ts | 0 .../campus-possui-modalidade.declaration.ts | 0 .../ensino/campus-possui-modalidade/index.ts | 0 .../sisgea/ensino/curso/curso.declaration.ts | 0 .../sisgea/ensino/curso/curso.operations.ts | 0 .../src/sisgea/ensino/curso/index.ts | 0 .../diario-professor.declaration.ts | 0 .../diario-professor.operations.ts | 0 .../sisgea/ensino/diario-professor/index.ts | 0 .../ensino/diario/diario.declaration.ts | 0 .../sisgea/ensino/diario/diario.operations.ts | 0 .../src/sisgea/ensino/diario/index.ts | 0 .../disciplina/disciplina.declaration.ts | 0 .../disciplina/disciplina.operations.ts | 0 .../src/sisgea/ensino/disciplina/index.ts | 0 .../src/sisgea/ensino/index.ts | 0 .../src/sisgea/ensino/modalidade/index.ts | 0 .../modalidade/modalidade.declaration.ts | 0 .../modalidade/modalidade.operations.ts | 0 .../src/sisgea/ensino/turma/index.ts | 0 .../sisgea/ensino/turma/turma.declaration.ts | 0 .../sisgea/ensino/turma/turma.operations.ts | 0 .../turma-disponibilidade-dia.declaration.ts | 0 .../turma-disponibilidade.declaration.ts | 0 .../sisgea-spec => core}/src/sisgea/index.ts | 0 .../sisgea-spec => core}/tsconfig.build.json | 0 .../sisgea-spec => core}/tsconfig.json | 0 .../dotnet/GeneratorTool/.dockerignore | 5 +++ integrations/dotnet/GeneratorTool/Dockerfile | 15 +++++++++ .../dotnet/GeneratorTool/GeneratorTool.csproj | 14 +++++++++ integrations/dotnet/GeneratorTool/Makefile | 3 ++ integrations/dotnet/GeneratorTool/Program.cs | 31 +++++++++++++++++++ .../json-schema/v1/sisgea.schema.json | 0 115 files changed, 75 insertions(+), 7 deletions(-) rename {javascript/sisgea-spec => core}/.eslintrc.js (100%) rename {javascript/sisgea-spec => core}/.npmrc (100%) rename {javascript/sisgea-spec => core}/.prettierrc (100%) rename {javascript/sisgea-spec => core}/.releaserc (100%) rename {javascript/sisgea-spec => core}/CHANGELOG.md (100%) rename {javascript/sisgea-spec => core}/README.md (90%) rename {javascript/sisgea-spec => core}/package-lock.json (100%) rename {javascript/sisgea-spec => core}/package.json (100%) rename {javascript/sisgea-spec => core}/proto/sisgea.authz.proto (100%) rename {javascript/sisgea-spec => core}/src/core/index.ts (100%) rename {javascript/sisgea-spec => core}/src/core/object-identity/dated-object.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/core/object-identity/index.ts (100%) rename {javascript/sisgea-spec => core}/src/core/object-identity/object-id.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/core/object-identity/object-uuid.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/core/pagination/index.ts (100%) rename {javascript/sisgea-spec => core}/src/core/pagination/pagination.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/core/search/ISearchInputDto.ts (100%) rename {javascript/sisgea-spec => core}/src/core/search/index.ts (100%) rename {javascript/sisgea-spec => core}/src/core/validation/Validator.ts (100%) rename {javascript/sisgea-spec => core}/src/core/validation/index.ts (100%) rename {javascript/sisgea-spec => core}/src/core/validation/yup/extensions/index.ts (100%) rename {javascript/sisgea-spec => core}/src/core/validation/yup/extensions/yup-extend.ts (100%) rename {javascript/sisgea-spec => core}/src/core/validation/yup/extensions/yup-extensions.ts (100%) rename {javascript/sisgea-spec => core}/src/core/validation/yup/index.ts (100%) rename {javascript/sisgea-spec => core}/src/core/validation/yup/yup-helpers.ts (100%) rename {javascript/sisgea-spec => core}/src/helpers/EntityDeclaration/EntityDeclaration.ts (100%) rename {javascript/sisgea-spec => core}/src/helpers/EntityDeclaration/index.ts (100%) rename {javascript/sisgea-spec => core}/src/helpers/OperationDeclaration/OperationDeclaration.ts (100%) rename {javascript/sisgea-spec => core}/src/helpers/OperationDeclaration/index.ts (100%) rename {javascript/sisgea-spec => core}/src/helpers/array.ts (100%) rename {javascript/sisgea-spec => core}/src/helpers/index.ts (100%) rename {javascript/sisgea-spec => core}/src/helpers/pick.ts (100%) rename {javascript/sisgea-spec => core}/src/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/ambiente/ambiente.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/ambiente/ambiente.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/ambiente/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/bloco/bloco.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/bloco/bloco.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/bloco/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/campus/campus.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/campus/campus.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/campus/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/cidade/cidade.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/cidade/cidade.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/cidade/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/endereco/endereco.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/endereco/endereco.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/endereco/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/estado/estado.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/estado/estado.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/estado/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/reserva/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/reserva/reserva.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ambientes/reserva/reserva.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/autenticacao/autenticacao.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/autenticacao/autenticacao.operators.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/autenticacao/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/autenticacao/usuario/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/autenticacao/usuario/usuario.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/autenticacao/usuario/usuario.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/autenticacao/vinculo/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/autenticacao/vinculo/vinculo.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/autenticacao/vinculo/vinculo.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/base/arquivo/arquivo.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/base/arquivo/arquivo.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/base/arquivo/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/base/imagem-arquivo/imagem-arquivo.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/base/imagem-arquivo/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/base/imagem/imagem.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/base/imagem/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/base/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/calendario/aula/aula.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/calendario/calendario-letivo/calendario-letivo.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/calendario/calendario-letivo/calendario-letivo.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/calendario/calendario-letivo/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/calendario/dia-calendario/dia-calendario.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/calendario/etapa/etapa.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/calendario/evento/evento.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/calendario/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/calendario/intervalo-de-tempo/intervalo-de-tempo.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/campus-possui-modalidade/campus-possui-modalidade.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/campus-possui-modalidade/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/curso/curso.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/curso/curso.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/curso/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/diario-professor/diario-professor.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/diario-professor/diario-professor.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/diario-professor/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/diario/diario.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/diario/diario.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/diario/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/disciplina/disciplina.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/disciplina/disciplina.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/disciplina/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/modalidade/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/modalidade/modalidade.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/modalidade/modalidade.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/turma/index.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/turma/turma.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/ensino/turma/turma.operations.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/horario-academico/turma-disponibilidade-dia/turma-disponibilidade-dia.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/horario-academico/turma-disponibilidade/turma-disponibilidade.declaration.ts (100%) rename {javascript/sisgea-spec => core}/src/sisgea/index.ts (100%) rename {javascript/sisgea-spec => core}/tsconfig.build.json (100%) rename {javascript/sisgea-spec => core}/tsconfig.json (100%) create mode 100644 integrations/dotnet/GeneratorTool/.dockerignore create mode 100644 integrations/dotnet/GeneratorTool/Dockerfile create mode 100644 integrations/dotnet/GeneratorTool/GeneratorTool.csproj create mode 100644 integrations/dotnet/GeneratorTool/Makefile create mode 100644 integrations/dotnet/GeneratorTool/Program.cs rename {generated => integrations}/json-schema/v1/sisgea.schema.json (100%) diff --git a/.github/workflows/ci-js-spec.yml b/.github/workflows/ci-js-spec.yml index a1342e8c..4250c5fe 100644 --- a/.github/workflows/ci-js-spec.yml +++ b/.github/workflows/ci-js-spec.yml @@ -6,7 +6,7 @@ on: - main - development paths: - - "javascript/sisgea-spec/**/*" + - "core/**/*" - .github/workflows/ci-js-spec.yml workflow_dispatch: @@ -16,7 +16,7 @@ concurrency: defaults: run: - working-directory: javascript/sisgea-spec + working-directory: core permissions: contents: read @@ -38,7 +38,7 @@ jobs: with: node-version: ${{ matrix.node-version }} cache: "npm" - cache-dependency-path: ./javascript/sisgea-spec/package-lock.json + cache-dependency-path: ./core/package-lock.json - run: npm ci - run: npm run build --if-present - run: npm run test --if-present @@ -61,7 +61,7 @@ jobs: with: node-version: 22.x cache: "npm" - cache-dependency-path: ./javascript/sisgea-spec/package-lock.json + cache-dependency-path: ./core/package-lock.json - run: npm ci - run: npm run build diff --git a/Makefile b/Makefile index 5aafa4ce..78ad5190 100644 --- a/Makefile +++ b/Makefile @@ -9,8 +9,8 @@ generate-json-schema: -u node \ -it $$(docker build -q .devops) \ typescript-json-schema \ - javascript/sisgea-spec/tsconfig.build.json \* \ - -o generated/json-schema/v1/sisgea.schema.json \ + core/tsconfig.build.json \* \ + -o integrations/json-schema/v1/sisgea.schema.json \ --refs \ --noExtraProps \ --required \ diff --git a/javascript/sisgea-spec/.eslintrc.js b/core/.eslintrc.js similarity index 100% rename from javascript/sisgea-spec/.eslintrc.js rename to core/.eslintrc.js diff --git a/javascript/sisgea-spec/.npmrc b/core/.npmrc similarity index 100% rename from javascript/sisgea-spec/.npmrc rename to core/.npmrc diff --git a/javascript/sisgea-spec/.prettierrc b/core/.prettierrc similarity index 100% rename from javascript/sisgea-spec/.prettierrc rename to core/.prettierrc diff --git a/javascript/sisgea-spec/.releaserc b/core/.releaserc similarity index 100% rename from javascript/sisgea-spec/.releaserc rename to core/.releaserc diff --git a/javascript/sisgea-spec/CHANGELOG.md b/core/CHANGELOG.md similarity index 100% rename from javascript/sisgea-spec/CHANGELOG.md rename to core/CHANGELOG.md diff --git a/javascript/sisgea-spec/README.md b/core/README.md similarity index 90% rename from javascript/sisgea-spec/README.md rename to core/README.md index 2a16c9c8..dc833595 100644 --- a/javascript/sisgea-spec/README.md +++ b/core/README.md @@ -24,7 +24,7 @@ import {} from '@sisgea/spec'; ```sh git clone https://github.com/sisgha/spec.git -cd spec/javascript/sisgea-spec +cd spec ``` diff --git a/javascript/sisgea-spec/package-lock.json b/core/package-lock.json similarity index 100% rename from javascript/sisgea-spec/package-lock.json rename to core/package-lock.json diff --git a/javascript/sisgea-spec/package.json b/core/package.json similarity index 100% rename from javascript/sisgea-spec/package.json rename to core/package.json diff --git a/javascript/sisgea-spec/proto/sisgea.authz.proto b/core/proto/sisgea.authz.proto similarity index 100% rename from javascript/sisgea-spec/proto/sisgea.authz.proto rename to core/proto/sisgea.authz.proto diff --git a/javascript/sisgea-spec/src/core/index.ts b/core/src/core/index.ts similarity index 100% rename from javascript/sisgea-spec/src/core/index.ts rename to core/src/core/index.ts diff --git a/javascript/sisgea-spec/src/core/object-identity/dated-object.declaration.ts b/core/src/core/object-identity/dated-object.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/core/object-identity/dated-object.declaration.ts rename to core/src/core/object-identity/dated-object.declaration.ts diff --git a/javascript/sisgea-spec/src/core/object-identity/index.ts b/core/src/core/object-identity/index.ts similarity index 100% rename from javascript/sisgea-spec/src/core/object-identity/index.ts rename to core/src/core/object-identity/index.ts diff --git a/javascript/sisgea-spec/src/core/object-identity/object-id.declaration.ts b/core/src/core/object-identity/object-id.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/core/object-identity/object-id.declaration.ts rename to core/src/core/object-identity/object-id.declaration.ts diff --git a/javascript/sisgea-spec/src/core/object-identity/object-uuid.declaration.ts b/core/src/core/object-identity/object-uuid.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/core/object-identity/object-uuid.declaration.ts rename to core/src/core/object-identity/object-uuid.declaration.ts diff --git a/javascript/sisgea-spec/src/core/pagination/index.ts b/core/src/core/pagination/index.ts similarity index 100% rename from javascript/sisgea-spec/src/core/pagination/index.ts rename to core/src/core/pagination/index.ts diff --git a/javascript/sisgea-spec/src/core/pagination/pagination.declaration.ts b/core/src/core/pagination/pagination.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/core/pagination/pagination.declaration.ts rename to core/src/core/pagination/pagination.declaration.ts diff --git a/javascript/sisgea-spec/src/core/search/ISearchInputDto.ts b/core/src/core/search/ISearchInputDto.ts similarity index 100% rename from javascript/sisgea-spec/src/core/search/ISearchInputDto.ts rename to core/src/core/search/ISearchInputDto.ts diff --git a/javascript/sisgea-spec/src/core/search/index.ts b/core/src/core/search/index.ts similarity index 100% rename from javascript/sisgea-spec/src/core/search/index.ts rename to core/src/core/search/index.ts diff --git a/javascript/sisgea-spec/src/core/validation/Validator.ts b/core/src/core/validation/Validator.ts similarity index 100% rename from javascript/sisgea-spec/src/core/validation/Validator.ts rename to core/src/core/validation/Validator.ts diff --git a/javascript/sisgea-spec/src/core/validation/index.ts b/core/src/core/validation/index.ts similarity index 100% rename from javascript/sisgea-spec/src/core/validation/index.ts rename to core/src/core/validation/index.ts diff --git a/javascript/sisgea-spec/src/core/validation/yup/extensions/index.ts b/core/src/core/validation/yup/extensions/index.ts similarity index 100% rename from javascript/sisgea-spec/src/core/validation/yup/extensions/index.ts rename to core/src/core/validation/yup/extensions/index.ts diff --git a/javascript/sisgea-spec/src/core/validation/yup/extensions/yup-extend.ts b/core/src/core/validation/yup/extensions/yup-extend.ts similarity index 100% rename from javascript/sisgea-spec/src/core/validation/yup/extensions/yup-extend.ts rename to core/src/core/validation/yup/extensions/yup-extend.ts diff --git a/javascript/sisgea-spec/src/core/validation/yup/extensions/yup-extensions.ts b/core/src/core/validation/yup/extensions/yup-extensions.ts similarity index 100% rename from javascript/sisgea-spec/src/core/validation/yup/extensions/yup-extensions.ts rename to core/src/core/validation/yup/extensions/yup-extensions.ts diff --git a/javascript/sisgea-spec/src/core/validation/yup/index.ts b/core/src/core/validation/yup/index.ts similarity index 100% rename from javascript/sisgea-spec/src/core/validation/yup/index.ts rename to core/src/core/validation/yup/index.ts diff --git a/javascript/sisgea-spec/src/core/validation/yup/yup-helpers.ts b/core/src/core/validation/yup/yup-helpers.ts similarity index 100% rename from javascript/sisgea-spec/src/core/validation/yup/yup-helpers.ts rename to core/src/core/validation/yup/yup-helpers.ts diff --git a/javascript/sisgea-spec/src/helpers/EntityDeclaration/EntityDeclaration.ts b/core/src/helpers/EntityDeclaration/EntityDeclaration.ts similarity index 100% rename from javascript/sisgea-spec/src/helpers/EntityDeclaration/EntityDeclaration.ts rename to core/src/helpers/EntityDeclaration/EntityDeclaration.ts diff --git a/javascript/sisgea-spec/src/helpers/EntityDeclaration/index.ts b/core/src/helpers/EntityDeclaration/index.ts similarity index 100% rename from javascript/sisgea-spec/src/helpers/EntityDeclaration/index.ts rename to core/src/helpers/EntityDeclaration/index.ts diff --git a/javascript/sisgea-spec/src/helpers/OperationDeclaration/OperationDeclaration.ts b/core/src/helpers/OperationDeclaration/OperationDeclaration.ts similarity index 100% rename from javascript/sisgea-spec/src/helpers/OperationDeclaration/OperationDeclaration.ts rename to core/src/helpers/OperationDeclaration/OperationDeclaration.ts diff --git a/javascript/sisgea-spec/src/helpers/OperationDeclaration/index.ts b/core/src/helpers/OperationDeclaration/index.ts similarity index 100% rename from javascript/sisgea-spec/src/helpers/OperationDeclaration/index.ts rename to core/src/helpers/OperationDeclaration/index.ts diff --git a/javascript/sisgea-spec/src/helpers/array.ts b/core/src/helpers/array.ts similarity index 100% rename from javascript/sisgea-spec/src/helpers/array.ts rename to core/src/helpers/array.ts diff --git a/javascript/sisgea-spec/src/helpers/index.ts b/core/src/helpers/index.ts similarity index 100% rename from javascript/sisgea-spec/src/helpers/index.ts rename to core/src/helpers/index.ts diff --git a/javascript/sisgea-spec/src/helpers/pick.ts b/core/src/helpers/pick.ts similarity index 100% rename from javascript/sisgea-spec/src/helpers/pick.ts rename to core/src/helpers/pick.ts diff --git a/javascript/sisgea-spec/src/index.ts b/core/src/index.ts similarity index 100% rename from javascript/sisgea-spec/src/index.ts rename to core/src/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/ambiente/ambiente.declaration.ts b/core/src/sisgea/ambientes/ambiente/ambiente.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/ambiente/ambiente.declaration.ts rename to core/src/sisgea/ambientes/ambiente/ambiente.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/ambiente/ambiente.operations.ts b/core/src/sisgea/ambientes/ambiente/ambiente.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/ambiente/ambiente.operations.ts rename to core/src/sisgea/ambientes/ambiente/ambiente.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/ambiente/index.ts b/core/src/sisgea/ambientes/ambiente/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/ambiente/index.ts rename to core/src/sisgea/ambientes/ambiente/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/bloco/bloco.declaration.ts b/core/src/sisgea/ambientes/bloco/bloco.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/bloco/bloco.declaration.ts rename to core/src/sisgea/ambientes/bloco/bloco.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/bloco/bloco.operations.ts b/core/src/sisgea/ambientes/bloco/bloco.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/bloco/bloco.operations.ts rename to core/src/sisgea/ambientes/bloco/bloco.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/bloco/index.ts b/core/src/sisgea/ambientes/bloco/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/bloco/index.ts rename to core/src/sisgea/ambientes/bloco/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/campus/campus.declaration.ts b/core/src/sisgea/ambientes/campus/campus.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/campus/campus.declaration.ts rename to core/src/sisgea/ambientes/campus/campus.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/campus/campus.operations.ts b/core/src/sisgea/ambientes/campus/campus.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/campus/campus.operations.ts rename to core/src/sisgea/ambientes/campus/campus.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/campus/index.ts b/core/src/sisgea/ambientes/campus/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/campus/index.ts rename to core/src/sisgea/ambientes/campus/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/cidade/cidade.declaration.ts b/core/src/sisgea/ambientes/cidade/cidade.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/cidade/cidade.declaration.ts rename to core/src/sisgea/ambientes/cidade/cidade.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/cidade/cidade.operations.ts b/core/src/sisgea/ambientes/cidade/cidade.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/cidade/cidade.operations.ts rename to core/src/sisgea/ambientes/cidade/cidade.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/cidade/index.ts b/core/src/sisgea/ambientes/cidade/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/cidade/index.ts rename to core/src/sisgea/ambientes/cidade/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/endereco/endereco.declaration.ts b/core/src/sisgea/ambientes/endereco/endereco.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/endereco/endereco.declaration.ts rename to core/src/sisgea/ambientes/endereco/endereco.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/endereco/endereco.operations.ts b/core/src/sisgea/ambientes/endereco/endereco.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/endereco/endereco.operations.ts rename to core/src/sisgea/ambientes/endereco/endereco.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/endereco/index.ts b/core/src/sisgea/ambientes/endereco/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/endereco/index.ts rename to core/src/sisgea/ambientes/endereco/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/estado/estado.declaration.ts b/core/src/sisgea/ambientes/estado/estado.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/estado/estado.declaration.ts rename to core/src/sisgea/ambientes/estado/estado.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/estado/estado.operations.ts b/core/src/sisgea/ambientes/estado/estado.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/estado/estado.operations.ts rename to core/src/sisgea/ambientes/estado/estado.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/estado/index.ts b/core/src/sisgea/ambientes/estado/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/estado/index.ts rename to core/src/sisgea/ambientes/estado/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/index.ts b/core/src/sisgea/ambientes/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/index.ts rename to core/src/sisgea/ambientes/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/reserva/index.ts b/core/src/sisgea/ambientes/reserva/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/reserva/index.ts rename to core/src/sisgea/ambientes/reserva/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/reserva/reserva.declaration.ts b/core/src/sisgea/ambientes/reserva/reserva.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/reserva/reserva.declaration.ts rename to core/src/sisgea/ambientes/reserva/reserva.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ambientes/reserva/reserva.operations.ts b/core/src/sisgea/ambientes/reserva/reserva.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ambientes/reserva/reserva.operations.ts rename to core/src/sisgea/ambientes/reserva/reserva.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/autenticacao/autenticacao.declaration.ts b/core/src/sisgea/autenticacao/autenticacao.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/autenticacao/autenticacao.declaration.ts rename to core/src/sisgea/autenticacao/autenticacao.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/autenticacao/autenticacao.operators.ts b/core/src/sisgea/autenticacao/autenticacao.operators.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/autenticacao/autenticacao.operators.ts rename to core/src/sisgea/autenticacao/autenticacao.operators.ts diff --git a/javascript/sisgea-spec/src/sisgea/autenticacao/index.ts b/core/src/sisgea/autenticacao/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/autenticacao/index.ts rename to core/src/sisgea/autenticacao/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/autenticacao/usuario/index.ts b/core/src/sisgea/autenticacao/usuario/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/autenticacao/usuario/index.ts rename to core/src/sisgea/autenticacao/usuario/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/autenticacao/usuario/usuario.declaration.ts b/core/src/sisgea/autenticacao/usuario/usuario.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/autenticacao/usuario/usuario.declaration.ts rename to core/src/sisgea/autenticacao/usuario/usuario.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/autenticacao/usuario/usuario.operations.ts b/core/src/sisgea/autenticacao/usuario/usuario.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/autenticacao/usuario/usuario.operations.ts rename to core/src/sisgea/autenticacao/usuario/usuario.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/autenticacao/vinculo/index.ts b/core/src/sisgea/autenticacao/vinculo/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/autenticacao/vinculo/index.ts rename to core/src/sisgea/autenticacao/vinculo/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/autenticacao/vinculo/vinculo.declaration.ts b/core/src/sisgea/autenticacao/vinculo/vinculo.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/autenticacao/vinculo/vinculo.declaration.ts rename to core/src/sisgea/autenticacao/vinculo/vinculo.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/autenticacao/vinculo/vinculo.operations.ts b/core/src/sisgea/autenticacao/vinculo/vinculo.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/autenticacao/vinculo/vinculo.operations.ts rename to core/src/sisgea/autenticacao/vinculo/vinculo.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/base/arquivo/arquivo.declaration.ts b/core/src/sisgea/base/arquivo/arquivo.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/base/arquivo/arquivo.declaration.ts rename to core/src/sisgea/base/arquivo/arquivo.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/base/arquivo/arquivo.operations.ts b/core/src/sisgea/base/arquivo/arquivo.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/base/arquivo/arquivo.operations.ts rename to core/src/sisgea/base/arquivo/arquivo.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/base/arquivo/index.ts b/core/src/sisgea/base/arquivo/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/base/arquivo/index.ts rename to core/src/sisgea/base/arquivo/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/base/imagem-arquivo/imagem-arquivo.declaration.ts b/core/src/sisgea/base/imagem-arquivo/imagem-arquivo.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/base/imagem-arquivo/imagem-arquivo.declaration.ts rename to core/src/sisgea/base/imagem-arquivo/imagem-arquivo.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/base/imagem-arquivo/index.ts b/core/src/sisgea/base/imagem-arquivo/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/base/imagem-arquivo/index.ts rename to core/src/sisgea/base/imagem-arquivo/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/base/imagem/imagem.declaration.ts b/core/src/sisgea/base/imagem/imagem.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/base/imagem/imagem.declaration.ts rename to core/src/sisgea/base/imagem/imagem.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/base/imagem/index.ts b/core/src/sisgea/base/imagem/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/base/imagem/index.ts rename to core/src/sisgea/base/imagem/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/base/index.ts b/core/src/sisgea/base/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/base/index.ts rename to core/src/sisgea/base/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/calendario/aula/aula.declaration.ts b/core/src/sisgea/calendario/aula/aula.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/calendario/aula/aula.declaration.ts rename to core/src/sisgea/calendario/aula/aula.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/calendario/calendario-letivo/calendario-letivo.declaration.ts b/core/src/sisgea/calendario/calendario-letivo/calendario-letivo.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/calendario/calendario-letivo/calendario-letivo.declaration.ts rename to core/src/sisgea/calendario/calendario-letivo/calendario-letivo.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/calendario/calendario-letivo/calendario-letivo.operations.ts b/core/src/sisgea/calendario/calendario-letivo/calendario-letivo.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/calendario/calendario-letivo/calendario-letivo.operations.ts rename to core/src/sisgea/calendario/calendario-letivo/calendario-letivo.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/calendario/calendario-letivo/index.ts b/core/src/sisgea/calendario/calendario-letivo/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/calendario/calendario-letivo/index.ts rename to core/src/sisgea/calendario/calendario-letivo/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/calendario/dia-calendario/dia-calendario.declaration.ts b/core/src/sisgea/calendario/dia-calendario/dia-calendario.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/calendario/dia-calendario/dia-calendario.declaration.ts rename to core/src/sisgea/calendario/dia-calendario/dia-calendario.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/calendario/etapa/etapa.declaration.ts b/core/src/sisgea/calendario/etapa/etapa.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/calendario/etapa/etapa.declaration.ts rename to core/src/sisgea/calendario/etapa/etapa.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/calendario/evento/evento.declaration.ts b/core/src/sisgea/calendario/evento/evento.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/calendario/evento/evento.declaration.ts rename to core/src/sisgea/calendario/evento/evento.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/calendario/index.ts b/core/src/sisgea/calendario/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/calendario/index.ts rename to core/src/sisgea/calendario/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/calendario/intervalo-de-tempo/intervalo-de-tempo.declaration.ts b/core/src/sisgea/calendario/intervalo-de-tempo/intervalo-de-tempo.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/calendario/intervalo-de-tempo/intervalo-de-tempo.declaration.ts rename to core/src/sisgea/calendario/intervalo-de-tempo/intervalo-de-tempo.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/campus-possui-modalidade/campus-possui-modalidade.declaration.ts b/core/src/sisgea/ensino/campus-possui-modalidade/campus-possui-modalidade.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/campus-possui-modalidade/campus-possui-modalidade.declaration.ts rename to core/src/sisgea/ensino/campus-possui-modalidade/campus-possui-modalidade.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/campus-possui-modalidade/index.ts b/core/src/sisgea/ensino/campus-possui-modalidade/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/campus-possui-modalidade/index.ts rename to core/src/sisgea/ensino/campus-possui-modalidade/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/curso/curso.declaration.ts b/core/src/sisgea/ensino/curso/curso.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/curso/curso.declaration.ts rename to core/src/sisgea/ensino/curso/curso.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/curso/curso.operations.ts b/core/src/sisgea/ensino/curso/curso.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/curso/curso.operations.ts rename to core/src/sisgea/ensino/curso/curso.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/curso/index.ts b/core/src/sisgea/ensino/curso/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/curso/index.ts rename to core/src/sisgea/ensino/curso/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/diario-professor/diario-professor.declaration.ts b/core/src/sisgea/ensino/diario-professor/diario-professor.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/diario-professor/diario-professor.declaration.ts rename to core/src/sisgea/ensino/diario-professor/diario-professor.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/diario-professor/diario-professor.operations.ts b/core/src/sisgea/ensino/diario-professor/diario-professor.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/diario-professor/diario-professor.operations.ts rename to core/src/sisgea/ensino/diario-professor/diario-professor.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/diario-professor/index.ts b/core/src/sisgea/ensino/diario-professor/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/diario-professor/index.ts rename to core/src/sisgea/ensino/diario-professor/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/diario/diario.declaration.ts b/core/src/sisgea/ensino/diario/diario.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/diario/diario.declaration.ts rename to core/src/sisgea/ensino/diario/diario.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/diario/diario.operations.ts b/core/src/sisgea/ensino/diario/diario.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/diario/diario.operations.ts rename to core/src/sisgea/ensino/diario/diario.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/diario/index.ts b/core/src/sisgea/ensino/diario/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/diario/index.ts rename to core/src/sisgea/ensino/diario/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/disciplina/disciplina.declaration.ts b/core/src/sisgea/ensino/disciplina/disciplina.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/disciplina/disciplina.declaration.ts rename to core/src/sisgea/ensino/disciplina/disciplina.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/disciplina/disciplina.operations.ts b/core/src/sisgea/ensino/disciplina/disciplina.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/disciplina/disciplina.operations.ts rename to core/src/sisgea/ensino/disciplina/disciplina.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/disciplina/index.ts b/core/src/sisgea/ensino/disciplina/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/disciplina/index.ts rename to core/src/sisgea/ensino/disciplina/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/index.ts b/core/src/sisgea/ensino/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/index.ts rename to core/src/sisgea/ensino/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/modalidade/index.ts b/core/src/sisgea/ensino/modalidade/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/modalidade/index.ts rename to core/src/sisgea/ensino/modalidade/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/modalidade/modalidade.declaration.ts b/core/src/sisgea/ensino/modalidade/modalidade.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/modalidade/modalidade.declaration.ts rename to core/src/sisgea/ensino/modalidade/modalidade.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/modalidade/modalidade.operations.ts b/core/src/sisgea/ensino/modalidade/modalidade.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/modalidade/modalidade.operations.ts rename to core/src/sisgea/ensino/modalidade/modalidade.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/turma/index.ts b/core/src/sisgea/ensino/turma/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/turma/index.ts rename to core/src/sisgea/ensino/turma/index.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/turma/turma.declaration.ts b/core/src/sisgea/ensino/turma/turma.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/turma/turma.declaration.ts rename to core/src/sisgea/ensino/turma/turma.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/ensino/turma/turma.operations.ts b/core/src/sisgea/ensino/turma/turma.operations.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/ensino/turma/turma.operations.ts rename to core/src/sisgea/ensino/turma/turma.operations.ts diff --git a/javascript/sisgea-spec/src/sisgea/horario-academico/turma-disponibilidade-dia/turma-disponibilidade-dia.declaration.ts b/core/src/sisgea/horario-academico/turma-disponibilidade-dia/turma-disponibilidade-dia.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/horario-academico/turma-disponibilidade-dia/turma-disponibilidade-dia.declaration.ts rename to core/src/sisgea/horario-academico/turma-disponibilidade-dia/turma-disponibilidade-dia.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/horario-academico/turma-disponibilidade/turma-disponibilidade.declaration.ts b/core/src/sisgea/horario-academico/turma-disponibilidade/turma-disponibilidade.declaration.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/horario-academico/turma-disponibilidade/turma-disponibilidade.declaration.ts rename to core/src/sisgea/horario-academico/turma-disponibilidade/turma-disponibilidade.declaration.ts diff --git a/javascript/sisgea-spec/src/sisgea/index.ts b/core/src/sisgea/index.ts similarity index 100% rename from javascript/sisgea-spec/src/sisgea/index.ts rename to core/src/sisgea/index.ts diff --git a/javascript/sisgea-spec/tsconfig.build.json b/core/tsconfig.build.json similarity index 100% rename from javascript/sisgea-spec/tsconfig.build.json rename to core/tsconfig.build.json diff --git a/javascript/sisgea-spec/tsconfig.json b/core/tsconfig.json similarity index 100% rename from javascript/sisgea-spec/tsconfig.json rename to core/tsconfig.json diff --git a/integrations/dotnet/GeneratorTool/.dockerignore b/integrations/dotnet/GeneratorTool/.dockerignore new file mode 100644 index 00000000..c1fbe36a --- /dev/null +++ b/integrations/dotnet/GeneratorTool/.dockerignore @@ -0,0 +1,5 @@ +bin +obj +Dockerfile +.dockerignore +Makefile \ No newline at end of file diff --git a/integrations/dotnet/GeneratorTool/Dockerfile b/integrations/dotnet/GeneratorTool/Dockerfile new file mode 100644 index 00000000..9f8f3987 --- /dev/null +++ b/integrations/dotnet/GeneratorTool/Dockerfile @@ -0,0 +1,15 @@ +FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env +WORKDIR /App + +# Copy everything +COPY . ./ +# Restore as distinct layers +RUN dotnet restore +# Build and publish a release +RUN dotnet publish -c Release -o out + +# Build runtime image +FROM mcr.microsoft.com/dotnet/runtime:8.0 +WORKDIR /App +COPY --from=build-env /App/out . +ENTRYPOINT ["dotnet", "GeneratorTool.dll"] diff --git a/integrations/dotnet/GeneratorTool/GeneratorTool.csproj b/integrations/dotnet/GeneratorTool/GeneratorTool.csproj new file mode 100644 index 00000000..7c5d0c58 --- /dev/null +++ b/integrations/dotnet/GeneratorTool/GeneratorTool.csproj @@ -0,0 +1,14 @@ + + + + Exe + net8.0 + enable + enable + + + + + + + diff --git a/integrations/dotnet/GeneratorTool/Makefile b/integrations/dotnet/GeneratorTool/Makefile new file mode 100644 index 00000000..5a7f28e7 --- /dev/null +++ b/integrations/dotnet/GeneratorTool/Makefile @@ -0,0 +1,3 @@ + +build: + docker build -t "sisgea/dotnet-generator-tool" . \ No newline at end of file diff --git a/integrations/dotnet/GeneratorTool/Program.cs b/integrations/dotnet/GeneratorTool/Program.cs new file mode 100644 index 00000000..1227ac75 --- /dev/null +++ b/integrations/dotnet/GeneratorTool/Program.cs @@ -0,0 +1,31 @@ +using NJsonSchema.CodeGeneration.CSharp; +using JsonSchema = NJsonSchema.JsonSchema; + +Console.WriteLine("@sisgea/spec - dotnet generator tool") +; + +var inputPath = Environment.GetEnvironmentVariable("SPEC_JSON_SCHEMA"); + +if (!File.Exists(inputPath)) +{ + throw new Exception("File SPEC_JSON_SCHEMA not found"); +} + +var outputPath = Environment.GetEnvironmentVariable("SPEC_CHARP_OUTPUT"); + +if (outputPath == null || outputPath.Length == 0) +{ + throw new Exception("Please provide SPEC_CHARP_OUTPUT."); +} + + +string json = File.ReadAllText(inputPath); +var schemaFromFile = JsonSchema.FromSampleJson(json); +var classGenerator = new CSharpGenerator(schemaFromFile, new CSharpGeneratorSettings +{ + ClassStyle = CSharpClassStyle.Poco, +}); + + +var codeFile = classGenerator.GenerateFile(); +File.WriteAllText(outputPath, codeFile); \ No newline at end of file diff --git a/generated/json-schema/v1/sisgea.schema.json b/integrations/json-schema/v1/sisgea.schema.json similarity index 100% rename from generated/json-schema/v1/sisgea.schema.json rename to integrations/json-schema/v1/sisgea.schema.json