Files
smartbooking/src/main/webapp/app/shared/config/config.ts
Simone Bierti b4d0ca4898 Add ROLE_INCARICATO, configure mail, and add booking visualization specs
- Add ROLE_INCARICATO authority (AuthoritiesConstants, authority.csv)
- Configure SMTP mail settings for dev and prod environments
- Add faIdCard icon to FontAwesome config
- Add feature spec for booking visualization and management by role

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-11 15:48:02 +02:00

110 lines
4.3 KiB
TypeScript

import type { App } from 'vue';
import { type IntlDateTimeFormats, createI18n } from 'vue-i18n';
import { library } from '@fortawesome/fontawesome-svg-core';
import { faArrowLeft } from '@fortawesome/free-solid-svg-icons/faArrowLeft';
import { faAsterisk } from '@fortawesome/free-solid-svg-icons/faAsterisk';
import { faBan } from '@fortawesome/free-solid-svg-icons/faBan';
import { faBars } from '@fortawesome/free-solid-svg-icons/faBars';
import { faBell } from '@fortawesome/free-solid-svg-icons/faBell';
import { faBook } from '@fortawesome/free-solid-svg-icons/faBook';
import { faCloud } from '@fortawesome/free-solid-svg-icons/faCloud';
import { faClock } from '@fortawesome/free-solid-svg-icons/faClock';
import { faCogs } from '@fortawesome/free-solid-svg-icons/faCogs';
import { faDatabase } from '@fortawesome/free-solid-svg-icons/faDatabase';
import { faEye } from '@fortawesome/free-solid-svg-icons/faEye';
import { faFlag } from '@fortawesome/free-solid-svg-icons/faFlag';
import { faHeart } from '@fortawesome/free-solid-svg-icons/faHeart';
import { faHome } from '@fortawesome/free-solid-svg-icons/faHome';
import { faIdCard } from '@fortawesome/free-solid-svg-icons/faIdCard';
import { faList } from '@fortawesome/free-solid-svg-icons/faList';
import { faLock } from '@fortawesome/free-solid-svg-icons/faLock';
import { faPencilAlt } from '@fortawesome/free-solid-svg-icons/faPencilAlt';
import { faPlus } from '@fortawesome/free-solid-svg-icons/faPlus';
import { faRoad } from '@fortawesome/free-solid-svg-icons/faRoad';
import { faSave } from '@fortawesome/free-solid-svg-icons/faSave';
import { faSearch } from '@fortawesome/free-solid-svg-icons/faSearch';
import { faSignInAlt } from '@fortawesome/free-solid-svg-icons/faSignInAlt';
import { faSignOutAlt } from '@fortawesome/free-solid-svg-icons/faSignOutAlt';
import { faSort } from '@fortawesome/free-solid-svg-icons/faSort';
import { faSortDown } from '@fortawesome/free-solid-svg-icons/faSortDown';
import { faSortUp } from '@fortawesome/free-solid-svg-icons/faSortUp';
import { faSync } from '@fortawesome/free-solid-svg-icons/faSync';
import { faTachometerAlt } from '@fortawesome/free-solid-svg-icons/faTachometerAlt';
import { faTasks } from '@fortawesome/free-solid-svg-icons/faTasks';
import { faThList } from '@fortawesome/free-solid-svg-icons/faThList';
import { faTimes } from '@fortawesome/free-solid-svg-icons/faTimes';
import { faTimesCircle } from '@fortawesome/free-solid-svg-icons/faTimesCircle';
import { faTrash } from '@fortawesome/free-solid-svg-icons/faTrash';
import { faUser } from '@fortawesome/free-solid-svg-icons/faUser';
import { faUserPlus } from '@fortawesome/free-solid-svg-icons/faUserPlus';
import { faUsers } from '@fortawesome/free-solid-svg-icons/faUsers';
import { faUsersCog } from '@fortawesome/free-solid-svg-icons/faUsersCog';
import { faWrench } from '@fortawesome/free-solid-svg-icons/faWrench';
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';
const datetimeFormats: IntlDateTimeFormats = {
it: {
short: { year: 'numeric', month: 'short', day: 'numeric', hour: 'numeric', minute: 'numeric' },
medium: { year: 'numeric', month: 'short', day: 'numeric', weekday: 'short', hour: 'numeric', minute: 'numeric' },
long: { year: 'numeric', month: 'long', day: 'numeric', weekday: 'long', hour: 'numeric', minute: 'numeric' },
},
// jhipster-needle-i18n-language-date-time-format - JHipster will add/remove format options in this object
};
export function initFortAwesome(vue: App) {
vue.component('FontAwesomeIcon', FontAwesomeIcon);
library.add(
faArrowLeft,
faAsterisk,
faBan,
faBars,
faBell,
faBook,
faCloud,
faClock,
faCogs,
faDatabase,
faEye,
faFlag,
faHeart,
faHome,
faIdCard,
faList,
faLock,
faPencilAlt,
faPlus,
faRoad,
faSave,
faSearch,
faSignInAlt,
faSignOutAlt,
faSort,
faSortDown,
faSortUp,
faSync,
faTachometerAlt,
faTasks,
faThList,
faTimes,
faTimesCircle,
faTrash,
faUser,
faUserPlus,
faUsers,
faUsersCog,
faWrench,
);
}
export function initI18N(opts: any = {}) {
return createI18n({
missingWarn: false,
fallbackWarn: false,
legacy: false,
datetimeFormats,
silentTranslationWarn: true,
...opts,
});
}