Skip to content

Commit 5ef7323

Browse files
astagiCristian BorelliCristian Borellicri99
authored
feat: new version for angular 14
* update angular cli@7 * aggiornamento app demo ad angular 7 * updating peer dependencies * aggiornamento ad angular 8 * fix component type resolution * aggiornamento ad angular 9 * aggiornamento angular 10 * fix test cases * update peer dependencies * Aggiornamento ad angular 11 * Aggiornamento ad angular 12 * aggiornamento bootstrap-italia e fix aggiornamento angular 12 * minor fix * aggiornamento generale dipendenze * inizializzazione IconComponent * fix tipi allineamenti icone * rimossa icona deprecata "it-favorite" * inizializzazione prefix & suffix in it-input * Aggiunta retrocompatibilità per utilizzo proprietà "icon" su it-input * aggiunto ng-bootstrap * fix polyfills * update ng 13 * fix test icone * fix package * update package lock * update ng 14 * fix icone bootstrap italia 2 * Completato Wrapper direttiva NgbPopover * corretta pagina popover * sostituito vecchio componente popover con nuovo * fix popover con configurazioni * tooltip con ng bootstrap * aggiornamento documentazione tooltip * Aggiornata direttiva badge * aggiornamento breadcrumb * corretto disabled e mouse--focus su componente bottone * aggiunto supporto per rounded-icon e rounded-color; aggiunto supporto per bottoni con icona * Aggiornata documentazione bottone con icona * migliorata doc per checkbox * Trasformato componente bottone in direttiva per agevolarne l'utilizzo e renderlo compatibile con elementi contenitori * cambio nome file di spec * Aggiornamento componente e documentazione per checkbox * Aggiunto supporto per checkbox indeterminate * inizializzazione ngbootstrap wrapper per collapse * fix collapse group * Aggiornamento doc collapse * corretti test collapsed * Collapse funzionante * setup dropdown * fix menu dropdown * dropdown ok con nuove direttive * inizio setup componenti per dropdown * miglioramento dropdown, manca solo da sistemare colorazione icona dropdown-toggle * Auto aggiornamento colore icona in base al colore del bottone contenitore * rimoosso frammento di esempio per dropdown * Auto aggiornamento colore icone in dropdown in base al tema * Aggiornamento progress bar * supporto progress bar in componente button * correto test controllo apertura dropdown * rimozione componente progress-bar-height * chore(deps): restore deps and package lock * chore(deps): force update dependencies * Migliorata gestione icona e focus in form-input * riorganizzazione doc per form input icone e bottoni * label sempre su per input time * Label form input sempre in posizione superiore in caso di presenza di placeholder * Campo di input inserito in input-group in base ad elementi accessori * fix posizione label in caso di presenza placeholder alla creazione del componente * snellimento doc per form input con icone e bottoni * Corretta colorazione codice HTML e TS con ngx-highlightjs * miglioramento links a componenti in sidebar * aggiornato supporto password mode per form input * Inzio implementazione indicatore sicurezza password * migliorato algoritmo indicatore sicurezza password * Aggiornamento intestazione superiore e aggiunta font boostrap-italia * Aggiunto supporto per rilevamento CAPS LOCK in form input * fix icona password * gestione readonly nella forma stilizzata come testo normale * Ristrutturazione e aggiornamento autocomplete su form-input * lista autocomplete non visibile se input vuoto * Supporto per autocomplete di grandi dimensioni * Aggiunto supporto per label visually-hidden * Aggiunto supporto per max, min e step in form-input * Aggiunto supporto per valuta in form-input numerico * correzione label + supporto tipo percentuale su form-input numerico * Fix form-input non numerico * Misuratore sicurezza password in base a sorgente attuale di bootstrap-italia * Aggiunto supporto per input numerico con ridimensionamento * Aggiunta direttiva per facilitare l'aggiunta della class "focus--mouse" * fix form-input width per icone * Aggiornamento tempalte codice per input numerico * Aggiunta documentazione per form input date * Aggiunto supporto per input di tipo date * Aggiunta a documentazione progress bar indeterminate e pulsante con progress bar * fix test form-input autocomplete * fix test automatici * Aggiunti fonts in assets progetto documentazione * Importazione libreria scss di bootstrap-italia da styles.scss * Aggiunti commenti per modificare variabili sass * modificato tema highlight * codice di esempio senza padding * Adeguata doc form-input come standard bootstrap-italia * fix evidenzazione del testo in input search * adeguamento docs badge * adeguamento docs per breadcrumb * adeguamento docs per button * Corretti stili tutti titoli e sotto titoli componenti docs * adeguamento docs per checkbox * adeguamento docs per collapse + popover * adeguamento docs per progress bar + radio * adeguamento docs per toggle + tabs * adeguamento docs per tooltip * Corretto readme.md con nuove info su come personalizzare la libreria + aggiornamento copyright * Aggiunti tutti gli input types per form input * Aggiornate dipendenze * Aggiornamento public_api.ts Co-authored-by: Cristian Borelli <[email protected]> Co-authored-by: Cristian Borelli <[email protected]> Co-authored-by: Cristian Borelli <[email protected]>
1 parent 4f883a9 commit 5ef7323

