Commit f2c5f4ea authored by huriarte's avatar huriarte

FUsion de ramas

parents dbfd7bb0 2caeab90
# Editor configuration, see https://editorconfig.org # Editor configuration, see https://editorconfig.org
root = true root = true
[*] [*]
charset = utf-8 charset = utf-8
indent_style = space indent_style = space
indent_size = 2 indent_size = 2
insert_final_newline = true insert_final_newline = true
trim_trailing_whitespace = true trim_trailing_whitespace = true
[*.md] [*.md]
max_line_length = off max_line_length = off
trim_trailing_whitespace = false trim_trailing_whitespace = false
# See http://help.github.com/ignore-files/ for more about ignoring files. # See http://help.github.com/ignore-files/ for more about ignoring files.
# compiled output # compiled output
/dist /dist
/tmp /tmp
/out-tsc /out-tsc
# Only exists if Bazel was run # Only exists if Bazel was run
/bazel-out /bazel-out
# dependencies # dependencies
/node_modules /node_modules
# profiling files # profiling files
chrome-profiler-events*.json chrome-profiler-events*.json
speed-measure-plugin*.json speed-measure-plugin*.json
# IDEs and editors # IDEs and editors
/.idea /.idea
.project .project
.classpath .classpath
.c9/ .c9/
*.launch *.launch
.settings/ .settings/
*.sublime-workspace *.sublime-workspace
# IDE - VSCode # IDE - VSCode
.vscode/* .vscode/*
!.vscode/settings.json !.vscode/settings.json
!.vscode/tasks.json !.vscode/tasks.json
!.vscode/launch.json !.vscode/launch.json
!.vscode/extensions.json !.vscode/extensions.json
.history/* .history/*
# misc # misc
/.sass-cache /.sass-cache
/connect.lock /connect.lock
/coverage /coverage
/libpeerconnection.log /libpeerconnection.log
npm-debug.log npm-debug.log
yarn-error.log yarn-error.log
testem.log testem.log
/typings /typings
# System Files # System Files
.DS_Store .DS_Store
Thumbs.db Thumbs.db
# ByteBot # ByteBot
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.3.24. This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.3.24.
## Development server ## Development server
Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.
## Code scaffolding ## Code scaffolding
Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`. Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.
## Build ## Build
Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build. Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build.
## Running unit tests ## Running unit tests
Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).
## Running end-to-end tests ## Running end-to-end tests
Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).
## Further help ## Further help
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
{ {
"$schema": "./node_modules/@angular/cli/lib/config/schema.json", "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1, "version": 1,
"newProjectRoot": "projects", "newProjectRoot": "projects",
"projects": { "projects": {
"bytebot-html": { "bytebot-html": {
"projectType": "application", "projectType": "application",
"schematics": { "schematics": {
"@schematics/angular:component": { "@schematics/angular:component": {
"style": "scss" "style": "scss"
} }
}, },
"root": "projects/bytebot-html", "root": "projects/bytebot-html",
"sourceRoot": "projects/bytebot-html/src", "sourceRoot": "projects/bytebot-html/src",
"prefix": "byte", "prefix": "byte",
"architect": { "architect": {
"build": { "build": {
"builder": "@angular-devkit/build-angular:browser", "builder": "@angular-devkit/build-angular:browser",
"options": { "options": {
"outputPath": "dist/bytebot-html", "outputPath": "dist/bytebot-html",
"index": "projects/bytebot-html/src/index.html", "index": "projects/bytebot-html/src/index.html",
"main": "projects/bytebot-html/src/main.ts", "main": "projects/bytebot-html/src/main.ts",
"polyfills": "projects/bytebot-html/src/polyfills.ts", "polyfills": "projects/bytebot-html/src/polyfills.ts",
"tsConfig": "projects/bytebot-html/tsconfig.app.json", "tsConfig": "projects/bytebot-html/tsconfig.app.json",
"aot": false, "aot": false,
"assets": [ "assets": [
"projects/bytebot-html/src/favicon.ico", "projects/bytebot-html/src/favicon.ico",
"projects/bytebot-html/src/assets" "projects/bytebot-html/src/assets"
], ],
"styles": [ "styles": [
"./node_modules/@angular/material/prebuilt-themes/indigo-pink.css", "./node_modules/@angular/material/prebuilt-themes/indigo-pink.css",
"./node_modules/material-icons/iconfont/material-icons.css", "./node_modules/material-icons/iconfont/material-icons.css",
"projects/bytebot-html/src/styles.scss", "projects/bytebot-html/src/styles.scss",
"node_modules/font-awesome/scss/font-awesome.scss", "node_modules/font-awesome/scss/font-awesome.scss",
"node_modules/ngx-toastr/toastr.css", "node_modules/ngx-toastr/toastr.css",
"node_modules/ngx-bootstrap/datepicker/bs-datepicker.css" "node_modules/ngx-bootstrap/datepicker/bs-datepicker.css"
], ],
"scripts": [ "scripts": [
"node_modules/jquery/dist/jquery.min.js", "node_modules/jquery/dist/jquery.min.js",
"vendor/metismenu/metisMenu.js", "vendor/metismenu/metisMenu.js",
"node_modules/bootstrap/dist/js/bootstrap.min.js", "node_modules/bootstrap/dist/js/bootstrap.min.js",
"node_modules/bootstrap/dist/js/bootstrap.bundle.min.js", "node_modules/bootstrap/dist/js/bootstrap.bundle.min.js",
"node_modules/jquery-slimscroll/jquery.slimscroll.min.js", "node_modules/jquery-slimscroll/jquery.slimscroll.min.js",
"node_modules/marked/marked.min.js", "node_modules/marked/marked.min.js",
"node_modules/ace-builds/src-min/ace.js", "node_modules/ace-builds/src-min/ace.js",
"node_modules/ace-builds/src-min/mode-markdown.js", "node_modules/ace-builds/src-min/mode-markdown.js",
"node_modules/ace-builds/src-min/theme-eclipse.js", "node_modules/ace-builds/src-min/theme-eclipse.js",
"node_modules/ace-builds/src-min/mode-java.js", "node_modules/ace-builds/src-min/mode-java.js",
"node_modules/peity/jquery.peity.min.js", "node_modules/peity/jquery.peity.min.js",
"node_modules/pace-js/pace.min.js", "node_modules/pace-js/pace.min.js",
"node_modules/popper.js/dist/umd/popper.js", "node_modules/popper.js/dist/umd/popper.js",
"vendor/inspinia/inspinia.js" "vendor/inspinia/inspinia.js"
] ]
}, },
"configurations": { "configurations": {
"production": { "production": {
"fileReplacements": [ "fileReplacements": [
{ {
"replace": "projects/bytebot-html/src/environments/environment.ts", "replace": "projects/bytebot-html/src/environments/environment.ts",
"with": "projects/bytebot-html/src/environments/environment.prod.ts" "with": "projects/bytebot-html/src/environments/environment.prod.ts"
} }
], ],
"optimization": true, "optimization": true,
"outputHashing": "all", "outputHashing": "all",
"sourceMap": false, "sourceMap": false,
"extractCss": true, "extractCss": true,
"namedChunks": false, "namedChunks": false,
"aot": true, "aot": true,
"extractLicenses": true, "extractLicenses": true,
"vendorChunk": false, "vendorChunk": false,
"buildOptimizer": true, "buildOptimizer": true,
"budgets": [ "budgets": [
{ {
"type": "initial", "type": "initial",
"maximumWarning": "2mb", "maximumWarning": "2mb",
"maximumError": "5mb" "maximumError": "5mb"
}, },
{ {
"type": "anyComponentStyle", "type": "anyComponentStyle",
"maximumWarning": "6kb", "maximumWarning": "6kb",
"maximumError": "10kb" "maximumError": "10kb"
} }
] ]
} }
} }
}, },
"serve": { "serve": {
"builder": "@angular-devkit/build-angular:dev-server", "builder": "@angular-devkit/build-angular:dev-server",
"options": { "options": {
"browserTarget": "bytebot-html:build" "browserTarget": "bytebot-html:build"
}, },
"configurations": { "configurations": {
"production": { "production": {
"browserTarget": "bytebot-html:build:production" "browserTarget": "bytebot-html:build:production"
} }
} }
}, },
"extract-i18n": { "extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n", "builder": "@angular-devkit/build-angular:extract-i18n",
"options": { "options": {
"browserTarget": "bytebot-html:build" "browserTarget": "bytebot-html:build"
} }
}, },
"test": { "test": {
"builder": "@angular-devkit/build-angular:karma", "builder": "@angular-devkit/build-angular:karma",
"options": { "options": {
"main": "projects/bytebot-html/src/test.ts", "main": "projects/bytebot-html/src/test.ts",
"polyfills": "projects/bytebot-html/src/polyfills.ts", "polyfills": "projects/bytebot-html/src/polyfills.ts",
"tsConfig": "projects/bytebot-html/tsconfig.spec.json", "tsConfig": "projects/bytebot-html/tsconfig.spec.json",
"karmaConfig": "projects/bytebot-html/karma.conf.js", "karmaConfig": "projects/bytebot-html/karma.conf.js",
"assets": [ "assets": [
"projects/bytebot-html/src/favicon.ico", "projects/bytebot-html/src/favicon.ico",
"projects/bytebot-html/src/assets" "projects/bytebot-html/src/assets"
], ],
"styles": [ "styles": [
"projects/bytebot-html/src/styles.scss" "projects/bytebot-html/src/styles.scss"
], ],
"scripts": [] "scripts": []
} }
}, },
"lint": { "lint": {
"builder": "@angular-devkit/build-angular:tslint", "builder": "@angular-devkit/build-angular:tslint",
"options": { "options": {
"tsConfig": [ "tsConfig": [
"projects/bytebot-html/tsconfig.app.json", "projects/bytebot-html/tsconfig.app.json",
"projects/bytebot-html/tsconfig.spec.json", "projects/bytebot-html/tsconfig.spec.json",
"projects/bytebot-html/e2e/tsconfig.json" "projects/bytebot-html/e2e/tsconfig.json"
], ],
"exclude": [ "exclude": [
"**/node_modules/**" "**/node_modules/**"
] ]
} }
}, },
"e2e": { "e2e": {
"builder": "@angular-devkit/build-angular:protractor", "builder": "@angular-devkit/build-angular:protractor",
"options": { "options": {
"protractorConfig": "projects/bytebot-html/e2e/protractor.conf.js", "protractorConfig": "projects/bytebot-html/e2e/protractor.conf.js",
"devServerTarget": "bytebot-html:serve" "devServerTarget": "bytebot-html:serve"
}, },
"configurations": { "configurations": {
"production": { "production": {
"devServerTarget": "bytebot-html:serve:production" "devServerTarget": "bytebot-html:serve:production"
} }
} }
} }
} }
} }
}, },
"defaultProject": "bytebot-html" "defaultProject": "bytebot-html"
} }
\ No newline at end of file
{ {
"name": "bytebot-projects", "name": "bytebot-projects",
"version": "0.0.0", "version": "0.0.0",
"scripts": { "scripts": {
"ng": "ng", "ng": "ng",
"start": "ng serve", "start": "ng serve",
"build": "ng build", "build": "ng build",
"test": "ng test", "test": "ng test",
"lint": "ng lint", "lint": "ng lint",
"e2e": "ng e2e" "e2e": "ng e2e"
}, },
"private": true, "private": true,
"dependencies": { "dependencies": {
"@agm/core": "^1.1.0", "@agm/core": "^1.1.0",
"@angular-material-components/datetime-picker": "^2.0.4", "@angular-material-components/datetime-picker": "^2.0.4",
"@angular/animations": "^8.2.14", "@angular/animations": "^8.2.14",
"@angular/cdk": "^8.2.3", "@angular/cdk": "^8.2.3",
"@angular/common": "~8.2.14", "@angular/common": "~8.2.14",
"@angular/compiler": "~8.2.14", "@angular/compiler": "~8.2.14",
"@angular/core": "~8.2.14", "@angular/core": "~8.2.14",
"@angular/forms": "~8.2.14", "@angular/forms": "~8.2.14",
"@angular/material": "^8.2.3", "@angular/material": "^8.2.3",
"@angular/material-moment-adapter": "^9.2.0", "@angular/material-moment-adapter": "^9.2.0",
"@angular/platform-browser": "^8.2.14", "@angular/platform-browser": "^8.2.14",
"@angular/platform-browser-dynamic": "^8.2.14", "@angular/platform-browser-dynamic": "^8.2.14",
"@angular/router": "~8.2.14", "@angular/router": "~8.2.14",
"@babel/compat-data": "^7.8.0", "@babel/compat-data": "^7.8.0",
"@ng-bootstrap/ng-bootstrap": "^5.1.5", "@ng-bootstrap/ng-bootstrap": "^5.1.5",
"@ng-select/ng-select": "^3.7.3", "@ng-select/ng-select": "^3.7.3",
"@ngx-translate/core": "^12.1.2", "@ngx-translate/core": "^12.1.2",
"@ngx-translate/http-loader": "^4.0.0", "@ngx-translate/http-loader": "^4.0.0",
"@swimlane/ngx-datatable": "^16.0.3", "@swimlane/ngx-datatable": "^16.0.3",
"@swimlane/ngx-graph": "^6.2.0", "@swimlane/ngx-graph": "^6.2.0",
"@types/jquery": "^3.3.34", "@types/jquery": "^3.3.34",
"@xdf/commons": "^1.0.0", "@xdf/commons": "^1.0.0",
"@xdf/gallery": "^1.0.4", "@xdf/gallery": "^1.0.4",
"@xdf/layouts": "^1.0.0", "@xdf/layouts": "^1.0.0",
"@xdf/security": "^1.0.0", "@xdf/security": "^1.0.0",
"@xdf/settings": "^1.0.2", "@xdf/settings": "^1.0.2",
"ace-builds": "^1.4.8", "ace-builds": "^1.4.8",
"angular-highcharts": "^9.0.2", "angular-highcharts": "^9.0.2",
"angular-marked": "^1.2.2", "angular-marked": "^1.2.2",
"bootstrap": "^4.4.1", "bootstrap": "^4.4.1",
"chart.js": "^2.9.3", "chart.js": "^2.9.3",
"dagre": "^0.8.5", "dagre": "^0.8.5",
"date-fns": "^2.11.1", "date-fns": "^2.11.1",
"font-awesome": "^4.7.0", "font-awesome": "^4.7.0",
"hammerjs": "^2.0.8", "hammerjs": "^2.0.8",
"highcharts": "^8.0.4", "highcharts": "^8.0.4",
"jquery": "^3.4.1", "jquery": "^3.4.1",
"jquery-slimscroll": "^1.3.8", "jquery-slimscroll": "^1.3.8",
"material-design-icons": "^3.0.1", "material-design-icons": "^3.0.1",
"material-icons": "^0.3.1", "material-icons": "^0.3.1",
"metismenu": "^3.0.6", "metismenu": "^3.0.6",
"moment": "^2.22.1", "moment": "^2.22.1",
"moment-timezone": "^0.5.31", "moment-timezone": "^0.5.31",
"net": "^1.0.2", "net": "^1.0.2",
"ng-circle-progress": "^1.5.1", "ng-circle-progress": "^1.5.1",
"ng-json-view": "^3.0.0", "ng-json-view": "^3.0.0",
"ng2-ace-editor": "^0.3.9", "ng2-ace-editor": "^0.3.9",
"ng2-charts": "^2.3.0", "ng2-charts": "^2.3.0",
"ng2-data-table": "^1.4.0", "ng2-data-table": "^1.4.0",
"ngx-bootstrap": "^4.3.0", "ngx-bootstrap": "^4.3.0",
"ngx-color": "^4.1.1", "ngx-color": "^4.1.1",
"ngx-echarts": "^4.2.2", "ngx-echarts": "^4.2.2",
"ngx-moment": "^3.5.0", "ngx-moment": "^3.5.0",
"ngx-scrollbar": "^7.1.0", "ngx-scrollbar": "^7.1.0",
"ngx-slick-carousel": "^0.5.1", "ngx-slick-carousel": "^0.5.1",
"ngx-toastr": "^10.0.4", "ngx-toastr": "^10.0.4",
"ngx-translate-multi-http-loader": "^3.0.0", "ngx-translate-multi-http-loader": "^3.0.0",
"ngx-tribute": "^1.5.1", "ngx-tribute": "^1.5.1",
"nomnoml": "^0.6.2", "nomnoml": "^0.6.2",
"pace-js": "^1.0.2", "pace-js": "^1.0.2",
"peity": "^3.3.0", "peity": "^3.3.0",
"popper": "^1.0.1", "popper": "^1.0.1",
"popper.js": "^1.16.1", "popper.js": "^1.16.1",
"rxjs": "~6.4.0", "rxjs": "~6.4.0",
"stompjs": "^2.3.3", "stompjs": "^2.3.3",
"tributejs": "^5.1.3", "tributejs": "^5.1.3",
"tslib": "^1.10.0", "tslib": "^1.10.0",
"zone.js": "~0.9.1" "zone.js": "~0.9.1"
}, },
"devDependencies": { "devDependencies": {
"@angular-devkit/build-angular": "~0.803.25", "@angular-devkit/build-angular": "~0.803.25",
"@angular/cli": "~8.3.24", "@angular/cli": "~8.3.24",
"@angular/compiler-cli": "~8.2.14", "@angular/compiler-cli": "~8.2.14",
"@angular/language-service": "~8.2.14", "@angular/language-service": "~8.2.14",
"@types/node": "~8.9.4", "@types/node": "~8.9.4",
"@types/jasmine": "~3.3.8", "@types/jasmine": "~3.3.8",
"@types/jasminewd2": "~2.0.3", "@types/jasminewd2": "~2.0.3",
"codelyzer": "^5.0.0", "codelyzer": "^5.0.0",
"jasmine-core": "~3.4.0", "jasmine-core": "~3.4.0",
"jasmine-spec-reporter": "~4.2.1", "jasmine-spec-reporter": "~4.2.1",
"karma": "~4.1.0", "karma": "~4.1.0",
"karma-chrome-launcher": "~2.2.0", "karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.1", "karma-coverage-istanbul-reporter": "~2.0.1",
"karma-jasmine": "~2.0.1", "karma-jasmine": "~2.0.1",
"karma-jasmine-html-reporter": "^1.4.0", "karma-jasmine-html-reporter": "^1.4.0",
"protractor": "~5.4.0", "protractor": "~5.4.0",
"ts-node": "~7.0.0", "ts-node": "~7.0.0",
"tslint": "~5.15.0", "tslint": "~5.15.0",
"typescript": "~3.5.3" "typescript": "~3.5.3"
} }
} }
# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. # This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
# For additional information regarding the format and rule options, please see: # For additional information regarding the format and rule options, please see:
# https://github.com/browserslist/browserslist#queries # https://github.com/browserslist/browserslist#queries
# You can see what browsers were selected by your queries by running: # You can see what browsers were selected by your queries by running:
# npx browserslist # npx browserslist
> 0.5% > 0.5%
last 2 versions last 2 versions
Firefox ESR Firefox ESR
not dead not dead
not IE 9-11 # For IE 9-11 support, remove 'not'. not IE 9-11 # For IE 9-11 support, remove 'not'.
\ No newline at end of file
// @ts-check // @ts-check
// Protractor configuration file, see link for more information // Protractor configuration file, see link for more information
// https://github.com/angular/protractor/blob/master/lib/config.ts // https://github.com/angular/protractor/blob/master/lib/config.ts
const { SpecReporter } = require('jasmine-spec-reporter'); const { SpecReporter } = require('jasmine-spec-reporter');
/** /**
* @type { import("protractor").Config } * @type { import("protractor").Config }
*/ */
exports.config = { exports.config = {
allScriptsTimeout: 11000, allScriptsTimeout: 11000,
specs: [ specs: [
'./src/**/*.e2e-spec.ts' './src/**/*.e2e-spec.ts'
], ],
capabilities: { capabilities: {
browserName: 'chrome' browserName: 'chrome'
}, },
directConnect: true, directConnect: true,
baseUrl: 'http://localhost:4200/', baseUrl: 'http://localhost:4200/',
framework: 'jasmine', framework: 'jasmine',
jasmineNodeOpts: { jasmineNodeOpts: {
showColors: true, showColors: true,
defaultTimeoutInterval: 30000, defaultTimeoutInterval: 30000,
print: function() {} print: function() {}
}, },
onPrepare() { onPrepare() {
require('ts-node').register({ require('ts-node').register({
project: require('path').join(__dirname, './tsconfig.json') project: require('path').join(__dirname, './tsconfig.json')
}); });
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
} }
}; };
\ No newline at end of file
import { AppPage } from './app.po'; import { AppPage } from './app.po';
import { browser, logging } from 'protractor'; import { browser, logging } from 'protractor';
describe('workspace-project App', () => { describe('workspace-project App', () => {
let page: AppPage; let page: AppPage;
beforeEach(() => { beforeEach(() => {
page = new AppPage(); page = new AppPage();
}); });
it('should display welcome message', () => { it('should display welcome message', () => {
page.navigateTo(); page.navigateTo();
expect(page.getTitleText()).toEqual('bytebot-html app is running!'); expect(page.getTitleText()).toEqual('bytebot-html app is running!');
}); });
afterEach(async () => { afterEach(async () => {
// Assert that there are no errors emitted from the browser // Assert that there are no errors emitted from the browser
const logs = await browser.manage().logs().get(logging.Type.BROWSER); const logs = await browser.manage().logs().get(logging.Type.BROWSER);
expect(logs).not.toContain(jasmine.objectContaining({ expect(logs).not.toContain(jasmine.objectContaining({
level: logging.Level.SEVERE, level: logging.Level.SEVERE,
} as logging.Entry)); } as logging.Entry));
}); });
}); });
import { browser, by, element } from 'protractor'; import { browser, by, element } from 'protractor';
export class AppPage { export class AppPage {
navigateTo() { navigateTo() {
return browser.get(browser.baseUrl) as Promise<any>; return browser.get(browser.baseUrl) as Promise<any>;
} }
getTitleText() { getTitleText() {
return element(by.css('app-root .content span')).getText() as Promise<string>; return element(by.css('app-root .content span')).getText() as Promise<string>;
} }
} }
{ {
"extends": "../../../tsconfig.json", "extends": "../../../tsconfig.json",
"compilerOptions": { "compilerOptions": {
"outDir": "../../../out-tsc/e2e", "outDir": "../../../out-tsc/e2e",
"module": "commonjs", "module": "commonjs",
"target": "es5", "target": "es5",
"types": [ "types": [
"jasmine", "jasmine",
"jasminewd2", "jasminewd2",
"node" "node"
] ]
} }
} }
// Karma configuration file, see link for more information // Karma configuration file, see link for more information
// https://karma-runner.github.io/1.0/config/configuration-file.html // https://karma-runner.github.io/1.0/config/configuration-file.html
module.exports = function (config) { module.exports = function (config) {
config.set({ config.set({
basePath: '', basePath: '',
frameworks: ['jasmine', '@angular-devkit/build-angular'], frameworks: ['jasmine', '@angular-devkit/build-angular'],
plugins: [ plugins: [
require('karma-jasmine'), require('karma-jasmine'),
require('karma-chrome-launcher'), require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'), require('karma-jasmine-html-reporter'),
require('karma-coverage-istanbul-reporter'), require('karma-coverage-istanbul-reporter'),
require('@angular-devkit/build-angular/plugins/karma') require('@angular-devkit/build-angular/plugins/karma')
], ],
client: { client: {
clearContext: false // leave Jasmine Spec Runner output visible in browser clearContext: false // leave Jasmine Spec Runner output visible in browser
}, },
coverageIstanbulReporter: { coverageIstanbulReporter: {
dir: require('path').join(__dirname, '../../coverage/bytebot-html'), dir: require('path').join(__dirname, '../../coverage/bytebot-html'),
reports: ['html', 'lcovonly', 'text-summary'], reports: ['html', 'lcovonly', 'text-summary'],
fixWebpackSourcePaths: true fixWebpackSourcePaths: true
}, },
reporters: ['progress', 'kjhtml'], reporters: ['progress', 'kjhtml'],
port: 9876, port: 9876,
colors: true, colors: true,
logLevel: config.LOG_INFO, logLevel: config.LOG_INFO,
autoWatch: true, autoWatch: true,
browsers: ['Chrome'], browsers: ['Chrome'],
singleRun: false, singleRun: false,
restartOnFileChange: true restartOnFileChange: true
}); });
}; };
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router'; import { Routes, RouterModule } from '@angular/router';
import { BaseLayoutComponent, NotFoundComponent } from '@xdf/layouts'; import { BaseLayoutComponent, NotFoundComponent } from '@xdf/layouts';
import { AuthGuard, LoginComponent } from '@xdf/security'; import { AuthGuard, LoginComponent } from '@xdf/security';
import { HomeComponent } from './views/home/home.component'; import { HomeComponent } from './views/home/home.component';
const routes: Routes = [ const routes: Routes = [
// Remover para SSO // Remover para SSO
{ path: 'login', component: LoginComponent }, { path: 'login', component: LoginComponent },
// Main redirect // Main redirect
{ path: '', redirectTo: 'home', pathMatch: 'full', canActivate: [AuthGuard] }, { path: '', redirectTo: 'home', pathMatch: 'full', canActivate: [AuthGuard] },
{ {
path: '', component: BaseLayoutComponent, path: '', component: BaseLayoutComponent,
children: [ children: [
{ path: 'home', component: HomeComponent, data: { breadcrumb: 'Home' } }, { path: 'home', component: HomeComponent, data: { breadcrumb: 'Home' } },
{ {
path: 'security', data: { breadcrumb: 'Seguridad' }, canLoad: [AuthGuard], path: 'security', data: { breadcrumb: 'Seguridad' }, canLoad: [AuthGuard],
loadChildren: () => import('./modules/security/security.module').then(m => m.SecurityModule) loadChildren: () => import('./modules/security/security.module').then(m => m.SecurityModule)
}, },
{ {
path: 'settings', data: { breadcrumb: 'Ajustes Generales' }, canLoad: [AuthGuard], path: 'settings', data: { breadcrumb: 'Ajustes Generales' }, canLoad: [AuthGuard],
loadChildren: () => import('./modules/settings/settings.module').then(m => m.SettingsModule) loadChildren: () => import('./modules/settings/settings.module').then(m => m.SettingsModule)
}, },
{ {
path: 'config', data: { breadcrumb: 'Agentes' }, canLoad: [AuthGuard], path: 'config', data: { breadcrumb: 'Agentes' }, canLoad: [AuthGuard],
loadChildren: () => import('./modules/agent/agent.module').then(m => m.AgentModule) loadChildren: () => import('./modules/agent/agent.module').then(m => m.AgentModule)
} },
{
], path: 'configuration', canLoad: [AuthGuard],
canActivate: [AuthGuard] loadChildren: () => import('./modules/configuration/configuration.module').then(m => m.ConfigurationModule)
}, }
{ path: 'notpermitted', component: NotFoundComponent},
],
// Handle all other routes canActivate: [AuthGuard]
{ path: '**', component: NotFoundComponent} },
]; { path: 'notpermitted', component: NotFoundComponent},
@NgModule({ // Handle all other routes
imports: [RouterModule.forRoot(routes, { { path: '**', component: NotFoundComponent}
scrollPositionRestoration: 'enabled', ];
anchorScrolling: 'enabled', \ No newline at end of file
onSameUrlNavigation: 'ignore'
})],
exports: [RouterModule]
})
export class AppRoutingModule { }
\ No newline at end of file
import { TestBed, async } from '@angular/core/testing'; import { TestBed, async } from '@angular/core/testing';
import { RouterTestingModule } from '@angular/router/testing'; import { RouterTestingModule } from '@angular/router/testing';
import { AppComponent } from './app.component'; import { AppComponent } from './app.component';
describe('AppComponent', () => { describe('AppComponent', () => {
beforeEach(async(() => { beforeEach(async(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
imports: [ imports: [
RouterTestingModule RouterTestingModule
], ],
declarations: [ declarations: [
AppComponent AppComponent
], ],
}).compileComponents(); }).compileComponents();
})); }));
it('should create the app', () => { it('should create the app', () => {
const fixture = TestBed.createComponent(AppComponent); const fixture = TestBed.createComponent(AppComponent);
const app = fixture.debugElement.componentInstance; const app = fixture.debugElement.componentInstance;
expect(app).toBeTruthy(); expect(app).toBeTruthy();
}); });
it(`should have as title 'bytebot-html'`, () => { it(`should have as title 'bytebot-html'`, () => {
const fixture = TestBed.createComponent(AppComponent); const fixture = TestBed.createComponent(AppComponent);
const app = fixture.debugElement.componentInstance; const app = fixture.debugElement.componentInstance;
expect(app.title).toEqual('bytebot-html'); expect(app.title).toEqual('bytebot-html');
}); });
it('should render title', () => { it('should render title', () => {
const fixture = TestBed.createComponent(AppComponent); const fixture = TestBed.createComponent(AppComponent);
fixture.detectChanges(); fixture.detectChanges();
const compiled = fixture.debugElement.nativeElement; const compiled = fixture.debugElement.nativeElement;
expect(compiled.querySelector('.content span').textContent).toContain('bytebot-html app is running!'); expect(compiled.querySelector('.content span').textContent).toContain('bytebot-html app is running!');
}); });
}); });
import { Component } from '@angular/core'; import { Component } from '@angular/core';
@Component({ @Component({
selector: 'byte-root', selector: 'byte-root',
templateUrl: './app.component.html', templateUrl: './app.component.html',
styleUrls: ['./app.component.scss'] styleUrls: ['./app.component.scss']
}) })
export class AppComponent { export class AppComponent {
title = 'bytebot-html'; title = 'bytebot-html';
} }
import { HttpRequest, HttpResponse, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';
import { Observable, of, throwError } from 'rxjs';
import { delay, mergeMap, materialize, dematerialize } from 'rxjs/operators';
import { Injectable } from '@angular/core';
import { SortField, DIRECTION } from '@xdf/commons';
const basePath = '/service/agent';
const tableData: Array<any> = [
{
id: 361,
name: 'BANCO DE CREDITO DEL PERU',
version: '0.0.1',
status: 'Activo',
country: 'Perú',
timezone: 'GMT-5',
avatar: 'https://www.w3schools.com/howto/img_avatar.png'
},
{
id: 362,
name: 'BANCO CONTINENTAL',
version: '0.0.5',
status: 'Activo',
country: 'Perú',
timezone: 'GMT-5',
avatar: 'https://lh3.googleusercontent.com/VHB9bVB8cTcnqwnu0nJqKYbiutRclnbGxTpwnayKB4vMxZj8pk1220Rg-6oQ68DwAkqO=s180-rw'
},
{
id: 363,
name: 'JUAN DE ARONA',
version: '0.0.1',
status: 'Activo',
country: 'Perú',
timezone: 'GMT-5',
avatar: 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxISEhUSEhIVFhUXFRgVFxUVFRUXFRcVFRcXGBgVFRUYHSggGBolHRUVITEhJSkrLi4uFx8zODMtNygtLisBCgoKDg0OGhAQGi0lICYvLS0vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLf/AABEIAOEA4QMBIgACEQEDEQH/xAAbAAABBQEBAAAAAAAAAAAAAAAAAQIDBAUGB//EAEQQAAEDAQUFBAcGAwcEAwAAAAEAAhEDBAUSITFBUWFxgQYikbETMkKhwdHwI2JygrLhM1LCJDRzkqLS8QcUQ4MVU2P/xAAZAQADAQEBAAAAAAAAAAAAAAAAAQIDBAX/xAAmEQEBAQACAgEFAAEFAAAAAAAAAQIDESExEgQiMkFREzNCYXGB/9oADAMBAAIRAxEAPwDyVCELsbBCEIAQhCDCEqEwEsIhLCZkhLCUBLCfQNhCZWrtbrruGvXcqxt7tjQOYnzWeuTOfCbuRcSwqjbweNjf8oUrbe0+s2OLcvdolObKZyRNCSE4Iha+2hiRPISEJdA1InJEiIhKkQAhCEiCEIQAhEJEAqEIQAhCEAJUITMJUJwCcMAJYQAnBXIcEJtUwCVIAm1KDng4RkBicdgA2lLk8ZtLXjLGOslT0KROgJ5AnyVfFmuj7OPAcMxG7ER5Bee52c6yPAl1NwG8tcPMKpVYvR74t9L0cAMmNRVq5cMxC87vB8ulBJLC/wBlXYWfYGlxJAmMzyGpWlK7Pp/Msb8XpGQmkKUppC2saWIyEhTyE2FFiTUickUkRCEJAIQhBEQlQgBCEIASpEqZhKEJQEzATgEBOAVyGgr2kN1VR94u2AD3pt4sIdz+vkqi498mu6w1q9rn/wAlU3j/ACM+Slo3zXbIa+AdRhbB3SIzWcpKLCSMtqzur/S9uko2io0A1PRmdnoaZ94ErQsZa/WnR/yVG6fmj3ItLQ2k3AJfh1OxUqlZ7BliOUEOIdmdCIaMJ6rH5X+t/hn+NIsYAT6Gjlxes60WyB3bNRHE03O/U5DrNaWRja5geBhc4SMt0aZbUooua7FMsIzGJzuoxEpfPXXs7x5/jJr3zaGEhpYz/DpU25dGqmbyrH/yO8VPfbO+SNJP0FmrXNtjn1OqtC31P5ieeas2e3Tk4QVmJQrzvU9US2N5NISWcd0ck4hd08yV0TzDCkToTSppEKRKkSIIQhIiIQhAKhCEGEoQlCYATgkCeAqkOFaE8BIAngLWRcQWuz42xt2fJYtRsFdK0KtbLCH56Hf8Csub6e6+7PtG+PvzGCuhuluKmwbAQTw+0MnwWPWsrmiCM1s9lgHh9Mug+trsiMuRgrzeTxEcc+7qu6o3I0vAGZMDlIVu8bkeXNp2VrcTTEFmIDZidxMHoVe7I1WuDKjo7rZ8BvW//wBg0lpxvDMOJwa4tLnEZlxbmY5rk82+3oZk+LlrfSt9YMFak1rGmDkXHLa0+z+6W1XAxwY8AQ6WugZFw0dGyR5rqnhtQTQrvbGwuc4Hg7HJIU1ezsDXNyHeY7hJ7pIGzQJ2fyq/7jwztdYBScIG1w/06+9cyykSCdmfuXff9Q6LS8y4DDLonM4gRkNug8VxNCphBadPmP8AhdPHftedzzrdVCFJZqeJwClbZHPPdE8dAtax2IMG8nU/JdXFw3d7/SM4ujw1NIUzgo3Bd9josRFMKkITSFnYmmJEqQqEkQhCkBCEIIIQlCZgJQgJQnDKFIAmgJ7Vcioc0KRoTWhPaFtmLhzU9IAmWl8NWlvxzar1GXeLiSY006rPqDfkVeq1MwNuXLmoqj2kuLj89AvE1q6trj1e66u674dRYKcwMiNxacx7iPBejXR2ipOpNBeJOZB1w/yyvM3WEVLNTf7QaAY3bFm2Wm5p9YiFyfGXy7PlrL3Ctf8AZ2ZtInUjKCuWvHtY30mLFIkE8m5xnx3Lhnvc7IklWriuI1H4qmbd29HU/Z/PVvUVu1dc1Q2q4eviInXCIE9c1zFakQ6OWfQFdV2/tDRVZSZ7DIMcZ2LmbLL8t0HlGU+XuW/H+Ll5/wA7F+nVwODeHenYdvRX1lWskPziRIMbRC0bI6WDkvT+j3bPiviv6Oco3BTEKJwXVqNKiITCFK4KNyx1EVGQkTimlZ1JCkSlIpIIQhIglSJUzKE4JAnBVDhzU9qaFIAtcxcOapGhNangrbMXDwqtvEgDXOYG5X6dCfWOEe+OSo220NlwadRHEZaLm+p58/G5jPfJPUZlWntJgmY+Xmq7DGRgbZTjV0O4/U/W1KSHOiM5K81z+3a9kKzXtwSDEZc9kdFct9yS+W5SeixezVEtcQ0ZxH1wXolGk1zGzEjx8YC4+TxfD0eH7sdVzFK4j/ODvXRVKDLNQLiNGyStKjZWghYXbys51KpSpiS6G5bPa1/Kpl7a+My2PMr0JdVNR/ty7pMTPXyWYHFrpad+Y3LTv2qSQCROECIiBOkbN+3QLOqZCJ4fNdufTy9+6eG4u8TGYE7pVyzuLTH/ABksz0kCN8E9NFcsloMgET+60xr43tOddVsNdIlNcFIKJaJ2Hb80xy9bOprPbrl7naJyjIUpTHKNJqIppTymFZVNNSJxSKEkhCEIBUoSBKEAoTwmhOCuKh4UjUxqtWKyuqvDGCSfAcStZ1J3VejabCTA1+G9ILXTZGcu2HKDGsFWO0+Gg30FIy7CHVX7TPqt4A69BvXPuGLC07JHiZ+JXHy/UXXiemG+S69emhWteZKzC6ScsiT/AMq06jAEGdZadkcfHwVO05GOGzyXNfLOGYcj1S2ZwxSf3581My73Gm2qCCDOW0QSM/BPuqjjqMpbXOjlx6Zqe50uZvcdr2WDQaTpl7iMgc8IOpHLPoF6LQps72ZzzjTPgsPs5dNOmBhY0GIkASeM9F05svD3fFcOvuvceviTGeqpYWh+RPCcyTCzr9pw1ndgCpiLjn7LhJ4S4cpWtZ6YnrHFSXlZA4DxB3JTv2q2eniN7NFW0uawAQTppDQcweTZ6qjQu8OD3Tk2Zy+uK9XvS4mHv4GnXEQMLiSMsxnsXn9Gwv8ARWkCIphxM6wJyjXOdeK6c78ODk4ur3f+XNANzBBkjLeDl4jXJSUwGukHx+Kks1lJ9ZpyOwjNXnXeDoY3TmTwJ1y+K6HEmZeLGgB52RGc+4paVZlSTTJy2OyPRZFooFhgiCnMrFh8CtccusXwc1c+moVG4JlK1B2EkwCcJJ9knQnhGfQqV4gkHUGCu3HLNx0Z38kRTCnkJhSoppSJSkWaSIQhAKlSJQnAcE9qYFNSplxhrS47mgk+AVxUAXS3cBQoYnCHvqmnO5gptqVI/KQ2eLlz9lpYnYeIHVzmsH+p48Ci8b2L2PYT6hquH/u9Gz3d5Zc+/wDaz5dfpA6a1GrVJ79Ss3XSNfdICWlYYAdOf76oe7BZQNp7w4eqZ/0hJZrTiAz2LjZG2yoBkOaogyQn2x2ZUNI5t5/EID0C5bmbUstMEagnxJPxVy7ey1OnU9KXEnYDACs9nXf2ekPuN8ls04mV513e7HsYzn4y9NG7aGhOm5XrZbCGOzGiqUauELNvO3fZu4mPmn31BfuvlYsVo0Wq58hc1dVYzmtv0uSM3wNe0lTMQuI7c2CjTpOqtEPe5rMtDniOXJpXXCquG/6i2oRSp7sdQ9AGj9ZV486jLlvWK4+k7P62K1Yas906ZnrMa+KzbG7XlPipLDUgjr8F3PMaFobiGFwkcd/BZN42P2p0yWk+rnHju8Fm3lVxQ0bdeQQERMUQeTT4kg9C0/5itxxFSyUa3tB76Tt5gBwJ6e8lY9np4mPHAHxcT5Aq3YraG2MUtrrSXflZTA86g8FfFr46lVm9U1yYU8phXdXRTSmpxTVnUkQhCRFTgmpwThnBatwAl5H4f6llBS0rx9D3sOIkjKY0kzP1qp5p3x2KmpnzVvtBW9HUbEz6RlR534DDQN5zcegWLflIsrVRERUe3pixN90K/Wt7atRlUswhrhIJmYdMyqt5Wj0pc6cy1pPEt7s+AauOd9eXPyWXVsTteDSYDoWkdQSqFA4RzLgPyx80grfZ0/ulw98/FNtDu6z8Tz4lCTKjpMpKTs2/iHmivkAFDTOY5oD1S4av2LB90DwC6Cy5rjuzFoxU4nNri09Dl7oXY2XISvP1j7q9bGvtie22jC1Y97V8LGN397xVt4xvG0Ss2/nYiQjo+/CxdleFt060rl7tccguis2QzRIO/BatWMl5l2vvD0tWoBozDSB3nFLj4iPyrre118egpOcD3j3WD72/kNei8ypu7ona8k/lB/3Lfhx5+Tl+p34+MS0XQ1x6J1J0EdExtMhoG/NNMiV1OJftFTaqDQXOPHbwhBry3DtmP3TadUNBH3R5IC3ZXwyo7YThHJoPzUV2NxvZTPq43B28CoGMLhygFQvfFNjd4J8UynVcyq0t9YOGuYk6gjaMyCgNatRLIB1zHVrnMd72noQoXLr73E2YzpqBsBnYFyJXVw8v+TPbr1i58UwpqcU1XUEhCVCRAK1d1m9LUbTmMU5nICGl2Z2DLXYqqkpvc2XtmWDGI4EZngJk8AUr6o76W7ZY8MuZJYIkmJBOgMefRZF4Ahw4CMtA47J3rUtt8U3UnANIc4QQZ18iOqZ2btQx+hry6nUEDETGLcDx2cYXJeXdx1S3Zq9Rj4xhgEzyy8/gkp2gtdJzOnCNyu3vdxoVC3VurXbxs6qG202gtc0S17ZgnNrhk5pjjnyIS7ZWdIHEYXAaZOG8bCD4jwTnjKkOB95UbIndMg7dQpamtP8ACEEjr+RI+vrYoWFSPGbuc+/91GzXqgOi7OXj6O0OYTk9xjg6fj8l6PRtIwwvGrVk93Ndh2b7RtcBTquwvGQcdHddhWHLi+46+Dln413dArGvMnFPFaVkGRM5QqVdhL1zOtXoOgrYdbmUqTqlR0NA1P1meCxb3t1Ch/EfnsY3N56bOZyXC3xfVS0HvGGA91gOQ4k7TxWuMWseTlmZ0W/r3daapecmiQ1u4ceJWdUd3WcifF37KJ7lJXGTfwD3kldUnTh1ru91aqVSY5AJrm8VHRcpKjoMcVSTadLvgcJ8VHa294AbgtAt+0/K1U7blUnc1AAOKoNwy6N1Vao4h88Z98p1mGfnwG0kpzYc8k6TwHLUhAdS3tDTqUjSLX4i0gThwhx6ysolUYg4Wy7OQWxn0Eruew9noOc4VmNqYwA0uEgNJIMA6HjxV8fJnizXRjWuS+XJFNU1qo4HuZM4XEA5GQNDlvEHqoV1AQhEoSIBT2S0Gm9rxmWmYOhByc08CCQeagTgmGpd1goUav2xHepekoktaWkF5wzJiXAERswuyJyMPaEB76baYAJJ7rYblkQ7CMmn1s8tOCZSpG0NbQxNDm4vQ4ssRcZNHHoJMls5YiRliSWuwPsVSi8hoc6l6R1MycMucMD9rXQGHmeGfFvFzpHfU+NbNsu41LOz0rgHyAHOgCSYHXOOM7Fyl62F9F5p1BDmkHgQdrTtGSuXlfD7U4S3DTZmWgl3CTpP7rUb6FwYaldjgwZYiO6DGQEAkZbZWc7z7Xr47vhyL3zrnx29d6s1R32D7oUl/WunVrF1NuFsAaRij2o+tEVx9s0bg3yVxjZ1VN3rO6qMapzjDp4pp1QSW2+u762KEKxeA755A+4KuEw0LDfFopCKdZ7RumR4GQlrX3aHTNZ+ZkwcOf5YVBIl8Yr5X+nSTmUEoATiE0onK9Xp90fgZ8/iqLlp2vIkbgweDRKIFSnrB+irLKfdDjtdA5BVnnPLatN7IpU+Z80wneyKo4tb4wVkXie9zC6BzRjaf/zB/Uuctzu90RQZRGoOW08YVsPHo202tzJJdlmXEw1oO4COpVSjniz2D3uC7K6OyNsFNlpFne8P/hhpaXAH23NJBA0jnOxTarMt9Kb6LqVMWeh/HqAmq5uuHYxpGcHPIZmJ3IbeFWyN/wC3r2YsqYIYXhwIByDgNvPeOifdN4usdqd6buvxTLhlIIOB0TlkNCRkF1F63zQvV9Clh74xd8wNYc4jbAwTnGwDaok7vVjXxM9y/wDjkLdZgKVGsB3apqAbyKWBpJ3EuLj1VBX7ew0mU7OSZbNVwPsOrBpDOYY1hPFzhsVBd2PxhZ9EQlQqMJwTU4JwzazJaRwRar4dWDRXn0lMYW1vbIbo2oD60b9eaerz7hbaKJrU3gVWnvsccn7nNOw6jPIxs25c2fVZ8n9YjjhhwPeOWJpieOXDKFTef+VaZTDAcQl2YjYOfX5Ko4LnZhjZK07Q3+0dfgFSo0+HtNHiT8loub/aevwQGTVGZ5pHb0+0DvHmo0gsW7UHexvkq4Vm3Ngt/A1VgmDglhOYnBMGtCc5PTX6ICFjZIG8x4rRt38R0/zu/UY9yq3Wya1Mffb7iFPWdLiUoEVNk59Ati3U4pUvraqtOjEDdmeZVy9/UpjhHvTJYtvdph29oH+kH+pctWku4yuov932TOMeUf0rlahzSpujt3Y200MLanow54a8APmBnkconPfsXa3V29q2Sm2nUs76jQA1pBbJLRkCA47tngvP6fam1YQx1TGBkMYxEDcCc0tmv6pjD3Q4t9UEANaciHEAd7MA57hOiz6tvlt885n29rV63hTtld1Wo3BifAYPZBcS4ucduZ8eC0LluYUi60FxfTol4bnDa7wHFtJkHNsBznnTCCM5WRYLEKpc+o5rGgzVquklsmZa0es47BvK1rLegeHua0ss9Ci+lQpnXFWGFz3na9wxEnkFrJ+mXuserVc9xe4y5xLnHe5xknxKjSpF2NwhJCEiKEoSJQnAcFLSqFswSJG/6259FEnhV1LOqrrtHaKAIGEQYAjf+6ipWUyMtqutUjUp9Nmp/wAUUq1HCKY++JO/XX62KQD+1O6qe0tGFn3qzQPytdP62qCzibS7qufmkm+oz5PGuoybYO+eahAVi3+u7moaawQtXs2HN/w2qm1Xr59dv4G+QVFif7CVgT4SMCeQmCAJtc5KQBQ2k6IC12fp4rQwcz4NKkoMxvHEyeQkmfBL2aMVS7+Vjj4fRT7vESdzY8SPkUQluk2S531qlvXSmPrVTUmww+CqXvV9TkmEl/Pypj7o/ST8VkWezYw+NREe9Wr0r4ngbgPIBTXXRinj/me4dGBv+4q+LM1vqrxO70yBZipWNy0g7/3WpXswOckck6mIg6kbf20Va+n1Kq8eoiuq7DVcWvfAaC6SYbkMhO8nKI381fvK008LKVFuFjWtxnPv1AO87MmG6wOJO1VHPO/wUZVY4vj5p5x15ppSFKUi0WEJEJEVKmpyAUJ4TAnNVxUStUjVECpAtsrhK471Ab3vd+gf0lRWIfbu6qV4+3oA/wD14vF7z5QortE1X9V53Le91y7v3VmXh65Vekd6tW/U81Uas0rl8euPwj3AKmxWLa+Qw/djqMvgqwKAssT8KioaqcjimAAqlcyVahUXHNKhqXMIbVd9xzR1Y6fgrVCnDRvcZ6aD4+Kq2AEUwB7RcPEQPetJrNm4R4JwjK1eGLOvB8lnIea1bbY+6MjsVK22b7Sk3fh+veg2fawcTpWzYf7vT/HV/oUV6WSKj+BHkPmprK2KFMcah8XAfBbfT/6kacX5Fco3J7lG5d2q6KYSmlOKYVjUUhSIQVCSIRKEAqEIQChPCVCuKhwUqELXKoe7+80f8Fvk5V7n/iv5oQvO3+VcuvbPvHU8z5qi1CFmSSr6revmo2oQmFlmqnCEJg6poswoQlQ2Lu0o/jH6ytaybefxQhOE0Ly0HTyase8v7zR6ebUIToTXl/Frfj+AUf8A4qXJ/wCsoQtuD82nF+SIqNyELs06KYmlCFlU01IUIUJCEIQT/9k='
},
{
id: 364,
name: 'JUAN DE ARONA 2',
version: '0.0.1',
status: 'Activo',
country: 'Perú',
timezone: 'GMT-5',
avatar: 'https://www.w3schools.com/howto/img_avatar.png'
}
];
@Injectable()
export class AgentFakeBackendInterceptor implements HttpInterceptor {
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
const { url, method, headers, body } = request;
return of(null)
.pipe(mergeMap(handleRoute))
.pipe(materialize())
.pipe(delay(10))
.pipe(dematerialize());
function handleRoute() {
switch (true) {
case url.endsWith(basePath + '/page') && method === 'POST':
return pagination(body);
default:
// pass through any requests not handled above
return next.handle(request);
}
}
function pagination(data: any) {
data.totalItems = tableData.length;
const pageNumber = data.currentPage;
const pageSize = data.itemsPerPage ? data.itemsPerPage : 5;
data.totalPages = Math.ceil(data.totalItems / pageSize);
if (data.sortFields.length > 0) {
const sortField: any = data.sortFields[0];
if (sortField.direction === DIRECTION.asc) {
tableData.sort((a, b) => {
if (JSON.stringify(a[sortField.field]) > JSON.stringify(b[sortField.field])) {
return 1;
} else if (JSON.stringify(a[sortField.field]) < JSON.stringify(b[sortField.field])) {
return -1;
}
return 0;
});
} else {
tableData.sort((a, b) => {
if (JSON.stringify(a[sortField.field]) < JSON.stringify(b[sortField.field])) {
return 1;
} else if (JSON.stringify(a[sortField.field]) > JSON.stringify(b[sortField.field])) {
return -1;
}
return 0;
});
}
}
data.data = tableData.slice(pageNumber * pageSize, (pageNumber + 1) * pageSize);
return ok(data);
}
function ok(bodyContent?: any) {
return of(new HttpResponse({ status: 200, body: bodyContent }));
}
function error(message: string) {
return throwError({ error: { message } });
}
}
}
\ No newline at end of file
import { HttpRequest, HttpResponse, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http'; import { HttpRequest, HttpResponse, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';
import { Observable, of, throwError } from 'rxjs'; import { Observable, of, throwError } from 'rxjs';
import { delay, mergeMap, materialize, dematerialize } from 'rxjs/operators'; import { delay, mergeMap, materialize, dematerialize } from 'rxjs/operators';
import { Injectable } from '@angular/core'; import { Injectable } from '@angular/core';
import * as source from '../../assets/fake-data/programs-data.json'; import * as source from '../../assets/fake-data/programs-data.json';
import * as controlsSource from '../../assets/fake-data/controls-data.json'; import * as controlsSource from '../../assets/fake-data/controls-data.json';
const basePath = '/service/security/programs'; const basePath = '/service/security/programs';
const basePathCotnrols = '/service/security/controls'; const basePathCotnrols = '/service/security/controls';
@Injectable() @Injectable()
export class CustomProgramsFakeBackendInterceptor implements HttpInterceptor { export class CustomProgramsFakeBackendInterceptor implements HttpInterceptor {
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> { intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
const { url, method, headers, body } = request; const { url, method, headers, body } = request;
const data = (source as any).default; const data = (source as any).default;
const dataControls = (controlsSource as any).default; const dataControls = (controlsSource as any).default;
return of(null) return of(null)
.pipe(mergeMap(handleRoute)) .pipe(mergeMap(handleRoute))
.pipe(materialize()) .pipe(materialize())
.pipe(delay(50)) .pipe(delay(50))
.pipe(dematerialize()); .pipe(dematerialize());
function handleRoute() { function handleRoute() {
switch (true) { switch (true) {
case url.match('.*' + basePath) && method === 'GET': case url.match('.*' + basePath) && method === 'GET':
return getList(); return getList();
case url.match('.*'+ basePathCotnrols + '.*') && method === 'GET': case url.match('.*'+ basePathCotnrols + '.*') && method === 'GET':
return getControls(); return getControls();
default: default:
// pass through any requests not handled above // pass through any requests not handled above
return next.handle(request); return next.handle(request);
} }
} }
function getList() { function getList() {
return ok(data); return ok(data);
} }
function getControls() { function getControls() {
return ok(dataControls); return ok(dataControls);
} }
// helper functions // helper functions
function ok(bodyContent?) { function ok(bodyContent?) {
return of(new HttpResponse({ status: 200, body: bodyContent })); return of(new HttpResponse({ status: 200, body: bodyContent }));
} }
function error(message: string) { function error(message: string) {
return throwError({ error: { message } }); return throwError({ error: { message } });
} }
} }
} }
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { AuthGuard } from '@xdf/security';
import { TemplateResolver, CrudDetailComponent, DirtyGuard, GridViewComponent, CrudGridComponent, RecordResolver } from '@xdf/gallery';
import { ResourceAuthGuard } from '@xdf/security';
import { UserRoleFormComponent, AccessDetailResolver } from '@xdf/settings';
import { AgentComponent } from './view/agent/agent.component';
const routes: Routes = [
{
path: 'agent', component: AgentComponent, canActivate: [AuthGuard, ResourceAuthGuard],
data: {
program: 'agent',
breadcrumb: 'breadcrumb.agent'
}
},
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class ConfigurationRoutingModule { }
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { TranslateModule } from '@ngx-translate/core';
import { ConfigurationRoutingModule } from './configuration-routing.module';
import { AgentComponent } from './view/agent/agent.component';
import { XdfGalleryModule } from '@xdf/gallery';
import { MatProgressSpinnerModule, MatTableModule, MatSortModule, MatIconModule, MatTooltipModule, MatPaginatorModule, MatButtonModule } from '@angular/material';
@NgModule({
declarations: [
AgentComponent
],
imports: [
CommonModule,
ConfigurationRoutingModule,
FormsModule,
MatButtonModule,
MatIconModule,
MatPaginatorModule,
MatProgressSpinnerModule,
MatSortModule,
MatTableModule,
MatTooltipModule,
ReactiveFormsModule,
TranslateModule,
XdfGalleryModule
]
})
export class ConfigurationModule { }
import { TestBed } from '@angular/core/testing';
import { AgentService } from './agent.service';
describe('AgentService', () => {
beforeEach(() => TestBed.configureTestingModule({}));
it('should be created', () => {
const service: AgentService = TestBed.get(AgentService);
expect(service).toBeTruthy();
});
});
import { Injectable } from '@angular/core';
import { DynaDataService } from '@xdf/gallery';
import { HttpClient } from '@angular/common/http';
@Injectable({
providedIn: 'root'
})
export class AgentService extends DynaDataService {
serviceURL = './service/agent';
constructor(private httpClient: HttpClient) {
super(httpClient);
}
}
<div class="wrapper wrapper-content animated fadeInRight">
<div class="row">
<div class="col-lg-12">
<div class="ibox float-e-margins">
<div class="ibox-title">
<h5>{{'label.external.systems' | translate}}</h5>
</div>
<div class="ibox-content">
<div class="content">
<div class="grid-ibox-content">
<div class="filter-panel mat-elevation-z3">
<xdf-ngx-tags-input name="name" class="input-lg" [fields]="fieldFilters"
(filterEvent)="onFilter($event)"></xdf-ngx-tags-input>
</div>
<br />
<div class="grid-container mat-elevation-z3">
<div class="spinner-container" *ngIf="dataSource?.loading$ | async">
<mat-spinner diameter="40"></mat-spinner>
</div>
<table class="crud-table table table-striped table-hover" mat-table
[dataSource]="dataSource" matSort [matSortActive]="sortColumn"
[matSortDirection]="sortDirection" matSortDisableClear multiTemplateDataRows>
<ng-container matColumnDef="{{template.name}}"
*ngFor="let template of columnTemplateArray">
<div *ngIf="template.sortable">
<th mat-header-cell *matHeaderCellDef mat-sort-header>
{{ template.title | translate }}
<mat-icon *ngIf="sortColumn===template?.name">
<i class="fa fa-sort-amount-desc"
*ngIf="sortDirection === 'desc'"></i>
<i class="fa fa-sort-amount-asc"
*ngIf="sortDirection === 'asc'"></i>
</mat-icon>
</th>
</div>
<div *ngIf="!template.sortable">
<th mat-header-cell *matHeaderCellDef>{{ template.title | translate }}
</th>
</div>
<td mat-cell *matCellDef="let item"
[style.width]="template.width ? template.width : ''"
[ngClass]="{'td-view': !this.resourceAuth['view']}" (click)="view(item)">
<span *ngIf="template['name'] !== 'avatar'">{{ item[template['name']] }}</span>
<img *ngIf="template['name'] === 'avatar'" [src]="item[template['name']]" alt="Avatar" class="avatar">
</td>
</ng-container>
<ng-container matColumnDef="actions">
<th mat-header-cell *matHeaderCellDef></th>
<td class="text-center mat-cell cdk-column-actions mat-column-actions ng-star-inserted"
mat-cell="" role="gridcell" *matCellDef="let item">
<div class="btn-group">
<button class="btn btn-default btn-sm" (click)="edit(item)"
*ngIf="this.resourceAuth['edit']" type="button">
<i class="fa fa-edit"></i>
<span class="visible-md-inline visible-lg-inline visible-xl-inline">
{{'btn.edit' | translate}}
</span>
</button>
<button class="btn btn-default btn-sm" (click)="delete(item)"
*ngIf="this.resourceAuth['delete']" type="button">
<i class="fa fa-trash"></i>
<span class="visible-md-inline visible-lg-inline visible-xl-inline">
{{'btn.delete' | translate}}
</span>
</button>
</div>
</td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</table>
<div class="status-button-bar pull-left">
<button type="button" mat-icon-button
matTooltip="{{ 'action.grid.refresh' | translate }}" (click)="onRefresh()">
<i class="fa fa-refresh"></i>
</button>
</div>
<mat-paginator [length]="pagination?.totalItems" [pageSize]="pagination?.itemsPerPage"
[pageSizeOptions]="[5, 10, 15]" [pageIndex]="pagination?.currentPage">
</mat-paginator>
</div>
</div>
<!--Boton de Nuevo-->
<div class="toolbar-option">
<button color="default" mat-mini-fab="" class="mat-mini-fab"
matTooltip="{{'btn.new' | translate}}" (click)="create()"
*ngIf="this.resourceAuth['new']">
<span><i class="fa fa-file-o"></i></span>
</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
\ No newline at end of file
.toolbar-option {
margin-left: 10px;
margin-right: 10px;
}
$fontcolor: #676a6c;
.content {
width: 100%;
display: flex;
padding-right: 0px !important;
.grid-container,
.filter-panel {
.crud-table {
margin-bottom: 0px;
width: 100%;
}
.form {
padding: 10px 20px 10px 20px;
}
}
.filter-panel {
margin-bottom: 10px;
}
}
.grid-ibox-content {
width: 100%;
}
.btn-group {
.btn {
font-size: 10px;
}
}
.td-view{
cursor: auto !important
}
.mat-row-auth:hover {
background-color: #f8f9fa;
cursor: pointer !important;
}
.spinner-container {
height: 100%;
width: 100%;
padding-top: 50px;
position: fixed;
}
.spinner-container {
height: 100%;
width: 100%;
padding-top: 50px;
position: fixed;
}
.spinner-container mat-spinner {
margin: -10px auto 0 auto;
}
th.mat-column-actions {
width: 1px !important;
padding-right: 0px !important;
}
td.mat-column-actions {
min-width: 170px;
padding-right: 20px !important;
cursor: default !important;
}
td {
vertical-align: middle !important;
color: $fontcolor;
font-size: 12px;
}
th {
vertical-align: middle !important;
}
tr.mat-header-row {
height: 50px !important;
}
tr.mat-footer-row,
tr.mat-row {
height: 40px !important;
}
.table-toolbar {
right: 10px;
top: 10px;
button {
font-size: 12px;
}
}
.status-button-bar {
button {
font-size: 16px;
}
padding-top: 8px;
padding-left: 15px;
}
.mat-raised-button {
padding: 0px 10px;
}
.icon-centered-button span.mat-button-wrapper {
display: flex;
}
.icon-centered-button mat-icon {
font-size: 15px;
padding-top: 2px;
}
::ng-deep .mat-sort-header-arrow {
visibility: hidden;
}
::ng-deep .mat-sort-header-button {
.mat-icon {
padding-left: 10px;
font-size: 12px;
padding-top: 5px;
}
}
th {
background: rgb(242, 242, 242);
}
tr.example-detail-row {
height: 0 !important;
}
tr.example-element-row:not(.example-expanded-row):hover {
background: #dedede;
cursor: pointer;
}
tr.example-element-row:not(.example-expanded-row):active {
background: #efefef;
}
.example-element-row td {
border-bottom-width: 0;
}
.example-element-detail {
overflow: hidden;
display: flex;
}
.example-detail-row td {
padding-top: 0px;
padding-bottom: 0px;
border: none !important;
background-color: #f2f2f2;
}
i.state {
font-size: 1.3em;
}
i.fa-key.pull-left {
color: rgba(128, 128, 128, 0.33);
margin-right: 6px;
}
//////
table {
width: 100%;
}
tr.mat-header-row {
height: 25px;
}
tr.mat-footer-row,
tr.mat-row {
height: 40px;
}
.button-grid {
margin: 2px 5px;
mat-icon {
padding-top: 2px;
}
}
.btn-header-new {
margin-top: -4px;
}
.btn-grid-filter {
height: 36px;
width: 85px;
padding-left: 0px;
padding-top: 2px;
}
.btn-grid-action {
padding: 0 10px;
line-height: 0em;
}
.mat-row:hover {
cursor: pointer;
background-color: #f8f9fa;
}
.spinner-container {
height: 100%;
width: 100%;
padding-top: 50px;
position: fixed;
}
.spinner-container mat-spinner {
margin: -10px auto 0 auto;
}
.mat-raised-button {
padding: 0px 10px;
}
.icon-centered-button span.mat-button-wrapper {
display: flex;
}
.icon-centered-button mat-icon {
font-size: 15px;
padding-top: 2px;
}
.ibox-content {
padding-right: 0px;
}
.content {
width: 100%;
display: flex;
padding-right: 0px !important;
}
.grid-ibox-content {
width: 100%;
}
.avatar {
vertical-align: middle;
width: 35px;
height: 35px;
border-radius: 50%;
}
\ No newline at end of file
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { AgentComponent } from './agent.component';
describe('AgentComponent', () => {
let component: AgentComponent;
let fixture: ComponentFixture<AgentComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ AgentComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(AgentComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});
import { Component, OnInit, ViewChild, ViewContainerRef, Input } from '@angular/core';
import { MatPaginator, MatSort } from '@angular/material';
import { ColumnTemplate, DynaDataSource, ConfirmationDialogService, extractRSQL, FieldFilter } from '@xdf/gallery';
import { Pagination, SortField, NotificationType, NotificationService } from '@xdf/commons';
import { Router, ActivatedRoute } from '@angular/router';
import { tap } from 'rxjs/operators';
import { TagFilter } from '@xdf/gallery/lib/views/gallery/ngx-tags-input/model/tag-filter';
import { TranslateService } from '@ngx-translate/core';
import { AgentService } from '../../services/agent.service';
const columnTemplateArray = [
{
name: 'avatar',
sortable: true,
title: 'etl_avatar',
visible: true,
filtable: true,
style: { width: 'auto' },
type: 'string',
aliasName: null,
queryName: null,
responsive: null,
styles: null,
values: null,
digitsInfo: null,
dateFormat: null,
colStyle: null
},
{
name: 'id',
sortable: true,
title: 'etl_code',
visible: true,
filtable: true,
style: { width: 'auto' },
type: 'number',
aliasName: null,
queryName: null,
responsive: null,
styles: null,
values: null,
digitsInfo: null,
dateFormat: null,
colStyle: null
},
{
name: 'name',
sortable: true,
title: 'etl_name',
visible: true,
filtable: true,
style: { width: 'auto' },
type: 'string',
aliasName: null,
queryName: null,
responsive: null,
styles: null,
values: null,
digitsInfo: null,
dateFormat: null,
colStyle: null
},
{
name: 'version',
sortable: true,
title: 'etl_version',
visible: true,
filtable: true,
style: { width: 'auto' },
type: 'string',
aliasName: null,
queryName: null,
responsive: null,
styles: null,
values: null,
digitsInfo: null,
dateFormat: null,
colStyle: null
},
{
name: 'status',
sortable: true,
title: 'etl_status',
visible: true,
filtable: true,
style: { width: 'auto' },
type: 'string',
aliasName: null,
queryName: null,
responsive: null,
styles: null,
values: null,
digitsInfo: null,
dateFormat: null,
colStyle: null
},
{
name: 'country',
sortable: true,
title: 'etl_country',
visible: true,
filtable: true,
style: { width: 'auto' },
type: 'string',
aliasName: null,
queryName: null,
responsive: null,
styles: null,
values: null,
digitsInfo: null,
dateFormat: null,
colStyle: null
},
{
name: 'timezone',
sortable: true,
title: 'etl_timezone',
visible: true,
filtable: true,
style: { width: 'auto' },
type: 'string',
aliasName: null,
queryName: null,
responsive: null,
styles: null,
values: null,
digitsInfo: null,
dateFormat: null,
colStyle: null
}
];
const fieldFilters = [
new FieldFilter('etl_code', 'id', 'id', 'number', undefined),
new FieldFilter('etl_abbreviation', 'abbreviation', 'abbreviation', 'string', undefined),
new FieldFilter('etl_name', 'name', 'name', 'string', undefined),
];
@Component({
selector: 'byte-agent',
templateUrl: './agent.component.html',
styleUrls: ['./agent.component.scss']
})
export class AgentComponent implements OnInit {
@ViewChild(MatPaginator, { static: false }) paginator: MatPaginator;
@ViewChild(MatSort, { static: false }) sort: MatSort;
sortColumn: string;
sortDirection: string;
statusQuickFilter: string;
pagingSize = 10;
programIdentifier = 'agent';
columnTemplateArray: ColumnTemplate[];
dataSource: DynaDataSource;
displayedColumns = new Array<string>();
fieldFilters: Array<FieldFilter> = fieldFilters;
filterTags = [];
pagination: Pagination;
public resourceAuth: any;
constructor(
private router: Router,
private route: ActivatedRoute,
private agentService: AgentService,
private notificationService: NotificationService,
private translateService: TranslateService,
protected confirmationDialogService: ConfirmationDialogService,
protected vcRef: ViewContainerRef
) { }
ngAfterViewInit(): void {
this.sort.sortChange.subscribe(() => {
if (!this.sort.disabled && this.sort.active) {
this.pagination.sortFields = new Array();
const sortField: SortField = new SortField();
sortField.direction = this.sortDirection = this.sort.direction;
sortField.field = this.sortColumn = this.sort.active;
this.pagination.sortFields.push(sortField);
}
this.paginator.pageIndex = 0;
this.dataSource.load(this.pagination);
});
this.paginator.page
.pipe(
tap(() => {
this.pagination.currentPage = this.paginator.pageIndex;
this.pagination.itemsPerPage = this.paginator.pageSize;
this.dataSource.load(this.pagination);
})
)
.subscribe();
}
ngOnInit() {
this.sortColumn = 'id';
this.sortDirection = 'asc';
const authList = this.route.snapshot.paramMap['authorization'];
if (authList) {
this.resourceAuth = new Object();
authList.forEach(option => {
this.resourceAuth[option] = true;
});
}
this.columnTemplateArray = columnTemplateArray;
this.dataSource = new DynaDataSource(this.agentService);
const previousState = JSON.parse(localStorage.getItem(this.programIdentifier + '-state'));
if (previousState) {
const PAG = 'pagination';
const FILTERS = 'filtersTags';
this.pagination = previousState[PAG];
this.filterTags = previousState[FILTERS];
localStorage.removeItem(this.programIdentifier + '-state');
} else {
// Paginación
this.pagination = new Pagination();
this.pagination.currentPage = 0;
this.pagination.itemsPerPage = this.pagingSize;
this.pagination.filterExpression = "id != 0";
// Ordenación por defecto
if (this.sortColumn && this.sortDirection) {
this.pagination.sortFields = new Array();
const sortField: SortField = new SortField();
sortField.direction = this.sortDirection;
sortField.field = this.sortColumn;
this.pagination.sortFields.push(sortField);
}
}
// calculando la columnas a pintar
this.columnTemplateArray.forEach(column => {
this.displayedColumns.push(column.name);
});
this.displayedColumns.push('actions');
this.dataSource.load(this.pagination);
}
onFilter(tags: Array<TagFilter>) {
this.filterTags = tags;
this.pagination.currentPage = 0;
// let tagsTemp = tags.slice();
const tagsTemp = tags.map(a => Object.assign({}, a));
for (let i = 0; i < tagsTemp.length; i++) {
if (tagsTemp[i].column !== 'id') {
tagsTemp[i].value = tagsTemp[i].value;
}
}
this.pagination.filterExpression = extractRSQL(tagsTemp);
if (this.pagination.filterExpression == null || this.pagination.filterExpression == undefined) {
this.pagination.filterExpression = "id != 0";
}
this.dataSource.load(this.pagination);
}
onRefresh() {
this.dataSource.load(this.pagination);
}
delete(item) {
this.confirmationDialogService.loadComponent(
this.vcRef,
'title.delete.confirmation',
'message.delete.confirmation').subscribe(result => {
if (result) {
this.agentService.delete(item.id).subscribe((rslt: any) => {
if (rslt.statusCode != 200) {
this.notificationService.showMessage(
this.translateService.instant(rslt.message), this.translateService.instant('label.error.message.title'), NotificationType.error);
} else {
this.dataSource.load(this.pagination);
}
}
);
}
});
}
edit(item) {
this.router.navigate(['/etl/external-system/detail/edit/' + item.id]);
}
view(item) {
this.router.navigate(['/etl/external-system/detail/view/' + item.id]);
}
create() {
this.router.navigate(['/etl/external-system/detail/new']);
}
}
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router'; import { Routes, RouterModule } from '@angular/router';
import { AuthGuard } from '@xdf/security'; import { AuthGuard } from '@xdf/security';
import { TemplateResolver, CrudDetailComponent, DirtyGuard, GridViewComponent, CrudGridComponent, RecordResolver } from '@xdf/gallery'; import { TemplateResolver, CrudDetailComponent, DirtyGuard, GridViewComponent, CrudGridComponent, RecordResolver } from '@xdf/gallery';
import { ResourceAuthGuard } from '@xdf/security'; import { ResourceAuthGuard } from '@xdf/security';
import { UserRoleFormComponent, AccessDetailResolver } from '@xdf/settings'; import { UserRoleFormComponent, AccessDetailResolver } from '@xdf/settings';
const routes: Routes = [ const routes: Routes = [
{ {
path: 'user-role', component: GridViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], path: 'user-role', component: GridViewComponent, canActivate: [AuthGuard, ResourceAuthGuard],
resolve: { template: TemplateResolver }, resolve: { template: TemplateResolver },
data: { data: {
program: 'user_role', program: 'user_role',
breadcrumb: 'breadcrumb.user.role' breadcrumb: 'breadcrumb.user.role'
} }
}, },
{ {
path: 'user-role/detail/:mode', component: UserRoleFormComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard], path: 'user-role/detail/:mode', component: UserRoleFormComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard],
resolve: { record: RecordResolver, accessList: AccessDetailResolver }, resolve: { record: RecordResolver, accessList: AccessDetailResolver },
data: { data: {
program: 'user_role', program: 'user_role',
breadcrumb: 'breadcrumb.user.role.detail' breadcrumb: 'breadcrumb.user.role.detail'
} }
}, },
{ {
path: 'user', component: CrudGridComponent, canActivate: [AuthGuard, ResourceAuthGuard], path: 'user', component: CrudGridComponent, canActivate: [AuthGuard, ResourceAuthGuard],
resolve: { template: TemplateResolver }, resolve: { template: TemplateResolver },
data: { data: {
innerTemplate: 'none', innerTemplate: 'none',
program: 'user', program: 'user',
breadcrumb: 'breadcrumb.user' breadcrumb: 'breadcrumb.user'
} }
}, },
{ {
path: 'user/detail/:mode', component: CrudDetailComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard], path: 'user/detail/:mode', component: CrudDetailComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard],
resolve: { record: RecordResolver }, resolve: { record: RecordResolver },
data: { data: {
program: 'user', program: 'user',
breadcrumb: 'breadcrumb.user.detail' breadcrumb: 'breadcrumb.user.detail'
} }
} }
]; ];
@NgModule({ @NgModule({
imports: [RouterModule.forChild(routes)], imports: [RouterModule.forChild(routes)],
exports: [RouterModule] exports: [RouterModule]
}) })
export class SecurityRoutingModule { } export class SecurityRoutingModule { }
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { DirtyGuard, XdfGalleryModule } from '@xdf/gallery'; import { DirtyGuard, XdfGalleryModule } from '@xdf/gallery';
import { SecurityRoutingModule } from './security-routing.module'; import { SecurityRoutingModule } from './security-routing.module';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { TranslateModule } from '@ngx-translate/core'; import { TranslateModule } from '@ngx-translate/core';
import { XdfSettingsModule } from '@xdf/settings'; import { XdfSettingsModule } from '@xdf/settings';
@NgModule({ @NgModule({
declarations: [ declarations: [
], ],
imports: [ imports: [
CommonModule, CommonModule,
FormsModule, FormsModule,
ReactiveFormsModule, ReactiveFormsModule,
TranslateModule, TranslateModule,
XdfGalleryModule, XdfGalleryModule,
XdfSettingsModule, XdfSettingsModule,
SecurityRoutingModule SecurityRoutingModule
], ],
entryComponents:[ entryComponents:[
], ],
providers: [ providers: [
{ provide: DirtyGuard, useClass: DirtyGuard } { provide: DirtyGuard, useClass: DirtyGuard }
] ]
}) })
export class SecurityModule { } export class SecurityModule { }
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router'; import { Routes, RouterModule } from '@angular/router';
import { AuthGuard } from '@xdf/security'; import { AuthGuard } from '@xdf/security';
import { DirtyGuard, TemplateResolver, CrudGridComponent, EditableDataTableTemplateResolver, CrudDetailComponent, FormViewComponent, ListResolver, RecordResolver } from '@xdf/gallery'; import { DirtyGuard, TemplateResolver, CrudGridComponent, EditableDataTableTemplateResolver, CrudDetailComponent, FormViewComponent, ListResolver, RecordResolver } from '@xdf/gallery';
import { ResourceAuthGuard } from '@xdf/security'; import { ResourceAuthGuard } from '@xdf/security';
import { ApplicationFormComponent, ValposFormComponent } from '@xdf/settings'; import { ApplicationFormComponent, ValposFormComponent } from '@xdf/settings';
import { TabsLayoutComponent, TabsTemplateResolver } from '@xdf/layouts'; import { TabsLayoutComponent, TabsTemplateResolver } from '@xdf/layouts';
const routes: Routes = [ const routes: Routes = [
{ {
path: "system-settings", component: TabsLayoutComponent, path: "system-settings", component: TabsLayoutComponent,
resolve: { template: TabsTemplateResolver }, resolve: { template: TabsTemplateResolver },
data: { data: {
templateName: "system-settings", templateName: "system-settings",
}, },
children: [ children: [
{ path: 'information', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard], { path: 'information', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard],
resolve: { record: ListResolver }, resolve: { record: ListResolver },
data: { data: {
option: 'information', option: 'information',
program: 'system_settings_information', program: 'system_settings_information',
breadcrumb: 'breadcrumb.settings.information' breadcrumb: 'breadcrumb.settings.information'
} }
}, },
{ path: 'information/:mode', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard], { path: 'information/:mode', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard],
resolve: { ecord: ListResolver }, resolve: { ecord: ListResolver },
data: { data: {
withoutGrid: true, withoutGrid: true,
option: 'information', option: 'information',
program: 'system_settings_information', program: 'system_settings_information',
breadcrumb: 'breadcrumb.settings.information' breadcrumb: 'breadcrumb.settings.information'
} }
}, },
{ path: 'password', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard], { path: 'password', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard],
resolve: { record: ListResolver }, resolve: { record: ListResolver },
data: { data: {
option: 'password', option: 'password',
program: 'system_settings_password', program: 'system_settings_password',
breadcrumb: 'breadcrumb.settings.password' breadcrumb: 'breadcrumb.settings.password'
} }
}, },
{ path: 'password/:mode', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard], { path: 'password/:mode', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard],
resolve: { record: ListResolver }, resolve: { record: ListResolver },
data: { data: {
withoutGrid: true, withoutGrid: true,
option: 'password', option: 'password',
program: 'system_settings_password', program: 'system_settings_password',
breadcrumb: 'breadcrumb.settings.password' breadcrumb: 'breadcrumb.settings.password'
} }
}, },
{ path: 'userpolicy', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard], { path: 'userpolicy', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard],
resolve: { record: ListResolver }, resolve: { record: ListResolver },
data: { data: {
option: 'userpolicy', option: 'userpolicy',
program: 'system_settings_userpolicy', program: 'system_settings_userpolicy',
breadcrumb: 'breadcrumb.settings.userpolicy' breadcrumb: 'breadcrumb.settings.userpolicy'
} }
}, },
{ path: 'userpolicy/:mode', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard], { path: 'userpolicy/:mode', component: FormViewComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard],
resolve: { record: ListResolver }, resolve: { record: ListResolver },
data: { data: {
withoutGrid: true, withoutGrid: true,
option: 'userpolicy', option: 'userpolicy',
program: 'system_settings_userpolicy', program: 'system_settings_userpolicy',
breadcrumb: 'breadcrumb.settings.userpolicy' breadcrumb: 'breadcrumb.settings.userpolicy'
} }
} }
] ]
}, },
{ {
path: 'application', component: CrudGridComponent, canActivate: [AuthGuard, ResourceAuthGuard], path: 'application', component: CrudGridComponent, canActivate: [AuthGuard, ResourceAuthGuard],
resolve: { template: TemplateResolver }, resolve: { template: TemplateResolver },
data: { data: {
program: 'application', program: 'application',
breadcrumb: 'breadcrumb.application' breadcrumb: 'breadcrumb.application'
} }
}, },
{ {
path: 'application/detail/:mode', component: ApplicationFormComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard], path: 'application/detail/:mode', component: ApplicationFormComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard],
resolve: { record: RecordResolver }, resolve: { record: RecordResolver },
data: { data: {
program: 'application', program: 'application',
breadcrumb: 'breadcrumb.application.detail' breadcrumb: 'breadcrumb.application.detail'
} }
}, },
{ {
path: 'valpos', component: CrudGridComponent, canActivate: [AuthGuard, ResourceAuthGuard], path: 'valpos', component: CrudGridComponent, canActivate: [AuthGuard, ResourceAuthGuard],
resolve: { template: TemplateResolver }, resolve: { template: TemplateResolver },
data: { data: {
program: 'valpos', program: 'valpos',
breadcrumb: 'breadcrumb.valpos' breadcrumb: 'breadcrumb.valpos'
} }
}, },
{ {
path: 'valpos/detail/:mode', component: ValposFormComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard], path: 'valpos/detail/:mode', component: ValposFormComponent, canActivate: [AuthGuard, ResourceAuthGuard], canDeactivate: [DirtyGuard],
resolve: { record: RecordResolver, editableTableTemplate: EditableDataTableTemplateResolver }, resolve: { record: RecordResolver, editableTableTemplate: EditableDataTableTemplateResolver },
data: { data: {
program: 'valpos', program: 'valpos',
breadcrumb: 'breadcrumb.valpos.detail', breadcrumb: 'breadcrumb.valpos.detail',
editableTableTemplate: 'valpos-detail' editableTableTemplate: 'valpos-detail'
} }
} }
]; ];
@NgModule({ @NgModule({
imports: [RouterModule.forChild(routes)], imports: [RouterModule.forChild(routes)],
exports: [RouterModule] exports: [RouterModule]
}) })
export class SettingsRoutingModule { } export class SettingsRoutingModule { }
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { DirtyGuard, XdfGalleryModule, EditableDataTableTemplateResolver } from '@xdf/gallery'; import { DirtyGuard, XdfGalleryModule, EditableDataTableTemplateResolver } from '@xdf/gallery';
import { SettingsRoutingModule } from './settings-routing.module'; import { SettingsRoutingModule } from './settings-routing.module';
import { TranslateModule } from '@ngx-translate/core'; import { TranslateModule } from '@ngx-translate/core';
import { ReactiveFormsModule, FormsModule } from '@angular/forms'; import { ReactiveFormsModule, FormsModule } from '@angular/forms';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { MatFormFieldModule, MatSelectModule, MatTooltipModule, MatButtonModule } from '@angular/material'; import { MatFormFieldModule, MatSelectModule, MatTooltipModule, MatButtonModule } from '@angular/material';
import { XdfSettingsModule } from '@xdf/settings'; import { XdfSettingsModule } from '@xdf/settings';
import { XdfLayoutsModule } from '@xdf/layouts'; import { XdfLayoutsModule } from '@xdf/layouts';
@NgModule({ @NgModule({
declarations: [ declarations: [
], ],
imports: [ imports: [
CommonModule, CommonModule,
FormsModule, FormsModule,
ReactiveFormsModule, ReactiveFormsModule,
TranslateModule, TranslateModule,
SettingsRoutingModule, SettingsRoutingModule,
MatFormFieldModule, MatFormFieldModule,
MatSelectModule, MatSelectModule,
MatTooltipModule, MatTooltipModule,
XdfGalleryModule, XdfGalleryModule,
XdfSettingsModule, XdfSettingsModule,
XdfLayoutsModule, XdfLayoutsModule,
MatButtonModule MatButtonModule
], ],
entryComponents: [ entryComponents: [
], ],
providers: [ providers: [
{ provide: DirtyGuard, useClass: DirtyGuard }, { provide: DirtyGuard, useClass: DirtyGuard },
EditableDataTableTemplateResolver EditableDataTableTemplateResolver
] ]
}) })
export class SettingsModule { } export class SettingsModule { }
import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { HomeComponent } from './home.component'; import { HomeComponent } from './home.component';
describe('HomeComponent', () => { describe('HomeComponent', () => {
let component: HomeComponent; let component: HomeComponent;
let fixture: ComponentFixture<HomeComponent>; let fixture: ComponentFixture<HomeComponent>;
beforeEach(async(() => { beforeEach(async(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
declarations: [ HomeComponent ] declarations: [ HomeComponent ]
}) })
.compileComponents(); .compileComponents();
})); }));
beforeEach(() => { beforeEach(() => {
fixture = TestBed.createComponent(HomeComponent); fixture = TestBed.createComponent(HomeComponent);
component = fixture.componentInstance; component = fixture.componentInstance;
fixture.detectChanges(); fixture.detectChanges();
}); });
it('should create', () => { it('should create', () => {
expect(component).toBeTruthy(); expect(component).toBeTruthy();
}); });
}); });
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
@Component({ @Component({
selector: 'byte-home', selector: 'byte-home',
templateUrl: './home.component.html', templateUrl: './home.component.html',
styleUrls: ['./home.component.scss'] styleUrls: ['./home.component.scss']
}) })
export class HomeComponent implements OnInit { export class HomeComponent implements OnInit {
constructor() { } constructor() { }
ngOnInit() { ngOnInit() {
} }
} }
[ [
{ {
"view":"(UTC-11:00) Midway, Niue, Pago Pago", "view":"(UTC-11:00) Midway, Niue, Pago Pago",
"gmt":"-11:00" "gmt":"-11:00"
}, },
{ {
"view":"(UTC-10:00) Honolulu, Tahiti", "view":"(UTC-10:00) Honolulu, Tahiti",
"gmt":"-10:00" "gmt":"-10:00"
}, },
{ {
"view":"(UTC-9:30) Marquesas", "view":"(UTC-9:30) Marquesas",
"gmt":"-9:30" "gmt":"-9:30"
}, },
{ {
"view":"(UTC-9:00) Juneau, Nome, Gambier", "view":"(UTC-9:00) Juneau, Nome, Gambier",
"gmt":"-9:00" "gmt":"-9:00"
}, },
{ {
"view":"(UTC-8:00) Dawson, Los Angeles, Tijuana, Vancouver", "view":"(UTC-8:00) Dawson, Los Angeles, Tijuana, Vancouver",
"gmt":"-8:00" "gmt":"-8:00"
}, },
{ {
"view":"(UTC-7:00) Boise, Phoenix, Edmonton, Inuvik", "view":"(UTC-7:00) Boise, Phoenix, Edmonton, Inuvik",
"gmt":"-7:00" "gmt":"-7:00"
}, },
{ {
"view":"(UTC-6:00) Belize, Chicago, Costa Rica, El Salvador, Guatemala, Managua, Mexico City", "view":"(UTC-6:00) Belize, Chicago, Costa Rica, El Salvador, Guatemala, Managua, Mexico City",
"gmt":"-6:00" "gmt":"-6:00"
}, },
{ {
"view":"(UTC-5:00) Bogota, Cancun, Detroit, Lima, New York, Panama, Toronto", "view":"(UTC-5:00) Bogota, Cancun, Detroit, Lima, New York, Panama, Toronto",
"gmt":"-5:00" "gmt":"-5:00"
}, },
{ {
"view":"(UTC-4:00) Aruba, Barbados, Caracas, Guyana, La Paz, Manaus, Santiago, Puerto Rico", "view":"(UTC-4:00) Aruba, Barbados, Caracas, Guyana, La Paz, Manaus, Santiago, Puerto Rico",
"gmt":"-4:00" "gmt":"-4:00"
}, },
{ {
"view":"(UTC-3:30) St Johns", "view":"(UTC-3:30) St Johns",
"gmt":"-3:30" "gmt":"-3:30"
}, },
{ {
"view":"(UTC-3:00) Buenos Aires, Bahia, Cayenne, Montevideo", "view":"(UTC-3:00) Buenos Aires, Bahia, Cayenne, Montevideo",
"gmt":"-3:00" "gmt":"-3:00"
}, },
{ {
"view":"(UTC-2:00) Noronha, South Georgia", "view":"(UTC-2:00) Noronha, South Georgia",
"gmt":"-2:00" "gmt":"-2:00"
}, },
{ {
"view":"(UTC-1:00) Scoresbysund, Azores, Cape Verde", "view":"(UTC-1:00) Scoresbysund, Azores, Cape Verde",
"gmt":"-1:00" "gmt":"-1:00"
}, },
{ {
"view":"(UTC) Hora universal coordinada", "view":"(UTC) Hora universal coordinada",
"gmt":"0:00" "gmt":"0:00"
}, },
{ {
"view":"(UTC+1:00) Algiers, Madrid, Berlin, Bruselas, Lagos, Túnez, Niamey, Amsterdam", "view":"(UTC+1:00) Algiers, Madrid, Berlin, Bruselas, Lagos, Túnez, Niamey, Amsterdam",
"gmt":"+1:00" "gmt":"+1:00"
}, },
{ {
"view":"(UTC+2:00) Cairo, Harare, Tripoli, Gaza, Atenas", "view":"(UTC+2:00) Cairo, Harare, Tripoli, Gaza, Atenas",
"gmt":"+2:00" "gmt":"+2:00"
}, },
{ {
"view":"(UTC+3:00) Qatar, Moscú, Simferopol ", "view":"(UTC+3:00) Qatar, Moscú, Simferopol ",
"gmt":"+3:00" "gmt":"+3:00"
}, },
{ {
"view":"(UTC+3:30) Tehran", "view":"(UTC+3:30) Tehran",
"gmt":"+3:30" "gmt":"+3:30"
}, },
{ {
"view":"(UTC+4:00) Baku, Dubai", "view":"(UTC+4:00) Baku, Dubai",
"gmt":"+4:00" "gmt":"+4:00"
}, },
{ {
"view":"(UTC+4:30) Kabul ", "view":"(UTC+4:30) Kabul ",
"gmt":"+4:30" "gmt":"+4:30"
}, },
{ {
"view":"(UTC+5:00) Mawson, Aqtobe, Karachi, Maldivas", "view":"(UTC+5:00) Mawson, Aqtobe, Karachi, Maldivas",
"gmt":"+5:00" "gmt":"+5:00"
}, },
{ {
"view":"(UTC+5:30) Colombo, Kolkata ", "view":"(UTC+5:30) Colombo, Kolkata ",
"gmt":"+5:30" "gmt":"+5:30"
}, },
{ {
"view":"(UTC+5:45) Kathmandu", "view":"(UTC+5:45) Kathmandu",
"gmt":"+5:45" "gmt":"+5:45"
}, },
{ {
"view":"(UTC+6:00) Bishkek, Novosibirsk, Qyzylorda", "view":"(UTC+6:00) Bishkek, Novosibirsk, Qyzylorda",
"gmt":"+6:00" "gmt":"+6:00"
}, },
{ {
"view":"(UTC+7:00) Bangkok, Indonesia, Barnaul ", "view":"(UTC+7:00) Bangkok, Indonesia, Barnaul ",
"gmt":"+7:00" "gmt":"+7:00"
}, },
{ {
"view":"(UTC+8:00) Macau, Shanghai, Singapore", "view":"(UTC+8:00) Macau, Shanghai, Singapore",
"gmt":"+8:00" "gmt":"+8:00"
}, },
{ {
"view":"(UTC+8:30) Pyongyang", "view":"(UTC+8:30) Pyongyang",
"gmt":"+8:30" "gmt":"+8:30"
}, },
{ {
"view":"(UTC+8:45) Eucla", "view":"(UTC+8:45) Eucla",
"gmt":"+8:45" "gmt":"+8:45"
}, },
{ {
"view":"(UTC+9:00) Chita, Jayapura, Tokyo, Palau", "view":"(UTC+9:00) Chita, Jayapura, Tokyo, Palau",
"gmt":"+9:00" "gmt":"+9:00"
}, },
{ {
"view":"(UTC+9:30) Darwin, Adelaide", "view":"(UTC+9:30) Darwin, Adelaide",
"gmt":"+9:30" "gmt":"+9:30"
}, },
{ {
"view":"(UTC+10:00) Vladivostok, Brisbane, Hobart", "view":"(UTC+10:00) Vladivostok, Brisbane, Hobart",
"gmt":"+10:00" "gmt":"+10:00"
}, },
{ {
"view":"(UTC+10:30) Lord Howe", "view":"(UTC+10:30) Lord Howe",
"gmt":"+10:30" "gmt":"+10:30"
}, },
{ {
"view":"(UTC+11:00) Magadan, Bougainville, Guadalcanal", "view":"(UTC+11:00) Magadan, Bougainville, Guadalcanal",
"gmt":"+11:00" "gmt":"+11:00"
}, },
{ {
"view":"(UTC+12:00) Kamchatka, Auckland, Majuro", "view":"(UTC+12:00) Kamchatka, Auckland, Majuro",
"gmt":"+12:00" "gmt":"+12:00"
}, },
{ {
"view":"(UTC+12:45) Chatham", "view":"(UTC+12:45) Chatham",
"gmt":"+12:45" "gmt":"+12:45"
}, },
{ {
"view":"(UTC+13:00) Apia, Enderbury, Tongatapu ", "view":"(UTC+13:00) Apia, Enderbury, Tongatapu ",
"gmt":"+13:00" "gmt":"+13:00"
}, },
{ {
"view":"(UTC+14:00) Kiritimati ", "view":"(UTC+14:00) Kiritimati ",
"gmt":"+14:00" "gmt":"+14:00"
} }
] ]
\ No newline at end of file
[ [
{ {
"id": 30, "id": 30,
"name": "security", "name": "security",
"label": "menu.security", "label": "menu.security",
"icon": "<i class=\"fa fa-address-book\"></i>", "icon": "<i class=\"fa fa-address-book\"></i>",
"fullPath": "/security", "fullPath": "/security",
"singlePath": "security", "singlePath": "security",
"isProgram": false, "isProgram": false,
"children": [ "children": [
{ {
"id": 32, "id": 32,
"name": "user", "name": "user",
"label": "menu.security.user", "label": "menu.security.user",
"icon": null, "icon": null,
"fullPath": "/security/user", "fullPath": "/security/user",
"singlePath": "user", "singlePath": "user",
"isProgram": true, "isProgram": true,
"children": [] "children": []
}, },
{ {
"id": 32, "id": 32,
"name": "user_role", "name": "user_role",
"label": "menu.security.user.role", "label": "menu.security.user.role",
"icon": null, "icon": null,
"fullPath": "/security/user-role", "fullPath": "/security/user-role",
"singlePath": "user-role", "singlePath": "user-role",
"isProgram": true, "isProgram": true,
"children": [] "children": []
} }
] ]
}, },
{ {
"id": 37, "id": 37,
"name": "agent", "name": "agent",
"label": "menu.parent.agent", "label": "menu.parent.agent",
"icon": "<i class=\"fa fa-cog\"></i>", "icon": "<i class=\"fa fa-cog\"></i>",
"fullPath": "/config/agent", "fullPath": "/config/agent",
"singlePath": "config", "singlePath": "config",
"isProgram": true, "isProgram": true,
"children": [] "children": []
} }
] ]
[ [
{ "user": "./assets/definitions/security-definitions/user.json" }, { "user": "./assets/definitions/security-definitions/user.json" },
{ "user_role": "./assets/definitions/security-definitions/user-role.json" }, { "user_role": "./assets/definitions/security-definitions/user-role.json" },
{ "system_settings_information": "./assets/definitions/setting-definitions/system-settings-information.json" }, { "system_settings_information": "./assets/definitions/setting-definitions/system-settings-information.json" },
{ "system_settings_password": "./assets/definitions/setting-definitions/system-settings-password.json" }, { "system_settings_password": "./assets/definitions/setting-definitions/system-settings-password.json" },
{ "system_settings_userpolicy": "./assets/definitions/setting-definitions/system-settings-userpolicy.json" }, { "system_settings_userpolicy": "./assets/definitions/setting-definitions/system-settings-userpolicy.json" },
{ "application": "./assets/definitions/setting-definitions/application.json" }, { "application": "./assets/definitions/setting-definitions/application.json" },
{ "valpos": "./assets/definitions/setting-definitions/valpos.json"} { "valpos": "./assets/definitions/setting-definitions/valpos.json"}
] ]
\ No newline at end of file
{ {
"label": { "label": {
"type": "text", "type": "text",
"required": true "required": true
}, },
"value": { "value": {
"type": "text", "type": "text",
"required": true "required": true
} }
} }
\ No newline at end of file
{ {
"name": "user_role", "name": "user_role",
"title": "user.role.title", "title": "user.role.title",
"fieldToShowInActon": "identifier", "fieldToShowInActon": "identifier",
"icon": "<span class=\"material-icons\">supervisor_account</span>", "icon": "<span class=\"material-icons\">supervisor_account</span>",
"service": "./service/user-role", "service": "./service/user-role",
"recordId": "id", "recordId": "id",
"showFormIn": "standard", "showFormIn": "standard",
"definitionReport": "user-role-report-1", "definitionReport": "user-role-report-1",
"attributes": [ "attributes": [
{ {
"name": "id", "name": "id",
"type": "number", "type": "number",
"formOptions": { "formOptions": {
"options": { "options": {
"hideInNew": true, "hideInNew": true,
"readonly": true, "readonly": true,
"styleClass": "col-xs-3 col-sm-6 col-md-3" "styleClass": "col-xs-3 col-sm-6 col-md-3"
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "number" "controlType": "number"
} }
}, },
{ {
"name": "identifier", "name": "identifier",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-md-6", "styleClass": "col-md-6",
"showLength": true, "showLength": true,
"maxLength": 80 "maxLength": 80
}, },
"validators": [ "validators": [
"required" "required"
] ]
} }
}, },
{ {
"name": "description", "name": "description",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-md-6", "styleClass": "col-md-6",
"showLength": true, "showLength": true,
"maxLength": 120 "maxLength": 120
}, },
"validators": [ "validators": [
"required" "required"
] ]
} }
} }
], ],
"grid": [ "grid": [
{ {
"sortColumnDefault": "id", "sortColumnDefault": "id",
"sortColumnDirection": "desc", "sortColumnDirection": "desc",
"pagingSize": 5, "pagingSize": 5,
"expandRow": false, "expandRow": false,
"columns": [ "columns": [
{ {
"name": "id", "name": "id",
"sortable": true, "sortable": true,
"style": {"width": "100px"}, "style": {"width": "100px"},
"optional": false, "optional": false,
"filter": true "filter": true
}, },
{ {
"name": "identifier", "name": "identifier",
"sortable": true, "sortable": true,
"style": {"width": "180px"}, "style": {"width": "180px"},
"filter": true "filter": true
}, },
{ {
"name": "description", "name": "description",
"sortable": true, "sortable": true,
"style": {"width": "180px"}, "style": {"width": "180px"},
"filter": true "filter": true
} }
] ]
} }
] ]
} }
\ No newline at end of file
{ {
"name": "user", "name": "user",
"title": "user.title", "title": "user.title",
"fieldToShowInActon": "username", "fieldToShowInActon": "username",
"titleDesc": "user.title.desc", "titleDesc": "user.title.desc",
"icon": "<i class=\"fa fa-user fa-1_5x\"></i>", "icon": "<i class=\"fa fa-user fa-1_5x\"></i>",
"service": "./service/user", "service": "./service/user",
"recordId": "id", "recordId": "id",
"showFormIn": "standard", "showFormIn": "standard",
"definitionReport": "user-report-1", "definitionReport": "user-report-1",
"attributes": [ "attributes": [
{ {
"name": "id", "name": "id",
"type": "number", "type": "number",
"formOptions": { "formOptions": {
"options": { "options": {
"readonly": true, "readonly": true,
"hideInNew": true, "hideInNew": true,
"styleClass": "col-xs-3 col-sm-6 col-md-6" "styleClass": "col-xs-3 col-sm-6 col-md-6"
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "number" "controlType": "number"
} }
}, },
{ {
"name": "username", "name": "username",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-xs-3 col-sm-6 col-md-6", "styleClass": "col-xs-3 col-sm-6 col-md-6",
"showLength": true, "showLength": true,
"maxLength": 60 "maxLength": 60
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "password", "name": "password",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"controlType": "password", "controlType": "password",
"options": { "options": {
"styleClass": "col-md-6", "styleClass": "col-md-6",
"showLength": true, "showLength": true,
"maxLength": 80, "maxLength": 80,
"showStrength": false "showStrength": false
}, },
"validators": [ "validators": [
"required" "required"
] ]
} }
}, },
{ {
"name": "defaultRole", "name": "defaultRole",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"sourceService": "./service/user-role", "sourceService": "./service/user-role",
"sourceValue": "id", "sourceValue": "id",
"sourceLabel": "identifier", "sourceLabel": "identifier",
"showSuggest": true, "showSuggest": true,
"styleClass": "col-md-6" "styleClass": "col-md-6"
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "select" "controlType": "select"
} }
}, },
{ {
"name": "roleList", "name": "roleList",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"sourceService": "./service/user-role", "sourceService": "./service/user-role",
"sourceValue": "id", "sourceValue": "id",
"sourceLabel": "identifier", "sourceLabel": "identifier",
"styleClass": "col-md-6", "styleClass": "col-md-6",
"multiple": true "multiple": true
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "select" "controlType": "select"
} }
}, },
{ {
"name": "firstName", "name": "firstName",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-xs-3 col-sm-6 col-md-6", "styleClass": "col-xs-3 col-sm-6 col-md-6",
"showLength": true, "showLength": true,
"maxLength": 80 "maxLength": 80
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "secondName", "name": "secondName",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-xs-3 col-sm-6 col-md-6", "styleClass": "col-xs-3 col-sm-6 col-md-6",
"showLength": true, "showLength": true,
"maxLength": 80 "maxLength": 80
}, },
"validators": [], "validators": [],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "firstSurname", "name": "firstSurname",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-xs-3 col-sm-6 col-md-6", "styleClass": "col-xs-3 col-sm-6 col-md-6",
"showLength": true, "showLength": true,
"maxLength": 80 "maxLength": 80
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "secondSurname", "name": "secondSurname",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-xs-3 col-sm-6 col-md-6", "styleClass": "col-xs-3 col-sm-6 col-md-6",
"showLength": true, "showLength": true,
"maxLength": 80 "maxLength": 80
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "sex", "name": "sex",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"values": { "values": {
"M": "label.sex.m", "M": "label.sex.m",
"F": "label.sex.f" "F": "label.sex.f"
}, },
"selected": "F", "selected": "F",
"options": { "options": {
"showInline": true "showInline": true
}, },
"validators": [], "validators": [],
"controlType": "radio" "controlType": "radio"
} }
}, },
{ {
"name": "salutationPrefer", "name": "salutationPrefer",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"values": { "values": {
"01": "Mr", "01": "Mr",
"02": "Miss" "02": "Miss"
}, },
"options": { "options": {
"styleClass": "col-md-3" "styleClass": "col-md-3"
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "select" "controlType": "select"
} }
}, },
{ {
"name": "birthday", "name": "birthday",
"type": "date", "type": "date",
"formOptions": { "formOptions": {
"controlType": "datepicker", "controlType": "datepicker",
"validators": [ "validators": [
"required" "required"
], ],
"options": { "options": {
"styleClass": "col-md-6" "styleClass": "col-md-6"
} }
} }
}, },
{ {
"name": "phoneNumber", "name": "phoneNumber",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": false, "showSuggest": false,
"maxLength": 20, "maxLength": 20,
"styleClass": "col-md-3" "styleClass": "col-md-3"
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "businessEmail", "name": "businessEmail",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"rightIcon": "mail", "rightIcon": "mail",
"maxLength": 200, "maxLength": 200,
"styleClass": "col-xl-6" "styleClass": "col-xl-6"
}, },
"validators": [ "validators": [
"required", "required",
"email" "email"
], ],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "status", "name": "status",
"type": "valpos", "type": "valpos",
"formOptions": { "formOptions": {
"values": { "values": {
"LO": "user.status.locked", "LO": "user.status.locked",
"AC": "user.status.active", "AC": "user.status.active",
"IN": "user.status.inactive", "IN": "user.status.inactive",
"XP": "user.status.password.expired", "XP": "user.status.password.expired",
"CR": "user.status.created", "CR": "user.status.created",
"DE": "user.status.deleted" "DE": "user.status.deleted"
}, },
"controlType": "badge", "controlType": "badge",
"options": { "options": {
"hideInNew": true, "hideInNew": true,
"styleClass": "col-md-6", "styleClass": "col-md-6",
"styles": { "styles": {
"LO": "label label-warning", "LO": "label label-warning",
"AC": "label label-primary", "AC": "label label-primary",
"IN": "label label-danger", "IN": "label label-danger",
"XP": "label label-warning", "XP": "label label-warning",
"CR": "label label-warning", "CR": "label label-warning",
"DE": "label label-danger" "DE": "label label-danger"
} }
} }
} }
} }
], ],
"groups": [ "groups": [
{ {
"name": "user_info", "name": "user_info",
"title": "user_group_user_info", "title": "user_group_user_info",
"description": "country_group_info_description", "description": "country_group_info_description",
"controls": [ "controls": [
[ [
"username", "status" "username", "status"
], ],
[ [
"defaultRole", "defaultRole",
"roleList" "roleList"
] ]
] ]
}, },
{ {
"name": "personal_info", "name": "personal_info",
"title": "user_group_personal_info", "title": "user_group_personal_info",
"description": "country_group_info_description", "description": "country_group_info_description",
"controls": [ "controls": [
[ [
"firstName", "firstName",
"secondName", "secondName",
"firstSurname", "firstSurname",
"secondSurname", "secondSurname",
"gender", "gender",
"sex", "sex",
"birthday" "birthday"
] ]
] ]
}, },
{ {
"name": "contact_info", "name": "contact_info",
"title": "user_group_contact_info", "title": "user_group_contact_info",
"description": "country_group_info_description", "description": "country_group_info_description",
"controls": [ "controls": [
[ [
"salutationPrefer", "phoneNumber", "salutationPrefer", "phoneNumber",
"businessEmail" "businessEmail"
] ]
] ]
} }
], ],
"grid": [ "grid": [
{ {
"sortColumnDefault": "username", "sortColumnDefault": "username",
"sortColumnDirection": "desc", "sortColumnDirection": "desc",
"pagingSize": 5, "pagingSize": 5,
"columns": [ "columns": [
{ {
"name": "username", "name": "username",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "100px" "width": "100px"
}, },
"optional": false, "optional": false,
"filter": true "filter": true
}, },
{ {
"name": "firstName", "name": "firstName",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "100px" "width": "100px"
}, },
"optional": false, "optional": false,
"filter": true "filter": true
}, },
{ {
"name": "firstSurname", "name": "firstSurname",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "100px" "width": "100px"
}, },
"optional": false, "optional": false,
"filter": true "filter": true
}, },
{ {
"name": "businessEmail", "name": "businessEmail",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "100px" "width": "100px"
}, },
"optional": false, "optional": false,
"filter": true "filter": true
}, },
{ {
"name": "status", "name": "status",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "50px" "width": "50px"
}, },
"optional": false, "optional": false,
"filter": true "filter": true
} }
] ]
} }
] ]
} }
\ No newline at end of file
{ {
"name": "application", "name": "application",
"title": "application.title", "title": "application.title",
"fieldToShowInActon": "identifier", "fieldToShowInActon": "identifier",
"icon": "<i class=\"fa fa-window-restore\"></i>", "icon": "<i class=\"fa fa-window-restore\"></i>",
"service": "./service/application", "service": "./service/application",
"recordId": "id", "recordId": "id",
"showFormIn": "standard", "showFormIn": "standard",
"definitionReport": "application-report-1", "definitionReport": "application-report-1",
"attributes": [ "attributes": [
{ {
"name": "id", "name": "id",
"type": "number", "type": "number",
"formOptions": { "formOptions": {
"options": { "options": {
"readonly": true, "readonly": true,
"hideInNew": true, "hideInNew": true,
"styleClass": "col-xs-12 col-sm-6 col-md-6" "styleClass": "col-xs-12 col-sm-6 col-md-6"
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "number" "controlType": "number"
} }
}, },
{ {
"name": "identifier", "name": "identifier",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-xs-12 col-sm-6 col-md-6", "styleClass": "col-xs-12 col-sm-6 col-md-6",
"showLength": true, "showLength": true,
"maxLength": 60 "maxLength": 60
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "description", "name": "description",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-xs-12 col-sm-6 col-md-6", "styleClass": "col-xs-12 col-sm-6 col-md-6",
"showLength": true, "showLength": true,
"maxLength": 200 "maxLength": 200
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "redirectURL", "name": "redirectURL",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-xs-12 col-sm-6 col-md-6", "styleClass": "col-xs-12 col-sm-6 col-md-6",
"showLength": true, "showLength": true,
"maxLength": 2000 "maxLength": 2000
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "clientId", "name": "clientId",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"readonly": true, "readonly": true,
"styleClass": "col-xs-12 col-sm-6 col-md-6" "styleClass": "col-xs-12 col-sm-6 col-md-6"
}, },
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "clientSecret", "name": "clientSecret",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"readonly": true, "readonly": true,
"styleClass": "col-xs-12 col-sm-6 col-md-6" "styleClass": "col-xs-12 col-sm-6 col-md-6"
}, },
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "status", "name": "status",
"type": "valpos", "type": "valpos",
"formOptions": { "formOptions": {
"values": { "values": {
"A": "user.status.active", "A": "user.status.active",
"I": "user.status.inactive" "I": "user.status.inactive"
}, },
"controlType": "badge", "controlType": "badge",
"options": { "options": {
"hideInNew": true, "hideInNew": true,
"styleClass": "col-md-6", "styleClass": "col-md-6",
"styles": { "styles": {
"A": "label label-primary", "A": "label label-primary",
"I": "label label-danger" "I": "label label-danger"
} }
} }
} }
} }
], ],
"groups": [ "groups": [
{ {
"name": "info", "name": "info",
"title": "", "title": "",
"description": "country_group_info_description", "description": "country_group_info_description",
"controls": [ "controls": [
[ [
"identifier", "status" "identifier", "status"
], ],
"description", "description",
"returnPath", "returnPath",
"clientId", "clientId",
"clientSecret" "clientSecret"
] ]
} }
], ],
"grid": [ "grid": [
{ {
"sortColumnDefault": "identifier", "sortColumnDefault": "identifier",
"sortColumnDirection": "desc", "sortColumnDirection": "desc",
"pagingSize": 5, "pagingSize": 5,
"expandRow": false, "expandRow": false,
"columns": [ "columns": [
{ {
"name": "identifier", "name": "identifier",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "100px" "width": "100px"
}, },
"optional": false, "optional": false,
"filter": true "filter": true
}, },
{ {
"name": "description", "name": "description",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "180px" "width": "180px"
}, },
"filter": true "filter": true
}, },
{ {
"name": "redirectURL", "name": "redirectURL",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "180px" "width": "180px"
}, },
"filter": true "filter": true
}, },
{ {
"name": "status", "name": "status",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "50px" "width": "50px"
}, },
"optional": false, "optional": false,
"filter": true "filter": true
} }
] ]
} }
] ]
} }
\ No newline at end of file
{ {
"name": "system_settings_information", "name": "system_settings_information",
"title": "system_settings_information_title", "title": "system_settings_information_title",
"titleDesc": "system_settings_information_title_desc", "titleDesc": "system_settings_information_title_desc",
"icon": "<i class=\"fa fa-info-circle fa-2x\"></i>", "icon": "<i class=\"fa fa-info-circle fa-2x\"></i>",
"service": "./service/system-settings/information", "service": "./service/system-settings/information",
"attributes": [ "attributes": [
{ {
"name": "name", "name": "name",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"max-length": "200", "max-length": "200",
"styleClass": "col-12" "styleClass": "col-12"
}, },
"validators": [ "validators": [
"required" "required"
] ]
} }
}, },
{ {
"name": "email", "name": "email",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"rightIcon": "mail", "rightIcon": "mail",
"rightIconLabel": "", "rightIconLabel": "",
"showLength": true, "showLength": true,
"maxLength": 200, "maxLength": 200,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"validators": [ "validators": [
"required", "required",
"email" "email"
] ]
} }
}, },
{ {
"name": "domain", "name": "domain",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"rightIcon": "http", "rightIcon": "http",
"rightIconLabel": "", "rightIconLabel": "",
"showLength": true, "showLength": true,
"maxLength": 200, "maxLength": 200,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"validators": [ "validators": [
"required", "required",
"url" "url"
] ]
} }
}, },
{ {
"name": "image", "name": "image",
"type": "file-upload", "type": "file-upload",
"formOptions": { "formOptions": {
"options": { "options": {
"text": "btn.upload.image", "text": "btn.upload.image",
"param": "file", "param": "file",
"target": "./service/file/upload", "target": "./service/file/upload",
"height": "250px", "height": "250px",
"styleClass": "col-6" "styleClass": "col-6"
}, },
"controlType": "file-upload" "controlType": "file-upload"
} }
} }
], ],
"groups": [ "groups": [
{ {
"name": "info", "name": "info",
"title": "", "title": "",
"description": "settings_information_group_info_description", "description": "settings_information_group_info_description",
"controls": [ "controls": [
"name", "name",
"email", "email",
"domain", "domain",
["image"] ["image"]
] ]
} }
] ]
} }
\ No newline at end of file
{ {
"name": "system_settings_password", "name": "system_settings_password",
"title": "system_settings_password_title", "title": "system_settings_password_title",
"titleDesc": "system_settings_password_title_desc", "titleDesc": "system_settings_password_title_desc",
"icon": "<i class=\"fa fa-key fa-2x\"></i>", "icon": "<i class=\"fa fa-key fa-2x\"></i>",
"service": "./service/system-settings/password", "service": "./service/system-settings/password",
"attributes": [ "attributes": [
{ {
"name": "includeUppercase", "name": "includeUppercase",
"type": "boolean", "type": "boolean",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"controlType": "checkbox" "controlType": "checkbox"
} }
}, },
{ {
"name": "includeNumber", "name": "includeNumber",
"type": "boolean", "type": "boolean",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"controlType": "checkbox" "controlType": "checkbox"
} }
}, },
{ {
"name": "notIncludeUserId", "name": "notIncludeUserId",
"type": "boolean", "type": "boolean",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"controlType": "checkbox" "controlType": "checkbox"
} }
}, },
{ {
"name": "notIncludeReverseUserId", "name": "notIncludeReverseUserId",
"type": "boolean", "type": "boolean",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"controlType": "checkbox" "controlType": "checkbox"
} }
}, },
{ {
"name": "passwordMinLength", "name": "passwordMinLength",
"type": "boolean", "type": "boolean",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"controlType": "checkbox" "controlType": "checkbox"
} }
} }
] ]
} }
\ No newline at end of file
{ {
"name": "system_settings_userpolicy", "name": "system_settings_userpolicy",
"title": "system_settings_userpolicy_title", "title": "system_settings_userpolicy_title",
"titleDesc": "system_settings_userpolicy_title_desc", "titleDesc": "system_settings_userpolicy_title_desc",
"icon": "<i class=\"fa fa-user-secret fa-2x\"></i>", "icon": "<i class=\"fa fa-user-secret fa-2x\"></i>",
"service": "./service/system-settings/userpolicy", "service": "./service/system-settings/userpolicy",
"attributes": [ "attributes": [
{ {
"name": "maxFailLogin", "name": "maxFailLogin",
"type": "number", "type": "number",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"validators": [ "validators": [
"required", "required",
{ {
"name": "min", "name": "min",
"value": 0 "value": 0
}, },
{ {
"name": "max", "name": "max",
"value": 99 "value": 99
} }
], ],
"controlType": "number" "controlType": "number"
} }
}, },
{ {
"name": "historyValidation", "name": "historyValidation",
"type": "number", "type": "number",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"validators": [ "validators": [
"required", "required",
{ {
"name": "min", "name": "min",
"value": 0 "value": 0
}, },
{ {
"name": "max", "name": "max",
"value": 99 "value": 99
} }
], ],
"controlType": "number" "controlType": "number"
} }
}, },
{ {
"name": "userInactivity", "name": "userInactivity",
"type": "number", "type": "number",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"validators": [ "validators": [
"required", "required",
{ {
"name": "min", "name": "min",
"value": 0 "value": 0
}, },
{ {
"name": "max", "name": "max",
"value": 99 "value": 99
} }
], ],
"controlType": "number" "controlType": "number"
} }
}, },
{ {
"name": "passwordExpiration", "name": "passwordExpiration",
"type": "number", "type": "number",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"validators": [ "validators": [
"required", "required",
{ {
"name": "min", "name": "min",
"value": 0 "value": 0
}, },
{ {
"name": "max", "name": "max",
"value": 99 "value": 99
} }
], ],
"controlType": "number" "controlType": "number"
} }
}, },
{ {
"name": "automaticUnlock", "name": "automaticUnlock",
"type": "number", "type": "number",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"validators": [ "validators": [
"required", "required",
{ {
"name": "min", "name": "min",
"value": 0 "value": 0
}, },
{ {
"name": "max", "name": "max",
"value": 99 "value": 99
} }
], ],
"controlType": "number" "controlType": "number"
} }
}, },
{ {
"name": "manageAccountByEmail", "name": "manageAccountByEmail",
"type": "boolean", "type": "boolean",
"formOptions": { "formOptions": {
"options": { "options": {
"showSuggest": true, "showSuggest": true,
"styleClass": "col-12" "styleClass": "col-12"
}, },
"controlType": "checkbox" "controlType": "checkbox"
} }
} }
] ]
} }
\ No newline at end of file
{ {
"name": "valpos", "name": "valpos",
"title": "valpos.title", "title": "valpos.title",
"fieldToShowInActon": "identifier", "fieldToShowInActon": "identifier",
"icon": "<i class=\"glyphicon glyphicon-list\"></i>", "icon": "<i class=\"glyphicon glyphicon-list\"></i>",
"service": "./service/possible-value", "service": "./service/possible-value",
"recordId": "id", "recordId": "id",
"showFormIn": "standard", "showFormIn": "standard",
"definitionReport": "valpos-report-1", "definitionReport": "valpos-report-1",
"attributes": [ "attributes": [
{ {
"name": "id", "name": "id",
"type": "number", "type": "number",
"formOptions": { "formOptions": {
"options": { "options": {
"readonly": true, "readonly": true,
"hideInNew": true, "hideInNew": true,
"styleClass": "col-xs-12 col-sm-6 col-md-6" "styleClass": "col-xs-12 col-sm-6 col-md-6"
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "number" "controlType": "number"
} }
}, },
{ {
"name": "identifier", "name": "identifier",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-xs-12 col-sm-6 col-md-6", "styleClass": "col-xs-12 col-sm-6 col-md-6",
"showLength": true, "showLength": true,
"maxLength": 20 "maxLength": 20
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "text" "controlType": "text"
} }
}, },
{ {
"name": "description", "name": "description",
"type": "string", "type": "string",
"formOptions": { "formOptions": {
"options": { "options": {
"styleClass": "col-xs-12 col-sm-6 col-md-6", "styleClass": "col-xs-12 col-sm-6 col-md-6",
"showLength": true, "showLength": true,
"maxLength": 200 "maxLength": 200
}, },
"validators": [ "validators": [
"required" "required"
], ],
"controlType": "text" "controlType": "text"
} }
} }
], ],
"groups": [ "groups": [
{ {
"name": "info", "name": "info",
"title": "", "title": "",
"description": "country_group_info_description", "description": "country_group_info_description",
"controls": [ "controls": [
[ [
"id" "id"
], ],
"identifier", "identifier",
"description" "description"
] ]
} }
], ],
"grid": [ "grid": [
{ {
"sortColumnDefault": "id", "sortColumnDefault": "id",
"sortColumnDirection": "desc", "sortColumnDirection": "desc",
"pagingSize": 5, "pagingSize": 5,
"expandRow": false, "expandRow": false,
"columns": [ "columns": [
{ {
"name": "id", "name": "id",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "100px" "width": "100px"
}, },
"optional": false, "optional": false,
"filter": true "filter": true
}, },
{ {
"name": "identifier", "name": "identifier",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "180px" "width": "180px"
}, },
"filter": true "filter": true
}, },
{ {
"name": "description", "name": "description",
"sortable": true, "sortable": true,
"style": { "style": {
"width": "180px" "width": "180px"
}, },
"filter": true "filter": true
} }
] ]
} }
] ]
} }
\ No newline at end of file
[ [
{ {
"name": "system_settings_information", "name": "system_settings_information",
"label": "tabs.system.settings.information.title", "label": "tabs.system.settings.information.title",
"description": "tabs.system.settings.information.title.desc", "description": "tabs.system.settings.information.title.desc",
"path": "/settings/system-settings/information", "path": "/settings/system-settings/information",
"icon": "<i class=\"fa fa-info-circle fa-1_5x\"></i>" "icon": "<i class=\"fa fa-info-circle fa-1_5x\"></i>"
}, },
{ {
"name": "system_settings_password", "name": "system_settings_password",
"label": "tabs.system.settings.password.title", "label": "tabs.system.settings.password.title",
"description": "tabs.system.settings.password.title.desc", "description": "tabs.system.settings.password.title.desc",
"path": "/settings/system-settings/password", "path": "/settings/system-settings/password",
"icon": "<i class=\"fa fa-key fa-1_5x\"></i>" "icon": "<i class=\"fa fa-key fa-1_5x\"></i>"
}, },
{ {
"name": "system_settings_userpolicy", "name": "system_settings_userpolicy",
"label": "tabs.system.settings.userpolicy.title", "label": "tabs.system.settings.userpolicy.title",
"description": "tabs.system.settings.userpolicy.title.desc", "description": "tabs.system.settings.userpolicy.title.desc",
"path": "/settings/system-settings/userpolicy", "path": "/settings/system-settings/userpolicy",
"icon": "<i class=\"fa fa-user-secret fa-1_5x\"></i>" "icon": "<i class=\"fa fa-user-secret fa-1_5x\"></i>"
} }
] ]
\ No newline at end of file
[ [
"view", "view",
"edit", "edit",
"delete", "delete",
"new" "new"
] ]
\ No newline at end of file
[ [
{"id": 1, "name": "Perú (+51)", "code": "+51"}, {"id": 1, "name": "Perú (+51)", "code": "+51"},
{"id": 2, "name": "Chile (+52)", "code": "+52"}, {"id": 2, "name": "Chile (+52)", "code": "+52"},
{"id": 3, "name": "México (+53)", "code": "+53"} {"id": 3, "name": "México (+53)", "code": "+53"}
] ]
\ No newline at end of file
[ [
{ {
"id": 1, "id": 1,
"username": "agutierrez", "username": "agutierrez",
"firstName": "Aaron", "firstName": "Aaron",
"secondName": "Junior", "secondName": "Junior",
"firstLastName": "Gutiérrez", "firstLastName": "Gutiérrez",
"secondLastName": "López", "secondLastName": "López",
"email": "agutierrez@bytesw.com", "email": "agutierrez@bytesw.com",
"gender": "M", "gender": "M",
"maritalStatus": "S", "maritalStatus": "S",
"birthday": "2020-03-10", "birthday": "2020-03-10",
"phone": "952226613", "phone": "952226613",
"countryCode": 1, "countryCode": 1,
"principalRole": 1, "principalRole": 1,
"assignedRoles": [1, 2], "assignedRoles": [1, 2],
"status": "A" "status": "A"
}, },
{ {
"id": 2, "id": 2,
"username": "mortiz", "username": "mortiz",
"firstName": "Marco", "firstName": "Marco",
"secondName": "Antonio", "secondName": "Antonio",
"firstLastName": "Ortiz", "firstLastName": "Ortiz",
"secondLastName": "García", "secondLastName": "García",
"email": "mortiz@bytesw.com", "email": "mortiz@bytesw.com",
"gender": "M", "gender": "M",
"maritalStatus": "C", "maritalStatus": "C",
"birthday": "2020-03-10", "birthday": "2020-03-10",
"phone": "952226613", "phone": "952226613",
"countryCode": 1, "countryCode": 1,
"principalRole": 1, "principalRole": 1,
"assignedRoles": [1, 2], "assignedRoles": [1, 2],
"status": "I" "status": "I"
} }
] ]
\ No newline at end of file
[ [
{ "id": 1, "identifier": "ADMIN", "description": "Aministración" }, { "id": 1, "identifier": "ADMIN", "description": "Aministración" },
{ "id": 2, "identifier": "XDFUSER", "description": "XdfUser" } { "id": 2, "identifier": "XDFUSER", "description": "XdfUser" }
] ]
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
{ {
"title.error": "Error", "title.error": "Error",
"title.http.error": "Http Error", "title.http.error": "Http Error",
"title.not.http.error": "Error!" "title.not.http.error": "Error!"
} }
\ No newline at end of file
{ {
"title.error": "Error", "title.error": "Error",
"title.http.error": "Error Http", "title.http.error": "Error Http",
"title.not.http.error": "Error!" "title.not.http.error": "Error!"
} }
\ No newline at end of file
{ {
"home.subtitle": "Welcome to XDF Project", "home.subtitle": "Welcome to XDF Project",
"home.comments": "It is an application skeleton for a typical web app. You can use it to quickly bootstrap your webapp projects and dev environment." "home.comments": "It is an application skeleton for a typical web app. You can use it to quickly bootstrap your webapp projects and dev environment."
} }
\ No newline at end of file
{ {
"home.subtitle": "Bienvenido al proyecto XDF", "home.subtitle": "Bienvenido al proyecto XDF",
"home.comments": "Este proyecto presenta una aplicación web típica. Puede usarlo como un marco de referencia para el desarrollo de sus aplicaciones web." "home.comments": "Este proyecto presenta una aplicación web típica. Puede usarlo como un marco de referencia para el desarrollo de sus aplicaciones web.",
"etl_avatar": "Avatar",
"etl_code": "ID",
"etl_name": "Nombre",
"etl_version": "Versión",
"etl_status": "Estado",
"etl_country": "País",
"etl_timezone": "Zona horaria"
} }
\ No newline at end of file
{ {
"btn.search": "Search for", "btn.search": "Search for",
"btn.save": "Save", "btn.save": "Save",
"btn.back": "Back", "btn.back": "Back",
"btn.new": "New", "btn.new": "New",
"btn.edit": "Edit", "btn.edit": "Edit",
"btn.delete": "Delete", "btn.delete": "Delete",
"btn.close": "Close", "btn.close": "Close",
"btn.yes": "Yes", "btn.yes": "Yes",
"btn.no": "No", "btn.no": "No",
"btn.cancel": "Cancel", "btn.cancel": "Cancel",
"btn.next": "Next", "btn.next": "Next",
"btn.reset": "Reset", "btn.reset": "Reset",
"btn.audit": "Audit", "btn.audit": "Audit",
"btn.show.more": "Show more", "btn.show.more": "Show more",
"btn.upload.image": "Upload image", "btn.upload.image": "Upload image",
"btn.execute": "Execute", "btn.execute": "Execute",
"paginator.item.per.page": "Items per page: ", "paginator.item.per.page": "Items per page: ",
"paginator.next.page": "Next Page", "paginator.next.page": "Next Page",
"paginator.previous.page": "Previous Page", "paginator.previous.page": "Previous Page",
"paginator.range": "of", "paginator.range": "of",
"label.range.today": "Today", "label.range.today": "Today",
"label.range.yesterday": "Yesterday", "label.range.yesterday": "Yesterday",
"label.range.last.7.days": "Last 7 days", "label.range.last.7.days": "Last 7 days",
"label.range.last.30.days": "last 30 days", "label.range.last.30.days": "last 30 days",
"label.range.this.month": "This month", "label.range.this.month": "This month",
"label.range.last.month": "Last month", "label.range.last.month": "Last month",
"label.range.custom": "Custom range", "label.range.custom": "Custom range",
"label.boolean.true": "Yes", "label.boolean.true": "Yes",
"label.boolean.false": "No", "label.boolean.false": "No",
"title.grid.actions": "Actions", "title.grid.actions": "Actions",
"action.grid.edit": "Click to Edit", "action.grid.edit": "Click to Edit",
"action.grid.delete": "Click to Delete", "action.grid.delete": "Click to Delete",
"action.grid.columns": "Columns", "action.grid.columns": "Columns",
"action.grid.filter": "Filters", "action.grid.filter": "Filters",
"action.grid.filter.button": "Filter", "action.grid.filter.button": "Filter",
"action.grid.filter.help": "Help", "action.grid.filter.help": "Help",
"action.grid.filter.clear": "Clear all filters", "action.grid.filter.clear": "Clear all filters",
"action.grid.export.excel": "Export to xls", "action.grid.export.excel": "Export to xls",
"action.grid.export.pdf": "Export to pdf", "action.grid.export.pdf": "Export to pdf",
"action.grid.refresh": "Refresh", "action.grid.refresh": "Refresh",
"action.message.edit": "Editing: ", "action.message.edit": "Editing: ",
"action.message.view": "Viewing: ", "action.message.view": "Viewing: ",
"audit.grid.update": "<b>{{ user }}</b> actualizó el registro con id: <b>{{ id }}</b>", "audit.grid.update": "<b>{{ user }}</b> actualizó el registro con id: <b>{{ id }}</b>",
"audit.grid.create": "<b>{{ user }}</b> creó el registro con id: <b>{{ id }}</b>", "audit.grid.create": "<b>{{ user }}</b> creó el registro con id: <b>{{ id }}</b>",
"audit.dialog.title": "Audit Info", "audit.dialog.title": "Audit Info",
"message.error.validateAge": "The age must be over 17 years and less that 100", "message.error.validateAge": "The age must be over 17 years and less that 100",
"message.error.email": "The email does not comply with the format", "message.error.email": "The email does not comply with the format",
"message.error.required": "The \"{{ label }}\" field is required", "message.error.required": "The \"{{ label }}\" field is required",
"message.error.min.length": "The \"{{ label }}\" field supports at least \"{{value}}\" characters", "message.error.min.length": "The \"{{ label }}\" field supports at least \"{{value}}\" characters",
"message.error.max.length": "The \"{{ label }}\" field supports at maximum \"{{value}}\" characters", "message.error.max.length": "The \"{{ label }}\" field supports at maximum \"{{value}}\" characters",
"message.error.min": "Value must be greater equal that to \"{{ min }}\"", "message.error.min": "Value must be greater equal that to \"{{ min }}\"",
"message.error.max": "Value must be less equal that to \"{{ value }}\"", "message.error.max": "Value must be less equal that to \"{{ value }}\"",
"message.error.pattern": "The value does not meet the regular expression - \"{{ value }}\"", "message.error.pattern": "The value does not meet the regular expression - \"{{ value }}\"",
"message.error.duplicity.name": "The value entered already exists", "message.error.duplicity.name": "The value entered already exists",
"message.error.matDatepickerParse": "The value input is not valid", "message.error.matDatepickerParse": "The value input is not valid",
"message.error.resource.authorization": "Don't have access to the program", "message.error.resource.authorization": "Don't have access to the program",
"message.error.matDatepickerMin": "The date must be greater than {{ min }}", "message.error.matDatepickerMin": "The date must be greater than {{ min }}",
"message.error.array.required": "You must select at least one item", "message.error.array.required": "You must select at least one item",
"title.dirty.confirmation": "Confirm", "title.dirty.confirmation": "Confirm",
"title.delete.confirmation": "Delete", "title.delete.confirmation": "Delete",
"title.information": "Information", "title.information": "Information",
"message.update.succesful": "Registration updated successfully", "message.update.succesful": "Registration updated successfully",
"message.create.succesful": "The record was created successfully", "message.create.succesful": "The record was created successfully",
"message.dirty.confirmation": "You have unsaved changes. Are you sure you want to leave?", "message.dirty.confirmation": "You have unsaved changes. Are you sure you want to leave?",
"message.delete.confirmation": "Are you sure you want to delete?", "message.delete.confirmation": "Are you sure you want to delete?",
"title.error.conflict": "Conflict between versions", "title.error.conflict": "Conflict between versions",
"message.error.conflict": "During the registry edition, another user modified the value.", "message.error.conflict": "During the registry edition, another user modified the value.",
"label.actual.value": "Current value", "label.actual.value": "Current value",
"message.error.unauthorized": "Does not have permissions for this option", "message.error.unauthorized": "Does not have permissions for this option",
"wizard.title.done": "Confirmation", "wizard.title.done": "Confirmation",
"security.message.error.title": "Security Error!", "security.message.error.title": "Security Error!",
"security.message.error.parameter": "Route requires 'parameter name'", "security.message.error.parameter": "Route requires 'parameter name'",
"security.message.error.parameter.not.found": "Not Found 'program' Parameter", "security.message.error.parameter.not.found": "Not Found 'program' Parameter",
"settings.message.error.title": "Settings Error!", "settings.message.error.title": "Settings Error!",
"inner.content.notfound.error": "Have not configured internal content for the rows", "inner.content.notfound.error": "Have not configured internal content for the rows",
"datatype.filter.error": "The field '{{field}}' does not allow the type of data entered", "datatype.filter.error": "The field '{{field}}' does not allow the type of data entered",
"label.autocomplete.search": "Search.." "label.autocomplete.search": "Search.."
} }
\ No newline at end of file
{ {
"btn.search": "Buscar", "btn.search": "Buscar",
"btn.save": "Guardar", "btn.save": "Guardar",
"btn.back": "Regresar", "btn.back": "Regresar",
"btn.new": "Nuevo", "btn.new": "Nuevo",
"btn.edit": "Editar", "btn.edit": "Editar",
"btn.delete": "Eliminar", "btn.delete": "Eliminar",
"btn.close": "Cerrar", "btn.close": "Cerrar",
"btn.yes": "Si", "btn.yes": "Si",
"btn.no": "No", "btn.no": "No",
"btn.cancel": "Cancelar", "btn.cancel": "Cancelar",
"btn.next": "Siguiente", "btn.next": "Siguiente",
"btn.reset": "Reiniciar", "btn.reset": "Reiniciar",
"btn.audit": "Auditoría", "btn.audit": "Auditoría",
"btn.show.more": "Ver más", "btn.show.more": "Ver más",
"btn.upload.image": "Subir imagen", "btn.upload.image": "Subir imagen",
"btn.execute": "Ejecutar", "btn.execute": "Ejecutar",
"paginator.item.per.page": "Resultados por página: ", "paginator.item.per.page": "Resultados por página: ",
"paginator.next.page": "Siguiente Página", "paginator.next.page": "Siguiente Página",
"paginator.previous.page": "Anterior Página", "paginator.previous.page": "Anterior Página",
"paginator.range": "de", "paginator.range": "de",
"label.range.today": "Hoy", "label.range.today": "Hoy",
"label.range.yesterday": "Ayer", "label.range.yesterday": "Ayer",
"label.range.last.7.days": "Últimos 7 días", "label.range.last.7.days": "Últimos 7 días",
"label.range.last.30.days": "Últimos 30 días", "label.range.last.30.days": "Últimos 30 días",
"label.range.this.month": "Mes actual", "label.range.this.month": "Mes actual",
"label.range.last.month": "Mes anterior", "label.range.last.month": "Mes anterior",
"label.range.custom": "Personalizado", "label.range.custom": "Personalizado",
"label.boolean.true": "Si", "label.boolean.true": "Si",
"label.boolean.false": "No", "label.boolean.false": "No",
"title.grid.actions": "Acciones", "title.grid.actions": "Acciones",
"action.grid.edit": "Editar", "action.grid.edit": "Editar",
"action.grid.delete": "Eliminar", "action.grid.delete": "Eliminar",
"action.grid.columns": "Columnas", "action.grid.columns": "Columnas",
"action.grid.filter": "Filtros", "action.grid.filter": "Filtros",
"action.grid.filter.button": "Filtrar", "action.grid.filter.button": "Filtrar",
"action.grid.filter.help": "Ayuda", "action.grid.filter.help": "Ayuda",
"action.grid.filter.clear": "Eliminar todos los filtros", "action.grid.filter.clear": "Eliminar todos los filtros",
"action.grid.export.excel": "Exportar a xls", "action.grid.export.excel": "Exportar a xls",
"action.grid.export.pdf": "Exportar a pdf", "action.grid.export.pdf": "Exportar a pdf",
"action.grid.refresh": "Actualizar", "action.grid.refresh": "Actualizar",
"action.message.edit": "Editando el registro: ", "action.message.edit": "Editando el registro: ",
"action.message.view": "Visualizando el registro: ", "action.message.view": "Visualizando el registro: ",
"audit.grid.update": "<b>{{ user }}</b> actualizó el registro con id: <b>{{ id }}</b>", "audit.grid.update": "<b>{{ user }}</b> actualizó el registro con id: <b>{{ id }}</b>",
"audit.grid.create": "<b>{{ user }}</b> creó el registro con id: <b>{{ id }}</b>", "audit.grid.create": "<b>{{ user }}</b> creó el registro con id: <b>{{ id }}</b>",
"audit.dialog.title": "Información de Auditoría", "audit.dialog.title": "Información de Auditoría",
"message.error.validateAge": "La edad debe ser mayor de 17 años y menor de 100", "message.error.validateAge": "La edad debe ser mayor de 17 años y menor de 100",
"message.error.email": "El email no cumple con el formato", "message.error.email": "El email no cumple con el formato",
"message.error.required": "El campo \"{{ label }}\" es requerido", "message.error.required": "El campo \"{{ label }}\" es requerido",
"message.error.min.length": "El campo \"{{ label }}\" admite como mínimo \"{{ value }}\" caracteres", "message.error.min.length": "El campo \"{{ label }}\" admite como mínimo \"{{ value }}\" caracteres",
"message.error.max.length": "El campo \"{{ label }}\" admite como máximo \"{{ value }}\" caracteres", "message.error.max.length": "El campo \"{{ label }}\" admite como máximo \"{{ value }}\" caracteres",
"message.error.min": "El valor debe ser mayor o igual a \"{{ min }}\"", "message.error.min": "El valor debe ser mayor o igual a \"{{ min }}\"",
"message.error.max": "El valor debe ser menor o igual a \"{{ max }}\"", "message.error.max": "El valor debe ser menor o igual a \"{{ max }}\"",
"message.error.pattern": "El valor no cumple con la expresión regular - \"{{ requiredPattern }}\"", "message.error.pattern": "El valor no cumple con la expresión regular - \"{{ requiredPattern }}\"",
"message.error.duplicity.name": "El valor ingresado ya existe", "message.error.duplicity.name": "El valor ingresado ya existe",
"message.error.matDatepickerParse": "El valor ingresado no es válido", "message.error.matDatepickerParse": "El valor ingresado no es válido",
"message.error.resource.authorization": "No tiene acceso al programa", "message.error.resource.authorization": "No tiene acceso al programa",
"message.error.matDatepickerMin": "La fecha debe ser mayor a {{ min }}", "message.error.matDatepickerMin": "La fecha debe ser mayor a {{ min }}",
"message.error.array.required": "Debe seleccionar al menos un elemento", "message.error.array.required": "Debe seleccionar al menos un elemento",
"title.dirty.confirmation": "Confirmar", "title.dirty.confirmation": "Confirmar",
"title.delete.confirmation": "Eliminar", "title.delete.confirmation": "Eliminar",
"title.error": "Error", "title.error": "Error",
"title.information": "Información", "title.information": "Información",
"message.update.succesful": "El registro se actualizó correctamente", "message.update.succesful": "El registro se actualizó correctamente",
"message.create.succesful": "El registro se creó correctamente", "message.create.succesful": "El registro se creó correctamente",
"message.dirty.confirmation": "El formulario tiene cambios no guardados. ¿Desea abandonarlo?", "message.dirty.confirmation": "El formulario tiene cambios no guardados. ¿Desea abandonarlo?",
"message.delete.confirmation": "¿Está seguro que desea eliminar el registro?", "message.delete.confirmation": "¿Está seguro que desea eliminar el registro?",
"title.error.conflict": "Conflicto entre versiones", "title.error.conflict": "Conflicto entre versiones",
"message.error.conflict": "Durante la edición del registo, otro usuario a modificado el valor", "message.error.conflict": "Durante la edición del registo, otro usuario a modificado el valor",
"label.actual.value": "Valor actual", "label.actual.value": "Valor actual",
"message.error.unauthorized": "No se tiene permiso para esta opción", "message.error.unauthorized": "No se tiene permiso para esta opción",
"wizard.title.done": "Confirmación", "wizard.title.done": "Confirmación",
"security.message.error.title": "Error de seguridad!", "security.message.error.title": "Error de seguridad!",
"security.message.error.parameter": "Ruta requiere el parámetro '{{parameter}}'", "security.message.error.parameter": "Ruta requiere el parámetro '{{parameter}}'",
"security.message.error.parameter.not.found": "Parámetro '{{parameter}}' no encontrado", "security.message.error.parameter.not.found": "Parámetro '{{parameter}}' no encontrado",
"settings.message.error.title": "Error de configuración!", "settings.message.error.title": "Error de configuración!",
"inner.content.notfound.error": "No ha configurado un contenido interno para las filas", "inner.content.notfound.error": "No ha configurado un contenido interno para las filas",
"datatype.filter.error": "El campo '{{field}}' no permite el tipo de dato ingresado", "datatype.filter.error": "El campo '{{field}}' no permite el tipo de dato ingresado",
"label.autocomplete.search": "Buscar.." "label.autocomplete.search": "Buscar.."
} }
\ No newline at end of file
{ {
"language": "Language", "language": "Language",
"en": "English", "en": "English",
"es": "Spanish", "es": "Spanish",
"since": "{{now}}", "since": "{{now}}",
"back.to.top": "Back to Top", "back.to.top": "Back to Top",
"logout": "Logout", "logout": "Logout",
"notfound.title": "We are sorry, Page not found!", "notfound.title": "We are sorry, Page not found!",
"notfound.subtitle": "The page you are looking for might have been removed had its name changed or is temporarily unavailable.", "notfound.subtitle": "The page you are looking for might have been removed had its name changed or is temporarily unavailable.",
"notfound.gohome": "Back To Homepage", "notfound.gohome": "Back To Homepage",
"title.chat": "Chat", "title.chat": "Chat",
"title.application.options": "System Preferences", "title.application.options": "System Preferences",
"application.options.details": "This option allows users to customize their experience with the application. The settings will be maintained on this device and with this browser", "application.options.details": "This option allows users to customize their experience with the application. The settings will be maintained on this device and with this browser",
"application.options.exit": "Exit", "application.options.exit": "Exit",
"title.roles.options": "Roles", "title.roles.options": "Roles",
"roles.options.select.one": "Select the role you want to use" "roles.options.select.one": "Select the role you want to use"
} }
\ No newline at end of file
{ {
"language": "Idioma", "language": "Idioma",
"en": "Inglés", "en": "Inglés",
"es": "Español", "es": "Español",
"since": "{{now}}", "since": "{{now}}",
"back.to.top": "Volver arriba", "back.to.top": "Volver arriba",
"logout": "Salir", "logout": "Salir",
"notfound.title": "Lo sentimos, ¡página no encontrada!", "notfound.title": "Lo sentimos, ¡página no encontrada!",
"notfound.subtitle": "La página que ud busca ha sido removida, ha cambiado de nombre o temporalmente no está disponible.", "notfound.subtitle": "La página que ud busca ha sido removida, ha cambiado de nombre o temporalmente no está disponible.",
"notfound.gohome": "Ir a Inicio", "notfound.gohome": "Ir a Inicio",
"title.chat": "Chat", "title.chat": "Chat",
"title.application.options": "Ajuste de sistema", "title.application.options": "Ajuste de sistema",
"application.options.details": "Está opción permite a los usuarios personalizar su experiencia con el aplicativo. Los ajustes se mantendrán en este dispositivo y con este navegador", "application.options.details": "Está opción permite a los usuarios personalizar su experiencia con el aplicativo. Los ajustes se mantendrán en este dispositivo y con este navegador",
"application.options.exit": "Salir", "application.options.exit": "Salir",
"title.roles.options": "Roles", "title.roles.options": "Roles",
"roles.options.select.one": "Seleccione el rol que desea utilizar" "roles.options.select.one": "Seleccione el rol que desea utilizar"
} }
\ No newline at end of file
{ {
"menu.system.settings": "System settings", "menu.system.settings": "System settings",
"menu.cruds": "Configuration", "menu.cruds": "Configuration",
"menu.cruds.customer": "Customers", "menu.cruds.customer": "Customers",
"menu.cruds.country": "Countries", "menu.cruds.country": "Countries",
"menu.security": "Security", "menu.security": "Security",
"menu.security.user": "User", "menu.security.user": "User",
"menu.security.user.role": "User role", "menu.security.user.role": "User role",
"menu.settings": "System", "menu.settings": "System",
"menu.settings.application": "Applications", "menu.settings.application": "Applications",
"menu.settings.system": "System settings", "menu.settings.system": "System settings",
"menu.settings.valpos": "Possible values", "menu.settings.valpos": "Possible values",
"menu.business.config": "Settings", "menu.business.config": "Settings",
"menu.ticket.manager": "Ticket manager" "menu.ticket.manager": "Ticket manager"
} }
\ No newline at end of file
{ {
"menu.system.settings": "Sistema", "menu.system.settings": "Sistema",
"menu.cruds": "Configuración", "menu.cruds": "Configuración",
"menu.cruds.customer": "Clientes", "menu.cruds.customer": "Clientes",
"menu.cruds.country": "Ciudades", "menu.cruds.country": "Ciudades",
"menu.security": "Seguridad", "menu.security": "Seguridad",
"menu.security.user": "Usuario", "menu.security.user": "Usuario",
"menu.security.user.role": "Rol de usuario", "menu.security.user.role": "Rol de usuario",
"menu.settings": "Sistema", "menu.settings": "Sistema",
"menu.settings.application": "Aplicaciones", "menu.settings.application": "Aplicaciones",
"menu.settings.system": "Configuración de sistema", "menu.settings.system": "Configuración de sistema",
"menu.settings.valpos": "Valores posibles", "menu.settings.valpos": "Valores posibles",
"menu.business.config": "Configuración", "menu.business.config": "Configuración",
"menu.ticket.manager": "Gestor de tickets", "menu.ticket.manager": "Gestor de tickets",
"menu.piloto": "Configuración piloto", "menu.piloto": "Configuración piloto",
"entidades.piloto": "Entidades", "entidades.piloto": "Entidades",
"estados.piloto": "Estados", "estados.piloto": "Estados",
"motivos.piloto": "Motivos", "motivos.piloto": "Motivos",
"categoria.motivo.piloto": "Categorías de motivos" "categoria.motivo.piloto": "Categorías de motivos"
} }
\ No newline at end of file
{ {
"login.title": "Login Page", "login.title": "Login Page",
"breadcrumb.user.role": "User role", "breadcrumb.user.role": "User role",
"breadcrumb.user.role.detail": "Detail", "breadcrumb.user.role.detail": "Detail",
"breadcrumb.user": "User", "breadcrumb.user": "User",
"breadcrumb.user.detail": "Detail", "breadcrumb.user.detail": "Detail",
"control.new": "New", "control.new": "New",
"control.view": "View", "control.view": "View",
"control.edit": "Edit", "control.edit": "Edit",
"control.delete": "Delete", "control.delete": "Delete",
"control.export": "Export", "control.export": "Export",
"control.audit": "Audit", "control.audit": "Audit",
"control.execute": "Execute", "control.execute": "Execute",
"label.username": "Username", "label.username": "Username",
"label.password": "Password", "label.password": "Password",
"label.sex.m": "Male", "label.sex.m": "Male",
"label.sex.f": "Female", "label.sex.f": "Female",
"user.role.title": "User role", "user.role.title": "User role",
"user.role.title.desc": "User Role Manager", "user.role.title.desc": "User Role Manager",
"user_role_group_info_header": "General Information", "user_role_group_info_header": "General Information",
"user_role_id_header": "ID", "user_role_id_header": "ID",
"user_role_identifier_header": "Identifier", "user_role_identifier_header": "Identifier",
"user_role_description_header": "Description", "user_role_description_header": "Description",
"user_role_form_id_placeholder": "ID", "user_role_form_id_placeholder": "ID",
"user_role_form_identifier_placeholder": "Identifier", "user_role_form_identifier_placeholder": "Identifier",
"user_role_form_description_placeholder": "Description", "user_role_form_description_placeholder": "Description",
"user.title": "Users", "user.title": "Users",
"user.title.desc": "User Role Manager", "user.title.desc": "User Role Manager",
"user_group_info_header": "General Information", "user_group_info_header": "General Information",
"user_username_header": "Username", "user_username_header": "Username",
"user_firstName_header": "First name", "user_firstName_header": "First name",
"user_firstSurname_header": "Last name", "user_firstSurname_header": "Last name",
"user_businessEmail_header": "Email", "user_businessEmail_header": "Email",
"user_status_header": "Status", "user_status_header": "Status",
"user_group_user_info": "User Data", "user_group_user_info": "User Data",
"user_group_personal_info": "Personal information", "user_group_personal_info": "Personal information",
"user_group_contact_info": "Contact information", "user_group_contact_info": "Contact information",
"user_form_username_placeholder": "Username", "user_form_username_placeholder": "Username",
"user_form_defaultRole_label": "Main role", "user_form_defaultRole_label": "Main role",
"user_form_defaultRole_suggest": "This role will be used as the default role in the application.", "user_form_defaultRole_suggest": "This role will be used as the default role in the application.",
"user_form_roleList_label": "Assigned roles", "user_form_roleList_label": "Assigned roles",
"user_form_firstName_placeholder": "First name", "user_form_firstName_placeholder": "First name",
"user_form_secondName_placeholder": "Second name", "user_form_secondName_placeholder": "Second name",
"user_form_firstSurname_placeholder": "Last name", "user_form_firstSurname_placeholder": "Last name",
"user_form_secondSurname_placeholder": "Mother's last name", "user_form_secondSurname_placeholder": "Mother's last name",
"user_form_salutationPrefer_label": "Salutation", "user_form_salutationPrefer_label": "Salutation",
"user_form_sex_label": "Gender", "user_form_sex_label": "Gender",
"user_form_sex_placeholder": "Gender", "user_form_sex_placeholder": "Gender",
"user_form_birthday_placeholder": "Birthday", "user_form_birthday_placeholder": "Birthday",
"user_form_countryCode_label": "Country code", "user_form_countryCode_label": "Country code",
"user_form_countryCode_placeholder": "Country code", "user_form_countryCode_placeholder": "Country code",
"user_form_phoneNumber_placeholder": "Phone", "user_form_phoneNumber_placeholder": "Phone",
"user_form_businessEmail_placeholder": "Email", "user_form_businessEmail_placeholder": "Email",
"user.status.locked": "Locked", "user.status.locked": "Locked",
"user.status.active": "Active", "user.status.active": "Active",
"user.status.inactive": "Inactive", "user.status.inactive": "Inactive",
"user.status.password.expired": "password expired", "user.status.password.expired": "password expired",
"user.status.created": "Created", "user.status.created": "Created",
"user.status.deleted": "Deleted" "user.status.deleted": "Deleted"
} }
\ No newline at end of file
{ {
"login.title": "Identificación de Usuario", "login.title": "Identificación de Usuario",
"breadcrumb.user.role": "Rol de usuario", "breadcrumb.user.role": "Rol de usuario",
"breadcrumb.user.role.detail": "Detalle", "breadcrumb.user.role.detail": "Detalle",
"breadcrumb.user": "Usuario", "breadcrumb.user": "Usuario",
"breadcrumb.user.detail": "Detalle", "breadcrumb.user.detail": "Detalle",
"control.new": "Creación", "control.new": "Creación",
"control.view": "Visualizar", "control.view": "Visualizar",
"control.edit": "Edición", "control.edit": "Edición",
"control.delete": "Eliminar", "control.delete": "Eliminar",
"control.export": "Exportar", "control.export": "Exportar",
"control.audit": "Ver auditoria", "control.audit": "Ver auditoria",
"control.execute": "Ejecutar", "control.execute": "Ejecutar",
"label.username": "Usuario", "label.username": "Usuario",
"label.password": "Contraseña", "label.password": "Contraseña",
"label.sex.m": "Masculino", "label.sex.m": "Masculino",
"label.sex.f": "Femenino", "label.sex.f": "Femenino",
"user.role.title": "Rol de usuario", "user.role.title": "Rol de usuario",
"user.role.title.desc": "Mantenimiento de roles de usuario", "user.role.title.desc": "Mantenimiento de roles de usuario",
"user_role_group_info_header": "Información General", "user_role_group_info_header": "Información General",
"user_role_id_header": "Id.", "user_role_id_header": "Id.",
"user_role_identifier_header": "Identificador", "user_role_identifier_header": "Identificador",
"user_role_description_header": "Descripción", "user_role_description_header": "Descripción",
"user_role_form_id_placeholder": "Id.", "user_role_form_id_placeholder": "Id.",
"user_role_form_identifier_placeholder": "Identificador", "user_role_form_identifier_placeholder": "Identificador",
"user_role_form_description_placeholder": "Descripción", "user_role_form_description_placeholder": "Descripción",
"user.title": "Usuarios", "user.title": "Usuarios",
"user.title.desc": "Mantenimiento de usuarios", "user.title.desc": "Mantenimiento de usuarios",
"user_group_info_header": "Información General", "user_group_info_header": "Información General",
"user_username_header": "Código", "user_username_header": "Código",
"user_firstName_header": "Primer nombre", "user_firstName_header": "Primer nombre",
"user_firstSurname_header": "Apellido paterno", "user_firstSurname_header": "Apellido paterno",
"user_businessEmail_header": "Email", "user_businessEmail_header": "Email",
"user_status_header": "Estado", "user_status_header": "Estado",
"user_group_user_info": "Datos de usuario", "user_group_user_info": "Datos de usuario",
"user_group_personal_info": "Datos personales", "user_group_personal_info": "Datos personales",
"user_group_contact_info": "Datos de contacto", "user_group_contact_info": "Datos de contacto",
"user_form_username_placeholder": "Código de usuario", "user_form_username_placeholder": "Código de usuario",
"user_form_defaultRole_label": "Rol principal", "user_form_defaultRole_label": "Rol principal",
"user_form_defaultRole_suggest": "Este rol será utilizado como rol por defecto en la aplicación.", "user_form_defaultRole_suggest": "Este rol será utilizado como rol por defecto en la aplicación.",
"user_form_roleList_label": "Roles asignados", "user_form_roleList_label": "Roles asignados",
"user_form_firstName_placeholder": "Primer nombre", "user_form_firstName_placeholder": "Primer nombre",
"user_form_secondName_placeholder": "Segundo nombre", "user_form_secondName_placeholder": "Segundo nombre",
"user_form_firstSurname_placeholder": "Apellido paterno", "user_form_firstSurname_placeholder": "Apellido paterno",
"user_form_secondSurname_placeholder": "Apellido Materno", "user_form_secondSurname_placeholder": "Apellido Materno",
"user_form_salutationPrefer_label": "Saludo", "user_form_salutationPrefer_label": "Saludo",
"user_form_sex_label": "Género", "user_form_sex_label": "Género",
"user_form_sex_placeholder": "Género", "user_form_sex_placeholder": "Género",
"user_form_birthday_placeholder": "Fecha de nacimiento", "user_form_birthday_placeholder": "Fecha de nacimiento",
"user_form_countryCode_label": "Código de país", "user_form_countryCode_label": "Código de país",
"user_form_countryCode_placeholder": "Código de país", "user_form_countryCode_placeholder": "Código de país",
"user_form_phoneNumber_placeholder": "Teléfono", "user_form_phoneNumber_placeholder": "Teléfono",
"user_form_businessEmail_placeholder": "Correo electrónico", "user_form_businessEmail_placeholder": "Correo electrónico",
"user.status.locked": "Bloqueado", "user.status.locked": "Bloqueado",
"user.status.active": "Activo", "user.status.active": "Activo",
"user.status.inactive": "Inactivo", "user.status.inactive": "Inactivo",
"user.status.password.expired": "Contraseña expirada", "user.status.password.expired": "Contraseña expirada",
"user.status.created": "Creado", "user.status.created": "Creado",
"user.status.deleted": "Eliminado" "user.status.deleted": "Eliminado"
} }
\ No newline at end of file
{ {
"breadcrumb.application": "Application", "breadcrumb.application": "Application",
"breadcrumb.application.detail": "Application information", "breadcrumb.application.detail": "Application information",
"breadcrumb.valpos": "Possible value", "breadcrumb.valpos": "Possible value",
"breadcrumb.valpos.detail": "Possible value information", "breadcrumb.valpos.detail": "Possible value information",
"breadcrumb.settings.userpolicy": "User policy", "breadcrumb.settings.userpolicy": "User policy",
"breadcrumb.settings.information": "General information", "breadcrumb.settings.information": "General information",
"breadcrumb.settings.password": "Password settings", "breadcrumb.settings.password": "Password settings",
"tabs.system.settings.information.title": "Information", "tabs.system.settings.information.title": "Information",
"tabs.system.settings.information.title.desc": "Organization information", "tabs.system.settings.information.title.desc": "Organization information",
"tabs.system.settings.password.title": "Password settings", "tabs.system.settings.password.title": "Password settings",
"tabs.system.settings.password.title.desc": "Security policies for the password", "tabs.system.settings.password.title.desc": "Security policies for the password",
"tabs.system.settings.userpolicy.title": "User policies", "tabs.system.settings.userpolicy.title": "User policies",
"tabs.system.settings.userpolicy.title.desc": "Security policies for the application", "tabs.system.settings.userpolicy.title.desc": "Security policies for the application",
"security.message.error.title": "Security Error!", "security.message.error.title": "Security Error!",
"security.message.error.parameter": "Route requires 'parameter name'", "security.message.error.parameter": "Route requires 'parameter name'",
"security.message.error.parameter.not.found": "Not Found 'program' Parameter", "security.message.error.parameter.not.found": "Not Found 'program' Parameter",
"settings.message.error.title": "Settings Error!", "settings.message.error.title": "Settings Error!",
"settings.general.header": "General", "settings.general.header": "General",
"settings.general.information.short": "Information", "settings.general.information.short": "Information",
"system_settings_information_title": "General Information", "system_settings_information_title": "General Information",
"system_settings_information_title_desc": "Enter company-related information, which can be used in notifications.", "system_settings_information_title_desc": "Enter company-related information, which can be used in notifications.",
"system_settings_information_form_name_placeholder": "Name", "system_settings_information_form_name_placeholder": "Name",
"system_settings_information_form_name_suggest": "Application name.", "system_settings_information_form_name_suggest": "Application name.",
"system_settings_information_form_email_placeholder": "Email", "system_settings_information_form_email_placeholder": "Email",
"system_settings_information_form_email_suggest": "Company email.", "system_settings_information_form_email_suggest": "Company email.",
"system_settings_information_form_domain_placeholder": "Application domain", "system_settings_information_form_domain_placeholder": "Application domain",
"system_settings_information_form_domain_suggest": "Application domain", "system_settings_information_form_domain_suggest": "Application domain",
"system_settings_information_form_image_label": "Application logo", "system_settings_information_form_image_label": "Application logo",
"settings.security.header": "Security", "settings.security.header": "Security",
"settings.security.password.short": "Password", "settings.security.password.short": "Password",
"system_settings_password_title": "Passwrod settings", "system_settings_password_title": "Passwrod settings",
"system_settings_password_title_desc": "Customize the security policies for the password.", "system_settings_password_title_desc": "Customize the security policies for the password.",
"system_settings_password_form_includeUppercase_label": "Include capital letters", "system_settings_password_form_includeUppercase_label": "Include capital letters",
"system_settings_password_form_includeUppercase_suggest": "Requires the password to contain at least one capital letter.", "system_settings_password_form_includeUppercase_suggest": "Requires the password to contain at least one capital letter.",
"system_settings_password_form_includeNumber_label": "Incluir números", "system_settings_password_form_includeNumber_label": "Incluir números",
"system_settings_password_form_includeNumber_suggest": "Requires the password to contain at least one number.", "system_settings_password_form_includeNumber_suggest": "Requires the password to contain at least one number.",
"system_settings_password_form_notIncludeUserId_label": "Do not include the user code", "system_settings_password_form_notIncludeUserId_label": "Do not include the user code",
"system_settings_password_form_notIncludeUserId_suggest": "The password must not include the user code.", "system_settings_password_form_notIncludeUserId_suggest": "The password must not include the user code.",
"system_settings_password_form_notIncludeReverseUserId_label": "Do not include the user code backwards", "system_settings_password_form_notIncludeReverseUserId_label": "Do not include the user code backwards",
"system_settings_password_form_notIncludeReverseUserId_suggest": "Validate that the password does not include the user's code in reverse.", "system_settings_password_form_notIncludeReverseUserId_suggest": "Validate that the password does not include the user's code in reverse.",
"system_settings_password_form_passwordMinLength_label": "Minimum length", "system_settings_password_form_passwordMinLength_label": "Minimum length",
"system_settings_password_form_passwordMinLength_suggest": "Minimum length for the password.", "system_settings_password_form_passwordMinLength_suggest": "Minimum length for the password.",
"settings.security.user.policy.short": "User policies", "settings.security.user.policy.short": "User policies",
"system_settings_userpolicy_title": "User policies", "system_settings_userpolicy_title": "User policies",
"system_settings_userpolicy_title_desc": "Customize the following security policies for users using the Byte security platform.", "system_settings_userpolicy_title_desc": "Customize the following security policies for users using the Byte security platform.",
"system_settings_userpolicy_form_maxFailLogin_placeholder": "Maximum failed attempts", "system_settings_userpolicy_form_maxFailLogin_placeholder": "Maximum failed attempts",
"system_settings_userpolicy_form_maxFailLogin_suggest": "Specify the number of failed login attempts, before blocking the user.", "system_settings_userpolicy_form_maxFailLogin_suggest": "Specify the number of failed login attempts, before blocking the user.",
"system_settings_userpolicy_form_historyValidation_placeholder": "Validate password history", "system_settings_userpolicy_form_historyValidation_placeholder": "Validate password history",
"system_settings_userpolicy_form_historyValidation_suggest": "Specify the number of last passwords that cannot be repeated.", "system_settings_userpolicy_form_historyValidation_suggest": "Specify the number of last passwords that cannot be repeated.",
"system_settings_userpolicy_form_userInactivity_placeholder": "Block users for inactivity", "system_settings_userpolicy_form_userInactivity_placeholder": "Block users for inactivity",
"system_settings_userpolicy_form_userInactivity_suggest": "Specify the number of days that must pass to block the user for inactivity.", "system_settings_userpolicy_form_userInactivity_suggest": "Specify the number of days that must pass to block the user for inactivity.",
"system_settings_userpolicy_form_passwordExpiration_placeholder": "Password expiration", "system_settings_userpolicy_form_passwordExpiration_placeholder": "Password expiration",
"system_settings_userpolicy_form_passwordExpiration_suggest": "Specify the number of days for passwords associated with user accounts to expire.", "system_settings_userpolicy_form_passwordExpiration_suggest": "Specify the number of days for passwords associated with user accounts to expire.",
"system_settings_userpolicy_form_automaticUnlock_placeholder": "Automatic user unlocking", "system_settings_userpolicy_form_automaticUnlock_placeholder": "Automatic user unlocking",
"system_settings_userpolicy_form_automaticUnlock_suggest": "Specify the number of minutes it takes for an account to be automatically unlocked.", "system_settings_userpolicy_form_automaticUnlock_suggest": "Specify the number of minutes it takes for an account to be automatically unlocked.",
"system_settings_userpolicy_form_manageAccountByEmail_label": "Manage user accounts via email", "system_settings_userpolicy_form_manageAccountByEmail_label": "Manage user accounts via email",
"system_settings_userpolicy_form_manageAccountByEmail_suggest": "Enable the option if you want to use email sending for user account management", "system_settings_userpolicy_form_manageAccountByEmail_suggest": "Enable the option if you want to use email sending for user account management",
"settings.notification.header": "Communication", "settings.notification.header": "Communication",
"settings.notification.mail.short": "Email server", "settings.notification.mail.short": "Email server",
"system_settings_mail_title": "Email Server Configuration", "system_settings_mail_title": "Email Server Configuration",
"system_settings_mail_title_desc": "Enter the information related to the email service that the application will use", "system_settings_mail_title_desc": "Enter the information related to the email service that the application will use",
"notification.mail.from.address": "Outbound account (from)", "notification.mail.from.address": "Outbound account (from)",
"notification.mail.from.address.suggest": "Email address that the application will use to send emails.", "notification.mail.from.address.suggest": "Email address that the application will use to send emails.",
"notification.mail.prefix": "Subject prefix", "notification.mail.prefix": "Subject prefix",
"notification.mail.prefix.suggest": "Subject prefix.", "notification.mail.prefix.suggest": "Subject prefix.",
"notification.mail.server": "SMTP server", "notification.mail.server": "SMTP server",
"notification.mail.server.suggest": "Name or IP address of the SMTP server.", "notification.mail.server.suggest": "Name or IP address of the SMTP server.",
"notification.mail.smtp.port": "SMTP port", "notification.mail.smtp.port": "SMTP port",
"notification.mail.smtp.port.suggest": "SMTP service port.", "notification.mail.smtp.port.suggest": "SMTP service port.",
"notification.mail.username": "User", "notification.mail.username": "User",
"notification.mail.username.suggest": "Mail account user.", "notification.mail.username.suggest": "Mail account user.",
"notification.mail.password": "Password", "notification.mail.password": "Password",
"notification.mail.password.suggest": "Email account password.", "notification.mail.password.suggest": "Email account password.",
"notification.mail.use.auth": "Use authentication", "notification.mail.use.auth": "Use authentication",
"notification.mail.use.tls": "Use TLS", "notification.mail.use.tls": "Use TLS",
"notification.mail.test.title": "Mail configuration validation", "notification.mail.test.title": "Mail configuration validation",
"notification.mail.test.suggest": "This section allows you to validate the mail settings before being saved.", "notification.mail.test.suggest": "This section allows you to validate the mail settings before being saved.",
"notification.mail.test.recipients": "Test recipients", "notification.mail.test.recipients": "Test recipients",
"notification.mail.test.recipients.suggest": "Enter one or more destination emails and press the \"Send email\" button.", "notification.mail.test.recipients.suggest": "Enter one or more destination emails and press the \"Send email\" button.",
"notification.mail.test.view.logs": "Show logs", "notification.mail.test.view.logs": "Show logs",
"application_btn_new_secret": "Generate new secret", "application_btn_new_secret": "Generate new secret",
"application_btn_show_credentials": "View credentials", "application_btn_show_credentials": "View credentials",
"application.title": "Application maintenance", "application.title": "Application maintenance",
"application_group_general_information":"General information", "application_group_general_information":"General information",
"application_credentials_title":"Credentials", "application_credentials_title":"Credentials",
"application_identifier_header": "Identifier", "application_identifier_header": "Identifier",
"application_description_header": "Description", "application_description_header": "Description",
"application_redirectURL_header": "Return url", "application_redirectURL_header": "Return url",
"application_status_header": "Status", "application_status_header": "Status",
"application_form_identifier_placeholder": "Identifier", "application_form_identifier_placeholder": "Identifier",
"application_form_description_placeholder": "Descripción", "application_form_description_placeholder": "Descripción",
"application_form_redirectURL_placeholder": "Return url", "application_form_redirectURL_placeholder": "Return url",
"application_form_client_id_placeholder": "ClienteId", "application_form_client_id_placeholder": "ClienteId",
"application_form_client_secret_placeholder": "ClientSecret", "application_form_client_secret_placeholder": "ClientSecret",
"application_form_access_token_validity_placeholder": "AccessTokenValidity", "application_form_access_token_validity_placeholder": "AccessTokenValidity",
"application_form_refresh_token_validity_placeholder": "RefreshTokenValidity", "application_form_refresh_token_validity_placeholder": "RefreshTokenValidity",
"application_generated_secret_title": "Change secret", "application_generated_secret_title": "Change secret",
"application_generated_secret_message": "Are you sure you want to generate a new secret?", "application_generated_secret_message": "Are you sure you want to generate a new secret?",
"application_new_secret_success": "Another secret was successfully generated", "application_new_secret_success": "Another secret was successfully generated",
"application.status.active": "Active", "application.status.active": "Active",
"application.status.inactive": "Inactive", "application.status.inactive": "Inactive",
"menu.settings.valpos": "Valores posibles", "menu.settings.valpos": "Valores posibles",
"valpos.title": "Mantenimiento de valores posibles", "valpos.title": "Mantenimiento de valores posibles",
"valpos_id_header": "Id", "valpos_id_header": "Id",
"valpos_identifier_header": "Identifier", "valpos_identifier_header": "Identifier",
"valpos_description_header": "Description", "valpos_description_header": "Description",
"valpos_group_values": "Possible values Assigned", "valpos_group_values": "Possible values Assigned",
"valpos_group_general_information": "General Information", "valpos_group_general_information": "General Information",
"valpos_form_id_placeholder": "Id", "valpos_form_id_placeholder": "Id",
"valpos_form_identifier_placeholder": "Identifier", "valpos_form_identifier_placeholder": "Identifier",
"valpos_form_description_placeholder": "Description", "valpos_form_description_placeholder": "Description",
"valpos.label.title": "Label", "valpos.label.title": "Label",
"valpos.value.title": "Value" "valpos.value.title": "Value"
} }
\ No newline at end of file
{ {
"breadcrumb.application": "Aplicación", "breadcrumb.application": "Aplicación",
"breadcrumb.application.detail": "Información de aplicación", "breadcrumb.application.detail": "Información de aplicación",
"breadcrumb.valpos": "Valor posible", "breadcrumb.valpos": "Valor posible",
"breadcrumb.valpos.detail": "Información de valor posible", "breadcrumb.valpos.detail": "Información de valor posible",
"breadcrumb.settings.userpolicy": "Políticas de usuario", "breadcrumb.settings.userpolicy": "Políticas de usuario",
"breadcrumb.settings.information": "Información general", "breadcrumb.settings.information": "Información general",
"breadcrumb.settings.password": "Políticas de contraseña", "breadcrumb.settings.password": "Políticas de contraseña",
"tabs.system.settings.information.title": "Información general", "tabs.system.settings.information.title": "Información general",
"tabs.system.settings.information.title.desc": "Datos de la organización.", "tabs.system.settings.information.title.desc": "Datos de la organización.",
"tabs.system.settings.password.title": "Políticas de contraseña", "tabs.system.settings.password.title": "Políticas de contraseña",
"tabs.system.settings.password.title.desc": "Reglas que debe cumplir al definir las contraseñas.", "tabs.system.settings.password.title.desc": "Reglas que debe cumplir al definir las contraseñas.",
"tabs.system.settings.userpolicy.title": "Políticas de usuario", "tabs.system.settings.userpolicy.title": "Políticas de usuario",
"tabs.system.settings.userpolicy.title.desc": "Reglas de seguridad para la aplicación.", "tabs.system.settings.userpolicy.title.desc": "Reglas de seguridad para la aplicación.",
"security.message.error.title": "Error de seguridad!", "security.message.error.title": "Error de seguridad!",
"security.message.error.parameter": "Ruta requiere el parámetro '{{parameter}}'", "security.message.error.parameter": "Ruta requiere el parámetro '{{parameter}}'",
"security.message.error.parameter.not.found": "Parámetro '{{parameter}}' no encontrado", "security.message.error.parameter.not.found": "Parámetro '{{parameter}}' no encontrado",
"settings.message.error.title": "Error de configuración!", "settings.message.error.title": "Error de configuración!",
"settings.general.header": "General", "settings.general.header": "General",
"settings.general.information.short": "Información", "settings.general.information.short": "Información",
"system_settings_information_title": "Información General", "system_settings_information_title": "Información General",
"system_settings_information_title_desc": "Ingrese información relacionada a la compañía, que podrá ser usada en las notificaciones.", "system_settings_information_title_desc": "Ingrese información relacionada a la compañía, que podrá ser usada en las notificaciones.",
"system_settings_information_form_name_placeholder": "Nombre", "system_settings_information_form_name_placeholder": "Nombre",
"system_settings_information_form_name_suggest": "Nombre de la aplicación.", "system_settings_information_form_name_suggest": "Nombre de la aplicación.",
"system_settings_information_form_email_placeholder": "Correo electrónico", "system_settings_information_form_email_placeholder": "Correo electrónico",
"system_settings_information_form_email_suggest": "Correo electrónico de la empresa.", "system_settings_information_form_email_suggest": "Correo electrónico de la empresa.",
"system_settings_information_form_domain_placeholder": "Dominio de la aplicación", "system_settings_information_form_domain_placeholder": "Dominio de la aplicación",
"system_settings_information_form_domain_suggest": "Dominio de la aplicación", "system_settings_information_form_domain_suggest": "Dominio de la aplicación",
"system_settings_information_form_image_label": "Logo de la aplicación", "system_settings_information_form_image_label": "Logo de la aplicación",
"settings.security.header": "Seguridad", "settings.security.header": "Seguridad",
"settings.security.password.short": "Contraseña", "settings.security.password.short": "Contraseña",
"system_settings_password_title": "Configuración de Contraseña", "system_settings_password_title": "Configuración de Contraseña",
"system_settings_password_title_desc": "Personalice las políticas de seguridad para la contraseña.", "system_settings_password_title_desc": "Personalice las políticas de seguridad para la contraseña.",
"system_settings_password_form_includeUppercase_label": "Incluir mayúsculas", "system_settings_password_form_includeUppercase_label": "Incluir mayúsculas",
"system_settings_password_form_includeUppercase_suggest": "Requiere que la contraseña contenga al menos una letra mayúscula.", "system_settings_password_form_includeUppercase_suggest": "Requiere que la contraseña contenga al menos una letra mayúscula.",
"system_settings_password_form_includeNumber_label": "Incluir números", "system_settings_password_form_includeNumber_label": "Incluir números",
"system_settings_password_form_includeNumber_suggest": "Requiere que la contraseña contenga al menos un número.", "system_settings_password_form_includeNumber_suggest": "Requiere que la contraseña contenga al menos un número.",
"system_settings_password_form_notIncludeUserId_label": "No incluir el código del usuario", "system_settings_password_form_notIncludeUserId_label": "No incluir el código del usuario",
"system_settings_password_form_notIncludeUserId_suggest": "La contraseña no debe incluir el código de usuario.", "system_settings_password_form_notIncludeUserId_suggest": "La contraseña no debe incluir el código de usuario.",
"system_settings_password_form_notIncludeReverseUserId_label": "No incluir el código de usuario al revés", "system_settings_password_form_notIncludeReverseUserId_label": "No incluir el código de usuario al revés",
"system_settings_password_form_notIncludeReverseUserId_suggest": "Validar que la contraseña no incluya el código del usuario al revés.", "system_settings_password_form_notIncludeReverseUserId_suggest": "Validar que la contraseña no incluya el código del usuario al revés.",
"system_settings_password_form_passwordMinLength_label": "Longitud mínima", "system_settings_password_form_passwordMinLength_label": "Longitud mínima",
"system_settings_password_form_passwordMinLength_suggest": "Longitud mínima para la contraseña.", "system_settings_password_form_passwordMinLength_suggest": "Longitud mínima para la contraseña.",
"settings.security.user.policy.short": "Políticas de usuario", "settings.security.user.policy.short": "Políticas de usuario",
"system_settings_userpolicy_title": "Políticas de usuario", "system_settings_userpolicy_title": "Políticas de usuario",
"system_settings_userpolicy_title_desc": "Personalice las siguientes políticas de seguridad para los usuarios que utilicen la plataforma de seguridad Byte.", "system_settings_userpolicy_title_desc": "Personalice las siguientes políticas de seguridad para los usuarios que utilicen la plataforma de seguridad Byte.",
"system_settings_userpolicy_form_maxFailLogin_placeholder": "Máximo de intentos fallidos", "system_settings_userpolicy_form_maxFailLogin_placeholder": "Máximo de intentos fallidos",
"system_settings_userpolicy_form_maxFailLogin_suggest": "Especifique el número de intentos fallidos de ingreso al sistema, antes de bloquear el usuario.", "system_settings_userpolicy_form_maxFailLogin_suggest": "Especifique el número de intentos fallidos de ingreso al sistema, antes de bloquear el usuario.",
"system_settings_userpolicy_form_historyValidation_placeholder": "Validar historial de contraseñas", "system_settings_userpolicy_form_historyValidation_placeholder": "Validar historial de contraseñas",
"system_settings_userpolicy_form_historyValidation_suggest": "Especifique el número de últimas contraseña que no puede repetirse.", "system_settings_userpolicy_form_historyValidation_suggest": "Especifique el número de últimas contraseña que no puede repetirse.",
"system_settings_userpolicy_form_userInactivity_placeholder": "Bloquear usuarios por inactividad", "system_settings_userpolicy_form_userInactivity_placeholder": "Bloquear usuarios por inactividad",
"system_settings_userpolicy_form_userInactivity_suggest": "Especifique el número de días que deben pasar para bloquear al usuario por inactividad.", "system_settings_userpolicy_form_userInactivity_suggest": "Especifique el número de días que deben pasar para bloquear al usuario por inactividad.",
"system_settings_userpolicy_form_passwordExpiration_placeholder": "Vencimiento de contraseñas", "system_settings_userpolicy_form_passwordExpiration_placeholder": "Vencimiento de contraseñas",
"system_settings_userpolicy_form_passwordExpiration_suggest": "Especifique el número de días para que las contraseñas asociadas a las cuentas de usuario expiren.", "system_settings_userpolicy_form_passwordExpiration_suggest": "Especifique el número de días para que las contraseñas asociadas a las cuentas de usuario expiren.",
"system_settings_userpolicy_form_automaticUnlock_placeholder": "Desbloqueo automático de usuarios", "system_settings_userpolicy_form_automaticUnlock_placeholder": "Desbloqueo automático de usuarios",
"system_settings_userpolicy_form_automaticUnlock_suggest": "Especifique el número de minutos que tienen que pasar para que una cuenta se desbloquee de manera automática.", "system_settings_userpolicy_form_automaticUnlock_suggest": "Especifique el número de minutos que tienen que pasar para que una cuenta se desbloquee de manera automática.",
"system_settings_userpolicy_form_manageAccountByEmail_label": "Administrar cuentas de usuario vía email", "system_settings_userpolicy_form_manageAccountByEmail_label": "Administrar cuentas de usuario vía email",
"system_settings_userpolicy_form_manageAccountByEmail_suggest": "Habilite la opción si desea utilizar el envío de correos electrónicos para la administración de cuentas de usuario", "system_settings_userpolicy_form_manageAccountByEmail_suggest": "Habilite la opción si desea utilizar el envío de correos electrónicos para la administración de cuentas de usuario",
"settings.notification.header": "Comunicación", "settings.notification.header": "Comunicación",
"settings.notification.mail.short": "Servidor email", "settings.notification.mail.short": "Servidor email",
"system_settings_mail_title": "Configuración de Servidor de Email", "system_settings_mail_title": "Configuración de Servidor de Email",
"system_settings_mail_title.desc": "Ingrese la información relacionada al servicio de email que usará la aplicación", "system_settings_mail_title.desc": "Ingrese la información relacionada al servicio de email que usará la aplicación",
"notification.mail.from.address": "Cuenta de salida (from)", "notification.mail.from.address": "Cuenta de salida (from)",
"notification.mail.from.address.suggest": "Dirección de correo que usará la aplicación para el envio de correos.", "notification.mail.from.address.suggest": "Dirección de correo que usará la aplicación para el envio de correos.",
"notification.mail.prefix": "Prefijo de asunto", "notification.mail.prefix": "Prefijo de asunto",
"notification.mail.prefix.suggest": "Prefijo de asunto.", "notification.mail.prefix.suggest": "Prefijo de asunto.",
"notification.mail.server": "Servidor SMTP", "notification.mail.server": "Servidor SMTP",
"notification.mail.server.suggest": "Nombre o dirección IP del servidor SMTP.", "notification.mail.server.suggest": "Nombre o dirección IP del servidor SMTP.",
"notification.mail.smtp.port": "Puerto SMTP", "notification.mail.smtp.port": "Puerto SMTP",
"notification.mail.smtp.port.suggest": "Puerto del servicio SMTP.", "notification.mail.smtp.port.suggest": "Puerto del servicio SMTP.",
"notification.mail.username": "Usuario", "notification.mail.username": "Usuario",
"notification.mail.username.suggest": "Usuario de la cuenta de correo.", "notification.mail.username.suggest": "Usuario de la cuenta de correo.",
"notification.mail.password": "Contraseña", "notification.mail.password": "Contraseña",
"notification.mail.password.suggest": "Contraseña de la cuenta de correo.", "notification.mail.password.suggest": "Contraseña de la cuenta de correo.",
"notification.mail.use.auth": "Usa autenticación", "notification.mail.use.auth": "Usa autenticación",
"notification.mail.use.tls": "Usa TLS", "notification.mail.use.tls": "Usa TLS",
"notification.mail.test.title": "Validación de configuración de correo", "notification.mail.test.title": "Validación de configuración de correo",
"notification.mail.test.suggest": "Esta sección permite validar la configuración de correo antes de ser grabada.", "notification.mail.test.suggest": "Esta sección permite validar la configuración de correo antes de ser grabada.",
"notification.mail.test.recipients": "Destinatarios de prueba", "notification.mail.test.recipients": "Destinatarios de prueba",
"notification.mail.test.recipients.suggest": "Ingrese uno o más email de destino y presione el botón \"Enviar email\".", "notification.mail.test.recipients.suggest": "Ingrese uno o más email de destino y presione el botón \"Enviar email\".",
"notification.mail.test.view.logs": "Ver logs", "notification.mail.test.view.logs": "Ver logs",
"application_btn_new_secret": "Generar nuevas credenciales", "application_btn_new_secret": "Generar nuevas credenciales",
"application_btn_show_credentials": "Ver credenciales", "application_btn_show_credentials": "Ver credenciales",
"application.title": "Mantenimiento de aplicaciones", "application.title": "Mantenimiento de aplicaciones",
"application_group_general_information":"Información general", "application_group_general_information":"Información general",
"application_credentials_title":"Credenciales", "application_credentials_title":"Credenciales",
"application_identifier_header": "Identificador", "application_identifier_header": "Identificador",
"application_description_header": "Descripción", "application_description_header": "Descripción",
"application_redirectURL_header": "Url de retorno", "application_redirectURL_header": "Url de retorno",
"application_status_header": "Estado", "application_status_header": "Estado",
"application_form_identifier_placeholder": "Identificador", "application_form_identifier_placeholder": "Identificador",
"application_form_description_placeholder": "Descripción", "application_form_description_placeholder": "Descripción",
"application_form_redirectURL_placeholder": "Url de retorno", "application_form_redirectURL_placeholder": "Url de retorno",
"application_form_client_id_placeholder": "ClienteId", "application_form_client_id_placeholder": "ClienteId",
"application_form_client_secret_placeholder": "ClientSecret", "application_form_client_secret_placeholder": "ClientSecret",
"application_form_access_token_validity_placeholder": "AccessTokenValidity", "application_form_access_token_validity_placeholder": "AccessTokenValidity",
"application_form_refresh_token_validity_placeholder": "RefreshTokenValidity", "application_form_refresh_token_validity_placeholder": "RefreshTokenValidity",
"application_generated_secret_title": "Cambiar secret", "application_generated_secret_title": "Cambiar secret",
"application_generated_secret_message": "¿Está seguro que quiere generar un nuevo secret?", "application_generated_secret_message": "¿Está seguro que quiere generar un nuevo secret?",
"application_new_secret_success": "Se generó correctamente otro secret", "application_new_secret_success": "Se generó correctamente otro secret",
"application.status.active": "Activo", "application.status.active": "Activo",
"application.status.inactive": "Inactivo", "application.status.inactive": "Inactivo",
"menu.settings.valpos": "Valores posibles", "menu.settings.valpos": "Valores posibles",
"valpos.title": "Mantenimiento de valores posibles", "valpos.title": "Mantenimiento de valores posibles",
"valpos_id_header": "Código", "valpos_id_header": "Código",
"valpos_identifier_header": "Identificador", "valpos_identifier_header": "Identificador",
"valpos_description_header": "Descripción", "valpos_description_header": "Descripción",
"valpos_group_values": "Valores posibles Asignados", "valpos_group_values": "Valores posibles Asignados",
"valpos_group_general_information": "Información general", "valpos_group_general_information": "Información general",
"valpos_form_id_placeholder": "Código", "valpos_form_id_placeholder": "Código",
"valpos_form_identifier_placeholder": "Identificador", "valpos_form_identifier_placeholder": "Identificador",
"valpos_form_description_placeholder": "Descripción", "valpos_form_description_placeholder": "Descripción",
"valpos.label.title": "Clave", "valpos.label.title": "Clave",
"valpos.value.title": "Valor" "valpos.value.title": "Valor"
} }
\ No newline at end of file
@import "~bootstrap/scss/bootstrap"; @import "~bootstrap/scss/bootstrap";
@import "./css/animate"; @import "./css/animate";
@import "./css/inspinia"; @import "./css/inspinia";
@import '~@swimlane/ngx-datatable/index.css'; @import '~@swimlane/ngx-datatable/index.css';
@import "~@ng-select/ng-select/themes/default.theme.css"; @import "~@ng-select/ng-select/themes/default.theme.css";
@import './css/ngx-datatable/bootstrap'; @import './css/ngx-datatable/bootstrap';
@import './css/ngx-datatable/material'; @import './css/ngx-datatable/material';
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
/* custom */ /* custom */
.table { .table {
font-size: 12px; font-size: 12px;
} }
.table > tbody > tr > td.data { .table > tbody > tr > td.data {
padding-top: 6px; padding-top: 6px;
padding-bottom: 6px; padding-bottom: 6px;
padding-left: 10px; padding-left: 10px;
padding-right: 10px; padding-right: 10px;
font-size: 11px; font-size: 11px;
} }
.table-bordered { .table-bordered {
border: 1px solid #EBEBEB !important; border: 1px solid #EBEBEB !important;
} }
.table-toolbar { .table-toolbar {
display: inline-flex; display: inline-flex;
margin-bottom: 5px; margin-bottom: 5px;
} }
.table > tbody > tr > td.cell_selector { .table > tbody > tr > td.cell_selector {
padding-left: 5px; padding-left: 5px;
} }
.table > tbody > tr > td.maxwidth { .table > tbody > tr > td.maxwidth {
width: 100%; width: 100%;
word-wrap: break-word; word-wrap: break-word;
} }
.page-selector { .page-selector {
width: 100px;float: left; width: 100px;float: left;
} }
.selectable { .selectable {
cursor: pointer; cursor: pointer;
} }
.not-selectable { .not-selectable {
-webkit-user-select: none; -webkit-user-select: none;
-moz-user-select: none; -moz-user-select: none;
-ms-user-select: none; -ms-user-select: none;
user-select: none; user-select: none;
} }
.row-options { .row-options {
padding-bottom: 2px; padding-bottom: 2px;
padding-top: 2px; padding-top: 2px;
min-width: 105px; min-width: 105px;
text-align: center; text-align: center;
vertical-align: middle; vertical-align: middle;
} }
.row-toolbar { .row-toolbar {
padding: 0px; padding: 0px;
display: inline; display: inline;
} }
.row-toolbar .btn { .row-toolbar .btn {
margin-bottom: 0px; margin-bottom: 0px;
} }
.sidebar-container .sidebar-option > .link-option > .pull-left { .sidebar-container .sidebar-option > .link-option > .pull-left {
margin-right: 10px; margin-right: 10px;
} }
.sidebar-container .sidebar-option > .link-option { .sidebar-container .sidebar-option > .link-option {
text-decoration: none; text-decoration: none;
/*color: inherit;*/ /*color: inherit;*/
} }
.sidebar-container .sidebar-option { .sidebar-container .sidebar-option {
padding: 0px 0px; padding: 0px 0px;
} }
.link-option { .link-option {
color: #337ab7; color: #337ab7;
} }
.control-label { .control-label {
display: inline-block; display: inline-block;
max-width: 100%; max-width: 100%;
margin-bottom: 2px; margin-bottom: 2px;
font-weight: 500; font-weight: 500;
} }
.suggets-label { .suggets-label {
display: block; display: block;
max-width: 100%; max-width: 100%;
margin-bottom: 2px; margin-bottom: 2px;
font-size: 11px; font-size: 11px;
font-weight: 200; font-weight: 200;
} }
.field-legend { .field-legend {
font-weight: 700; font-weight: 700;
} }
.mail-tools { .mail-tools {
margin-bottom: 5px; margin-bottom: 5px;
} }
label > .control-label { label > .control-label {
font-weight: 600; font-weight: 600;
width: 100%; width: 100%;
display: inline-block; display: inline-block;
} }
.form-group > .checkbox { .form-group > .checkbox {
margin-bottom: 0px !important; margin-bottom: 0px !important;
} }
legend { legend {
margin-bottom: 10px; margin-bottom: 10px;
} }
form .CustomValidationError { form .CustomValidationError {
position: relative; position: relative;
font-size: 0.8em; font-size: 0.8em;
color: rgb(204, 78, 78); color: rgb(204, 78, 78);
text-align: left; text-align: left;
display: block; display: block;
} }
form .CustomValidationError.checkboxradioerror { form .CustomValidationError.checkboxradioerror {
display: block; display: block;
} }
form .requiredFieldLabel:after { form .requiredFieldLabel:after {
content: " *"; content: " *";
color: red; color: red;
} }
#login_form .form-group { #login_form .form-group {
text-align: left; text-align: left;
} }
.form-group { .form-group {
margin-bottom: 15px; margin-bottom: 15px;
} }
.inputFail, form input.ng-dirty:not(.ValidationLiveSuccess) { .inputFail, form input.ng-dirty:not(.ValidationLiveSuccess) {
border-color: #a94442; border-color: #a94442;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075); -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
box-shadow: inset 0 1px 1px rgba(0,0,0,.075); box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
} }
.inputSuccess, form input.ng-dirty.ValidationLiveSuccess { .inputSuccess, form input.ng-dirty.ValidationLiveSuccess {
border-color: #1C84C6; border-color: #1C84C6;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075); -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
box-shadow: inset 0 1px 1px rgba(0,0,0,.075); box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
} }
::-moz-placeholder { ::-moz-placeholder {
color: #A7A4A4; color: #A7A4A4;
opacity: 1; opacity: 1;
font-weight: 100; font-weight: 100;
} }
:-moz-placeholder { /* Firefox 18- */ :-moz-placeholder { /* Firefox 18- */
color: #A7A4A4; color: #A7A4A4;
opacity: 1; opacity: 1;
font-weight: 100; font-weight: 100;
} }
:-ms-input-placeholder { :-ms-input-placeholder {
color: #A7A4A4; color: #A7A4A4;
font-weight: 100; font-weight: 100;
} }
::-webkit-input-placeholder { ::-webkit-input-placeholder {
color: #A7A4A4; color: #A7A4A4;
font-weight: 100; font-weight: 100;
} }
.letraS { .letraS {
background-color:#193F67; background-color:#193F67;
color:white; color:white;
border-radius: 2px 0 0 2px; border-radius: 2px 0 0 2px;
padding-right: 1px; padding-right: 1px;
padding-left: 2px; padding-left: 2px;
} }
.letraG { .letraG {
background-color:#193F67; background-color:#193F67;
color:white; color:white;
padding-left: 1px; padding-left: 1px;
padding-right: 2px; padding-right: 2px;
} }
.letraA { .letraA {
background-color:#AA1835; background-color:#AA1835;
color:white; color:white;
border-radius: 0 2px 2px 0; border-radius: 0 2px 2px 0;
padding-right: 2px; padding-right: 2px;
padding-left: 1px; padding-left: 1px;
} }
[date-picker-wrapper] { [date-picker-wrapper] {
position: absolute; position: absolute;
border: 2px; border: 2px;
min-width: 220px; min-width: 220px;
z-index: 10; z-index: 10;
display: block; display: block;
font-size: 12px; font-size: 12px;
} }
[date-picker-wrapper] > div { [date-picker-wrapper] > div {
-webkit-box-shadow: 0 0 3px rgba(86, 96, 117, 0.7); -webkit-box-shadow: 0 0 3px rgba(86, 96, 117, 0.7);
-moz-box-shadow: 0 0 3px rgba(86, 96, 117, 0.7); -moz-box-shadow: 0 0 3px rgba(86, 96, 117, 0.7);
box-shadow: 0 0 3px rgba(86, 96, 117, 0.7); box-shadow: 0 0 3px rgba(86, 96, 117, 0.7);
border: 2px; border: 2px;
} }
.thumbnail { .thumbnail {
max-width: 200px; max-width: 200px;
max-height: 150px; max-height: 150px;
line-height: 20px; line-height: 20px;
margin-bottom: 5px; margin-bottom: 5px;
} }
#logo_cliente { #logo_cliente {
margin-bottom: 5px; margin-bottom: 5px;
display: inline-flex !important; display: inline-flex !important;
} }
#logo_cliente>img { #logo_cliente>img {
max-height: 51px; max-height: 51px;
padding: 8px; padding: 8px;
width: auto; width: auto;
} }
.logo_byte { .logo_byte {
margin-bottom: 5px; margin-bottom: 5px;
display: inline-flex; display: inline-flex;
} }
.logo_byte>a>img { .logo_byte>a>img {
max-height: 80px; max-height: 80px;
padding: 10px; padding: 10px;
width: auto; width: auto;
} }
.logo_byte_header { .logo_byte_header {
text-align: center; text-align: center;
} }
.progress { .progress {
max-width: 200px; max-width: 200px;
} }
.note-editor { .note-editor {
border: 1px solid #e5e6e7; border: 1px solid #e5e6e7;
border-radius: 4px; border-radius: 4px;
} }
.hr-line-dashed-home { .hr-line-dashed-home {
border-top: 1px dashed #e7eaec; border-top: 1px dashed #e7eaec;
color: #ffffff; color: #ffffff;
background-color: #ffffff; background-color: #ffffff;
height: 1px; height: 1px;
margin: 10px 0px 0px 0px; margin: 10px 0px 0px 0px;
} }
ul.nav.navbar-top-links.navbar-right.nav-main { ul.nav.navbar-top-links.navbar-right.nav-main {
padding-top: 5px; padding-top: 5px;
} }
.font-topnavbar { .font-topnavbar {
font-size: 12px; font-size: 12px;
} }
.input-group .form-control { .input-group .form-control {
margin-bottom: 0px; margin-bottom: 0px;
} }
/* configuración de filtros */ /* configuración de filtros */
.ibox-filter.text-box { .ibox-filter.text-box {
padding-bottom: 0px; padding-bottom: 0px;
padding-top: 15px; padding-top: 15px;
} }
.ibox-filter { .ibox-filter {
background-color: #ffffff; background-color: #ffffff;
color: inherit; color: inherit;
/*padding: 5px 20px 0px 20px;*/ /*padding: 5px 20px 0px 20px;*/
border-color: #e7eaec; border-color: #e7eaec;
border-image: none; border-image: none;
/*border-style: solid solid none; /*border-style: solid solid none;
border-width: 1px 0px;*/ border-width: 1px 0px;*/
margin-bottom: 5px; margin-bottom: 5px;
} }
.ibox-filter { .ibox-filter {
clear: both; clear: both;
} }
.form-control { .form-control {
height: 31px; height: 31px;
} }
tags-input { tags-input {
display: block; display: block;
width: 100%; width: 100%;
} }
tags-input *, tags-input *:before, tags-input *:after { tags-input *, tags-input *:before, tags-input *:after {
-moz-box-sizing: border-box; -moz-box-sizing: border-box;
-webkit-box-sizing: border-box; -webkit-box-sizing: border-box;
box-sizing: border-box; box-sizing: border-box;
} }
tags-input .host { tags-input .host {
position: relative; position: relative;
/* margin-top: 5px; */ /* margin-top: 5px; */
/* margin-bottom: 5px; */ /* margin-bottom: 5px; */
height: 100%; height: 100%;
width: 100% !important; width: 100% !important;
display: table; display: table;
} }
tags-input .host:active { tags-input .host:active {
outline: none; outline: none;
} }
tags-input .tags { tags-input .tags {
padding: 1px; padding: 1px;
overflow: hidden; overflow: hidden;
word-wrap: break-word; word-wrap: break-word;
cursor: text; cursor: text;
background-color: #fff; background-color: #fff;
border: 1px solid #e7eaec; border: 1px solid #e7eaec;
height: 100%; height: 100%;
border-radius: 3px; border-radius: 3px;
border-top-right-radius: 0; border-top-right-radius: 0;
border-bottom-right-radius: 0; border-bottom-right-radius: 0;
font-size: 12px; font-size: 12px;
} }
tags-input .tags.focused { tags-input .tags.focused {
outline: none; outline: none;
-webkit-box-shadow: 0 0 3px 1px rgba(5, 139, 242, 0.6); -webkit-box-shadow: 0 0 3px 1px rgba(5, 139, 242, 0.6);
-moz-box-shadow: 0 0 3px 1px rgba(5, 139, 242, 0.6); -moz-box-shadow: 0 0 3px 1px rgba(5, 139, 242, 0.6);
box-shadow: 0 0 3px 1px rgba(5, 139, 242, 0.6); box-shadow: 0 0 3px 1px rgba(5, 139, 242, 0.6);
margin-right: 2px; margin-right: 2px;
} }
tags-input .tags .tag-list { tags-input .tags .tag-list {
margin: 0; margin: 0;
padding: 0; padding: 0;
list-style-type: none; list-style-type: none;
} }
tags-input .tags .tag-item { tags-input .tags .tag-item {
margin-right: 2px; margin-right: 2px;
padding: 0 5px; padding: 0 5px;
display: inline-flex; display: inline-flex;
float: left; float: left;
height: 27px; height: 27px;
line-height: 25px; line-height: 25px;
border: 1px solid #acacac; border: 1px solid #acacac;
border-radius: 3px; border-radius: 3px;
} }
tags-input .tags .tag-item.selected { tags-input .tags .tag-item.selected {
background: -webkit-linear-gradient(top, #febbbb 0%, #fe9090 45%, #ff5c5c 100%); background: -webkit-linear-gradient(top, #febbbb 0%, #fe9090 45%, #ff5c5c 100%);
background: linear-gradient(to bottom, #febbbb 0%, #fe9090 45%, #ff5c5c 100%); background: linear-gradient(to bottom, #febbbb 0%, #fe9090 45%, #ff5c5c 100%);
} }
tags-input .tags .tag-item .remove-button { tags-input .tags .tag-item .remove-button {
margin: 0 0 0 5px; margin: 0 0 0 5px;
padding: 0; padding: 0;
border: none; border: none;
background: none; background: none;
cursor: pointer; cursor: pointer;
vertical-align: middle; vertical-align: middle;
/* font: 14px Arial, sans-serif; */ /* font: 14px Arial, sans-serif; */
/* font-size: 14px; */ /* font-size: 14px; */
color: rgba(177, 5, 5, 0.48); color: rgba(177, 5, 5, 0.48);
display: inline; display: inline;
} }
tags-input .tags .tag-item .remove-button:active { tags-input .tags .tag-item .remove-button:active {
color: #ff0000; color: #ff0000;
} }
tags-input .tags .input { tags-input .tags .input {
border: 0; border: 0;
outline: none; outline: none;
margin: 2px; margin: 2px;
padding: 0; padding: 0;
padding-left: 5px; padding-left: 5px;
float: left; float: left;
height: 23px; height: 23px;
} }
tags-input .tags .input.invalid-tag { tags-input .tags .input.invalid-tag {
color: #ff0000; color: #ff0000;
} }
tags-input .tags .input::-ms-clear { tags-input .tags .input::-ms-clear {
display: none; display: none;
} }
tags-input.ng-invalid .tags { tags-input.ng-invalid .tags {
-webkit-box-shadow: 0 0 3px 1px rgba(255, 0, 0, 0.6); -webkit-box-shadow: 0 0 3px 1px rgba(255, 0, 0, 0.6);
-moz-box-shadow: 0 0 3px 1px rgba(255, 0, 0, 0.6); -moz-box-shadow: 0 0 3px 1px rgba(255, 0, 0, 0.6);
box-shadow: 0 0 3px 1px rgba(255, 0, 0, 0.6); box-shadow: 0 0 3px 1px rgba(255, 0, 0, 0.6);
} }
tags-input[disabled] .host:focus { tags-input[disabled] .host:focus {
outline: none; outline: none;
} }
tags-input[disabled] .tags { tags-input[disabled] .tags {
background-color: #eee; background-color: #eee;
cursor: default; cursor: default;
} }
tags-input[disabled] .tags .tag-item { tags-input[disabled] .tags .tag-item {
opacity: 0.65; opacity: 0.65;
background: -webkit-linear-gradient(top, #f0f9ff 0%, rgba(203, 235, 255, 0.75) 47%, rgba(161, 219, 255, 0.62) 100%); background: -webkit-linear-gradient(top, #f0f9ff 0%, rgba(203, 235, 255, 0.75) 47%, rgba(161, 219, 255, 0.62) 100%);
background: linear-gradient(to bottom, #f0f9ff 0%, rgba(203, 235, 255, 0.75) 47%, rgba(161, 219, 255, 0.62) 100%); background: linear-gradient(to bottom, #f0f9ff 0%, rgba(203, 235, 255, 0.75) 47%, rgba(161, 219, 255, 0.62) 100%);
} }
tags-input[disabled] .tags .tag-item .remove-button { tags-input[disabled] .tags .tag-item .remove-button {
cursor: default; cursor: default;
} }
tags-input[disabled] .tags .tag-item .remove-button:active { tags-input[disabled] .tags .tag-item .remove-button:active {
color: #585858; color: #585858;
} }
tags-input[disabled] .tags .input { tags-input[disabled] .tags .input {
background-color: #eee; background-color: #eee;
cursor: default; cursor: default;
} }
tags-input .autocomplete { tags-input .autocomplete {
/* margin-top: 5px; */ /* margin-top: 5px; */
position: absolute; position: absolute;
padding: 5px 0; padding: 5px 0;
z-index: 999; z-index: 999;
width: 100%; width: 100%;
background-color: #fff; background-color: #fff;
border: 1px solid rgba(0, 0, 0, 0.2); border: 1px solid rgba(0, 0, 0, 0.2);
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
} }
tags-input .autocomplete .suggestion-list { tags-input .autocomplete .suggestion-list {
margin: 0; margin: 0;
padding: 0; padding: 0;
list-style-type: none; list-style-type: none;
max-height: 280px; max-height: 280px;
overflow-y: auto; overflow-y: auto;
position: relative; position: relative;
} }
tags-input .autocomplete .suggestion-item { tags-input .autocomplete .suggestion-item {
padding: 5px 10px; padding: 5px 10px;
cursor: pointer; cursor: pointer;
white-space: nowrap; white-space: nowrap;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
font: 16px "Helvetica Neue", Helvetica, Arial, sans-serif; font: 16px "Helvetica Neue", Helvetica, Arial, sans-serif;
color: #000; color: #000;
background-color: #fff; background-color: #fff;
} }
tags-input .autocomplete .suggestion-item.selected { tags-input .autocomplete .suggestion-item.selected {
color: #fff; color: #fff;
background-color: #0097cf; background-color: #0097cf;
} }
tags-input .autocomplete .suggestion-item.selected em { tags-input .autocomplete .suggestion-item.selected em {
color: #fff; color: #fff;
background-color: #0097cf; background-color: #0097cf;
} }
tags-input .autocomplete .suggestion-item em { tags-input .autocomplete .suggestion-item em {
font: normal bold 16px "Helvetica Neue", Helvetica, Arial, sans-serif; font: normal bold 16px "Helvetica Neue", Helvetica, Arial, sans-serif;
color: #000; color: #000;
background-color: #fff; background-color: #fff;
} }
.btn-group > button > span { .btn-group > button > span {
font-size: 11px; font-size: 11px;
} }
.dropdown-title { .dropdown-title {
background: #f9f9f9; background: #f9f9f9;
padding: 5px 5px 0px 5px; padding: 5px 5px 0px 5px;
border-bottom: 1px solid #e7eaec; border-bottom: 1px solid #e7eaec;
} }
.dropdown-menu .divider_0_padding { .dropdown-menu .divider_0_padding {
height: 1px; height: 1px;
overflow: hidden; overflow: hidden;
background-color: #e5e5e5; background-color: #e5e5e5;
} }
.dropdown-menu-item > a.ng-binding { .dropdown-menu-item > a.ng-binding {
font-size: 11px; font-size: 11px;
} }
.wizard-box-header { .wizard-box-header {
background-color: #ffffff; background-color: #ffffff;
border-bottom: 1px solid #e7eaec; border-bottom: 1px solid #e7eaec;
padding: 0px 20px 20px 20px; padding: 0px 20px 20px 20px;
} }
.wizard-box-content-tabs { .wizard-box-content-tabs {
padding-top: 20px; padding-top: 20px;
} }
.lockscreen-box { .lockscreen-box {
z-index: 100; z-index: 100;
margin: 0 auto; margin: 0 auto;
padding: 0px 20px 40px 20px; padding: 0px 20px 40px 20px;
} }
.header_text { .header_text {
font-size: 18px; font-size: 18px;
padding-left: 20px; padding-left: 20px;
vertical-align: bottom; vertical-align: bottom;
font-weight: 600; font-weight: 600;
} }
.glyphicon.glyphicon-calendar { .glyphicon.glyphicon-calendar {
cursor: pointer; cursor: pointer;
} }
.placeholder-label { .placeholder-label {
opacity: 0.5; opacity: 0.5;
font-weight: 400; font-weight: 400;
} }
.checkbox input[type=checkbox], .checkbox-inline input[type=checkbox], .radio input[type=radio], .radio-inline input[type=radio] { .checkbox input[type=checkbox], .checkbox-inline input[type=checkbox], .radio input[type=radio], .radio-inline input[type=radio] {
position: relative !important; position: relative !important;
margin-left: -16px !important; margin-left: -16px !important;
} }
.angucomplete-dropdown { .angucomplete-dropdown {
overflow-y: auto; overflow-y: auto;
margin-top: 1px; margin-top: 1px;
max-height: 210px; /* your preference*/ max-height: 210px; /* your preference*/
} }
.input-group > div > .angucomplete-holder > .angucomplete-dropdown { .input-group > div > .angucomplete-holder > .angucomplete-dropdown {
overflow-y: auto; overflow-y: auto;
margin-top: 31px; margin-top: 31px;
max-height: 210px; max-height: 210px;
} }
.nav-tabs > li > a { .nav-tabs > li > a {
font-weight: 100; font-weight: 100;
} }
// Pagination // Pagination
.pagination { .pagination {
display: inline-flex; display: inline-flex;
padding-left: 0; padding-left: 0;
margin: 10px 0; margin: 10px 0;
border-radius: 4px; border-radius: 4px;
} }
.pagination .footable-page.active a { .pagination .footable-page.active a {
background-color: #1ab394; background-color: #1ab394;
border-color: #1ab394; border-color: #1ab394;
color: white; color: white;
} }
.paginationByte { .paginationByte {
display: inline-flex; display: inline-flex;
padding-left: 0; padding-left: 0;
margin: 20px 0 !important; margin: 20px 0 !important;
border-radius: 4px; border-radius: 4px;
} }
.page-item.disabled { .page-item.disabled {
cursor: not-allowed; cursor: not-allowed;
} }
.page-item.active .page-link { .page-item.active .page-link {
background-color: #f4f4f4; background-color: #f4f4f4;
border-color: #DDDDDD; border-color: #DDDDDD;
color: #212529; color: #212529;
} }
.page-link { .page-link {
position: relative; position: relative;
display: block; display: block;
padding: 0.3rem 0.45rem; padding: 0.3rem 0.45rem;
margin-left: -1px; margin-left: -1px;
line-height: 1.25; line-height: 1.25;
background-color: #fff; background-color: #fff;
border: 1px solid #dee2e6; border: 1px solid #dee2e6;
} }
.page-link:focus { .page-link:focus {
box-shadow: none; box-shadow: none;
} }
.page-link:hover { .page-link:hover {
color: #676a6c; color: #676a6c;
} }
// File-list // File-list
.file-list li { .file-list li {
padding: 5px 10px; padding: 5px 10px;
font-size: 11px; font-size: 11px;
border-radius: 2px; border-radius: 2px;
border: 1px solid #e7eaec; border: 1px solid #e7eaec;
margin-bottom: 5px; margin-bottom: 5px;
} }
.file-list li a { .file-list li a {
color: inherit; color: inherit;
} }
.file-list li a:hover { .file-list li a:hover {
color: #1ab394; color: #1ab394;
} }
// xxxxxxxxxxxxxxxxxxxxxx // xxxxxxxxxxxxxxxxxxxxxx
.chosen-container.chosen-container-single.chosen-container-active { .chosen-container.chosen-container-single.chosen-container-active {
cursor: pointer; cursor: pointer;
width: 100% !important; width: 100% !important;
} }
.chosen-container { .chosen-container {
width: 100% !important; width: 100% !important;
} }
.chosen-container .chosen-results { .chosen-container .chosen-results {
margin: 2px 0 0 !important; margin: 2px 0 0 !important;
padding: 5px 0 !important; padding: 5px 0 !important;
font-size: 12px !important; font-size: 12px !important;
font-family: "open sans" !important; font-family: "open sans" !important;
list-style: none !important; list-style: none !important;
background-color: #fff !important; background-color: #fff !important;
margin-bottom: 5px !important; margin-bottom: 5px !important;
max-height: 80px !important; max-height: 80px !important;
} }
.chosen-container-single .chosen-single { .chosen-container-single .chosen-single {
background: #ffffff !important; background: #ffffff !important;
box-shadow: none !important; box-shadow: none !important;
box-sizing: border-box !important; box-sizing: border-box !important;
background-color: #FFFFFF !important; background-color: #FFFFFF !important;
border-radius: 4px !important; border-radius: 4px !important;
cursor: pointer !important; cursor: pointer !important;
height: 31px !important; height: 31px !important;
margin: 0 !important; margin: 0 !important;
overflow: hidden !important; overflow: hidden !important;
padding: 4px 12px !important; padding: 4px 12px !important;
position: relative !important; position: relative !important;
width: 100% !important; width: 100% !important;
} }
.tamanio-logo { .tamanio-logo {
width: 350px; width: 350px;
margin: 30px 40px 50px 0; margin: 30px 40px 50px 0;
} }
.label-tabulacion { .label-tabulacion {
width: 150px; width: 150px;
font-weight: 600 !important; font-weight: 600 !important;
} }
.text-view { .text-view {
font-size: 12px; font-size: 12px;
} }
ol { ol {
list-style: none; list-style: none;
} }
.note-editor ol { .note-editor ol {
list-style-type: decimal; list-style-type: decimal;
} }
.alinear-programa { .alinear-programa {
width: 255px; width: 255px;
text-align: left; text-align: left;
margin-left: 5px; margin-left: 5px;
} }
.alinear-menu { .alinear-menu {
width: 215px; width: 215px;
text-align: left; text-align: left;
margin-left: 5px; margin-left: 5px;
} }
.alinear-accion { .alinear-accion {
width: 200px; width: 200px;
text-align: left; text-align: left;
} }
.alinear-menu { .alinear-menu {
width: 215px; width: 215px;
text-align: left; text-align: left;
margin-left: 5px; margin-left: 5px;
} }
.chosen-choices { .chosen-choices {
height: 34px; height: 34px;
} }
.chosen-container.chosen-container-multi { .chosen-container.chosen-container-multi {
width: 100% !important; width: 100% !important;
} }
.chosen-container.chosen-container-multi.chosen-with-drop.chosen-container-active { .chosen-container.chosen-container-multi.chosen-with-drop.chosen-container-active {
width: 100% !important; width: 100% !important;
} }
tags-input .tags.focused { tags-input .tags.focused {
border-color: #1ab394 !important; border-color: #1ab394 !important;
outline: 0 !important; outline: 0 !important;
-webkit-box-shadow: none; -webkit-box-shadow: none;
-moz-box-shadow: none; -moz-box-shadow: none;
box-shadow: none; box-shadow: none;
margin-right: 0px; margin-right: 0px;
} }
tags-input.ng-invalid .tags { tags-input.ng-invalid .tags {
border-color: rgba(255, 0, 0, 0.6); border-color: rgba(255, 0, 0, 0.6);
outline: 0; outline: 0;
-webkit-box-shadow: none; -webkit-box-shadow: none;
-moz-box-shadow: none; -moz-box-shadow: none;
box-shadow: none; box-shadow: none;
} }
tags-input .tags { tags-input .tags {
border-radius: 4px; border-radius: 4px;
} }
.dual-list .list-group { .dual-list .list-group {
margin-top: 8px; margin-top: 8px;
} }
.list-left li, .list-right li { .list-left li, .list-right li {
cursor: pointer; cursor: pointer;
} }
.list-arrows { .list-arrows {
padding-top: 100px; padding-top: 100px;
} }
.list-arrows button { .list-arrows button {
margin-bottom: 20px; margin-bottom: 20px;
} }
.panel-no-padding { .panel-no-padding {
padding: 0px !important; padding: 0px !important;
} }
.mail-box-header { .mail-box-header {
background-color: #ffffff; background-color: #ffffff;
border: 1px solid #e7eaec; border: 1px solid #e7eaec;
border-bottom: 0; border-bottom: 0;
padding: 15px 20px 1px 20px; padding: 15px 20px 1px 20px;
} }
.mail-box-content-tabs { .mail-box-content-tabs {
background-color: #ffffff; background-color: #ffffff;
/* border: 1px solid #e7eaec; */ /* border: 1px solid #e7eaec; */
/* border-bottom: 0; */ /* border-bottom: 0; */
padding: 15px 20px 15px 20px; padding: 15px 20px 15px 20px;
} }
.mail-box-header-tabs { .mail-box-header-tabs {
background-color: #ffffff; background-color: #ffffff;
border: 1px solid #e7eaec; border: 1px solid #e7eaec;
padding: 0px 20px 1px 20px; padding: 0px 20px 1px 20px;
border-left: none !important; border-left: none !important;
border-top: none !important; border-top: none !important;
border-right: none !important; border-right: none !important;
} }
.ibox-title-widget { .ibox-title-widget {
background-color: #ffffff; background-color: #ffffff;
border-color: #e7eaec; border-color: #e7eaec;
border-image: none; border-image: none;
border-style: solid solid none; border-style: solid solid none;
border-width: 4px 0px 0; border-width: 4px 0px 0;
color: inherit; color: inherit;
margin-bottom: 0; margin-bottom: 0;
padding: 14px 15px 7px; padding: 14px 15px 7px;
min-height: 48px; min-height: 48px;
} }
.ibox-content-widget { .ibox-content-widget {
background-color: #ffffff; background-color: #ffffff;
color: inherit; color: inherit;
padding: 15px 20px 20px 20px; padding: 15px 20px 20px 20px;
border-color: #e7eaec; border-color: #e7eaec;
border-image: none; border-image: none;
border-style: solid solid none; border-style: solid solid none;
border-width: 1px 0px; border-width: 1px 0px;
} }
.ibox-footer-widget { .ibox-footer-widget {
color: inherit; color: inherit;
border-top: 1px solid #e7eaec; border-top: 1px solid #e7eaec;
font-size: 90%; font-size: 90%;
background: #ffffff; background: #ffffff;
padding: 10px 15px; padding: 10px 15px;
} }
.content-widget { .content-widget {
min-height: 160px !important; min-height: 160px !important;
} }
.navfloat { .navfloat {
opacity: 0; opacity: 0;
padding: 5px; padding: 5px;
background: #f3f3f4; background: #f3f3f4;
z-index: 1500; z-index: 1500;
display: none; display: none;
} }
.navfloat ul { .navfloat ul {
margin: 0; margin: 0;
padding: 0; padding: 0;
} }
.navfloat li { .navfloat li {
float: right; float: right;
padding: 3px 8px 0px 8px; padding: 3px 8px 0px 8px;
margin: 0 30px 0 0; margin: 0 30px 0 0;
color: #F00; color: #F00;
list-style-type: none; list-style-type: none;
} }
.input-group-btn:last-child>.btn, .input-group-btn:last-child>.btn-group { .input-group-btn:last-child>.btn, .input-group-btn:last-child>.btn-group {
z-index: 0; z-index: 0;
} }
/* chosen */ /* chosen */
select.form-control + .chosen-container.chosen-container-single .chosen-single { select.form-control + .chosen-container.chosen-container-single .chosen-single {
display: inline-block; display: inline-block;
width: 100%; width: 100%;
height: 34px; height: 34px;
padding: 6px 12px; padding: 6px 12px;
font-family: "open sans"; font-family: "open sans";
font-size: 12px; font-size: 12px;
line-height: 1.428571429; line-height: 1.428571429;
color: #555; color: #555;
vertical-align: middle; vertical-align: middle;
background-color: #fff; background-color: #fff;
border: 1px solid #e5e6e7; border: 1px solid #e5e6e7;
border-radius: 4px; border-radius: 4px;
-webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
background-image:none; background-image:none;
} }
select.form-control + .chosen-container.chosen-container-single .chosen-single div { select.form-control + .chosen-container.chosen-container-single .chosen-single div {
top:4px; top:4px;
color:#000; color:#000;
} }
select.form-control + .chosen-container .chosen-drop { select.form-control + .chosen-container .chosen-drop {
background-color: #FFF; background-color: #FFF;
border: 1px solid #CCC; border: 1px solid #CCC;
border: 1px solid rgba(0, 0, 0, 0.15); border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 4px; border-radius: 4px;
background-clip: padding-box; background-clip: padding-box;
margin: 1px 0 0; margin: 1px 0 0;
} }
select.form-control + .chosen-container .chosen-search input[type=text] { select.form-control + .chosen-container .chosen-search input[type=text] {
display: inline-block; display: inline-block;
width: 100%; width: 100%;
height: 31px; height: 31px;
padding: 5px 6px 4px 6px; padding: 5px 6px 4px 6px;
font-size: 12px; font-size: 12px;
font-family: "open sans"; font-family: "open sans";
line-height: 1.428571429; line-height: 1.428571429;
color: #555; color: #555;
vertical-align: middle; vertical-align: middle;
background-color: #FFF; background-color: #FFF;
border: 1px solid #CCC; border: 1px solid #CCC;
border-radius: 4px; border-radius: 4px;
transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
background-image:none; background-image:none;
} }
select.form-control + .chosen-container .chosen-results { select.form-control + .chosen-container .chosen-results {
margin: 2px 0 0; margin: 2px 0 0;
padding: 5px 0; padding: 5px 0;
font-size: 12px; font-size: 12px;
font-family: "open sans"; font-family: "open sans";
list-style: none; list-style: none;
background-color: #fff; background-color: #fff;
margin-bottom: 5px; margin-bottom: 5px;
} }
select.form-control + .chosen-container .chosen-results li , select.form-control + .chosen-container .chosen-results li ,
select.form-control + .chosen-container .chosen-results li.active-result { select.form-control + .chosen-container .chosen-results li.active-result {
display: block; display: block;
padding: 3px 20px; padding: 3px 20px;
clear: both; clear: both;
font-weight: normal; font-weight: normal;
line-height: 1.428571429; line-height: 1.428571429;
color: #333; color: #333;
white-space: nowrap; white-space: nowrap;
background-image:none; background-image:none;
} }
select.form-control + .chosen-container .chosen-results li:hover, select.form-control + .chosen-container .chosen-results li:hover,
select.form-control + .chosen-container .chosen-results li.active-result:hover, select.form-control + .chosen-container .chosen-results li.active-result:hover,
select.form-control + .chosen-container .chosen-results li.highlighted { select.form-control + .chosen-container .chosen-results li.highlighted {
color: #FFF; color: #FFF;
text-decoration: none; text-decoration: none;
background-color: #428BCA; background-color: #428BCA;
background-image:none; background-image:none;
} }
select.form-control + .chosen-container-multi .chosen-choices { select.form-control + .chosen-container-multi .chosen-choices {
display: inline-block; display: inline-block;
width: 100%; width: 100%;
min-height: 31px; min-height: 31px;
padding: 1px; padding: 1px;
font-size: 12px; font-size: 12px;
font-family: "open sans"; font-family: "open sans";
line-height: 1.428571429; line-height: 1.428571429;
color: #555; color: #555;
vertical-align: middle; vertical-align: middle;
background-color: #FFF; background-color: #FFF;
border: 1px solid #E5E6E7; border: 1px solid #E5E6E7;
border-radius: 4px; border-radius: 4px;
-webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
background-image:none; background-image:none;
} }
select.form-control + .chosen-container-multi .chosen-choices li.search-field input[type="text"] { select.form-control + .chosen-container-multi .chosen-choices li.search-field input[type="text"] {
height:auto; height:auto;
font-family: "open sans"; font-family: "open sans";
padding: 5px 0px 0px 10px; padding: 5px 0px 0px 10px;
} }
select.form-control + .chosen-container-multi .chosen-choices li.search-choice { select.form-control + .chosen-container-multi .chosen-choices li.search-choice {
background-image: none; background-image: none;
padding: 3px 24px 2px 5px; padding: 3px 24px 2px 5px;
margin: 1px 6px -5px 2px; margin: 1px 6px -5px 2px;
font-size: 12px; font-size: 12px;
font-family: "open sans"; font-family: "open sans";
font-weight: normal; font-weight: normal;
line-height: 1.428571429; line-height: 1.428571429;
text-align: center; text-align: center;
white-space: nowrap; white-space: nowrap;
vertical-align: middle; vertical-align: middle;
cursor: pointer; cursor: pointer;
border: 1px solid #ccc; border: 1px solid #ccc;
border-radius: 4px; border-radius: 4px;
color: #333; color: #333;
background-color: #FFF; background-color: #FFF;
border-color: #CCC; border-color: #CCC;
} }
select.form-control + .chosen-container-multi .chosen-choices li.search-choice .search-choice-close { select.form-control + .chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
top:5px; top:5px;
right:6px; right:6px;
} }
select.form-control + .chosen-container-multi.chosen-container-active .chosen-choices, select.form-control + .chosen-container-multi.chosen-container-active .chosen-choices,
select.form-control + .chosen-container.chosen-container-single.chosen-container-active .chosen-single, select.form-control + .chosen-container.chosen-container-single.chosen-container-active .chosen-single,
select.form-control + .chosen-container .chosen-search input[type=text]:focus{ select.form-control + .chosen-container .chosen-search input[type=text]:focus{
border-color: #1ab394; border-color: #1ab394;
outline: 0; outline: 0;
} }
select.form-control + .chosen-container-multi .chosen-results li.result-selected{ select.form-control + .chosen-container-multi .chosen-results li.result-selected{
display: list-item; display: list-item;
color: #ccc; color: #ccc;
cursor: default; cursor: default;
background-color: white; background-color: white;
} }
.chosen-container-active { .chosen-container-active {
background-color: white; background-color: white;
} }
.checkbox input[type=checkbox], .checkbox-inline input[type=checkbox], .radio input[type=radio], .radio-inline input[type=radio] { .checkbox input[type=checkbox], .checkbox-inline input[type=checkbox], .radio input[type=radio], .radio-inline input[type=radio] {
position: relative !important; position: relative !important;
margin-left: -16px !important; margin-left: -16px !important;
} }
.angucomplete-dropdown { .angucomplete-dropdown {
overflow-y: auto; overflow-y: auto;
margin-top: 1px; margin-top: 1px;
max-height: 210px; /* your preference*/ max-height: 210px; /* your preference*/
} }
.input-group > div > .angucomplete-holder > .angucomplete-dropdown { .input-group > div > .angucomplete-holder > .angucomplete-dropdown {
overflow-y: auto; overflow-y: auto;
margin-top: 31px; margin-top: 31px;
max-height: 210px; max-height: 210px;
} }
/*truncate label for tables*/ /*truncate label for tables*/
.truncate-label { .truncate-label {
white-space: nowrap; white-space: nowrap;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis ; text-overflow: ellipsis ;
margin-bottom: 0px; margin-bottom: 0px;
} }
.clsDatePicker { .clsDatePicker {
z-index: 1000 !important; z-index: 1000 !important;
} }
.hr-border-line { .hr-border-line {
border-top: 1px dashed #e7eaec; border-top: 1px dashed #e7eaec;
color: #ffffff; color: #ffffff;
background-color: #ffffff; background-color: #ffffff;
height: 1px; height: 1px;
margin-top: 10px; margin-top: 10px;
margin-bottom: 15px; margin-bottom: 15px;
} }
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
/* /*
bootstrap table theme bootstrap table theme
*/ */
.ngx-datatable.theme { .ngx-datatable.theme {
box-shadow: none; box-shadow: none;
font-size: 13px; } font-size: 13px; }
.ngx-datatable.theme .datatable-header { .ngx-datatable.theme .datatable-header {
height: unset !important; } height: unset !important; }
.ngx-datatable.theme .datatable-header .datatable-header-cell { .ngx-datatable.theme .datatable-header .datatable-header-cell {
vertical-align: bottom; vertical-align: bottom;
padding: 0.75rem; padding: 0.75rem;
border-bottom: 1px solid #d1d4d7; } border-bottom: 1px solid #d1d4d7; }
.ngx-datatable.theme .datatable-header .datatable-header-cell .datatable-header-cell-label { .ngx-datatable.theme .datatable-header .datatable-header-cell .datatable-header-cell-label {
line-height: 24px; } line-height: 24px; }
.ngx-datatable.theme .datatable-body .datatable-body-row { .ngx-datatable.theme .datatable-body .datatable-body-row {
padding: 0.75rem; padding: 0.75rem;
vertical-align: top; vertical-align: top;
border-top: 1px solid #d1d4d7; } border-top: 1px solid #d1d4d7; }
.ngx-datatable.theme .datatable-body .datatable-body-row.datatable-row-even { .ngx-datatable.theme .datatable-body .datatable-body-row.datatable-row-even {
background-color: rgba(0, 0, 0, 0.05); } background-color: rgba(0, 0, 0, 0.05); }
.ngx-datatable.theme .datatable-body .datatable-body-row.active { .ngx-datatable.theme .datatable-body .datatable-body-row.active {
background-color: #1483ff; background-color: #1483ff;
color: #FFF; } color: #FFF; }
.ngx-datatable.theme .datatable-body .datatable-body-row .datatable-body-cell { .ngx-datatable.theme .datatable-body .datatable-body-row .datatable-body-cell {
text-align: left; text-align: left;
vertical-align: top; } vertical-align: top; }
.ngx-datatable.theme .datatable-footer { .ngx-datatable.theme .datatable-footer {
background: #424242; background: #424242;
color: #ededed; color: #ededed;
margin-top: -1px; } margin-top: -1px; }
.ngx-datatable.theme .datatable-footer .page-count { .ngx-datatable.theme .datatable-footer .page-count {
line-height: 50px; line-height: 50px;
height: 50px; height: 50px;
padding: 0 1.2rem; } padding: 0 1.2rem; }
.ngx-datatable.theme .datatable-footer .datatable-pager { .ngx-datatable.theme .datatable-footer .datatable-pager {
margin: 0 10px; margin: 0 10px;
vertical-align: top; } vertical-align: top; }
.ngx-datatable.theme .datatable-footer .datatable-pager ul li { .ngx-datatable.theme .datatable-footer .datatable-pager ul li {
margin: 10px 0px; } margin: 10px 0px; }
.ngx-datatable.theme .datatable-footer .datatable-pager ul li:not(.disabled).active a, .ngx-datatable.theme .datatable-footer .datatable-pager ul li:not(.disabled):hover a { .ngx-datatable.theme .datatable-footer .datatable-pager ul li:not(.disabled).active a, .ngx-datatable.theme .datatable-footer .datatable-pager ul li:not(.disabled):hover a {
background-color: #545454; background-color: #545454;
font-weight: bold; } font-weight: bold; }
.ngx-datatable.theme .datatable-footer .datatable-pager a { .ngx-datatable.theme .datatable-footer .datatable-pager a {
height: 22px; height: 22px;
min-width: 24px; min-width: 24px;
line-height: 22px; line-height: 22px;
padding: 0; padding: 0;
border-radius: 3px; border-radius: 3px;
margin: 0 3px; margin: 0 3px;
text-align: center; text-align: center;
vertical-align: top; vertical-align: top;
text-decoration: none; text-decoration: none;
vertical-align: bottom; vertical-align: bottom;
color: #ededed; } color: #ededed; }
.ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-left, .ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-left,
.ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-skip, .ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-skip,
.ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-right, .ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-right,
.ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-prev { .ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-prev {
font-size: 18px; font-size: 18px;
line-height: 27px; line-height: 27px;
padding: 0 3px; } padding: 0 3px; }
.ngx-datatable.theme .datatable-summary-row .datatable-body-row .datatable-body-cell { .ngx-datatable.theme .datatable-summary-row .datatable-body-row .datatable-body-cell {
font-weight: bold; } font-weight: bold; }
.ngx-datatable.theme { .ngx-datatable.theme {
background: #FFF; background: #FFF;
box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12); box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);
/** /**
* Shared Styles * Shared Styles
*/ */
/** /**
* Global Row Styles * Global Row Styles
*/ */
/** /**
* Header Styles * Header Styles
*/ */
/** /**
* Body Styles * Body Styles
*/ */
/** /**
* Footer Styles * Footer Styles
*/ } */ }
.ngx-datatable.theme.striped .datatable-row-odd { .ngx-datatable.theme.striped .datatable-row-odd {
background: #eee; } background: #eee; }
.ngx-datatable.theme.single-selection .datatable-body-row.active, .ngx-datatable.theme.single-selection .datatable-body-row.active,
.ngx-datatable.theme.single-selection .datatable-body-row.active .datatable-row-group, .ngx-datatable.theme.multi-selection .datatable-body-row.active, .ngx-datatable.theme.single-selection .datatable-body-row.active .datatable-row-group, .ngx-datatable.theme.multi-selection .datatable-body-row.active,
.ngx-datatable.theme.multi-selection .datatable-body-row.active .datatable-row-group, .ngx-datatable.theme.multi-click-selection .datatable-body-row.active, .ngx-datatable.theme.multi-selection .datatable-body-row.active .datatable-row-group, .ngx-datatable.theme.multi-click-selection .datatable-body-row.active,
.ngx-datatable.theme.multi-click-selection .datatable-body-row.active .datatable-row-group { .ngx-datatable.theme.multi-click-selection .datatable-body-row.active .datatable-row-group {
background-color: #304FFE; background-color: #304FFE;
color: #FFF; } color: #FFF; }
.ngx-datatable.theme.single-selection .datatable-body-row.active:hover, .ngx-datatable.theme.single-selection .datatable-body-row.active:hover,
.ngx-datatable.theme.single-selection .datatable-body-row.active:hover .datatable-row-group, .ngx-datatable.theme.multi-selection .datatable-body-row.active:hover, .ngx-datatable.theme.single-selection .datatable-body-row.active:hover .datatable-row-group, .ngx-datatable.theme.multi-selection .datatable-body-row.active:hover,
.ngx-datatable.theme.multi-selection .datatable-body-row.active:hover .datatable-row-group, .ngx-datatable.theme.multi-click-selection .datatable-body-row.active:hover, .ngx-datatable.theme.multi-selection .datatable-body-row.active:hover .datatable-row-group, .ngx-datatable.theme.multi-click-selection .datatable-body-row.active:hover,
.ngx-datatable.theme.multi-click-selection .datatable-body-row.active:hover .datatable-row-group { .ngx-datatable.theme.multi-click-selection .datatable-body-row.active:hover .datatable-row-group {
background-color: #193AE4; background-color: #193AE4;
color: #FFF; } color: #FFF; }
.ngx-datatable.theme.single-selection .datatable-body-row.active:focus, .ngx-datatable.theme.single-selection .datatable-body-row.active:focus,
.ngx-datatable.theme.single-selection .datatable-body-row.active:focus .datatable-row-group, .ngx-datatable.theme.multi-selection .datatable-body-row.active:focus, .ngx-datatable.theme.single-selection .datatable-body-row.active:focus .datatable-row-group, .ngx-datatable.theme.multi-selection .datatable-body-row.active:focus,
.ngx-datatable.theme.multi-selection .datatable-body-row.active:focus .datatable-row-group, .ngx-datatable.theme.multi-click-selection .datatable-body-row.active:focus, .ngx-datatable.theme.multi-selection .datatable-body-row.active:focus .datatable-row-group, .ngx-datatable.theme.multi-click-selection .datatable-body-row.active:focus,
.ngx-datatable.theme.multi-click-selection .datatable-body-row.active:focus .datatable-row-group { .ngx-datatable.theme.multi-click-selection .datatable-body-row.active:focus .datatable-row-group {
background-color: #2041EF; background-color: #2041EF;
color: #FFF; } color: #FFF; }
.ngx-datatable.theme:not(.cell-selection) .datatable-body-row:hover, .ngx-datatable.theme:not(.cell-selection) .datatable-body-row:hover,
.ngx-datatable.theme:not(.cell-selection) .datatable-body-row:hover .datatable-row-group { .ngx-datatable.theme:not(.cell-selection) .datatable-body-row:hover .datatable-row-group {
background-color: #eee; background-color: #eee;
transition-property: background; transition-property: background;
transition-duration: .3s; transition-duration: .3s;
transition-timing-function: linear; } transition-timing-function: linear; }
.ngx-datatable.theme:not(.cell-selection) .datatable-body-row:focus, .ngx-datatable.theme:not(.cell-selection) .datatable-body-row:focus,
.ngx-datatable.theme:not(.cell-selection) .datatable-body-row:focus .datatable-row-group { .ngx-datatable.theme:not(.cell-selection) .datatable-body-row:focus .datatable-row-group {
background-color: #ddd; } background-color: #ddd; }
.ngx-datatable.theme.cell-selection .datatable-body-cell:hover, .ngx-datatable.theme.cell-selection .datatable-body-cell:hover,
.ngx-datatable.theme.cell-selection .datatable-body-cell:hover .datatable-row-group { .ngx-datatable.theme.cell-selection .datatable-body-cell:hover .datatable-row-group {
background-color: #eee; background-color: #eee;
transition-property: background; transition-property: background;
transition-duration: .3s; transition-duration: .3s;
transition-timing-function: linear; } transition-timing-function: linear; }
.ngx-datatable.theme.cell-selection .datatable-body-cell:focus, .ngx-datatable.theme.cell-selection .datatable-body-cell:focus,
.ngx-datatable.theme.cell-selection .datatable-body-cell:focus .datatable-row-group { .ngx-datatable.theme.cell-selection .datatable-body-cell:focus .datatable-row-group {
background-color: #ddd; } background-color: #ddd; }
.ngx-datatable.theme.cell-selection .datatable-body-cell.active, .ngx-datatable.theme.cell-selection .datatable-body-cell.active,
.ngx-datatable.theme.cell-selection .datatable-body-cell.active .datatable-row-group { .ngx-datatable.theme.cell-selection .datatable-body-cell.active .datatable-row-group {
background-color: #304FFE; background-color: #304FFE;
color: #FFF; } color: #FFF; }
.ngx-datatable.theme.cell-selection .datatable-body-cell.active:hover, .ngx-datatable.theme.cell-selection .datatable-body-cell.active:hover,
.ngx-datatable.theme.cell-selection .datatable-body-cell.active:hover .datatable-row-group { .ngx-datatable.theme.cell-selection .datatable-body-cell.active:hover .datatable-row-group {
background-color: #193AE4; background-color: #193AE4;
color: #FFF; } color: #FFF; }
.ngx-datatable.theme.cell-selection .datatable-body-cell.active:focus, .ngx-datatable.theme.cell-selection .datatable-body-cell.active:focus,
.ngx-datatable.theme.cell-selection .datatable-body-cell.active:focus .datatable-row-group { .ngx-datatable.theme.cell-selection .datatable-body-cell.active:focus .datatable-row-group {
background-color: #2041EF; background-color: #2041EF;
color: #FFF; } color: #FFF; }
.ngx-datatable.theme .empty-row { .ngx-datatable.theme .empty-row {
height: 50px; height: 50px;
text-align: left; text-align: left;
padding: .5rem 1.2rem; padding: .5rem 1.2rem;
vertical-align: top; vertical-align: top;
border-top: 0; } border-top: 0; }
.ngx-datatable.theme .loading-row { .ngx-datatable.theme .loading-row {
text-align: left; text-align: left;
padding: .5rem 1.2rem; padding: .5rem 1.2rem;
vertical-align: top; vertical-align: top;
border-top: 0; } border-top: 0; }
.ngx-datatable.theme .datatable-header .datatable-row-left, .ngx-datatable.theme .datatable-header .datatable-row-left,
.ngx-datatable.theme .datatable-body .datatable-row-left { .ngx-datatable.theme .datatable-body .datatable-row-left {
background-color: #FFF; background-color: #FFF;
background-position: 100% 0; background-position: 100% 0;
background-repeat: repeat-y; background-repeat: repeat-y;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAABCAYAAAD5PA/NAAAAFklEQVQIHWPSkNeSBmJhTQVtbiDNCgASagIIuJX8OgAAAABJRU5ErkJggg==); } background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAABCAYAAAD5PA/NAAAAFklEQVQIHWPSkNeSBmJhTQVtbiDNCgASagIIuJX8OgAAAABJRU5ErkJggg==); }
.ngx-datatable.theme .datatable-header .datatable-row-right, .ngx-datatable.theme .datatable-header .datatable-row-right,
.ngx-datatable.theme .datatable-body .datatable-row-right { .ngx-datatable.theme .datatable-body .datatable-row-right {
background-position: 0 0; background-position: 0 0;
background-color: #fff; background-color: #fff;
background-repeat: repeat-y; background-repeat: repeat-y;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAABCAYAAAD5PA/NAAAAFklEQVQI12PQkNdi1VTQ5gbSwkAsDQARLAIGtOSFUAAAAABJRU5ErkJggg==); } background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAABCAYAAAD5PA/NAAAAFklEQVQI12PQkNdi1VTQ5gbSwkAsDQARLAIGtOSFUAAAAABJRU5ErkJggg==); }
.ngx-datatable.theme .datatable-header { .ngx-datatable.theme .datatable-header {
border-bottom: 1px solid rgba(0, 0, 0, 0.12); } border-bottom: 1px solid rgba(0, 0, 0, 0.12); }
.ngx-datatable.theme .datatable-header .datatable-header-cell { .ngx-datatable.theme .datatable-header .datatable-header-cell {
text-align: left; text-align: left;
padding: .9rem 1.2rem; padding: .9rem 1.2rem;
font-weight: 400; font-weight: 400;
color: rgba(0, 0, 0, 0.54); color: rgba(0, 0, 0, 0.54);
vertical-align: bottom; vertical-align: bottom;
font-size: 12px; font-size: 12px;
font-weight: 500; } font-weight: 500; }
.ngx-datatable.theme .datatable-header .datatable-header-cell .datatable-header-cell-wrapper { .ngx-datatable.theme .datatable-header .datatable-header-cell .datatable-header-cell-wrapper {
position: relative; } position: relative; }
.ngx-datatable.theme .datatable-header .datatable-header-cell.longpress .draggable::after { .ngx-datatable.theme .datatable-header .datatable-header-cell.longpress .draggable::after {
transition: transform 400ms ease, opacity 400ms ease; transition: transform 400ms ease, opacity 400ms ease;
opacity: .5; opacity: .5;
transform: scale(1); } transform: scale(1); }
.ngx-datatable.theme .datatable-header .datatable-header-cell .draggable::after { .ngx-datatable.theme .datatable-header .datatable-header-cell .draggable::after {
content: " "; content: " ";
position: absolute; position: absolute;
top: 50%; top: 50%;
left: 50%; left: 50%;
margin: -30px 0 0 -30px; margin: -30px 0 0 -30px;
height: 60px; height: 60px;
width: 60px; width: 60px;
background: #eee; background: #eee;
border-radius: 100%; border-radius: 100%;
opacity: 1; opacity: 1;
filter: none; filter: none;
transform: scale(0); transform: scale(0);
z-index: 9999; z-index: 9999;
pointer-events: none; } pointer-events: none; }
.ngx-datatable.theme .datatable-header .datatable-header-cell.dragging .resize-handle { .ngx-datatable.theme .datatable-header .datatable-header-cell.dragging .resize-handle {
border-right: none; } border-right: none; }
.ngx-datatable.theme .datatable-header .resize-handle { .ngx-datatable.theme .datatable-header .resize-handle {
border-right: solid 1px #eee; } border-right: solid 1px #eee; }
.ngx-datatable.theme .datatable-body .datatable-row-detail { .ngx-datatable.theme .datatable-body .datatable-row-detail {
background: #f5f5f5; background: #f5f5f5;
padding: 10px; } padding: 10px; }
.ngx-datatable.theme .datatable-body .datatable-group-header { .ngx-datatable.theme .datatable-body .datatable-group-header {
background: #f5f5f5; background: #f5f5f5;
border-bottom: solid 1px #D9D8D9; border-bottom: solid 1px #D9D8D9;
border-top: solid 1px #D9D8D9; } border-top: solid 1px #D9D8D9; }
.ngx-datatable.theme .datatable-body .datatable-body-row .datatable-body-cell { .ngx-datatable.theme .datatable-body .datatable-body-row .datatable-body-cell {
text-align: left; text-align: left;
padding: .9rem 1.2rem; padding: .9rem 1.2rem;
vertical-align: top; vertical-align: top;
border-top: 0; border-top: 0;
color: rgba(0, 0, 0, 0.87); color: rgba(0, 0, 0, 0.87);
transition: width 0.3s ease; transition: width 0.3s ease;
font-size: 14px; font-size: 14px;
font-weight: 400; } font-weight: 400; }
.ngx-datatable.theme .datatable-body .datatable-body-row .datatable-body-group-cell { .ngx-datatable.theme .datatable-body .datatable-body-row .datatable-body-group-cell {
text-align: left; text-align: left;
padding: .9rem 1.2rem; padding: .9rem 1.2rem;
vertical-align: top; vertical-align: top;
border-top: 0; border-top: 0;
color: rgba(0, 0, 0, 0.87); color: rgba(0, 0, 0, 0.87);
transition: width 0.3s ease; transition: width 0.3s ease;
font-size: 14px; font-size: 14px;
font-weight: 400; } font-weight: 400; }
.ngx-datatable.theme .datatable-body .progress-linear { .ngx-datatable.theme .datatable-body .progress-linear {
display: block; display: block;
position: relative; position: relative;
width: 100%; width: 100%;
height: 5px; height: 5px;
padding: 0; padding: 0;
margin: 0; margin: 0;
position: absolute; } position: absolute; }
.ngx-datatable.theme .datatable-body .progress-linear .container { .ngx-datatable.theme .datatable-body .progress-linear .container {
display: block; display: block;
position: relative; position: relative;
overflow: hidden; overflow: hidden;
width: 100%; width: 100%;
height: 5px; height: 5px;
-webkit-transform: translate(0, 0) scale(1, 1); -webkit-transform: translate(0, 0) scale(1, 1);
transform: translate(0, 0) scale(1, 1); transform: translate(0, 0) scale(1, 1);
background-color: #aad1f9; } background-color: #aad1f9; }
.ngx-datatable.theme .datatable-body .progress-linear .container .bar { .ngx-datatable.theme .datatable-body .progress-linear .container .bar {
transition: all .2s linear; transition: all .2s linear;
-webkit-animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1); -webkit-animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1);
animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1); animation: query 0.8s infinite cubic-bezier(0.39, 0.575, 0.565, 1);
transition: -webkit-transform .2s linear; transition: -webkit-transform .2s linear;
transition: transform .2s linear; transition: transform .2s linear;
background-color: #106cc8; background-color: #106cc8;
position: absolute; position: absolute;
left: 0; left: 0;
top: 0; top: 0;
bottom: 0; bottom: 0;
width: 100%; width: 100%;
height: 5px; } height: 5px; }
.ngx-datatable.theme .datatable-footer { .ngx-datatable.theme .datatable-footer {
border-top: 1px solid rgba(0, 0, 0, 0.12); border-top: 1px solid rgba(0, 0, 0, 0.12);
font-size: 12px; font-size: 12px;
font-weight: 400; font-weight: 400;
color: rgba(0, 0, 0, 0.54); } color: rgba(0, 0, 0, 0.54); }
.ngx-datatable.theme .datatable-footer .page-count { .ngx-datatable.theme .datatable-footer .page-count {
line-height: 50px; line-height: 50px;
height: 50px; height: 50px;
padding: 0 1.2rem; } padding: 0 1.2rem; }
.ngx-datatable.theme .datatable-footer .datatable-pager { .ngx-datatable.theme .datatable-footer .datatable-pager {
margin: 0 10px; } margin: 0 10px; }
.ngx-datatable.theme .datatable-footer .datatable-pager li { .ngx-datatable.theme .datatable-footer .datatable-pager li {
vertical-align: middle; } vertical-align: middle; }
.ngx-datatable.theme .datatable-footer .datatable-pager li.disabled a { .ngx-datatable.theme .datatable-footer .datatable-pager li.disabled a {
color: rgba(0, 0, 0, 0.26) !important; color: rgba(0, 0, 0, 0.26) !important;
background-color: transparent !important; } background-color: transparent !important; }
.ngx-datatable.theme .datatable-footer .datatable-pager li.active a { .ngx-datatable.theme .datatable-footer .datatable-pager li.active a {
background-color: rgba(158, 158, 158, 0.2); background-color: rgba(158, 158, 158, 0.2);
font-weight: bold; } font-weight: bold; }
.ngx-datatable.theme .datatable-footer .datatable-pager a { .ngx-datatable.theme .datatable-footer .datatable-pager a {
height: 22px; height: 22px;
min-width: 24px; min-width: 24px;
line-height: 22px; line-height: 22px;
padding: 0 6px; padding: 0 6px;
border-radius: 3px; border-radius: 3px;
margin: 6px 3px; margin: 6px 3px;
text-align: center; text-align: center;
vertical-align: top; vertical-align: top;
color: rgba(0, 0, 0, 0.54); color: rgba(0, 0, 0, 0.54);
text-decoration: none; text-decoration: none;
vertical-align: bottom; } vertical-align: bottom; }
.ngx-datatable.theme .datatable-footer .datatable-pager a:hover { .ngx-datatable.theme .datatable-footer .datatable-pager a:hover {
color: rgba(0, 0, 0, 0.75); color: rgba(0, 0, 0, 0.75);
background-color: rgba(158, 158, 158, 0.2); } background-color: rgba(158, 158, 158, 0.2); }
.ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-left, .ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-left,
.ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-skip, .ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-skip,
.ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-right, .ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-right,
.ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-prev { .ngx-datatable.theme .datatable-footer .datatable-pager .datatable-icon-prev {
font-size: 20px; font-size: 20px;
line-height: 20px; line-height: 20px;
padding: 0 3px; } padding: 0 3px; }
.ngx-datatable.theme .datatable-summary-row .datatable-body-row { .ngx-datatable.theme .datatable-summary-row .datatable-body-row {
background-color: #ddd; } background-color: #ddd; }
.ngx-datatable.theme .datatable-summary-row .datatable-body-row:hover { .ngx-datatable.theme .datatable-summary-row .datatable-body-row:hover {
background-color: #ddd; } background-color: #ddd; }
.ngx-datatable.theme .datatable-summary-row .datatable-body-row .datatable-body-cell { .ngx-datatable.theme .datatable-summary-row .datatable-body-row .datatable-body-cell {
font-weight: bold; } font-weight: bold; }
/** /**
* Checkboxes * Checkboxes
**/ **/
.datatable-checkbox { .datatable-checkbox {
position: relative; position: relative;
margin: 0; margin: 0;
cursor: pointer; cursor: pointer;
vertical-align: middle; vertical-align: middle;
display: inline-block; display: inline-block;
box-sizing: border-box; box-sizing: border-box;
padding: 0; } padding: 0; }
.datatable-checkbox input[type='checkbox'] { .datatable-checkbox input[type='checkbox'] {
position: relative; position: relative;
margin: 0 1rem 0 0; margin: 0 1rem 0 0;
cursor: pointer; cursor: pointer;
outline: none; } outline: none; }
.datatable-checkbox input[type='checkbox']:before { .datatable-checkbox input[type='checkbox']:before {
-webkit-transition: all 0.3s ease-in-out; -webkit-transition: all 0.3s ease-in-out;
-moz-transition: all 0.3s ease-in-out; -moz-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;
content: ""; content: "";
position: absolute; position: absolute;
left: 0; left: 0;
z-index: 1; z-index: 1;
width: 1rem; width: 1rem;
height: 1rem; height: 1rem;
border: 2px solid #f2f2f2; } border: 2px solid #f2f2f2; }
.datatable-checkbox input[type='checkbox']:checked:before { .datatable-checkbox input[type='checkbox']:checked:before {
-webkit-transform: rotate(-45deg); -webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg); -moz-transform: rotate(-45deg);
-ms-transform: rotate(-45deg); -ms-transform: rotate(-45deg);
transform: rotate(-45deg); transform: rotate(-45deg);
height: .5rem; height: .5rem;
border-color: #009688; border-color: #009688;
border-top-style: none; border-top-style: none;
border-right-style: none; } border-right-style: none; }
.datatable-checkbox input[type='checkbox']:after { .datatable-checkbox input[type='checkbox']:after {
content: ""; content: "";
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
width: 1rem; width: 1rem;
height: 1rem; height: 1rem;
background: #fff; background: #fff;
cursor: pointer; } cursor: pointer; }
/** /**
* Progress bar animations * Progress bar animations
*/ */
@keyframes query { @keyframes query {
0% { 0% {
opacity: 1; opacity: 1;
transform: translateX(35%) scale(0.3, 1); } transform: translateX(35%) scale(0.3, 1); }
100% { 100% {
opacity: 0; opacity: 0;
transform: translateX(-50%) scale(0, 1); } } transform: translateX(-50%) scale(0, 1); } }
This source diff could not be displayed because it is too large. You can view the blob instead.
export const environment = { export const environment = {
production: true production: true
}; };
// This file can be replaced during build by using the `fileReplacements` array. // This file can be replaced during build by using the `fileReplacements` array.
// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.
// The list of file replacements can be found in `angular.json`. // The list of file replacements can be found in `angular.json`.
export const environment = { export const environment = {
production: false production: false
}; };
/* /*
* For easier debugging in development mode, you can import the following file * For easier debugging in development mode, you can import the following file
* to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.
* *
* This import should be commented out in production mode because it will have a negative impact * This import should be commented out in production mode because it will have a negative impact
* on performance if an error is thrown. * on performance if an error is thrown.
*/ */
// import 'zone.js/dist/zone-error'; // Included with Angular CLI. // import 'zone.js/dist/zone-error'; // Included with Angular CLI.
<!doctype html> <!doctype html>
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Bytebot</title> <title>Bytebot</title>
<base href="./"> <base href="./">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico"><!-- inline spinner styles to be able to display spinner right away --> <link rel="icon" type="image/x-icon" href="favicon.ico"><!-- inline spinner styles to be able to display spinner right away -->
<style type="text/css"> <style type="text/css">
body, html { body, html {
height: 100%; height: 100%;
background-color: #2f4050; background-color: #2f4050;
} }
.logo { .logo {
width: 200px; width: 200px;
height: 200px; height: 200px;
opacity: 0.5; opacity: 0.5;
background: url(assets/images/logo_byte_menu-min.png) center center no-repeat; background: url(assets/images/logo_byte_menu-min.png) center center no-repeat;
} }
.app-loading { .app-loading {
position: relative; position: relative;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
height: 100%; height: 100%;
} }
.app-loading .spinner { .app-loading .spinner {
height: 330px; height: 330px;
width: 330px; width: 330px;
animation: rotate 2s linear infinite; animation: rotate 2s linear infinite;
transform-origin: center center; transform-origin: center center;
position: absolute; position: absolute;
top: 0; top: 0;
bottom: 0; bottom: 0;
left: 0; left: 0;
right: 0; right: 0;
margin: auto; margin: auto;
} }
.app-loading .spinner .path { .app-loading .spinner .path {
stroke-dasharray: 1, 200; stroke-dasharray: 1, 200;
stroke-dashoffset: 0; stroke-dashoffset: 0;
animation: dash 1.5s ease-in-out infinite; animation: dash 1.5s ease-in-out infinite;
stroke-linecap: round; stroke-linecap: round;
stroke: #78828B; stroke: #78828B;
} }
@keyframes rotate { @keyframes rotate {
100% { 100% {
transform: rotate(360deg); transform: rotate(360deg);
} }
} }
@keyframes dash { @keyframes dash {
0% { 0% {
stroke-dasharray: 1, 200; stroke-dasharray: 1, 200;
stroke-dashoffset: 0; stroke-dashoffset: 0;
} }
50% { 50% {
stroke-dasharray: 89, 200; stroke-dasharray: 89, 200;
stroke-dashoffset: -35px; stroke-dashoffset: -35px;
} }
100% { 100% {
stroke-dasharray: 89, 200; stroke-dasharray: 89, 200;
stroke-dashoffset: -124px; stroke-dashoffset: -124px;
} }
} }
</style> </style>
<link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500" rel="stylesheet"> <link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500" rel="stylesheet">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<script> <script>
if (global === undefined) { if (global === undefined) {
var global = window; var global = window;
} }
</script> </script>
<link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500&display=swap" rel="stylesheet"> <link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500&display=swap" rel="stylesheet">
</head> </head>
<body class="mat-typography"> <body class="mat-typography">
<byte-root> <byte-root>
<!-- loading layout replaced by app after startupp --> <!-- loading layout replaced by app after startupp -->
<div class="app-loading"> <div class="app-loading">
<div class="logo"></div> <div class="logo"></div>
<svg class="spinner" viewBox="25 25 50 50"> <svg class="spinner" viewBox="25 25 50 50">
<circle class="path" cx="50" cy="50" r="20" fill="none" stroke-width="2" stroke-miterlimit="10"/> <circle class="path" cx="50" cy="50" r="20" fill="none" stroke-width="2" stroke-miterlimit="10"/>
</svg> </svg>
</div> </div>
</byte-root> </byte-root>
</body> </body>
</html> </html>
import { enableProdMode } from '@angular/core'; import { enableProdMode } from '@angular/core';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app/app.module'; import { AppModule } from './app/app.module';
import { environment } from './environments/environment'; import { environment } from './environments/environment';
if (environment.production) { if (environment.production) {
enableProdMode(); enableProdMode();
} }
platformBrowserDynamic().bootstrapModule(AppModule) platformBrowserDynamic().bootstrapModule(AppModule)
.catch(err => console.error(err)); .catch(err => console.error(err));
/** /**
* This file includes polyfills needed by Angular and is loaded before the app. * This file includes polyfills needed by Angular and is loaded before the app.
* You can add your own extra polyfills to this file. * You can add your own extra polyfills to this file.
* *
* This file is divided into 2 sections: * This file is divided into 2 sections:
* 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers.
* 2. Application imports. Files imported after ZoneJS that should be loaded before your main * 2. Application imports. Files imported after ZoneJS that should be loaded before your main
* file. * file.
* *
* The current setup is for so-called "evergreen" browsers; the last versions of browsers that * The current setup is for so-called "evergreen" browsers; the last versions of browsers that
* automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera),
* Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile.
* *
* Learn more in https://angular.io/guide/browser-support * Learn more in https://angular.io/guide/browser-support
*/ */
/*************************************************************************************************** /***************************************************************************************************
* BROWSER POLYFILLS * BROWSER POLYFILLS
*/ */
/** IE10 and IE11 requires the following for NgClass support on SVG elements */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */
// import 'classlist.js'; // Run `npm install --save classlist.js`. // import 'classlist.js'; // Run `npm install --save classlist.js`.
/** /**
* Web Animations `@angular/platform-browser/animations` * Web Animations `@angular/platform-browser/animations`
* Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari.
* Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0).
*/ */
// import 'web-animations-js'; // Run `npm install --save web-animations-js`. // import 'web-animations-js'; // Run `npm install --save web-animations-js`.
/** /**
* By default, zone.js will patch all possible macroTask and DomEvents * By default, zone.js will patch all possible macroTask and DomEvents
* user can disable parts of macroTask/DomEvents patch by setting following flags * user can disable parts of macroTask/DomEvents patch by setting following flags
* because those flags need to be set before `zone.js` being loaded, and webpack * because those flags need to be set before `zone.js` being loaded, and webpack
* will put import in the top of bundle, so user need to create a separate file * will put import in the top of bundle, so user need to create a separate file
* in this directory (for example: zone-flags.ts), and put the following flags * in this directory (for example: zone-flags.ts), and put the following flags
* into that file, and then add the following code before importing zone.js. * into that file, and then add the following code before importing zone.js.
* import './zone-flags.ts'; * import './zone-flags.ts';
* *
* The flags allowed in zone-flags.ts are listed here. * The flags allowed in zone-flags.ts are listed here.
* *
* The following flags will work for all browsers. * The following flags will work for all browsers.
* *
* (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame
* (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick
* (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames
* *
* in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js
* with the following flag, it will bypass `zone.js` patch for IE/Edge * with the following flag, it will bypass `zone.js` patch for IE/Edge
* *
* (window as any).__Zone_enable_cross_context_check = true; * (window as any).__Zone_enable_cross_context_check = true;
* *
*/ */
/*************************************************************************************************** /***************************************************************************************************
* Zone JS is required by default for Angular itself. * Zone JS is required by default for Angular itself.
*/ */
import 'zone.js/dist/zone'; // Included with Angular CLI. import 'zone.js/dist/zone'; // Included with Angular CLI.
/*************************************************************************************************** /***************************************************************************************************
* APPLICATION IMPORTS * APPLICATION IMPORTS
*/ */
// This file is required by karma.conf.js and loads recursively all the .spec and framework files // This file is required by karma.conf.js and loads recursively all the .spec and framework files
import 'zone.js/dist/zone-testing'; import 'zone.js/dist/zone-testing';
import { getTestBed } from '@angular/core/testing'; import { getTestBed } from '@angular/core/testing';
import { import {
BrowserDynamicTestingModule, BrowserDynamicTestingModule,
platformBrowserDynamicTesting platformBrowserDynamicTesting
} from '@angular/platform-browser-dynamic/testing'; } from '@angular/platform-browser-dynamic/testing';
declare const require: any; declare const require: any;
// First, initialize the Angular testing environment. // First, initialize the Angular testing environment.
getTestBed().initTestEnvironment( getTestBed().initTestEnvironment(
BrowserDynamicTestingModule, BrowserDynamicTestingModule,
platformBrowserDynamicTesting() platformBrowserDynamicTesting()
); );
// Then we find all the tests. // Then we find all the tests.
const context = require.context('./', true, /\.spec\.ts$/); const context = require.context('./', true, /\.spec\.ts$/);
// And load the modules. // And load the modules.
context.keys().map(context); context.keys().map(context);
{ {
"extends": "../../tsconfig.json", "extends": "../../tsconfig.json",
"compilerOptions": { "compilerOptions": {
"outDir": "../../out-tsc/app", "outDir": "../../out-tsc/app",
"types": [] "types": []
}, },
"files": [ "files": [
"src/main.ts", "src/main.ts",
"src/polyfills.ts" "src/polyfills.ts"
], ],
"include": [ "include": [
"src/**/*.ts" "src/**/*.ts"
], ],
"exclude": [ "exclude": [
"src/test.ts", "src/test.ts",
"src/**/*.spec.ts" "src/**/*.spec.ts"
] ]
} }
{ {
"extends": "../../tsconfig.json", "extends": "../../tsconfig.json",
"compilerOptions": { "compilerOptions": {
"outDir": "../../out-tsc/spec", "outDir": "../../out-tsc/spec",
"types": [ "types": [
"jasmine", "jasmine",
"node" "node"
] ]
}, },
"files": [ "files": [
"src/test.ts", "src/test.ts",
"src/polyfills.ts" "src/polyfills.ts"
], ],
"include": [ "include": [
"src/**/*.spec.ts", "src/**/*.spec.ts",
"src/**/*.d.ts" "src/**/*.d.ts"
] ]
} }
{ {
"extends": "../../tslint.json", "extends": "../../tslint.json",
"rules": { "rules": {
"directive-selector": [ "directive-selector": [
true, true,
"attribute", "attribute",
"byte", "byte",
"camelCase" "camelCase"
], ],
"component-selector": [ "component-selector": [
true, true,
"element", "element",
"byte", "byte",
"kebab-case" "kebab-case"
] ]
} }
} }
\ No newline at end of file
{ {
"compileOnSave": false, "compileOnSave": false,
"compilerOptions": { "compilerOptions": {
"baseUrl": "./", "baseUrl": "./",
"outDir": "./dist/out-tsc", "outDir": "./dist/out-tsc",
"sourceMap": true, "sourceMap": true,
"declaration": false, "declaration": false,
"downlevelIteration": true, "downlevelIteration": true,
"emitDecoratorMetadata": true, "emitDecoratorMetadata": true,
"experimentalDecorators": true, "experimentalDecorators": true,
"resolveJsonModule": true, "resolveJsonModule": true,
"module": "esnext", "module": "esnext",
"moduleResolution": "node", "moduleResolution": "node",
"importHelpers": true, "importHelpers": true,
"target": "es2015", "target": "es2015",
"typeRoots": [ "typeRoots": [
"node_modules/@types" "node_modules/@types"
], ],
"lib": [ "lib": [
"es2018", "es2018",
"dom" "dom"
] ]
}, },
"angularCompilerOptions": { "angularCompilerOptions": {
"fullTemplateTypeCheck": true, "fullTemplateTypeCheck": true,
"strictInjectionParameters": true "strictInjectionParameters": true
} }
} }
{ {
"extends": "tslint:recommended", "extends": "tslint:recommended",
"rulesDirectory": [ "rulesDirectory": [
"codelyzer" "codelyzer"
], ],
"rules": { "rules": {
"array-type": false, "array-type": false,
"arrow-parens": false, "arrow-parens": false,
"deprecation": { "deprecation": {
"severity": "warning" "severity": "warning"
}, },
"import-blacklist": [ "import-blacklist": [
true, true,
"rxjs/Rx" "rxjs/Rx"
], ],
"interface-name": false, "interface-name": false,
"max-classes-per-file": false, "max-classes-per-file": false,
"max-line-length": [ "max-line-length": [
true, true,
140 140
], ],
"member-access": false, "member-access": false,
"member-ordering": [ "member-ordering": [
true, true,
{ {
"order": [ "order": [
"static-field", "static-field",
"instance-field", "instance-field",
"static-method", "static-method",
"instance-method" "instance-method"
] ]
} }
], ],
"no-consecutive-blank-lines": false, "no-consecutive-blank-lines": false,
"no-console": [ "no-console": [
true, true,
"debug", "debug",
"info", "info",
"time", "time",
"timeEnd", "timeEnd",
"trace" "trace"
], ],
"no-empty": false, "no-empty": false,
"no-inferrable-types": [ "no-inferrable-types": [
true, true,
"ignore-params" "ignore-params"
], ],
"no-non-null-assertion": true, "no-non-null-assertion": true,
"no-redundant-jsdoc": true, "no-redundant-jsdoc": true,
"no-switch-case-fall-through": true, "no-switch-case-fall-through": true,
"no-var-requires": false, "no-var-requires": false,
"object-literal-key-quotes": [ "object-literal-key-quotes": [
true, true,
"as-needed" "as-needed"
], ],
"object-literal-sort-keys": false, "object-literal-sort-keys": false,
"ordered-imports": false, "ordered-imports": false,
"quotemark": [ "quotemark": [
true, true,
"single" "single"
], ],
"trailing-comma": false, "trailing-comma": false,
"component-class-suffix": true, "component-class-suffix": true,
"contextual-lifecycle": true, "contextual-lifecycle": true,
"directive-class-suffix": true, "directive-class-suffix": true,
"no-conflicting-lifecycle": true, "no-conflicting-lifecycle": true,
"no-host-metadata-property": true, "no-host-metadata-property": true,
"no-input-rename": true, "no-input-rename": true,
"no-inputs-metadata-property": true, "no-inputs-metadata-property": true,
"no-output-native": true, "no-output-native": true,
"no-output-on-prefix": true, "no-output-on-prefix": true,
"no-output-rename": true, "no-output-rename": true,
"no-outputs-metadata-property": true, "no-outputs-metadata-property": true,
"template-banana-in-box": true, "template-banana-in-box": true,
"template-no-negated-async": true, "template-no-negated-async": true,
"use-lifecycle-interface": true, "use-lifecycle-interface": true,
"use-pipe-transform-interface": true "use-pipe-transform-interface": true
} }
} }
/* /*
* *
* INSPINIA - Responsive Admin Theme * INSPINIA - Responsive Admin Theme
* version 2.8 * version 2.8
* *
*/ */
$(document).ready(function () { $(document).ready(function () {
// Fast fix bor position issue with Propper.js // Fast fix bor position issue with Propper.js
// Will be fixed in Bootstrap 4.1 - https://github.com/twbs/bootstrap/pull/24092 // Will be fixed in Bootstrap 4.1 - https://github.com/twbs/bootstrap/pull/24092
Popper.Defaults.modifiers.computeStyle.gpuAcceleration = false; Popper.Defaults.modifiers.computeStyle.gpuAcceleration = false;
// Add body-small class if window less than 768px // Add body-small class if window less than 768px
if ($(window).width() < 769) { if ($(window).width() < 769) {
$('body').addClass('body-small') $('body').addClass('body-small')
} else { } else {
$('body').removeClass('body-small') $('body').removeClass('body-small')
} }
// Collapse ibox function // Collapse ibox function
$('.collapse-link').on('click', function (e) { $('.collapse-link').on('click', function (e) {
e.preventDefault(); e.preventDefault();
var ibox = $(this).closest('div.ibox'); var ibox = $(this).closest('div.ibox');
var button = $(this).find('i'); var button = $(this).find('i');
var content = ibox.children('.ibox-content'); var content = ibox.children('.ibox-content');
content.slideToggle(200); content.slideToggle(200);
button.toggleClass('fa-chevron-up').toggleClass('fa-chevron-down'); button.toggleClass('fa-chevron-up').toggleClass('fa-chevron-down');
ibox.toggleClass('').toggleClass('border-bottom'); ibox.toggleClass('').toggleClass('border-bottom');
setTimeout(function () { setTimeout(function () {
ibox.resize(); ibox.resize();
ibox.find('[id^=map-]').resize(); ibox.find('[id^=map-]').resize();
}, 50); }, 50);
}); });
// Close ibox function // Close ibox function
$('.close-link').on('click', function (e) { $('.close-link').on('click', function (e) {
e.preventDefault(); e.preventDefault();
var content = $(this).closest('div.ibox'); var content = $(this).closest('div.ibox');
content.remove(); content.remove();
}); });
// Fullscreen ibox function // Fullscreen ibox function
$('.fullscreen-link').on('click', function (e) { $('.fullscreen-link').on('click', function (e) {
e.preventDefault(); e.preventDefault();
var ibox = $(this).closest('div.ibox'); var ibox = $(this).closest('div.ibox');
var button = $(this).find('i'); var button = $(this).find('i');
$('body').toggleClass('fullscreen-ibox-mode'); $('body').toggleClass('fullscreen-ibox-mode');
button.toggleClass('fa-expand').toggleClass('fa-compress'); button.toggleClass('fa-expand').toggleClass('fa-compress');
ibox.toggleClass('fullscreen'); ibox.toggleClass('fullscreen');
setTimeout(function () { setTimeout(function () {
$(window).trigger('resize'); $(window).trigger('resize');
}, 100); }, 100);
}); });
// Run menu of canvas // Run menu of canvas
$('body.canvas-menu .sidebar-collapse').slimScroll({ $('body.canvas-menu .sidebar-collapse').slimScroll({
height: '100%', height: '100%',
railOpacity: 0.9 railOpacity: 0.9
}); });
// Open close right sidebar // Open close right sidebar
$('.right-sidebar-toggle').on('click', function (e) { $('.right-sidebar-toggle').on('click', function (e) {
e.preventDefault(); e.preventDefault();
$('#right-sidebar').toggleClass('sidebar-open'); $('#right-sidebar').toggleClass('sidebar-open');
}); });
// Initialize slimscroll for right sidebar // Initialize slimscroll for right sidebar
$('.sidebar-container').slimScroll({ $('.sidebar-container').slimScroll({
height: '100%', height: '100%',
railOpacity: 0.4, railOpacity: 0.4,
wheelStep: 10 wheelStep: 10
}); });
// Open close small chat // Open close small chat
$('.open-small-chat').on('click', function (e) { $('.open-small-chat').on('click', function (e) {
e.preventDefault(); e.preventDefault();
$(this).children().toggleClass('fa-comments').toggleClass('fa-times'); $(this).children().toggleClass('fa-comments').toggleClass('fa-times');
$('.small-chat-box').toggleClass('active'); $('.small-chat-box').toggleClass('active');
}); });
// Initialize slimscroll for small chat // Initialize slimscroll for small chat
$('.small-chat-box .content').slimScroll({ $('.small-chat-box .content').slimScroll({
height: '234px', height: '234px',
railOpacity: 0.4 railOpacity: 0.4
}); });
// Small todo handler // Small todo handler
$('.check-link').on('click', function () { $('.check-link').on('click', function () {
var button = $(this).find('i'); var button = $(this).find('i');
var label = $(this).next('span'); var label = $(this).next('span');
button.toggleClass('fa-check-square').toggleClass('fa-square-o'); button.toggleClass('fa-check-square').toggleClass('fa-square-o');
label.toggleClass('todo-completed'); label.toggleClass('todo-completed');
return false; return false;
}); });
// Append config box / Only for demo purpose // Append config box / Only for demo purpose
// Uncomment on server mode to enable XHR calls // Uncomment on server mode to enable XHR calls
//$.get("skin-config.html", function (data) { //$.get("skin-config.html", function (data) {
// if (!$('body').hasClass('no-skin-config')) // if (!$('body').hasClass('no-skin-config'))
// $('body').append(data); // $('body').append(data);
//}); //});
// Tooltips demo // Tooltips demo
$('.tooltip-demo').tooltip({ $('.tooltip-demo').tooltip({
selector: "[data-toggle=tooltip]", selector: "[data-toggle=tooltip]",
container: "body" container: "body"
}); });
// Move right sidebar top after scroll // Move right sidebar top after scroll
$(window).scroll(function () { $(window).scroll(function () {
if ($(window).scrollTop() > 0 && !$('body').hasClass('fixed-nav')) { if ($(window).scrollTop() > 0 && !$('body').hasClass('fixed-nav')) {
$('#right-sidebar').addClass('sidebar-top'); $('#right-sidebar').addClass('sidebar-top');
} else { } else {
$('#right-sidebar').removeClass('sidebar-top'); $('#right-sidebar').removeClass('sidebar-top');
} }
}); });
$("[data-toggle=popover]") $("[data-toggle=popover]")
.popover(); .popover();
// Add slimscroll to element // Add slimscroll to element
$('.full-height-scroll').slimscroll({ $('.full-height-scroll').slimscroll({
height: '100%' height: '100%'
}) })
}); });
// Fixed Sidebar // Fixed Sidebar
$(window).bind("load", function () { $(window).bind("load", function () {
if ($("body").hasClass('fixed-sidebar')) { if ($("body").hasClass('fixed-sidebar')) {
$('.sidebar-collapse').slimScroll({ $('.sidebar-collapse').slimScroll({
height: '100%', height: '100%',
railOpacity: 0.9 railOpacity: 0.9
}); });
} }
}); });
function fix_height() { function fix_height() {
var heightWithoutNavbar = $("body > #wrapper").height() - 62; var heightWithoutNavbar = $("body > #wrapper").height() - 62;
$(".sidebar-panel").css("min-height", heightWithoutNavbar + "px"); $(".sidebar-panel").css("min-height", heightWithoutNavbar + "px");
var navbarheight = $('nav.navbar-default').height(); var navbarheight = $('nav.navbar-default').height();
var wrapperHeight = $('#page-wrapper').height(); var wrapperHeight = $('#page-wrapper').height();
if (navbarheight > wrapperHeight) { if (navbarheight > wrapperHeight) {
$('#page-wrapper').css("min-height", navbarheight + "px"); $('#page-wrapper').css("min-height", navbarheight + "px");
} }
if (navbarheight < wrapperHeight) { if (navbarheight < wrapperHeight) {
$('#page-wrapper').css("min-height", $(window).height() + "px"); $('#page-wrapper').css("min-height", $(window).height() + "px");
} }
if ($('body').hasClass('fixed-nav')) { if ($('body').hasClass('fixed-nav')) {
if (navbarheight > wrapperHeight) { if (navbarheight > wrapperHeight) {
$('#page-wrapper').css("min-height", navbarheight + "px"); $('#page-wrapper').css("min-height", navbarheight + "px");
} else { } else {
$('#page-wrapper').css("min-height", $(window).height() - 60 + "px"); $('#page-wrapper').css("min-height", $(window).height() - 60 + "px");
} }
} }
} }
$(window).bind("load resize scroll", function () { $(window).bind("load resize scroll", function () {
// Full height of sidebar // Full height of sidebar
setTimeout(function () { setTimeout(function () {
if (!$("body").hasClass('body-small')) { if (!$("body").hasClass('body-small')) {
fix_height(); fix_height();
} }
}) })
}); });
// Minimalize menu when screen is less than 768px // Minimalize menu when screen is less than 768px
$(window).bind("resize", function () { $(window).bind("resize", function () {
if ($(this).width() < 769) { if ($(this).width() < 769) {
$('body').addClass('body-small') $('body').addClass('body-small')
} else { } else {
$('body').removeClass('body-small') $('body').removeClass('body-small')
} }
}); });
// Local Storage functions // Local Storage functions
// Set proper body class and plugins based on user configuration // Set proper body class and plugins based on user configuration
$(document).ready(function () { $(document).ready(function () {
if (localStorageSupport()) { if (localStorageSupport()) {
var collapse = localStorage.getItem("collapse_menu"); var collapse = localStorage.getItem("collapse_menu");
var fixedsidebar = localStorage.getItem("fixedsidebar"); var fixedsidebar = localStorage.getItem("fixedsidebar");
var fixednavbar = localStorage.getItem("fixednavbar"); var fixednavbar = localStorage.getItem("fixednavbar");
var boxedlayout = localStorage.getItem("boxedlayout"); var boxedlayout = localStorage.getItem("boxedlayout");
var fixedfooter = localStorage.getItem("fixedfooter"); var fixedfooter = localStorage.getItem("fixedfooter");
var body = $('body'); var body = $('body');
if (fixedsidebar == 'on') { if (fixedsidebar == 'on') {
body.addClass('fixed-sidebar'); body.addClass('fixed-sidebar');
$('.sidebar-collapse').slimScroll({ $('.sidebar-collapse').slimScroll({
height: '100%', height: '100%',
railOpacity: 0.9 railOpacity: 0.9
}); });
} }
if (collapse == 'on') { if (collapse == 'on') {
if (body.hasClass('fixed-sidebar')) { if (body.hasClass('fixed-sidebar')) {
if (!body.hasClass('body-small')) { if (!body.hasClass('body-small')) {
body.addClass('mini-navbar'); body.addClass('mini-navbar');
} }
} else { } else {
if (!body.hasClass('body-small')) { if (!body.hasClass('body-small')) {
body.addClass('mini-navbar'); body.addClass('mini-navbar');
} }
} }
} }
if (fixednavbar == 'on') { if (fixednavbar == 'on') {
$(".navbar-static-top").removeClass('navbar-static-top').addClass('navbar-fixed-top'); $(".navbar-static-top").removeClass('navbar-static-top').addClass('navbar-fixed-top');
body.addClass('fixed-nav'); body.addClass('fixed-nav');
} }
if (boxedlayout == 'on') { if (boxedlayout == 'on') {
body.addClass('boxed-layout'); body.addClass('boxed-layout');
} }
if (fixedfooter == 'on') { if (fixedfooter == 'on') {
$(".footer").addClass('fixed'); $(".footer").addClass('fixed');
} }
} }
}); });
// check if browser support HTML5 local storage // check if browser support HTML5 local storage
function localStorageSupport() { function localStorageSupport() {
return (('localStorage' in window) && window['localStorage'] !== null) return (('localStorage' in window) && window['localStorage'] !== null)
} }
// For demo purpose - animation css script // For demo purpose - animation css script
function animationHover(element, animation) { function animationHover(element, animation) {
element = $(element); element = $(element);
element.hover( element.hover(
function () { function () {
element.addClass('animated ' + animation); element.addClass('animated ' + animation);
}, },
function () { function () {
//wait for animation to finish before removing classes //wait for animation to finish before removing classes
window.setTimeout(function () { window.setTimeout(function () {
element.removeClass('animated ' + animation); element.removeClass('animated ' + animation);
}, 2000); }, 2000);
}); });
} }
// Dragable panels // Dragable panels
function WinMove() { function WinMove() {
var element = "[class*=col]"; var element = "[class*=col]";
var handle = ".ibox-title"; var handle = ".ibox-title";
var connect = "[class*=col]"; var connect = "[class*=col]";
$(element).sortable( $(element).sortable(
{ {
handle: handle, handle: handle,
connectWith: connect, connectWith: connect,
tolerance: 'pointer', tolerance: 'pointer',
forcePlaceholderSize: true, forcePlaceholderSize: true,
opacity: 0.8 opacity: 0.8
}) })
.disableSelection(); .disableSelection();
} }
/*! /*!
* metismenu - v2.7.7 * metismenu - v2.7.7
* A jQuery menu plugin * A jQuery menu plugin
* https://github.com/onokumus/metismenu#readme * https://github.com/onokumus/metismenu#readme
* *
* Made by Osman Nuri Okumus <onokumus@gmail.com> (https://github.com/onokumus) * Made by Osman Nuri Okumus <onokumus@gmail.com> (https://github.com/onokumus)
* Under MIT License * Under MIT License
*/ */
(function (global, factory) { (function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery')) : typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery')) :
typeof define === 'function' && define.amd ? define(['jquery'], factory) : typeof define === 'function' && define.amd ? define(['jquery'], factory) :
(global.metisMenu = factory(global.jQuery)); (global.metisMenu = factory(global.jQuery));
}(this, (function ($) { 'use strict'; }(this, (function ($) { 'use strict';
$ = $ && $.hasOwnProperty('default') ? $['default'] : $; $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
function _defineProperty(obj, key, value) { function _defineProperty(obj, key, value) {
if (key in obj) { if (key in obj) {
Object.defineProperty(obj, key, { Object.defineProperty(obj, key, {
value: value, value: value,
enumerable: true, enumerable: true,
configurable: true, configurable: true,
writable: true writable: true
}); });
} else { } else {
obj[key] = value; obj[key] = value;
} }
return obj; return obj;
} }
function _objectSpread(target) { function _objectSpread(target) {
for (var i = 1; i < arguments.length; i++) { for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {}; var source = arguments[i] != null ? arguments[i] : {};
var ownKeys = Object.keys(source); var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === 'function') { if (typeof Object.getOwnPropertySymbols === 'function') {
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable; return Object.getOwnPropertyDescriptor(source, sym).enumerable;
})); }));
} }
ownKeys.forEach(function (key) { ownKeys.forEach(function (key) {
_defineProperty(target, key, source[key]); _defineProperty(target, key, source[key]);
}); });
} }
return target; return target;
} }
var Util = function ($$$1) { var Util = function ($$$1) {
// eslint-disable-line no-shadow // eslint-disable-line no-shadow
var TRANSITION_END = 'transitionend'; var TRANSITION_END = 'transitionend';
var Util = { var Util = {
// eslint-disable-line no-shadow // eslint-disable-line no-shadow
TRANSITION_END: 'mmTransitionEnd', TRANSITION_END: 'mmTransitionEnd',
triggerTransitionEnd: function triggerTransitionEnd(element) { triggerTransitionEnd: function triggerTransitionEnd(element) {
$$$1(element).trigger(TRANSITION_END); $$$1(element).trigger(TRANSITION_END);
}, },
supportsTransitionEnd: function supportsTransitionEnd() { supportsTransitionEnd: function supportsTransitionEnd() {
return Boolean(TRANSITION_END); return Boolean(TRANSITION_END);
} }
}; };
function getSpecialTransitionEndEvent() { function getSpecialTransitionEndEvent() {
return { return {
bindType: TRANSITION_END, bindType: TRANSITION_END,
delegateType: TRANSITION_END, delegateType: TRANSITION_END,
handle: function handle(event) { handle: function handle(event) {
if ($$$1(event.target).is(this)) { if ($$$1(event.target).is(this)) {
return event.handleObj.handler.apply(this, arguments); // eslint-disable-line prefer-rest-params return event.handleObj.handler.apply(this, arguments); // eslint-disable-line prefer-rest-params
} }
return undefined; return undefined;
} }
}; };
} }
function transitionEndEmulator(duration) { function transitionEndEmulator(duration) {
var _this = this; var _this = this;
var called = false; var called = false;
$$$1(this).one(Util.TRANSITION_END, function () { $$$1(this).one(Util.TRANSITION_END, function () {
called = true; called = true;
}); });
setTimeout(function () { setTimeout(function () {
if (!called) { if (!called) {
Util.triggerTransitionEnd(_this); Util.triggerTransitionEnd(_this);
} }
}, duration); }, duration);
return this; return this;
} }
function setTransitionEndSupport() { function setTransitionEndSupport() {
$$$1.fn.mmEmulateTransitionEnd = transitionEndEmulator; // eslint-disable-line no-param-reassign $$$1.fn.mmEmulateTransitionEnd = transitionEndEmulator; // eslint-disable-line no-param-reassign
// eslint-disable-next-line no-param-reassign // eslint-disable-next-line no-param-reassign
$$$1.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent(); $$$1.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent();
} }
setTransitionEndSupport(); setTransitionEndSupport();
return Util; return Util;
}($); }($);
var MetisMenu = function ($$$1) { var MetisMenu = function ($$$1) {
// eslint-disable-line no-shadow // eslint-disable-line no-shadow
var NAME = 'metisMenu'; var NAME = 'metisMenu';
var DATA_KEY = 'metisMenu'; var DATA_KEY = 'metisMenu';
var EVENT_KEY = "." + DATA_KEY; var EVENT_KEY = "." + DATA_KEY;
var DATA_API_KEY = '.data-api'; var DATA_API_KEY = '.data-api';
var JQUERY_NO_CONFLICT = $$$1.fn[NAME]; var JQUERY_NO_CONFLICT = $$$1.fn[NAME];
var TRANSITION_DURATION = 350; var TRANSITION_DURATION = 350;
var Default = { var Default = {
toggle: true, toggle: true,
preventDefault: true, preventDefault: true,
activeClass: 'active', activeClass: 'active',
collapseClass: 'collapse', collapseClass: 'collapse',
collapseInClass: 'in', collapseInClass: 'in',
collapsingClass: 'collapsing', collapsingClass: 'collapsing',
triggerElement: 'a', triggerElement: 'a',
parentTrigger: 'li', parentTrigger: 'li',
subMenu: 'ul' subMenu: 'ul'
}; };
var Event = { var Event = {
SHOW: "show" + EVENT_KEY, SHOW: "show" + EVENT_KEY,
SHOWN: "shown" + EVENT_KEY, SHOWN: "shown" + EVENT_KEY,
HIDE: "hide" + EVENT_KEY, HIDE: "hide" + EVENT_KEY,
HIDDEN: "hidden" + EVENT_KEY, HIDDEN: "hidden" + EVENT_KEY,
CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
}; };
var MetisMenu = var MetisMenu =
/*#__PURE__*/ /*#__PURE__*/
function () { function () {
// eslint-disable-line no-shadow // eslint-disable-line no-shadow
function MetisMenu(element, config) { function MetisMenu(element, config) {
this.element = element; this.element = element;
this.config = _objectSpread({}, Default, config); this.config = _objectSpread({}, Default, config);
this.transitioning = null; this.transitioning = null;
this.init(); this.init();
} }
var _proto = MetisMenu.prototype; var _proto = MetisMenu.prototype;
_proto.init = function init() { _proto.init = function init() {
var self = this; var self = this;
var conf = this.config; var conf = this.config;
$$$1(this.element).find(conf.parentTrigger + "." + conf.activeClass).has(conf.subMenu).children(conf.subMenu).attr('aria-expanded', true).addClass(conf.collapseClass + " " + conf.collapseInClass); $$$1(this.element).find(conf.parentTrigger + "." + conf.activeClass).has(conf.subMenu).children(conf.subMenu).attr('aria-expanded', true).addClass(conf.collapseClass + " " + conf.collapseInClass);
$$$1(this.element).find(conf.parentTrigger).not("." + conf.activeClass).has(conf.subMenu).children(conf.subMenu).attr('aria-expanded', false).addClass(conf.collapseClass); $$$1(this.element).find(conf.parentTrigger).not("." + conf.activeClass).has(conf.subMenu).children(conf.subMenu).attr('aria-expanded', false).addClass(conf.collapseClass);
$$$1(this.element).find(conf.parentTrigger).has(conf.subMenu).children(conf.triggerElement).on(Event.CLICK_DATA_API, function (e) { $$$1(this.element).find(conf.parentTrigger).has(conf.subMenu).children(conf.triggerElement).on(Event.CLICK_DATA_API, function (e) {
// eslint-disable-line func-names // eslint-disable-line func-names
var eTar = $$$1(this); var eTar = $$$1(this);
var paRent = eTar.parent(conf.parentTrigger); var paRent = eTar.parent(conf.parentTrigger);
var sibLings = paRent.siblings(conf.parentTrigger).children(conf.triggerElement); var sibLings = paRent.siblings(conf.parentTrigger).children(conf.triggerElement);
var List = paRent.children(conf.subMenu); var List = paRent.children(conf.subMenu);
if (conf.preventDefault) { if (conf.preventDefault) {
e.preventDefault(); e.preventDefault();
} }
if (eTar.attr('aria-disabled') === 'true') { if (eTar.attr('aria-disabled') === 'true') {
return; return;
} }
if (paRent.hasClass(conf.activeClass)) { if (paRent.hasClass(conf.activeClass)) {
eTar.attr('aria-expanded', false); eTar.attr('aria-expanded', false);
self.hide(List); self.hide(List);
} else { } else {
self.show(List); self.show(List);
eTar.attr('aria-expanded', true); eTar.attr('aria-expanded', true);
if (conf.toggle) { if (conf.toggle) {
sibLings.attr('aria-expanded', false); sibLings.attr('aria-expanded', false);
} }
} }
if (conf.onTransitionStart) { if (conf.onTransitionStart) {
conf.onTransitionStart(e); conf.onTransitionStart(e);
} }
}); });
}; };
_proto.show = function show(element) { _proto.show = function show(element) {
var _this = this; var _this = this;
if (this.transitioning || $$$1(element).hasClass(this.config.collapsingClass)) { if (this.transitioning || $$$1(element).hasClass(this.config.collapsingClass)) {
return; return;
} }
var elem = $$$1(element); var elem = $$$1(element);
var startEvent = $$$1.Event(Event.SHOW); var startEvent = $$$1.Event(Event.SHOW);
elem.trigger(startEvent); elem.trigger(startEvent);
if (startEvent.isDefaultPrevented()) { if (startEvent.isDefaultPrevented()) {
return; return;
} }
elem.parent(this.config.parentTrigger).addClass(this.config.activeClass); elem.parent(this.config.parentTrigger).addClass(this.config.activeClass);
if (this.config.toggle) { if (this.config.toggle) {
this.hide(elem.parent(this.config.parentTrigger).siblings().children(this.config.subMenu + "." + this.config.collapseInClass).attr('aria-expanded', false)); this.hide(elem.parent(this.config.parentTrigger).siblings().children(this.config.subMenu + "." + this.config.collapseInClass).attr('aria-expanded', false));
} }
elem.removeClass(this.config.collapseClass).addClass(this.config.collapsingClass).height(0); elem.removeClass(this.config.collapseClass).addClass(this.config.collapsingClass).height(0);
this.setTransitioning(true); this.setTransitioning(true);
var complete = function complete() { var complete = function complete() {
// check if disposed // check if disposed
if (!_this.config || !_this.element) { if (!_this.config || !_this.element) {
return; return;
} }
elem.removeClass(_this.config.collapsingClass).addClass(_this.config.collapseClass + " " + _this.config.collapseInClass).height('').attr('aria-expanded', true); elem.removeClass(_this.config.collapsingClass).addClass(_this.config.collapseClass + " " + _this.config.collapseInClass).height('').attr('aria-expanded', true);
_this.setTransitioning(false); _this.setTransitioning(false);
elem.trigger(Event.SHOWN); elem.trigger(Event.SHOWN);
}; };
if (!Util.supportsTransitionEnd()) { if (!Util.supportsTransitionEnd()) {
complete(); complete();
return; return;
} }
elem.height(element[0].scrollHeight).one(Util.TRANSITION_END, complete).mmEmulateTransitionEnd(TRANSITION_DURATION); elem.height(element[0].scrollHeight).one(Util.TRANSITION_END, complete).mmEmulateTransitionEnd(TRANSITION_DURATION);
}; };
_proto.hide = function hide(element) { _proto.hide = function hide(element) {
var _this2 = this; var _this2 = this;
if (this.transitioning || !$$$1(element).hasClass(this.config.collapseInClass)) { if (this.transitioning || !$$$1(element).hasClass(this.config.collapseInClass)) {
return; return;
} }
var elem = $$$1(element); var elem = $$$1(element);
var startEvent = $$$1.Event(Event.HIDE); var startEvent = $$$1.Event(Event.HIDE);
elem.trigger(startEvent); elem.trigger(startEvent);
if (startEvent.isDefaultPrevented()) { if (startEvent.isDefaultPrevented()) {
return; return;
} }
elem.parent(this.config.parentTrigger).removeClass(this.config.activeClass); // eslint-disable-next-line no-unused-expressions elem.parent(this.config.parentTrigger).removeClass(this.config.activeClass); // eslint-disable-next-line no-unused-expressions
elem.height(elem.height())[0].offsetHeight; elem.height(elem.height())[0].offsetHeight;
elem.addClass(this.config.collapsingClass).removeClass(this.config.collapseClass).removeClass(this.config.collapseInClass); elem.addClass(this.config.collapsingClass).removeClass(this.config.collapseClass).removeClass(this.config.collapseInClass);
this.setTransitioning(true); this.setTransitioning(true);
var complete = function complete() { var complete = function complete() {
// check if disposed // check if disposed
if (!_this2.config || !_this2.element) { if (!_this2.config || !_this2.element) {
return; return;
} }
if (_this2.transitioning && _this2.config.onTransitionEnd) { if (_this2.transitioning && _this2.config.onTransitionEnd) {
_this2.config.onTransitionEnd(); _this2.config.onTransitionEnd();
} }
_this2.setTransitioning(false); _this2.setTransitioning(false);
elem.trigger(Event.HIDDEN); elem.trigger(Event.HIDDEN);
elem.removeClass(_this2.config.collapsingClass).addClass(_this2.config.collapseClass).attr('aria-expanded', false); elem.removeClass(_this2.config.collapsingClass).addClass(_this2.config.collapseClass).attr('aria-expanded', false);
}; };
if (!Util.supportsTransitionEnd()) { if (!Util.supportsTransitionEnd()) {
complete(); complete();
return; return;
} }
if (elem.height() === 0 || elem.css('display') === 'none') { if (elem.height() === 0 || elem.css('display') === 'none') {
complete(); complete();
} else { } else {
elem.height(0).one(Util.TRANSITION_END, complete).mmEmulateTransitionEnd(TRANSITION_DURATION); elem.height(0).one(Util.TRANSITION_END, complete).mmEmulateTransitionEnd(TRANSITION_DURATION);
} }
}; };
_proto.setTransitioning = function setTransitioning(isTransitioning) { _proto.setTransitioning = function setTransitioning(isTransitioning) {
this.transitioning = isTransitioning; this.transitioning = isTransitioning;
}; };
_proto.dispose = function dispose() { _proto.dispose = function dispose() {
$$$1.removeData(this.element, DATA_KEY); $$$1.removeData(this.element, DATA_KEY);
$$$1(this.element).find(this.config.parentTrigger).has(this.config.subMenu).children(this.config.triggerElement).off('click'); $$$1(this.element).find(this.config.parentTrigger).has(this.config.subMenu).children(this.config.triggerElement).off('click');
this.transitioning = null; this.transitioning = null;
this.config = null; this.config = null;
this.element = null; this.element = null;
}; };
MetisMenu.jQueryInterface = function jQueryInterface(config) { MetisMenu.jQueryInterface = function jQueryInterface(config) {
// eslint-disable-next-line func-names // eslint-disable-next-line func-names
return this.each(function () { return this.each(function () {
var $this = $$$1(this); var $this = $$$1(this);
var data = $this.data(DATA_KEY); var data = $this.data(DATA_KEY);
var conf = _objectSpread({}, Default, $this.data(), typeof config === 'object' && config ? config : {}); var conf = _objectSpread({}, Default, $this.data(), typeof config === 'object' && config ? config : {});
if (!data && /dispose/.test(config)) { if (!data && /dispose/.test(config)) {
this.dispose(); this.dispose();
} }
if (!data) { if (!data) {
data = new MetisMenu(this, conf); data = new MetisMenu(this, conf);
$this.data(DATA_KEY, data); $this.data(DATA_KEY, data);
} }
if (typeof config === 'string') { if (typeof config === 'string') {
if (data[config] === undefined) { if (data[config] === undefined) {
throw new Error("No method named \"" + config + "\""); throw new Error("No method named \"" + config + "\"");
} }
data[config](); data[config]();
} }
}); });
}; };
return MetisMenu; return MetisMenu;
}(); }();
/** /**
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
* jQuery * jQuery
* ------------------------------------------------------------------------ * ------------------------------------------------------------------------
*/ */
$$$1.fn[NAME] = MetisMenu.jQueryInterface; // eslint-disable-line no-param-reassign $$$1.fn[NAME] = MetisMenu.jQueryInterface; // eslint-disable-line no-param-reassign
$$$1.fn[NAME].Constructor = MetisMenu; // eslint-disable-line no-param-reassign $$$1.fn[NAME].Constructor = MetisMenu; // eslint-disable-line no-param-reassign
$$$1.fn[NAME].noConflict = function () { $$$1.fn[NAME].noConflict = function () {
// eslint-disable-line no-param-reassign // eslint-disable-line no-param-reassign
$$$1.fn[NAME] = JQUERY_NO_CONFLICT; // eslint-disable-line no-param-reassign $$$1.fn[NAME] = JQUERY_NO_CONFLICT; // eslint-disable-line no-param-reassign
return MetisMenu.jQueryInterface; return MetisMenu.jQueryInterface;
}; };
return MetisMenu; return MetisMenu;
}($); }($);
return MetisMenu; return MetisMenu;
}))); })));
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment