mypgs 2.0.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/tasks.json +39 -0
- package/AGENTS.md +22 -21
- package/README.md +25 -25
- package/assets/javascript/components/_menu.js +2 -1
- package/assets/javascript/components/_modals.js +1 -1
- package/assets/javascript/components/_notifications.js +2 -1
- package/assets/javascript/components/_slides.js +2 -2
- package/assets/scss/base/_body.scss +5 -5
- package/assets/scss/base/_general.scss +27 -18
- package/assets/scss/base/_variables.scss +1 -1
- package/assets/scss/components/_accordion.scss +9 -9
- package/assets/scss/components/_alerts.scss +71 -0
- package/assets/scss/components/_badges.scss +40 -48
- package/assets/scss/components/_button.scss +28 -20
- package/assets/scss/components/_card.scss +9 -4
- package/assets/scss/components/_form.scss +0 -16
- package/assets/scss/components/_formAddon.scss +22 -0
- package/assets/scss/components/_logo.scss +3 -4
- package/assets/scss/components/_menu.scss +26 -3
- package/assets/scss/components/_modals.scss +6 -4
- package/assets/scss/components/_search.scss +2 -2
- package/assets/scss/components/_slides.scss +0 -1
- package/assets/scss/components/_stepTabs.scss +2 -1
- package/assets/scss/components/_tooltip.scss +0 -1
- package/assets/scss/index.scss +3 -3
- package/assets/scss/layout/_footer.scss +0 -2
- package/assets/scss/layout/_header.scss +10 -2
- package/assets/scss/layout/_pageShell.scss +6 -2
- package/assets/scss/layout/_responsive.scss +63 -0
- package/assets/scss/mixin/_mx-base.scss +4 -8
- package/assets/scss/mixin/_mx-button.scss +73 -115
- package/assets/scss/mixin/_mx-card.scss +39 -40
- package/assets/scss/mixin/_mx-form.scss +13 -10
- package/assets/scss/mixin/{_mx-form-addon.scss → _mx-formAddon.scss} +103 -64
- package/assets/scss/mixin/_mx-hover.scss +81 -0
- package/assets/scss/mixin/_mx-responsive.scss +81 -201
- package/assets/scss/mixin/_settings.scss +2 -1
- package/assets/scss/mixin/mixin.scss +2 -1
- package/demo/demo.css +9 -6
- package/demo/demo.html +7 -5
- package/demo/demo.js +37 -34
- package/dist/css/index.css +2469 -3825
- package/dist/css/index.css.map +1 -1
- package/dist/css/index.min.css +1 -1
- package/dist/javascript/index.js +7 -5
- package/dist/javascript/index.js.map +1 -1
- package/dist/javascript/index.min.js +1 -1
- package/docs/componenti-e-markup.md +9 -8
- package/docs/components/accordion.md +23 -23
- package/docs/components/alerts.md +67 -0
- package/docs/components/badges.md +29 -26
- package/docs/components/breadcumbs.md +8 -8
- package/docs/components/button.md +18 -18
- package/docs/components/card.md +25 -22
- package/docs/components/dropdown.md +29 -29
- package/docs/components/form.md +65 -41
- package/docs/components/formAddon.md +116 -0
- package/docs/components/logo.md +11 -11
- package/docs/components/menu.md +20 -20
- package/docs/components/modal.md +52 -51
- package/docs/components/notification.md +34 -34
- package/docs/components/search.md +54 -52
- package/docs/components/slides.md +41 -42
- package/docs/components/stepTabs.md +45 -45
- package/docs/components/steps.md +16 -16
- package/docs/components/summary.md +20 -20
- package/docs/components/table.md +7 -7
- package/docs/components/tooltip.md +24 -23
- package/docs/convenzioni.md +11 -11
- package/docs/export-e-sviluppo.md +4 -4
- package/docs/helper-javascript.md +8 -8
- package/docs/layout/body.md +11 -11
- package/docs/layout/footer.md +28 -24
- package/docs/layout/header.md +36 -35
- package/docs/layout/pageShell.md +19 -19
- package/docs/layout/responsive.md +90 -0
- package/docs/layout/section.md +38 -38
- package/docs/patterns/cookieConsent.md +42 -39
- package/docs/utilizzo-css-scss.md +33 -9
- package/package.json +1 -1
- package/reference/html/components/accordion.html +52 -0
- package/reference/html/components/alerts.html +59 -0
- package/reference/html/components/badges.html +62 -0
- package/{templates → reference}/html/components/breadcumbs.html +6 -6
- package/reference/html/components/button.html +51 -0
- package/reference/html/components/card.html +45 -0
- package/{templates → reference}/html/components/dropdown.html +25 -25
- package/reference/html/components/form.html +128 -0
- package/reference/html/components/formAddon.html +109 -0
- package/reference/html/components/logo.html +28 -0
- package/{templates → reference}/html/components/menu.html +17 -17
- package/reference/html/components/modal.html +123 -0
- package/reference/html/components/notification.html +71 -0
- package/reference/html/components/search.html +109 -0
- package/reference/html/components/slides.html +75 -0
- package/reference/html/components/stepTabs.html +83 -0
- package/reference/html/components/steps.html +49 -0
- package/reference/html/components/summary.html +41 -0
- package/{templates → reference}/html/components/table.html +5 -5
- package/reference/html/components/tooltip.html +44 -0
- package/reference/html/layout/body.html +34 -0
- package/reference/html/layout/footer.html +67 -0
- package/reference/html/layout/header.html +108 -0
- package/{templates → reference}/html/layout/pageShell.html +16 -16
- package/reference/html/layout/responsive.html +83 -0
- package/reference/html/layout/section.html +62 -0
- package/reference/html/patterns/cookieConsent.html +84 -0
- package/{templates → reference}/react/components/accordion.jsx +5 -5
- package/reference/react/components/alerts.jsx +46 -0
- package/{templates → reference}/react/components/breadcumbs.jsx +1 -1
- package/{templates → reference}/react/components/button.jsx +6 -6
- package/{templates → reference}/react/components/card.jsx +6 -6
- package/{templates → reference}/react/components/dropdown.jsx +8 -8
- package/{templates → reference}/react/components/form.jsx +3 -3
- package/{templates → reference}/react/components/modal.jsx +15 -15
- package/{templates → reference}/react/components/notification.jsx +3 -3
- package/{templates → reference}/react/components/search.jsx +8 -8
- package/{templates → reference}/react/components/slides.jsx +4 -4
- package/{templates → reference}/react/components/stepTabs.jsx +12 -12
- package/reference/react/components/summary.jsx +18 -0
- package/{templates → reference}/react/components/table.jsx +2 -2
- package/{templates → reference}/react/components/tooltip.jsx +1 -1
- package/{templates → reference}/react/layout/pageShell.jsx +2 -2
- package/reference/react/layout/responsive.jsx +61 -0
- package/reference/react/layout/section.jsx +44 -0
- package/{templates → reference}/react/patterns/cookieConsent.jsx +9 -9
- package/{templates → reference}/react/patterns/footer.jsx +4 -4
- package/{templates → reference}/react/patterns/header.jsx +4 -4
- package/scripts/generate-component-docs.js +12 -12
- package/assets/scss/layout/_flex.scss +0 -49
- package/assets/scss/layout/_gap.scss +0 -21
- package/assets/scss/layout/_grid.scss +0 -13
- package/docs/layout/flex.md +0 -116
- package/docs/layout/grid.md +0 -116
- package/templates/html/components/accordion.html +0 -52
- package/templates/html/components/badges.html +0 -60
- package/templates/html/components/button.html +0 -51
- package/templates/html/components/card.html +0 -43
- package/templates/html/components/form.html +0 -104
- package/templates/html/components/logo.html +0 -28
- package/templates/html/components/modal.html +0 -122
- package/templates/html/components/notification.html +0 -71
- package/templates/html/components/search.html +0 -107
- package/templates/html/components/slides.html +0 -76
- package/templates/html/components/stepTabs.html +0 -83
- package/templates/html/components/steps.html +0 -49
- package/templates/html/components/summary.html +0 -41
- package/templates/html/components/tooltip.html +0 -43
- package/templates/html/layout/body.html +0 -35
- package/templates/html/layout/flex.html +0 -109
- package/templates/html/layout/footer.html +0 -64
- package/templates/html/layout/grid.html +0 -109
- package/templates/html/layout/header.html +0 -107
- package/templates/html/layout/section.html +0 -62
- package/templates/html/patterns/cookieConsent.html +0 -82
- package/templates/react/components/summary.jsx +0 -18
- package/templates/react/layout/flex.jsx +0 -36
- package/templates/react/layout/grid.jsx +0 -36
- package/templates/react/layout/section.jsx +0 -44
- /package/{templates → reference}/react/components/logo.jsx +0 -0
- /package/{templates → reference}/react/components/menu.jsx +0 -0
- /package/{templates → reference}/react/components/steps.jsx +0 -0
- /package/{templates → reference}/react/layout/body.jsx +0 -0
package/docs/layout/flex.md
DELETED
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
<!-- File generato automaticamente da templates/html/layout/flex.html. Modificare templates/html/layout/flex.html e rieseguire npm run docs:generate. -->
|
|
2
|
-
|
|
3
|
-
# Flex
|
|
4
|
-
|
|
5
|
-
Esempi di layout flex responsive che distribuiscono da due a sei elementi per riga adattando automaticamente la disposizione allo spazio disponibile.
|
|
6
|
-
|
|
7
|
-
## PGS
|
|
8
|
-
|
|
9
|
-
- `flex-2`: crea una distribuzione responsive fino a due elementi per riga.
|
|
10
|
-
- `flex-3`: crea una distribuzione responsive fino a tre elementi per riga.
|
|
11
|
-
- `flex-4`: crea una distribuzione responsive fino a quattro elementi per riga.
|
|
12
|
-
- `flex-6`: crea una distribuzione responsive fino a sei elementi per riga.
|
|
13
|
-
|
|
14
|
-
## Elementi correlati
|
|
15
|
-
|
|
16
|
-
- `container`: definisce il contesto contenitore dell'introduzione.
|
|
17
|
-
- `flexColumnTexts`: organizza verticalmente e distanzia testi e contenuti delle card.
|
|
18
|
-
- `card`: rende visibili le celle dimostrative del layout flex.
|
|
19
|
-
|
|
20
|
-
## Output
|
|
21
|
-
|
|
22
|
-
Raccolta HTML dei layout flex responsive a due, tre, quattro e sei elementi.
|
|
23
|
-
|
|
24
|
-
## Esempio
|
|
25
|
-
|
|
26
|
-
```html
|
|
27
|
-
<div pgs="container flexColumnTexts">
|
|
28
|
-
<strong>Sezione standard</strong>
|
|
29
|
-
<p>Contenuto centrato dentro una sezione MyPGS.</p>
|
|
30
|
-
</div>
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
<div pgs="flex-2">
|
|
34
|
-
<article pgs="card flexColumnTexts">
|
|
35
|
-
<strong>Colonna uno</strong>
|
|
36
|
-
<p>Contenuto della prima colonna.</p>
|
|
37
|
-
</article>
|
|
38
|
-
|
|
39
|
-
<article pgs="card flexColumnTexts">
|
|
40
|
-
<strong>Colonna due</strong>
|
|
41
|
-
<p>Contenuto della seconda colonna.</p>
|
|
42
|
-
</article>
|
|
43
|
-
</div>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
<div pgs="flex-3">
|
|
47
|
-
<article pgs="card flexColumnTexts">
|
|
48
|
-
<strong>Colonna uno</strong>
|
|
49
|
-
<p>Contenuto della prima colonna.</p>
|
|
50
|
-
</article>
|
|
51
|
-
|
|
52
|
-
<article pgs="card flexColumnTexts">
|
|
53
|
-
<strong>Colonna due</strong>
|
|
54
|
-
<p>Contenuto della seconda colonna.</p>
|
|
55
|
-
</article>
|
|
56
|
-
|
|
57
|
-
<article pgs="card flexColumnTexts">
|
|
58
|
-
<strong>Colonna tre</strong>
|
|
59
|
-
<p>Contenuto della terza colonna.</p>
|
|
60
|
-
</article>
|
|
61
|
-
</div>
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
<div pgs="flex-4">
|
|
65
|
-
<article pgs="card flexColumnTexts">
|
|
66
|
-
<strong>Colonna uno</strong>
|
|
67
|
-
<p>Contenuto della prima colonna.</p>
|
|
68
|
-
</article>
|
|
69
|
-
|
|
70
|
-
<article pgs="card flexColumnTexts">
|
|
71
|
-
<strong>Colonna due</strong>
|
|
72
|
-
<p>Contenuto della seconda colonna.</p>
|
|
73
|
-
</article>
|
|
74
|
-
|
|
75
|
-
<article pgs="card flexColumnTexts">
|
|
76
|
-
<strong>Colonna tre</strong>
|
|
77
|
-
<p>Contenuto della terza colonna.</p>
|
|
78
|
-
</article>
|
|
79
|
-
<article pgs="card flexColumnTexts">
|
|
80
|
-
<strong>Colonna quattro</strong>
|
|
81
|
-
<p>Contenuto della quarta colonna.</p>
|
|
82
|
-
</article>
|
|
83
|
-
</div>
|
|
84
|
-
|
|
85
|
-
<div pgs="flex-6">
|
|
86
|
-
<article pgs="card flexColumnTexts">
|
|
87
|
-
<strong>Colonna uno</strong>
|
|
88
|
-
<p>Contenuto della prima colonna.</p>
|
|
89
|
-
</article>
|
|
90
|
-
|
|
91
|
-
<article pgs="card flexColumnTexts">
|
|
92
|
-
<strong>Colonna due</strong>
|
|
93
|
-
<p>Contenuto della seconda colonna.</p>
|
|
94
|
-
</article>
|
|
95
|
-
|
|
96
|
-
<article pgs="card flexColumnTexts">
|
|
97
|
-
<strong>Colonna tre</strong>
|
|
98
|
-
<p>Contenuto della terza colonna.</p>
|
|
99
|
-
</article>
|
|
100
|
-
|
|
101
|
-
<article pgs="card flexColumnTexts">
|
|
102
|
-
<strong>Colonna quattro</strong>
|
|
103
|
-
<p>Contenuto della quarta colonna.</p>
|
|
104
|
-
</article>
|
|
105
|
-
|
|
106
|
-
<article pgs="card flexColumnTexts">
|
|
107
|
-
<strong>Colonna cinque</strong>
|
|
108
|
-
<p>Contenuto della quinta colonna.</p>
|
|
109
|
-
</article>
|
|
110
|
-
|
|
111
|
-
<article pgs="card flexColumnTexts">
|
|
112
|
-
<strong>Colonna sei</strong>
|
|
113
|
-
<p>Contenuto della sesta colonna.</p>
|
|
114
|
-
</article>
|
|
115
|
-
</div
|
|
116
|
-
```
|
package/docs/layout/grid.md
DELETED
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
<!-- File generato automaticamente da templates/html/layout/grid.html. Modificare templates/html/layout/grid.html e rieseguire npm run docs:generate. -->
|
|
2
|
-
|
|
3
|
-
# Grid
|
|
4
|
-
|
|
5
|
-
Esempi di griglie responsive che distribuiscono da due a sei colonne mantenendo gap e ridimensionamento coerenti con il design system.
|
|
6
|
-
|
|
7
|
-
## PGS
|
|
8
|
-
|
|
9
|
-
- `grid-2`: crea una griglia responsive fino a due colonne.
|
|
10
|
-
- `grid-3`: crea una griglia responsive fino a tre colonne.
|
|
11
|
-
- `grid-4`: crea una griglia responsive fino a quattro colonne.
|
|
12
|
-
- `grid-6`: crea una griglia responsive fino a sei colonne.
|
|
13
|
-
|
|
14
|
-
## Elementi correlati
|
|
15
|
-
|
|
16
|
-
- `container`: definisce il contesto contenitore dell'introduzione.
|
|
17
|
-
- `flexColumnTexts`: organizza e distanzia i testi introduttivi e delle card.
|
|
18
|
-
- `card`: rende visibili le celle dimostrative delle griglie.
|
|
19
|
-
|
|
20
|
-
## Output
|
|
21
|
-
|
|
22
|
-
Raccolta HTML delle griglie responsive a due, tre, quattro e sei colonne.
|
|
23
|
-
|
|
24
|
-
## Esempio
|
|
25
|
-
|
|
26
|
-
```html
|
|
27
|
-
<div pgs="container flexColumnTexts">
|
|
28
|
-
<strong>Sezione standard</strong>
|
|
29
|
-
<p>Contenuto centrato dentro una sezione MyPGS.</p>
|
|
30
|
-
</div>
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
<div pgs="grid-2">
|
|
34
|
-
<article pgs="card flexColumnTexts">
|
|
35
|
-
<strong>Colonna uno</strong>
|
|
36
|
-
<p>Contenuto della prima colonna.</p>
|
|
37
|
-
</article>
|
|
38
|
-
|
|
39
|
-
<article pgs="card flexColumnTexts">
|
|
40
|
-
<strong>Colonna due</strong>
|
|
41
|
-
<p>Contenuto della seconda colonna.</p>
|
|
42
|
-
</article>
|
|
43
|
-
</div>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
<div pgs="grid-3">
|
|
47
|
-
<article pgs="card flexColumnTexts">
|
|
48
|
-
<strong>Colonna uno</strong>
|
|
49
|
-
<p>Contenuto della prima colonna.</p>
|
|
50
|
-
</article>
|
|
51
|
-
|
|
52
|
-
<article pgs="card flexColumnTexts">
|
|
53
|
-
<strong>Colonna due</strong>
|
|
54
|
-
<p>Contenuto della seconda colonna.</p>
|
|
55
|
-
</article>
|
|
56
|
-
|
|
57
|
-
<article pgs="card flexColumnTexts">
|
|
58
|
-
<strong>Colonna tre</strong>
|
|
59
|
-
<p>Contenuto della terza colonna.</p>
|
|
60
|
-
</article>
|
|
61
|
-
</div>
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
<div pgs="grid-4">
|
|
65
|
-
<article pgs="card flexColumnTexts">
|
|
66
|
-
<strong>Colonna uno</strong>
|
|
67
|
-
<p>Contenuto della prima colonna.</p>
|
|
68
|
-
</article>
|
|
69
|
-
|
|
70
|
-
<article pgs="card flexColumnTexts">
|
|
71
|
-
<strong>Colonna due</strong>
|
|
72
|
-
<p>Contenuto della seconda colonna.</p>
|
|
73
|
-
</article>
|
|
74
|
-
|
|
75
|
-
<article pgs="card flexColumnTexts">
|
|
76
|
-
<strong>Colonna tre</strong>
|
|
77
|
-
<p>Contenuto della terza colonna.</p>
|
|
78
|
-
</article>
|
|
79
|
-
<article pgs="card flexColumnTexts">
|
|
80
|
-
<strong>Colonna quattro</strong>
|
|
81
|
-
<p>Contenuto della quarta colonna.</p>
|
|
82
|
-
</article>
|
|
83
|
-
</div>
|
|
84
|
-
|
|
85
|
-
<div pgs="grid-6">
|
|
86
|
-
<article pgs="card flexColumnTexts">
|
|
87
|
-
<strong>Colonna uno</strong>
|
|
88
|
-
<p>Contenuto della prima colonna.</p>
|
|
89
|
-
</article>
|
|
90
|
-
|
|
91
|
-
<article pgs="card flexColumnTexts">
|
|
92
|
-
<strong>Colonna due</strong>
|
|
93
|
-
<p>Contenuto della seconda colonna.</p>
|
|
94
|
-
</article>
|
|
95
|
-
|
|
96
|
-
<article pgs="card flexColumnTexts">
|
|
97
|
-
<strong>Colonna tre</strong>
|
|
98
|
-
<p>Contenuto della terza colonna.</p>
|
|
99
|
-
</article>
|
|
100
|
-
|
|
101
|
-
<article pgs="card flexColumnTexts">
|
|
102
|
-
<strong>Colonna quattro</strong>
|
|
103
|
-
<p>Contenuto della quarta colonna.</p>
|
|
104
|
-
</article>
|
|
105
|
-
|
|
106
|
-
<article pgs="card flexColumnTexts">
|
|
107
|
-
<strong>Colonna cinque</strong>
|
|
108
|
-
<p>Contenuto della quinta colonna.</p>
|
|
109
|
-
</article>
|
|
110
|
-
|
|
111
|
-
<article pgs="card flexColumnTexts">
|
|
112
|
-
<strong>Colonna sei</strong>
|
|
113
|
-
<p>Contenuto della sesta colonna.</p>
|
|
114
|
-
</article>
|
|
115
|
-
</div
|
|
116
|
-
```
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
/**
|
|
3
|
-
* @title Accordion
|
|
4
|
-
* @description Componente interattivo che espande un pannello alla volta, sincronizzando visibilità, attributi ARIA e navigazione da tastiera.
|
|
5
|
-
*
|
|
6
|
-
* @pgs
|
|
7
|
-
* - accordion: identifica ogni elemento espandibile inizializzato dal modulo JavaScript.
|
|
8
|
-
* - accordion-button: identifica il controllo che apre o chiude il pannello associato.
|
|
9
|
-
* - accordion-content: identifica il pannello di contenuto gestito tramite l'attributo hidden.
|
|
10
|
-
*
|
|
11
|
-
* @pgs-state
|
|
12
|
-
* - open: indica l'elemento accordion attualmente aperto e visibile.
|
|
13
|
-
*
|
|
14
|
-
* @api
|
|
15
|
-
* - pgs.accordion.init(root): inizializza gli accordion non ancora registrati dentro Document o Element indicato.
|
|
16
|
-
* - pgs.accordion.api(element): restituisce l'istanza associata a un root accordion inizializzato.
|
|
17
|
-
* - instance.open(): apre il pannello e chiude gli altri accordion presenti nella pagina.
|
|
18
|
-
* - instance.close(): chiude il pannello corrente.
|
|
19
|
-
* - instance.toggle(): inverte lo stato aperto o chiuso del pannello.
|
|
20
|
-
* - instance.refresh(): riesegue l'inizializzazione nel contenitore dell'accordion e restituisce l'istanza.
|
|
21
|
-
* - instance.isOpen(): restituisce true quando lo stato open è attivo.
|
|
22
|
-
*
|
|
23
|
-
* @related
|
|
24
|
-
* - flexColumnTexts: applica la spaziatura testuale tra gli elementi della lista.
|
|
25
|
-
*
|
|
26
|
-
* @return Lista HTML di elementi accordion accessibili con pulsante e pannello associato.
|
|
27
|
-
*/
|
|
28
|
-
-->
|
|
29
|
-
|
|
30
|
-
<ul pgs="flexColumnTexts">
|
|
31
|
-
<li pgs="accordion">
|
|
32
|
-
<button pgs="accordion-button" type="button">
|
|
33
|
-
<i class="fa-solid fa-circle-question" aria-hidden="true"></i>
|
|
34
|
-
<span>Domanda frequente</span>
|
|
35
|
-
</button>
|
|
36
|
-
|
|
37
|
-
<div pgs="accordion-content" hidden>
|
|
38
|
-
<p>Risposta di esempio con contenuto testuale riutilizzabile.</p>
|
|
39
|
-
</div>
|
|
40
|
-
</li>
|
|
41
|
-
|
|
42
|
-
<li pgs="accordion">
|
|
43
|
-
<button pgs="accordion-button" type="button">
|
|
44
|
-
<i class="fa-solid fa-circle-info" aria-hidden="true"></i>
|
|
45
|
-
<span>Seconda sezione</span>
|
|
46
|
-
</button>
|
|
47
|
-
|
|
48
|
-
<div pgs="accordion-content" hidden>
|
|
49
|
-
<p>Altro contenuto del pannello accordion.</p>
|
|
50
|
-
</div>
|
|
51
|
-
</li>
|
|
52
|
-
</ul>
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
/**
|
|
3
|
-
* @title Badge
|
|
4
|
-
* @description Raccolta di indicatori compatti per mostrare categorie, priorità e stati visivi con varianti cromatiche coerenti.
|
|
5
|
-
*
|
|
6
|
-
* @pgs
|
|
7
|
-
* - badge: identifica la variante base del badge.
|
|
8
|
-
* - badgePrimary: applica la variante con colore primario.
|
|
9
|
-
* - badgeStrong: applica la variante ad alto contrasto.
|
|
10
|
-
* - badgeSuccess: rappresenta un esito positivo.
|
|
11
|
-
* - badgeDot: aggiunge un indicatore puntiforme al badge.
|
|
12
|
-
* - badgeWarning: rappresenta un avviso.
|
|
13
|
-
* - badgeError: rappresenta un errore.
|
|
14
|
-
* - badgeInfo: rappresenta un'informazione.
|
|
15
|
-
* - badgeNeutral: applica la variante neutra.
|
|
16
|
-
*
|
|
17
|
-
* @related
|
|
18
|
-
* - flexRow: dispone i badge orizzontalmente consentendo il ritorno a capo.
|
|
19
|
-
*
|
|
20
|
-
* @return Esempi HTML delle varianti badge disponibili.
|
|
21
|
-
*/
|
|
22
|
-
-->
|
|
23
|
-
|
|
24
|
-
<div pgs="flexRow">
|
|
25
|
-
<span pgs="badge">
|
|
26
|
-
Base
|
|
27
|
-
</span>
|
|
28
|
-
|
|
29
|
-
<span pgs="badgePrimary">
|
|
30
|
-
Primary
|
|
31
|
-
</span>
|
|
32
|
-
|
|
33
|
-
<span pgs="badgeStrong">
|
|
34
|
-
Strong
|
|
35
|
-
</span>
|
|
36
|
-
|
|
37
|
-
<span pgs="badgeSuccess badgeDot">
|
|
38
|
-
Attivo
|
|
39
|
-
</span>
|
|
40
|
-
|
|
41
|
-
<span pgs="badgeWarning">
|
|
42
|
-
<i class="fa-solid fa-triangle-exclamation" aria-hidden="true"></i>
|
|
43
|
-
Attenzione
|
|
44
|
-
</span>
|
|
45
|
-
|
|
46
|
-
<span pgs="badgeError">
|
|
47
|
-
<i class="fa-solid fa-xmark" aria-hidden="true"></i>
|
|
48
|
-
Errore
|
|
49
|
-
</span>
|
|
50
|
-
|
|
51
|
-
<span pgs="badgeInfo">
|
|
52
|
-
<i class="fa-solid fa-circle-info" aria-hidden="true"></i>
|
|
53
|
-
Info
|
|
54
|
-
</span>
|
|
55
|
-
|
|
56
|
-
<span pgs="badgeNeutral" href="#">
|
|
57
|
-
Neutrale
|
|
58
|
-
</span>
|
|
59
|
-
|
|
60
|
-
</div>
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
/**
|
|
3
|
-
* @title Button
|
|
4
|
-
* @description Varianti di pulsante e collegamento d'azione con dimensioni, enfasi e composizione icona-testo definite dal design system.
|
|
5
|
-
*
|
|
6
|
-
* @pgs
|
|
7
|
-
* - button: identifica il pulsante standard utilizzabile anche su elementi a.
|
|
8
|
-
* - buttonStrong: applica la variante con maggiore enfasi visiva.
|
|
9
|
-
* - buttonIcon: identifica un pulsante compatto composto principalmente da un'icona.
|
|
10
|
-
* - buttonMini: applica la variante di dimensione minima.
|
|
11
|
-
* - buttonBig: applica la variante di dimensione ampia.
|
|
12
|
-
*
|
|
13
|
-
* @pgs-option
|
|
14
|
-
* - buttonReverse: inverte l'ordine visivo di testo e icona sul pulsante a cui è applicata.
|
|
15
|
-
*
|
|
16
|
-
* @related
|
|
17
|
-
* - flexRow: dispone gli esempi di pulsante su una riga flessibile.
|
|
18
|
-
*
|
|
19
|
-
* @return Raccolta HTML delle principali varianti di button.
|
|
20
|
-
*/
|
|
21
|
-
-->
|
|
22
|
-
|
|
23
|
-
<div pgs="flexRow">
|
|
24
|
-
<a pgs="button" href="#">
|
|
25
|
-
<i class="fa-duotone fa-solid fa-store"></i>
|
|
26
|
-
About
|
|
27
|
-
</a>
|
|
28
|
-
|
|
29
|
-
<button pgs="button" type="button" pgs-option="buttonReverse">
|
|
30
|
-
Avanti
|
|
31
|
-
<i class="fa-solid fa-arrow-right" aria-hidden="true"></i>
|
|
32
|
-
</button>
|
|
33
|
-
|
|
34
|
-
<button pgs="buttonStrong" type="button">
|
|
35
|
-
<i class="fa-solid fa-check" aria-hidden="true"></i>
|
|
36
|
-
Submit
|
|
37
|
-
</button>
|
|
38
|
-
|
|
39
|
-
<button pgs="buttonIcon" type="button" aria-label="Impostazioni">
|
|
40
|
-
<i class="fa-solid fa-gear" aria-hidden="true"></i>
|
|
41
|
-
</button>
|
|
42
|
-
|
|
43
|
-
<button pgs="buttonMini" type="button" aria-label="Informazioni">
|
|
44
|
-
<i class="fa-solid fa-info" aria-hidden="true"></i>
|
|
45
|
-
</button>
|
|
46
|
-
|
|
47
|
-
<button pgs="buttonBig" type="button" aria-label="Bottone grande">
|
|
48
|
-
<i class="fa-solid fa-rocket" aria-hidden="true"></i>
|
|
49
|
-
Bottone grande
|
|
50
|
-
</button>
|
|
51
|
-
</div>
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
/**
|
|
3
|
-
* @title Card
|
|
4
|
-
* @description Contenitore riutilizzabile per raggruppare immagine, titolo, testo e azioni in anteprime o raccolte responsive.
|
|
5
|
-
*
|
|
6
|
-
* @pgs
|
|
7
|
-
* - card: identifica il contenitore principale della scheda.
|
|
8
|
-
* - card-img: identifica l'immagine principale della card.
|
|
9
|
-
*
|
|
10
|
-
* @related
|
|
11
|
-
* - flex-2: dispone le card in un layout responsive a due elementi.
|
|
12
|
-
* - flexColumn: organizza verticalmente il contenuto della card o del relativo link.
|
|
13
|
-
* - imgCover: adatta l'immagine riempiendo l'area disponibile.
|
|
14
|
-
* - flexColumnTexts: applica la spaziatura verticale ai contenuti testuali.
|
|
15
|
-
* - button: presenta il collegamento finale come pulsante standard.
|
|
16
|
-
*
|
|
17
|
-
* @return Due strutture HTML di card, una con azione separata e una interamente cliccabile.
|
|
18
|
-
*/
|
|
19
|
-
-->
|
|
20
|
-
|
|
21
|
-
<div pgs="flex-2">
|
|
22
|
-
|
|
23
|
-
<article pgs="card flexColumn">
|
|
24
|
-
<img pgs="card-img imgCover" src="https://placehold.co/800x500" alt="Immagine segnaposto">
|
|
25
|
-
|
|
26
|
-
<div pgs="flexColumnTexts">
|
|
27
|
-
<h3>Card riutilizzabile</h3>
|
|
28
|
-
<p>Contenuto descrittivo della card, adatto a liste, anteprime e griglie.</p>
|
|
29
|
-
<a pgs="button" href="#">Leggi di piu</a>
|
|
30
|
-
</div>
|
|
31
|
-
</article>
|
|
32
|
-
|
|
33
|
-
<article pgs="card">
|
|
34
|
-
<a pgs="flexColumn" href="">
|
|
35
|
-
<img pgs="card-img imgCover" src="https://placehold.co/800x500" alt="Immagine segnaposto">
|
|
36
|
-
|
|
37
|
-
<div pgs="flexColumnTexts">
|
|
38
|
-
<h3>Card riutilizzabile</h3>
|
|
39
|
-
<p>Contenuto descrittivo della card, adatto a liste, anteprime e griglie.</p>
|
|
40
|
-
</div>
|
|
41
|
-
</a>
|
|
42
|
-
</article>
|
|
43
|
-
</div>
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
/**
|
|
3
|
-
* @title Form
|
|
4
|
-
* @description Struttura di modulo con etichette, campi testuali, textarea e controllo toggle compatibile con i vincoli HTML e con regole personalizzate di PGS_formValidate.
|
|
5
|
-
*
|
|
6
|
-
* @pgs
|
|
7
|
-
* - form: identifica il contenitore del modulo e applica il layout dei campi.
|
|
8
|
-
* - formValidate: abilita gli stili associati agli stati di validazione gestiti dalla utility JavaScript.
|
|
9
|
-
* - label: identifica le etichette associate ai controlli.
|
|
10
|
-
* - input: applica lo stile condiviso agli input testuali.
|
|
11
|
-
* - textarea: applica lo stile condiviso all'area di testo.
|
|
12
|
-
* - toggle: presenta una checkbox come controllo a due stati.
|
|
13
|
-
*
|
|
14
|
-
* @pgs-option
|
|
15
|
-
* - message: definisce il messaggio specifico del campo con la sintassi message[Testo del messaggio].
|
|
16
|
-
* - error: viene applicata a runtime al form e ai campi che non superano la validazione.
|
|
17
|
-
* - success: viene applicata a runtime al form quando la validazione ha esito positivo.
|
|
18
|
-
*
|
|
19
|
-
* @api
|
|
20
|
-
* - new pgs.formValidate(form, options): crea una utility associata direttamente al form, aggiunge automaticamente novalidate e accetta fieldError, fieldsError e success in options.message; i messaggi restano modificabili tramite instance.message.
|
|
21
|
-
* - instance.validator(callback, eventName): intercetta l'evento indicato, previene il comportamento predefinito, valida il form, mostra il messaggio di successo e richiama callback solo quando è valido; eventName usa submit come valore predefinito.
|
|
22
|
-
* - instance.validate(): valida i campi required, aggiorna gli attributi di stato e restituisce true o false.
|
|
23
|
-
* - instance.success(text): valida il form e mostra un toast positivo quando non sono presenti errori.
|
|
24
|
-
* - instance.addNewRule(rule): aggiunge una funzione che restituisce uno o più campi non validi; validate applica automaticamente addFieldError a ciascun campo.
|
|
25
|
-
* - instance.addFieldError(field, index, total): marca un campo come non valido; mostra il messaggio specifico per un solo errore o un messaggio riepilogativo per più errori.
|
|
26
|
-
* - instance.removeFieldError(field): rimuove lo stato di errore dal campo indicato.
|
|
27
|
-
*
|
|
28
|
-
* @related
|
|
29
|
-
* - buttonStrong: presenta l'invio del modulo come azione primaria.
|
|
30
|
-
*
|
|
31
|
-
* @return Modulo HTML completo con campi required e script di esempio per una regola personalizzata, la validazione e il messaggio di successo.
|
|
32
|
-
*/
|
|
33
|
-
-->
|
|
34
|
-
|
|
35
|
-
<form pgs="form formValidate" action="#" method="post">
|
|
36
|
-
<label pgs="label" for="form-name">
|
|
37
|
-
Nome
|
|
38
|
-
</label>
|
|
39
|
-
<input id="form-name" pgs="input" pgs-option="message[Inserisci il nome]" type="text" name="name" placeholder="Mario Rossi" required>
|
|
40
|
-
|
|
41
|
-
<label pgs="label" for="form-email">
|
|
42
|
-
Email
|
|
43
|
-
</label>
|
|
44
|
-
<input id="form-email" pgs="input" pgs-option="message[Inserisci una email valida]" type="email" name="email" placeholder="nome@example.com" required>
|
|
45
|
-
|
|
46
|
-
<label pgs="label" for="form-password">
|
|
47
|
-
Password
|
|
48
|
-
</label>
|
|
49
|
-
<input id="form-password" pgs="input" pgs-option="message[Inserisci una password]" type="password" name="password" autocomplete="new-password" required>
|
|
50
|
-
|
|
51
|
-
<label pgs="label" for="form-confirm-password">
|
|
52
|
-
Conferma password
|
|
53
|
-
</label>
|
|
54
|
-
<input id="form-confirm-password" pgs="input" pgs-option="message[Conferma la password]" type="password" name="confirmPassword" autocomplete="new-password" required>
|
|
55
|
-
|
|
56
|
-
<label pgs="label" for="form-message">
|
|
57
|
-
Messaggio
|
|
58
|
-
</label>
|
|
59
|
-
<textarea id="form-message" pgs="textarea" name="message" rows="5" placeholder="Scrivi il messaggio" required></textarea>
|
|
60
|
-
|
|
61
|
-
<label pgs="toggle">
|
|
62
|
-
<span>Accetto la privacy policy</span>
|
|
63
|
-
<input type="checkbox" name="privacy" required>
|
|
64
|
-
</label>
|
|
65
|
-
|
|
66
|
-
<button pgs="buttonStrong" type="submit">
|
|
67
|
-
<i class="fa-solid fa-paper-plane" aria-hidden="true"></i>
|
|
68
|
-
Invia
|
|
69
|
-
</button>
|
|
70
|
-
</form>
|
|
71
|
-
|
|
72
|
-
<script type="module">
|
|
73
|
-
import { pgs } from "mypgs";
|
|
74
|
-
|
|
75
|
-
const form = pgs(document).querySelector("form");
|
|
76
|
-
|
|
77
|
-
const password = form.querySelector('input[name="password"]');
|
|
78
|
-
const confirmPassword = form.querySelector('input[name="confirmPassword"]');
|
|
79
|
-
if (!password || !confirmPassword) return;
|
|
80
|
-
|
|
81
|
-
const formValidate = new pgs.formValidate(form, {
|
|
82
|
-
message: {
|
|
83
|
-
fieldError: "Completa questo campo",
|
|
84
|
-
fieldsError: "Completa tutti i campi obbligatori",
|
|
85
|
-
success: "Inviato con successo"
|
|
86
|
-
}
|
|
87
|
-
});
|
|
88
|
-
|
|
89
|
-
//== new roules
|
|
90
|
-
formValidate.addNewRule(() => {
|
|
91
|
-
if (password.value && confirmPassword.value && password.value !== confirmPassword.value) {
|
|
92
|
-
pgs(confirmPassword).option.setValueBrackets("message", "Le password non coincidono");
|
|
93
|
-
return [confirmPassword, password];
|
|
94
|
-
}
|
|
95
|
-
});
|
|
96
|
-
|
|
97
|
-
//== validate
|
|
98
|
-
formValidate.validator(event => {
|
|
99
|
-
const values = Object.fromEntries(new FormData(form));
|
|
100
|
-
|
|
101
|
-
// Sostituisci questo log con l'invio dei dati al tuo backend.
|
|
102
|
-
console.log(values);
|
|
103
|
-
}, "submit");
|
|
104
|
-
</script>
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
/**
|
|
3
|
-
* @title Logo
|
|
4
|
-
* @description Componente per mostrare un logo grafico o testuale, con supporto alle varianti dell'immagine legate al tema scuro.
|
|
5
|
-
*
|
|
6
|
-
* @pgs
|
|
7
|
-
* - logo: identifica il collegamento contenitore del marchio.
|
|
8
|
-
* - logo-image: identifica l'immagine grafica del logo.
|
|
9
|
-
* - logo-text: identifica la variante testuale del marchio.
|
|
10
|
-
*
|
|
11
|
-
* @pgs-option
|
|
12
|
-
* - logoDarkmode: inverte l'immagine del logo quando lo stato globale darkmode è attivo.
|
|
13
|
-
* - logoDarkmodeFixed: mantiene applicata l'inversione dell'immagine indipendentemente dal tema corrente.
|
|
14
|
-
*
|
|
15
|
-
* @pgs-state
|
|
16
|
-
* - darkmode: stato globale applicato al documento che attiva la variante logoDarkmode.
|
|
17
|
-
*
|
|
18
|
-
* @return Esempi HTML del logo grafico sensibile al tema e del logo testuale.
|
|
19
|
-
*/
|
|
20
|
-
-->
|
|
21
|
-
|
|
22
|
-
<a aria-label="Logo" pgs="logo" pgs-option="logoDarkmode" href="/">
|
|
23
|
-
<img pgs="logo-image" src="https://placehold.co/240x80?text=MyPGS" alt="MyPGS">
|
|
24
|
-
</a>
|
|
25
|
-
|
|
26
|
-
<a aria-label="Logo testuale" pgs="logo" href="/">
|
|
27
|
-
<span pgs="logo-text">MyPGS</span>
|
|
28
|
-
</a>
|