File tree

350 files changed

+28117
-13401
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

350 files changed

+28117
-13401
lines changed
File renamed without changes.

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/out-tsc
77

88
# dependencies
9-
/node_modules
9+
**/node_modules
1010

1111
# IDEs and editors
1212
/.idea
@@ -21,6 +21,7 @@
2121
.vscode/*
2222

2323
# misc
24+
/.angular/cache
2425
/.sass-cache
2526
/connect.lock
2627
/coverage

AUTHORS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
Copyright (c) 2018 Presidenza del Consiglio dei Ministri
1+
Copyright (c) 2022 Presidenza del Consiglio dei Ministri
22

33
The version control system provides attribution for specific lines of code.

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
BSD 3-Clause License
22

3-
Copyright (c) 2018, the respective contributors, as shown by the AUTHORS file.
3+
Copyright (c) 2022, the respective contributors, as shown by the AUTHORS file.
44

55
Redistribution and use in source and binary forms, with or without
66
modification, are permitted provided that the following conditions are met:

README.md

Lines changed: 43 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,52 @@ Design Angular Kit è disponibile su NPM, se hai una applicazione esistente eseg
2222
npm install design-angular-kit --save
2323
```
2424

25-
#### Integrazione con Angular CLI
26-
Configura gli stili richiesti nella sezione `styles`, come mostrato nell'esempio qui sotto.
25+
#### Importazione stili bootstrap-italia
26+
Configura gli stili richiesti nel file `styles.scss`. Importa la libreria SCSS come mostrato nell'esempio qui sotto.
27+
28+
```scss
29+
// Importazione libreria SCSS di bootstrap-italia
30+
@import '../node_modules/bootstrap-italia/src/scss/bootstrap-italia.scss';
31+
2732
```
28-
"styles": [
29-
"node_modules/bootstrap-italia/dist/css/bootstrap-italia.min.css",
30-
"node_modules/bootstrap-italia/dist/css/italia-icon-font.css"
31-
//...
32-
],
33+
34+
#### Come personalizzare e sovrascrivere le variabili di default della libreria (es. colori, font-family, misure, ecc.)
35+
36+
Bootstrap Italia eredita ed estende tutte le variabili di default di Bootstrap, sovrascrivendo
37+
alcuni valori in fase di compilazione e impostandone di nuovi all’occorenza. Un esempio fra tutti è
38+
il valore del colore $primary che in Bootstrap Italia è rappresentato dal colore blu #0066CC,
39+
tipico della libreria.
40+
41+
L’utilizzo del blu #0066CC dovrebbe però essere riservato alle amministrazioni centrali dello
42+
Stato, e quindi ci si può trovare nella condizione di dover personalizzare i valori delle variabili
43+
colore di Bootstrap Italia, impostando nuovi valori per le proprie necessità.
44+
45+
46+
Questo colore e le altre tonalità vengono generate a partire dalla terna HSB, pertanto occorre modificare le variabili primary-h, primary-s e primary-b.
47+
Per avere la corrispondenza tra valore esadecimale del colore e HSB si può utilizzare il portale rgb.to, ad esempio https://rgb.to/0066CC.
48+
49+
Di seguito un esempio di file `styles.scss` con la personalizzazione dei colori.
50+
Le personalizzazioni delle variabili devono sempre essere effettuate prima dell'importazione del file `bootstrap-italia.scss`
51+
52+
```scss
53+
// modifica completa del template: è possibile ricompilare la libreria modificando alcune variabili SCSS
54+
55+
// Per l'override del colore $primary della palette in formato HSB (colore #FF3333 https://rgb.to/ff3333):
56+
$primary-h: 0;
57+
$primary-s: 80;
58+
$primary-b: 100;
59+
60+
// Per l'override della famiglia di caratteri
61+
$font-family-serif: 'Custom Font', Georgia, serif;
62+
$font-family-sans-serif: 'Custom Font', Arial, Helvetica, sans-serif;
63+
$font-family-monospace: 'Custom Font', 'Courier New', Courier, monospace;
64+
65+
// Importazione libreria SCSS di bootstrap-italia
66+
@import '../node_modules/bootstrap-italia/src/scss/bootstrap-italia.scss';
3367
```
3468

69+
70+
3571
## Segnalazione bug e richieste di aiuto
3672

3773
Vuoi segnalare un bug o fare una richiesta?

angular.json

Lines changed: 21 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
"prefix": "it",
1111
"schematics": {
1212
"@schematics/angular:component": {
13-
"styleext": "scss"
13+
"style": "scss"
1414
}
1515
},
1616
"architect": {
@@ -27,15 +27,25 @@
2727
"src/assets"
2828
],
2929
"styles": [
30-
"node_modules/bootstrap-italia/dist/css/bootstrap-italia.min.css",
31-
"node_modules/bootstrap-italia/dist/css/italia-icon-font.css",
30+
"node_modules/highlight.js/styles/github.css",
3231
"src/styles.scss"
3332
],
34-
"scripts": [
35-
]
33+
"scripts": [],
34+
"vendorChunk": true,
35+
"extractLicenses": false,
36+
"buildOptimizer": false,
37+
"sourceMap": true,
38+
"optimization": false,
39+
"namedChunks": true
3640
},
3741
"configurations": {
3842
"production": {
43+
"budgets": [
44+
{
45+
"type": "anyComponentStyle",
46+
"maximumWarning": "6kb"
47+
}
48+
],
3949
"fileReplacements": [
4050
{
4151
"replace": "src/environments/environment.ts",
@@ -45,14 +55,13 @@
4555
"optimization": true,
4656
"outputHashing": "all",
4757
"sourceMap": false,
48-
"extractCss": true,
4958
"namedChunks": false,
50-
"aot": true,
5159
"extractLicenses": true,
5260
"vendorChunk": false,
5361
"buildOptimizer": true
5462
}
55-
}
63+
},
64+
"defaultConfiguration": ""
5665
},
5766
"serve": {
5867
"builder": "@angular-devkit/build-angular:dev-server",
@@ -87,18 +96,6 @@
8796
"src/assets"
8897
]
8998
}
90-
},
91-
"lint": {
92-
"builder": "@angular-devkit/build-angular:tslint",
93-
"options": {
94-
"tsConfig": [
95-
"src/tsconfig.app.json",
96-
"src/tsconfig.spec.json"
97-
],
98-
"exclude": [
99-
"**/node_modules/**"
100-
]
101-
}
10299
}
103100
}
104101
},
@@ -117,15 +114,6 @@
117114
"devServerTarget": "design-angular-kit-bundle:serve:production"
118115
}
119116
}
120-
},
121-
"lint": {
122-
"builder": "@angular-devkit/build-angular:tslint",
123-
"options": {
124-
"tsConfig": "e2e/tsconfig.e2e.json",
125-
"exclude": [
126-
"**/node_modules/**"
127-
]
128-
}
129117
}
130118
}
131119
},
@@ -136,14 +124,15 @@
136124
"prefix": "it",
137125
"architect": {
138126
"build": {
139-
"builder": "@angular-devkit/build-ng-packagr:build",
127+
"builder": "@angular-devkit/build-angular:ng-packagr",
140128
"options": {
141129
"tsConfig": "projects/design-angular-kit/tsconfig.lib.json",
142130
"project": "projects/design-angular-kit/ng-package.json"
143131
},
144132
"configurations": {
145133
"production": {
146-
"project": "projects/design-angular-kit/ng-package.prod.json"
134+
"project": "projects/design-angular-kit/ng-package.prod.json",
135+
"tsConfig": "projects/design-angular-kit/tsconfig.lib.prod.json"
147136
}
148137
}
149138
},
@@ -154,21 +143,8 @@
154143
"tsConfig": "projects/design-angular-kit/tsconfig.spec.json",
155144
"karmaConfig": "projects/design-angular-kit/karma.conf.js"
156145
}
157-
},
158-
"lint": {
159-
"builder": "@angular-devkit/build-angular:tslint",
160-
"options": {
161-
"tsConfig": [
162-
"projects/design-angular-kit/tsconfig.lib.json",
163-
"projects/design-angular-kit/tsconfig.spec.json"
164-
],
165-
"exclude": [
166-
"**/node_modules/**"
167-
]
168-
}
169146
}
170147
}
171148
}
172-
},
173-
"defaultProject": "design-angular-kit-bundle"
149+
}
174150
}

e2e/src/breadcrumb/breadcrumb.e2e-spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,9 +76,9 @@ describe('Breadcrumb', () => {
7676
it('dovrebbe poter cambiare l\'icona o disattivarla per tutti i suoi elementi', async () => {
7777
const breadcrumbItemsIcons: ElementFinder[] = await page.getBreadcrumbItemsIcon();
7878

79-
const FAVORITE_ICON = 'it-favorite';
79+
const STAR_ICON = 'it-star-outline';
8080
breadcrumbItemsIcons.forEach(item => {
81-
expect(item.getAttribute('class')).toBe(FAVORITE_ICON);
81+
expect(item.getAttribute('class')).toBe(STAR_ICON);
8282
});
8383

8484
page.clickFacebookIcon();

e2e/src/breadcrumb/breadcrumb.po.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export class BreadcrumbPage {
1515
private readonly ID_RADIO_SEPARATOR_GTHAN = 'radio-2';
1616
private readonly ID_RADIO_SEPARATOR_TILDE = 'radio-3';
1717

18-
private readonly ID_RADIO_ICON_IT_FAVORITE = 'radio-4';
18+
private readonly ID_RADIO_ICON_IT_STAR = 'radio-4';
1919
private readonly ID_RADIO_ICON_IT_FACEBOOK = 'radio-5';
2020
private readonly ID_RADIO_ICON_IT_FLICKR = 'radio-6';
2121

@@ -27,7 +27,7 @@ export class BreadcrumbPage {
2727

2828
private readonly CSS_SELECTOR_LABEL_TILDE = this.getLabelForAttribute(this.ID_RADIO_SEPARATOR_TILDE);
2929

30-
private readonly CSS_SELECTOR_LABEL_FAVORITE = this.getLabelForAttribute(this.ID_RADIO_ICON_IT_FAVORITE);
30+
private readonly CSS_SELECTOR_LABEL_STAR = this.getLabelForAttribute(this.ID_RADIO_ICON_IT_STAR);
3131

3232
private readonly CSS_SELECTOR_LABEL_FACEBOOK = this.getLabelForAttribute(this.ID_RADIO_ICON_IT_FACEBOOK);
3333

@@ -90,8 +90,8 @@ export class BreadcrumbPage {
9090
await element(by.css(this.CSS_SELECTOR_LABEL_TILDE)).click();
9191
}
9292

93-
async clickFavoriteIcon() {
94-
await element(by.css(this.CSS_SELECTOR_LABEL_FAVORITE)).click();
93+
async clickStarIcon() {
94+
await element(by.css(this.CSS_SELECTOR_LABEL_STAR)).click();
9595
}
9696

9797
async clickFacebookIcon() {

e2e/src/dropdown/dropdown.e2e-spec.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -111,13 +111,13 @@ describe('Dropdown', () => {
111111
let isIconSectionPresent = await page.isIconSectionPresent();
112112
expect(isIconSectionPresent).toBeFalsy();
113113

114-
await page.clickFavoriteIconItemRadio();
114+
await page.clickStarIconItemRadio();
115115

116116
isIconSectionPresent = await page.isIconSectionPresent();
117117
let dropdownItemIconClasses = await page.getDropdownItemIconClasses();
118-
const hasFavoriteIcon = dropdownItemIconClasses.indexOf(page.FAVORITE_ICON_CLASS) > -1;
118+
const hasStarIcon = dropdownItemIconClasses.indexOf(page.STAR_ICON_CLASS) > -1;
119119
expect(isIconSectionPresent).toBeTruthy();
120-
expect(hasFavoriteIcon).toBeTruthy();
120+
expect(hasStarIcon).toBeTruthy();
121121

122122
await page.clickLinkIconItemRadio();
123123

@@ -129,7 +129,7 @@ describe('Dropdown', () => {
129129
});
130130

131131
it('dovrebbe impostare la posizione della icona di un item della dropdown', async () => {
132-
await page.clickFavoriteIconItemRadio();
132+
await page.clickStarIconItemRadio();
133133

134134
await page.clickIconLeftPosition();
135135
let dropdownItemClasses = await page.getDropdownItemClasses();

e2e/src/dropdown/dropdown.po.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ export class DropdownPage {
1414
public readonly ITEM_DISABLED_CLASS = 'disabled';
1515
public readonly ITEM_LARGE_CLASS = 'large';
1616

17-
public readonly FAVORITE_ICON_CLASS = 'it-favorite';
17+
public readonly STAR_ICON_CLASS = 'it-star-outline';
1818
public readonly LINK_ICON_CLASS = 'it-link';
1919

2020
public readonly DROPDOWN_ITEM_LEFT_ICON_CLASS = 'left-icon';
@@ -69,8 +69,8 @@ export class DropdownPage {
6969
private readonly NULL_ICON_ITEM_RADIO_ID = 'radio-15';
7070
private readonly NULL_ICON_ITEM_RADIO_LABEL = this.getLabelForAttribute(this.NULL_ICON_ITEM_RADIO_ID);
7171

72-
private readonly FAVORITE_ICON_ITEM_RADIO_ID = 'radio-16';
73-
private readonly FAVORITE_ICON_ITEM_RADIO_LABEL = this.getLabelForAttribute(this.FAVORITE_ICON_ITEM_RADIO_ID);
72+
private readonly STAR_ICON_ITEM_RADIO_ID = 'radio-16';
73+
private readonly STAR_ICON_ITEM_RADIO_LABEL = this.getLabelForAttribute(this.STAR_ICON_ITEM_RADIO_ID);
7474

7575
private readonly LINK_ICON_ITEM_RADIO_ID = 'radio-17';
7676
private readonly LINK_ICON_ITEM_RADIO_LABEL = this.getLabelForAttribute(this.LINK_ICON_ITEM_RADIO_ID);
@@ -168,8 +168,8 @@ export class DropdownPage {
168168
await this.clickOnElement(this.NULL_ICON_ITEM_RADIO_LABEL);
169169
}
170170

171-
async clickFavoriteIconItemRadio() {
172-
await this.clickOnElement(this.FAVORITE_ICON_ITEM_RADIO_LABEL);
171+
async clickStarIconItemRadio() {
172+
await this.clickOnElement(this.STAR_ICON_ITEM_RADIO_LABEL);
173173
}
174174

175175
async clickLinkIconItemRadio() {

0 commit comments

Comments
 (0)