@maggioli-design-system/magma-react 2.8.0 → 2.10.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/AGENTS.md +10 -7
- package/CHANGELOG.md +108 -0
- package/README.md +38 -0
- package/agents/assets.md +1 -1
- package/agents/color.md +5 -3
- package/agents/components.md +2 -2
- package/agents/conventions.md +1 -1
- package/agents/mcp.md +78 -8
- package/agents/{anti-patterns.md → mistakes.md} +2 -2
- package/agents/patterns/actions.md +393 -0
- package/agents/patterns/app-shell.md +223 -0
- package/agents/patterns/choose-items.md +18 -0
- package/agents/patterns/concurrent-editing.md +17 -0
- package/agents/patterns/confirm-action.md +216 -0
- package/agents/patterns/consent-and-legal.md +16 -0
- package/agents/patterns/density.md +236 -0
- package/agents/patterns/empty-state.md +201 -0
- package/agents/patterns/error-recovery.md +237 -0
- package/agents/patterns/form-and-validation.md +16 -0
- package/agents/patterns/item-list.md +214 -0
- package/agents/patterns/labels-and-values.md +184 -0
- package/agents/patterns/list-with-filters.md +282 -0
- package/agents/patterns/loading.md +221 -0
- package/agents/patterns/message-placement.md +304 -0
- package/agents/patterns/notification-center.md +18 -0
- package/agents/patterns/page-header.md +201 -0
- package/agents/patterns/permissions.md +17 -0
- package/agents/patterns/previews/actions/banner.html +21 -0
- package/agents/patterns/previews/actions/confirm.html +11 -0
- package/agents/patterns/previews/actions/danger-zone.html +22 -0
- package/agents/patterns/previews/actions/destructive-in-menu.html +19 -0
- package/agents/patterns/previews/actions/dismiss-message.html +15 -0
- package/agents/patterns/previews/actions/dismiss.html +25 -0
- package/agents/patterns/previews/actions/more-in-menu.html +21 -0
- package/agents/patterns/previews/actions/part-primary.html +28 -0
- package/agents/patterns/previews/actions/primary.html +20 -0
- package/agents/patterns/previews/actions/remove.html +44 -0
- package/agents/patterns/previews/actions/secondary.html +20 -0
- package/agents/patterns/previews/actions/stacked.html +17 -0
- package/agents/patterns/previews/actions/toast.html +10 -0
- package/agents/patterns/previews/app-shell/back-office.html +41 -0
- package/agents/patterns/previews/app-shell/many-sections.html +45 -0
- package/agents/patterns/previews/app-shell/public-service.html +31 -0
- package/agents/patterns/previews/confirm-action/act-then-undo.html +44 -0
- package/agents/patterns/previews/confirm-action/ask-before-sending.html +25 -0
- package/agents/patterns/previews/confirm-action/ask-first-many.html +11 -0
- package/agents/patterns/previews/confirm-action/ask-first.html +14 -0
- package/agents/patterns/previews/confirm-action/make-reversible.html +54 -0
- package/agents/patterns/previews/confirm-action/send-as-shown.html +57 -0
- package/agents/patterns/previews/empty-state/add-the-first.html +19 -0
- package/agents/patterns/previews/empty-state/all-done.html +15 -0
- package/agents/patterns/previews/empty-state/clear-filters.html +35 -0
- package/agents/patterns/previews/empty-state/filled-by-others.html +15 -0
- package/agents/patterns/previews/empty-state/not-found.html +38 -0
- package/agents/patterns/previews/empty-state/one-line.html +12 -0
- package/agents/patterns/previews/error-recovery/action-another-way.html +35 -0
- package/agents/patterns/previews/error-recovery/changed-meanwhile.html +26 -0
- package/agents/patterns/previews/error-recovery/check-or-repeat.html +38 -0
- package/agents/patterns/previews/error-recovery/content-another-way.html +12 -0
- package/agents/patterns/previews/error-recovery/partial.html +29 -0
- package/agents/patterns/previews/error-recovery/retry-action.html +35 -0
- package/agents/patterns/previews/error-recovery/retry-content.html +40 -0
- package/agents/patterns/previews/error-recovery/sign-in-again.html +44 -0
- package/agents/patterns/previews/item-list/documents-of-a-request.html +12 -0
- package/agents/patterns/previews/item-list/queue-of-a-desk.html +109 -0
- package/agents/patterns/previews/item-list/requests-of-an-office.html +74 -0
- package/agents/patterns/previews/item-list/requests-to-assign.html +80 -0
- package/agents/patterns/previews/labels-and-values/data-of-a-contact.html +31 -0
- package/agents/patterns/previews/labels-and-values/payment-before-paying.html +21 -0
- package/agents/patterns/previews/labels-and-values/what-is-sent.html +25 -0
- package/agents/patterns/previews/list-with-filters/act-on-many.html +121 -0
- package/agents/patterns/previews/list-with-filters/find-and-open.html +109 -0
- package/agents/patterns/previews/list-with-filters/show-new-items.html +132 -0
- package/agents/patterns/previews/loading/await-and-say.html +41 -0
- package/agents/patterns/previews/loading/await-the-control.html +28 -0
- package/agents/patterns/previews/loading/first-load.html +10 -0
- package/agents/patterns/previews/loading/keep-while-reloading.html +80 -0
- package/agents/patterns/previews/loading/long-load-measured.html +16 -0
- package/agents/patterns/previews/loading/long-load.html +12 -0
- package/agents/patterns/previews/loading/progress-in-place.html +52 -0
- package/agents/patterns/previews/loading/run-in-background.html +24 -0
- package/agents/patterns/previews/message-placement/action-done-elsewhere.html +38 -0
- package/agents/patterns/previews/message-placement/action-done-in-page.html +53 -0
- package/agents/patterns/previews/message-placement/action-done-in-part.html +42 -0
- package/agents/patterns/previews/message-placement/action-failed-elsewhere.html +40 -0
- package/agents/patterns/previews/message-placement/action-failed-in-place.html +31 -0
- package/agents/patterns/previews/message-placement/action-later.html +24 -0
- package/agents/patterns/previews/message-placement/action-partial-elsewhere.html +33 -0
- package/agents/patterns/previews/message-placement/action-partial-in-place.html +51 -0
- package/agents/patterns/previews/message-placement/action-taken.html +25 -0
- package/agents/patterns/previews/message-placement/app-deadline.html +20 -0
- package/agents/patterns/previews/message-placement/app-failed.html +48 -0
- package/agents/patterns/previews/message-placement/app-info.html +39 -0
- package/agents/patterns/previews/message-placement/decision.html +49 -0
- package/agents/patterns/previews/message-placement/field-error.html +28 -0
- package/agents/patterns/previews/message-placement/field-hint.html +30 -0
- package/agents/patterns/previews/message-placement/field-valid.html +11 -0
- package/agents/patterns/previews/message-placement/region-failed.html +31 -0
- package/agents/patterns/previews/message-placement/region-info.html +16 -0
- package/agents/patterns/previews/page-header/contact-being-edited.html +25 -0
- package/agents/patterns/previews/page-header/members-of-a-group.html +18 -0
- package/agents/patterns/previews/page-header/own-profile.html +17 -0
- package/agents/patterns/previews/page-header/request-from-the-list.html +33 -0
- package/agents/patterns/previews/page-header/requests-of-an-office.html +16 -0
- package/agents/patterns/previews/record-detail/ask-for-words.html +72 -0
- package/agents/patterns/previews/record-detail/edit-data.html +104 -0
- package/agents/patterns/previews/record-detail/read-the-data.html +80 -0
- package/agents/patterns/previews/record-detail/record-changed.html +87 -0
- package/agents/patterns/previews/record-detail/run-at-once.html +88 -0
- package/agents/patterns/previews/record-detail/work-on-it.html +106 -0
- package/agents/patterns/previews/rhythm/between-containers.html +29 -0
- package/agents/patterns/previews/rhythm/between-fields.html +14 -0
- package/agents/patterns/previews/rhythm/between-groups.html +23 -0
- package/agents/patterns/previews/rhythm/between-sections.html +17 -0
- package/agents/patterns/previews/rhythm/content-actions.html +14 -0
- package/agents/patterns/previews/rhythm/inline.html +12 -0
- package/agents/patterns/previews/rhythm/inset.html +11 -0
- package/agents/patterns/previews/rhythm/label-control.html +8 -0
- package/agents/patterns/previews/rhythm/title-content.html +10 -0
- package/agents/patterns/previews/surfaces/band.html +73 -0
- package/agents/patterns/previews/surfaces/canvas.html +66 -0
- package/agents/patterns/previews/surfaces/card.html +30 -0
- package/agents/patterns/previews/surfaces/dialog.html +28 -0
- package/agents/patterns/previews/surfaces/edit-actions.html +35 -0
- package/agents/patterns/previews/surfaces/section.html +35 -0
- package/agents/patterns/previews/titles/dialog.html +18 -0
- package/agents/patterns/previews/titles/group.html +14 -0
- package/agents/patterns/previews/titles/page.html +25 -0
- package/agents/patterns/previews/titles/part.html +24 -0
- package/agents/patterns/previews/titles/section.html +14 -0
- package/agents/patterns/previews/widths/dialog.html +33 -0
- package/agents/patterns/previews/widths/field.html +20 -0
- package/agents/patterns/previews/widths/form.html +27 -0
- package/agents/patterns/previews/widths/page.html +49 -0
- package/agents/patterns/previews/widths/reading.html +15 -0
- package/agents/patterns/record-detail.md +268 -0
- package/agents/patterns/rhythm.md +212 -0
- package/agents/patterns/surfaces.md +212 -0
- package/agents/patterns/titles.md +208 -0
- package/agents/patterns/widths.md +202 -0
- package/agents/patterns.md +121 -0
- package/agents/reporting.md +6 -3
- package/agents/theming.md +22 -3
- package/agents/typography.md +27 -2
- package/agents/variants.md +1 -1
- package/dist/components.js +117 -117
- package/dist/components.server.js +117 -117
- package/dist/mds-accordion-item.js +8 -3
- package/dist/mds-accordion-item.server.js +7 -2
- package/dist/mds-accordion-timer-item.js +8 -3
- package/dist/mds-accordion-timer-item.server.js +7 -2
- package/dist/mds-accordion-timer.js +11 -4
- package/dist/mds-accordion-timer.server.js +7 -2
- package/dist/mds-accordion.js +11 -4
- package/dist/mds-accordion.server.js +7 -2
- package/dist/mds-author.js +8 -3
- package/dist/mds-author.server.js +7 -2
- package/dist/mds-avatar-stack-item.js +8 -3
- package/dist/mds-avatar-stack-item.server.js +7 -2
- package/dist/mds-avatar-stack.js +8 -3
- package/dist/mds-avatar-stack.server.js +7 -2
- package/dist/mds-avatar.js +8 -3
- package/dist/mds-avatar.server.js +7 -2
- package/dist/mds-badge.js +8 -3
- package/dist/mds-badge.server.js +7 -2
- package/dist/mds-banner.js +11 -4
- package/dist/mds-banner.server.js +7 -2
- package/dist/mds-benchmark-bar.js +8 -3
- package/dist/mds-benchmark-bar.server.js +7 -2
- package/dist/mds-bibliography.js +8 -3
- package/dist/mds-bibliography.server.js +7 -2
- package/dist/mds-book.js +8 -3
- package/dist/mds-book.server.js +8 -2
- package/dist/mds-breadcrumb-item.js +11 -4
- package/dist/mds-breadcrumb-item.server.js +7 -2
- package/dist/mds-breadcrumb.js +11 -4
- package/dist/mds-breadcrumb.server.js +10 -3
- package/dist/mds-button-dropdown.js +11 -4
- package/dist/mds-button-dropdown.server.js +7 -2
- package/dist/mds-button-group.js +8 -3
- package/dist/mds-button-group.server.js +7 -2
- package/dist/mds-button.js +8 -3
- package/dist/mds-button.server.js +7 -2
- package/dist/mds-calendar-cell.js +8 -3
- package/dist/mds-calendar-cell.server.js +7 -2
- package/dist/mds-calendar.js +8 -3
- package/dist/mds-calendar.server.js +7 -2
- package/dist/mds-card-content.js +8 -3
- package/dist/mds-card-content.server.js +7 -2
- package/dist/mds-card-footer.js +8 -3
- package/dist/mds-card-footer.server.js +7 -2
- package/dist/mds-card-header.js +8 -3
- package/dist/mds-card-header.server.js +7 -2
- package/dist/mds-card-media.js +8 -3
- package/dist/mds-card-media.server.js +7 -2
- package/dist/mds-card.js +8 -3
- package/dist/mds-card.server.js +10 -3
- package/dist/mds-chip.js +8 -3
- package/dist/mds-chip.server.js +7 -2
- package/dist/mds-details.js +11 -4
- package/dist/mds-details.server.js +10 -3
- package/dist/mds-dropdown.js +8 -3
- package/dist/mds-dropdown.server.js +7 -2
- package/dist/mds-emoji.js +8 -3
- package/dist/mds-emoji.server.js +10 -3
- package/dist/mds-entity.js +8 -3
- package/dist/mds-entity.server.js +7 -2
- package/dist/mds-file-preview.js +8 -3
- package/dist/mds-file-preview.server.js +7 -2
- package/dist/mds-file.js +11 -4
- package/dist/mds-file.server.js +7 -2
- package/dist/mds-filter-item.js +11 -4
- package/dist/mds-filter-item.server.js +7 -2
- package/dist/mds-filter.js +11 -4
- package/dist/mds-filter.server.js +7 -2
- package/dist/mds-header-bar.js +11 -4
- package/dist/mds-header-bar.server.js +7 -2
- package/dist/mds-header.js +8 -3
- package/dist/mds-header.server.js +7 -2
- package/dist/mds-help.js +8 -3
- package/dist/mds-help.server.js +7 -2
- package/dist/mds-horizontal-scroll.js +8 -3
- package/dist/mds-horizontal-scroll.server.js +7 -2
- package/dist/mds-hr.js +8 -3
- package/dist/mds-hr.server.js +7 -2
- package/dist/mds-icon.js +8 -3
- package/dist/mds-icon.server.js +10 -3
- package/dist/mds-img.js +8 -3
- package/dist/mds-img.server.js +7 -2
- package/dist/mds-input-date-range-preselection.js +8 -3
- package/dist/mds-input-date-range-preselection.server.js +7 -2
- package/dist/mds-input-date-range.js +11 -4
- package/dist/mds-input-date-range.server.js +7 -2
- package/dist/mds-input-date.js +8 -3
- package/dist/mds-input-date.server.js +7 -2
- package/dist/mds-input-field.js +8 -3
- package/dist/mds-input-field.server.js +8 -2
- package/dist/mds-input-otp.js +8 -3
- package/dist/mds-input-otp.server.js +7 -2
- package/dist/mds-input-range.js +11 -4
- package/dist/mds-input-range.server.js +7 -2
- package/dist/mds-input-select.js +11 -4
- package/dist/mds-input-select.server.js +7 -2
- package/dist/mds-input-switch.js +11 -4
- package/dist/mds-input-switch.server.js +7 -2
- package/dist/mds-input-tip-item.js +8 -3
- package/dist/mds-input-tip-item.server.js +7 -2
- package/dist/mds-input-tip.js +8 -3
- package/dist/mds-input-tip.server.js +7 -2
- package/dist/mds-input-upload.js +11 -4
- package/dist/mds-input-upload.server.js +7 -2
- package/dist/mds-input.js +8 -3
- package/dist/mds-input.server.js +7 -2
- package/dist/mds-keyboard-key.js +8 -3
- package/dist/mds-keyboard-key.server.js +7 -2
- package/dist/mds-keyboard.js +8 -3
- package/dist/mds-keyboard.server.js +7 -2
- package/dist/mds-kpi-item.js +8 -3
- package/dist/mds-kpi-item.server.js +7 -2
- package/dist/mds-kpi.js +8 -3
- package/dist/mds-kpi.server.js +7 -2
- package/dist/mds-label.js +11 -4
- package/dist/mds-label.server.js +7 -2
- package/dist/mds-link.js +8 -3
- package/dist/mds-link.server.js +7 -2
- package/dist/mds-list-item.js +8 -3
- package/dist/mds-list-item.server.js +7 -2
- package/dist/mds-list.js +8 -3
- package/dist/mds-list.server.js +7 -2
- package/dist/mds-mention.js +11 -4
- package/dist/mds-mention.server.js +7 -2
- package/dist/mds-modal.js +8 -3
- package/dist/mds-modal.server.js +7 -2
- package/dist/mds-note.js +11 -4
- package/dist/mds-note.server.js +7 -2
- package/dist/mds-notification.js +8 -3
- package/dist/mds-notification.server.js +10 -3
- package/dist/mds-paginator-item.js +8 -3
- package/dist/mds-paginator-item.server.js +7 -2
- package/dist/mds-paginator.js +11 -4
- package/dist/mds-paginator.server.js +7 -2
- package/dist/mds-policy-ai.js +8 -3
- package/dist/mds-policy-ai.server.js +7 -2
- package/dist/mds-pref-animation.js +11 -4
- package/dist/mds-pref-animation.server.js +7 -2
- package/dist/mds-pref-consumption.js +11 -4
- package/dist/mds-pref-consumption.server.js +7 -2
- package/dist/mds-pref-contrast.js +11 -4
- package/dist/mds-pref-contrast.server.js +7 -2
- package/dist/mds-pref-language-item.js +11 -4
- package/dist/mds-pref-language-item.server.js +7 -2
- package/dist/mds-pref-language.js +8 -3
- package/dist/mds-pref-language.server.js +7 -2
- package/dist/mds-pref-mode.js +11 -4
- package/dist/mds-pref-mode.server.js +7 -2
- package/dist/mds-pref-theme-item.js +11 -4
- package/dist/mds-pref-theme-item.server.js +7 -2
- package/dist/mds-pref-theme.js +8 -3
- package/dist/mds-pref-theme.server.js +7 -2
- package/dist/mds-pref.js +8 -3
- package/dist/mds-pref.server.js +7 -2
- package/dist/mds-price-table-features-cell.js +8 -3
- package/dist/mds-price-table-features-cell.server.js +10 -3
- package/dist/mds-price-table-features-row.js +8 -3
- package/dist/mds-price-table-features-row.server.js +7 -2
- package/dist/mds-price-table-features.js +8 -3
- package/dist/mds-price-table-features.server.js +10 -3
- package/dist/mds-price-table-header.js +8 -3
- package/dist/mds-price-table-header.server.js +7 -2
- package/dist/mds-price-table-list-item.js +8 -3
- package/dist/mds-price-table-list-item.server.js +7 -2
- package/dist/mds-price-table-list.js +8 -3
- package/dist/mds-price-table-list.server.js +7 -2
- package/dist/mds-price-table.js +8 -3
- package/dist/mds-price-table.server.js +7 -2
- package/dist/mds-progress.js +8 -3
- package/dist/mds-progress.server.js +7 -2
- package/dist/mds-push-notification-item.js +11 -4
- package/dist/mds-push-notification-item.server.js +7 -2
- package/dist/mds-push-notification.js +8 -3
- package/dist/mds-push-notification.server.js +7 -2
- package/dist/mds-quote.js +8 -3
- package/dist/mds-quote.server.js +7 -2
- package/dist/mds-radial-menu-item.js +8 -3
- package/dist/mds-radial-menu-item.server.js +7 -2
- package/dist/mds-radial-menu.js +8 -3
- package/dist/mds-radial-menu.server.js +7 -2
- package/dist/mds-radial-progress.js +8 -3
- package/dist/mds-radial-progress.server.js +7 -2
- package/dist/mds-separator.js +8 -3
- package/dist/mds-separator.server.js +7 -2
- package/dist/mds-spinner.js +8 -3
- package/dist/mds-spinner.server.js +10 -3
- package/dist/mds-status-bar.js +8 -3
- package/dist/mds-status-bar.server.js +7 -2
- package/dist/mds-stepper-bar-item.js +11 -4
- package/dist/mds-stepper-bar-item.server.js +7 -2
- package/dist/mds-stepper-bar.js +11 -4
- package/dist/mds-stepper-bar.server.js +7 -2
- package/dist/mds-tab-bar-item.js +11 -4
- package/dist/mds-tab-bar-item.server.js +7 -2
- package/dist/mds-tab-bar.js +11 -4
- package/dist/mds-tab-bar.server.js +7 -2
- package/dist/mds-tab-item.js +8 -3
- package/dist/mds-tab-item.server.js +7 -2
- package/dist/mds-tab.js +11 -4
- package/dist/mds-tab.server.js +7 -2
- package/dist/mds-table-body.js +8 -3
- package/dist/mds-table-body.server.js +7 -2
- package/dist/mds-table-cell.js +8 -3
- package/dist/mds-table-cell.server.js +10 -3
- package/dist/mds-table-footer.js +8 -3
- package/dist/mds-table-footer.server.js +10 -3
- package/dist/mds-table-header-cell.js +11 -4
- package/dist/mds-table-header-cell.server.js +7 -2
- package/dist/mds-table-header.js +8 -3
- package/dist/mds-table-header.server.js +10 -3
- package/dist/mds-table-row.js +8 -3
- package/dist/mds-table-row.server.js +7 -2
- package/dist/mds-table.js +11 -4
- package/dist/mds-table.server.js +7 -2
- package/dist/mds-text.js +8 -3
- package/dist/mds-text.server.js +7 -2
- package/dist/mds-toast-region.js +8 -3
- package/dist/mds-toast-region.server.js +7 -2
- package/dist/mds-toast.js +11 -4
- package/dist/mds-toast.server.js +7 -2
- package/dist/mds-tooltip.js +8 -3
- package/dist/mds-tooltip.server.js +7 -2
- package/dist/mds-tree-item.js +8 -3
- package/dist/mds-tree-item.server.js +7 -2
- package/dist/mds-tree.js +8 -3
- package/dist/mds-tree.server.js +7 -2
- package/dist/mds-url-view.js +11 -4
- package/dist/mds-url-view.server.js +7 -2
- package/dist/mds-usage.js +8 -3
- package/dist/mds-usage.server.js +7 -2
- package/dist/mds-video-wall.js +8 -3
- package/dist/mds-video-wall.server.js +7 -2
- package/dist/mds-zero.js +8 -3
- package/dist/mds-zero.server.js +7 -2
- package/dist/types/components.d.ts +117 -117
- package/dist/types/components.server.d.ts +118 -118
- package/dist/types/mds-accordion-item.d.ts +4 -8
- package/dist/types/mds-accordion-item.server.d.ts +4 -4
- package/dist/types/mds-accordion-timer-item.d.ts +4 -8
- package/dist/types/mds-accordion-timer-item.server.d.ts +4 -4
- package/dist/types/mds-accordion-timer.d.ts +4 -8
- package/dist/types/mds-accordion-timer.server.d.ts +4 -4
- package/dist/types/mds-accordion.d.ts +4 -8
- package/dist/types/mds-accordion.server.d.ts +4 -4
- package/dist/types/mds-author.d.ts +2 -6
- package/dist/types/mds-author.server.d.ts +3 -3
- package/dist/types/mds-avatar-stack-item.d.ts +2 -6
- package/dist/types/mds-avatar-stack-item.server.d.ts +3 -3
- package/dist/types/mds-avatar-stack.d.ts +2 -6
- package/dist/types/mds-avatar-stack.server.d.ts +3 -3
- package/dist/types/mds-avatar.d.ts +2 -6
- package/dist/types/mds-avatar.server.d.ts +3 -3
- package/dist/types/mds-badge.d.ts +2 -6
- package/dist/types/mds-badge.server.d.ts +3 -3
- package/dist/types/mds-banner.d.ts +4 -8
- package/dist/types/mds-banner.server.d.ts +4 -4
- package/dist/types/mds-benchmark-bar.d.ts +2 -6
- package/dist/types/mds-benchmark-bar.server.d.ts +3 -3
- package/dist/types/mds-bibliography.d.ts +2 -6
- package/dist/types/mds-bibliography.server.d.ts +3 -3
- package/dist/types/mds-book.d.ts +2 -6
- package/dist/types/mds-book.server.d.ts +3 -3
- package/dist/types/mds-breadcrumb-item.d.ts +4 -8
- package/dist/types/mds-breadcrumb-item.server.d.ts +4 -4
- package/dist/types/mds-breadcrumb.d.ts +4 -8
- package/dist/types/mds-breadcrumb.server.d.ts +4 -4
- package/dist/types/mds-button-dropdown.d.ts +4 -8
- package/dist/types/mds-button-dropdown.server.d.ts +4 -4
- package/dist/types/mds-button-group.d.ts +2 -6
- package/dist/types/mds-button-group.server.d.ts +3 -3
- package/dist/types/mds-button.d.ts +2 -6
- package/dist/types/mds-button.server.d.ts +3 -3
- package/dist/types/mds-calendar-cell.d.ts +2 -6
- package/dist/types/mds-calendar-cell.server.d.ts +3 -3
- package/dist/types/mds-calendar.d.ts +4 -8
- package/dist/types/mds-calendar.server.d.ts +4 -4
- package/dist/types/mds-card-content.d.ts +2 -6
- package/dist/types/mds-card-content.server.d.ts +3 -3
- package/dist/types/mds-card-footer.d.ts +2 -6
- package/dist/types/mds-card-footer.server.d.ts +3 -3
- package/dist/types/mds-card-header.d.ts +2 -6
- package/dist/types/mds-card-header.server.d.ts +3 -3
- package/dist/types/mds-card-media.d.ts +2 -6
- package/dist/types/mds-card-media.server.d.ts +3 -3
- package/dist/types/mds-card.d.ts +2 -6
- package/dist/types/mds-card.server.d.ts +3 -3
- package/dist/types/mds-chip.d.ts +4 -8
- package/dist/types/mds-chip.server.d.ts +4 -4
- package/dist/types/mds-details.d.ts +4 -8
- package/dist/types/mds-details.server.d.ts +4 -4
- package/dist/types/mds-dropdown.d.ts +4 -8
- package/dist/types/mds-dropdown.server.d.ts +4 -4
- package/dist/types/mds-emoji.d.ts +2 -6
- package/dist/types/mds-emoji.server.d.ts +3 -3
- package/dist/types/mds-entity.d.ts +2 -6
- package/dist/types/mds-entity.server.d.ts +3 -3
- package/dist/types/mds-file-preview.d.ts +4 -8
- package/dist/types/mds-file-preview.server.d.ts +4 -4
- package/dist/types/mds-file.d.ts +4 -8
- package/dist/types/mds-file.server.d.ts +4 -4
- package/dist/types/mds-filter-item.d.ts +4 -8
- package/dist/types/mds-filter-item.server.d.ts +4 -4
- package/dist/types/mds-filter.d.ts +4 -8
- package/dist/types/mds-filter.server.d.ts +4 -4
- package/dist/types/mds-header-bar.d.ts +4 -8
- package/dist/types/mds-header-bar.server.d.ts +4 -4
- package/dist/types/mds-header.d.ts +4 -8
- package/dist/types/mds-header.server.d.ts +4 -4
- package/dist/types/mds-help.d.ts +2 -6
- package/dist/types/mds-help.server.d.ts +3 -3
- package/dist/types/mds-horizontal-scroll.d.ts +2 -6
- package/dist/types/mds-horizontal-scroll.server.d.ts +3 -3
- package/dist/types/mds-hr.d.ts +2 -6
- package/dist/types/mds-hr.server.d.ts +3 -3
- package/dist/types/mds-icon.d.ts +2 -6
- package/dist/types/mds-icon.server.d.ts +3 -3
- package/dist/types/mds-img.d.ts +4 -8
- package/dist/types/mds-img.server.d.ts +4 -4
- package/dist/types/mds-input-date-range-preselection.d.ts +2 -6
- package/dist/types/mds-input-date-range-preselection.server.d.ts +3 -3
- package/dist/types/mds-input-date-range.d.ts +4 -8
- package/dist/types/mds-input-date-range.server.d.ts +4 -4
- package/dist/types/mds-input-date.d.ts +4 -8
- package/dist/types/mds-input-date.server.d.ts +4 -4
- package/dist/types/mds-input-field.d.ts +2 -6
- package/dist/types/mds-input-field.server.d.ts +3 -3
- package/dist/types/mds-input-otp.d.ts +2 -6
- package/dist/types/mds-input-otp.server.d.ts +3 -3
- package/dist/types/mds-input-range.d.ts +4 -8
- package/dist/types/mds-input-range.server.d.ts +4 -4
- package/dist/types/mds-input-select.d.ts +4 -8
- package/dist/types/mds-input-select.server.d.ts +4 -4
- package/dist/types/mds-input-switch.d.ts +4 -8
- package/dist/types/mds-input-switch.server.d.ts +4 -4
- package/dist/types/mds-input-tip-item.d.ts +2 -6
- package/dist/types/mds-input-tip-item.server.d.ts +3 -3
- package/dist/types/mds-input-tip.d.ts +2 -6
- package/dist/types/mds-input-tip.server.d.ts +3 -3
- package/dist/types/mds-input-upload.d.ts +4 -8
- package/dist/types/mds-input-upload.server.d.ts +4 -4
- package/dist/types/mds-input.d.ts +4 -8
- package/dist/types/mds-input.server.d.ts +4 -4
- package/dist/types/mds-keyboard-key.d.ts +2 -6
- package/dist/types/mds-keyboard-key.server.d.ts +3 -3
- package/dist/types/mds-keyboard.d.ts +2 -6
- package/dist/types/mds-keyboard.server.d.ts +3 -3
- package/dist/types/mds-kpi-item.d.ts +2 -6
- package/dist/types/mds-kpi-item.server.d.ts +3 -3
- package/dist/types/mds-kpi.d.ts +2 -6
- package/dist/types/mds-kpi.server.d.ts +3 -3
- package/dist/types/mds-label.d.ts +4 -8
- package/dist/types/mds-label.server.d.ts +4 -4
- package/dist/types/mds-link.d.ts +2 -6
- package/dist/types/mds-link.server.d.ts +3 -3
- package/dist/types/mds-list-item.d.ts +2 -6
- package/dist/types/mds-list-item.server.d.ts +3 -3
- package/dist/types/mds-list.d.ts +2 -6
- package/dist/types/mds-list.server.d.ts +3 -3
- package/dist/types/mds-mention.d.ts +4 -8
- package/dist/types/mds-mention.server.d.ts +4 -4
- package/dist/types/mds-modal.d.ts +4 -8
- package/dist/types/mds-modal.server.d.ts +4 -4
- package/dist/types/mds-note.d.ts +4 -8
- package/dist/types/mds-note.server.d.ts +4 -4
- package/dist/types/mds-notification.d.ts +2 -6
- package/dist/types/mds-notification.server.d.ts +3 -3
- package/dist/types/mds-paginator-item.d.ts +2 -6
- package/dist/types/mds-paginator-item.server.d.ts +3 -3
- package/dist/types/mds-paginator.d.ts +4 -8
- package/dist/types/mds-paginator.server.d.ts +4 -4
- package/dist/types/mds-policy-ai.d.ts +2 -6
- package/dist/types/mds-policy-ai.server.d.ts +3 -3
- package/dist/types/mds-pref-animation.d.ts +4 -8
- package/dist/types/mds-pref-animation.server.d.ts +4 -4
- package/dist/types/mds-pref-consumption.d.ts +4 -8
- package/dist/types/mds-pref-consumption.server.d.ts +4 -4
- package/dist/types/mds-pref-contrast.d.ts +4 -8
- package/dist/types/mds-pref-contrast.server.d.ts +4 -4
- package/dist/types/mds-pref-language-item.d.ts +4 -8
- package/dist/types/mds-pref-language-item.server.d.ts +4 -4
- package/dist/types/mds-pref-language.d.ts +4 -8
- package/dist/types/mds-pref-language.server.d.ts +4 -4
- package/dist/types/mds-pref-mode.d.ts +4 -8
- package/dist/types/mds-pref-mode.server.d.ts +4 -4
- package/dist/types/mds-pref-theme-item.d.ts +4 -8
- package/dist/types/mds-pref-theme-item.server.d.ts +4 -4
- package/dist/types/mds-pref-theme.d.ts +4 -8
- package/dist/types/mds-pref-theme.server.d.ts +4 -4
- package/dist/types/mds-pref.d.ts +2 -6
- package/dist/types/mds-pref.server.d.ts +3 -3
- package/dist/types/mds-price-table-features-cell.d.ts +2 -6
- package/dist/types/mds-price-table-features-cell.server.d.ts +3 -3
- package/dist/types/mds-price-table-features-row.d.ts +2 -6
- package/dist/types/mds-price-table-features-row.server.d.ts +3 -3
- package/dist/types/mds-price-table-features.d.ts +2 -6
- package/dist/types/mds-price-table-features.server.d.ts +3 -3
- package/dist/types/mds-price-table-header.d.ts +2 -6
- package/dist/types/mds-price-table-header.server.d.ts +3 -3
- package/dist/types/mds-price-table-list-item.d.ts +2 -6
- package/dist/types/mds-price-table-list-item.server.d.ts +3 -3
- package/dist/types/mds-price-table-list.d.ts +2 -6
- package/dist/types/mds-price-table-list.server.d.ts +3 -3
- package/dist/types/mds-price-table.d.ts +2 -6
- package/dist/types/mds-price-table.server.d.ts +3 -3
- package/dist/types/mds-progress.d.ts +2 -6
- package/dist/types/mds-progress.server.d.ts +3 -3
- package/dist/types/mds-push-notification-item.d.ts +4 -8
- package/dist/types/mds-push-notification-item.server.d.ts +4 -4
- package/dist/types/mds-push-notification.d.ts +4 -8
- package/dist/types/mds-push-notification.server.d.ts +4 -4
- package/dist/types/mds-quote.d.ts +2 -6
- package/dist/types/mds-quote.server.d.ts +3 -3
- package/dist/types/mds-radial-menu-item.d.ts +2 -6
- package/dist/types/mds-radial-menu-item.server.d.ts +3 -3
- package/dist/types/mds-radial-menu.d.ts +2 -6
- package/dist/types/mds-radial-menu.server.d.ts +3 -3
- package/dist/types/mds-radial-progress.d.ts +2 -6
- package/dist/types/mds-radial-progress.server.d.ts +3 -3
- package/dist/types/mds-separator.d.ts +2 -6
- package/dist/types/mds-separator.server.d.ts +3 -3
- package/dist/types/mds-spinner.d.ts +2 -6
- package/dist/types/mds-spinner.server.d.ts +3 -3
- package/dist/types/mds-status-bar.d.ts +2 -6
- package/dist/types/mds-status-bar.server.d.ts +3 -3
- package/dist/types/mds-stepper-bar-item.d.ts +4 -8
- package/dist/types/mds-stepper-bar-item.server.d.ts +4 -4
- package/dist/types/mds-stepper-bar.d.ts +4 -8
- package/dist/types/mds-stepper-bar.server.d.ts +4 -4
- package/dist/types/mds-tab-bar-item.d.ts +4 -8
- package/dist/types/mds-tab-bar-item.server.d.ts +4 -4
- package/dist/types/mds-tab-bar.d.ts +4 -8
- package/dist/types/mds-tab-bar.server.d.ts +4 -4
- package/dist/types/mds-tab-item.d.ts +4 -8
- package/dist/types/mds-tab-item.server.d.ts +4 -4
- package/dist/types/mds-tab.d.ts +4 -8
- package/dist/types/mds-tab.server.d.ts +4 -4
- package/dist/types/mds-table-body.d.ts +2 -6
- package/dist/types/mds-table-body.server.d.ts +3 -3
- package/dist/types/mds-table-cell.d.ts +2 -6
- package/dist/types/mds-table-cell.server.d.ts +3 -3
- package/dist/types/mds-table-footer.d.ts +2 -6
- package/dist/types/mds-table-footer.server.d.ts +3 -3
- package/dist/types/mds-table-header-cell.d.ts +4 -8
- package/dist/types/mds-table-header-cell.server.d.ts +4 -4
- package/dist/types/mds-table-header.d.ts +2 -6
- package/dist/types/mds-table-header.server.d.ts +3 -3
- package/dist/types/mds-table-row.d.ts +2 -6
- package/dist/types/mds-table-row.server.d.ts +3 -3
- package/dist/types/mds-table.d.ts +4 -8
- package/dist/types/mds-table.server.d.ts +4 -4
- package/dist/types/mds-text.d.ts +2 -6
- package/dist/types/mds-text.server.d.ts +3 -3
- package/dist/types/mds-toast-region.d.ts +2 -6
- package/dist/types/mds-toast-region.server.d.ts +3 -3
- package/dist/types/mds-toast.d.ts +4 -8
- package/dist/types/mds-toast.server.d.ts +4 -4
- package/dist/types/mds-tooltip.d.ts +2 -6
- package/dist/types/mds-tooltip.server.d.ts +3 -3
- package/dist/types/mds-tree-item.d.ts +4 -8
- package/dist/types/mds-tree-item.server.d.ts +4 -4
- package/dist/types/mds-tree.d.ts +2 -6
- package/dist/types/mds-tree.server.d.ts +3 -3
- package/dist/types/mds-url-view.d.ts +4 -8
- package/dist/types/mds-url-view.server.d.ts +4 -4
- package/dist/types/mds-usage.d.ts +2 -6
- package/dist/types/mds-usage.server.d.ts +3 -3
- package/dist/types/mds-video-wall.d.ts +2 -6
- package/dist/types/mds-video-wall.server.d.ts +3 -3
- package/dist/types/mds-zero.d.ts +2 -6
- package/dist/types/mds-zero.server.d.ts +3 -3
- package/package.json +3 -3
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
try: Look at the error above the row: the session ended and nothing was saved, so Salva is hidden and Accedi, in the banner, is the only way on. Press Accedi: the sign-in opens in a new tab; back here the banner goes and Salva comes back, with what was written.
|
|
3
|
+
-->
|
|
4
|
+
<div class="grid gap-between-sections">
|
|
5
|
+
<mds-text typography="page" tag="h1">Modifica referente</mds-text>
|
|
6
|
+
<form id="form" class="@container grid max-w-form gap-content-actions">
|
|
7
|
+
<div class="grid gap-between-fields">
|
|
8
|
+
<mds-input-field label="Nome e cognome">
|
|
9
|
+
<mds-input value="Marco Bianchi"></mds-input>
|
|
10
|
+
</mds-input-field>
|
|
11
|
+
<mds-input-field label="PEC">
|
|
12
|
+
<mds-input type="email" value="m.bianchi@pec.esempio.it"></mds-input>
|
|
13
|
+
</mds-input-field>
|
|
14
|
+
<mds-banner id="expired" variant="error" tone="strong" headline="Sessione scaduta">
|
|
15
|
+
<mds-text>
|
|
16
|
+
Non è stato salvato nulla. Accedi di nuovo in un'altra scheda, poi torna qui e salva: quello
|
|
17
|
+
che hai scritto resta in questa pagina.
|
|
18
|
+
</mds-text>
|
|
19
|
+
<mds-button id="sign-in" slot="action" href="#" target="blank" icon="mi/baseline/open-in-new" icon-position="right" variant="error" tone="strong">Accedi</mds-button>
|
|
20
|
+
</mds-banner>
|
|
21
|
+
</div>
|
|
22
|
+
<div class="flex justify-end gap-inline @max-actions:flex-col @max-actions:*:self-stretch">
|
|
23
|
+
<mds-button type="button" variant="dark" tone="outline">Annulla</mds-button>
|
|
24
|
+
<mds-button id="save" type="submit" class="hidden">Salva</mds-button>
|
|
25
|
+
</div>
|
|
26
|
+
</form>
|
|
27
|
+
</div>
|
|
28
|
+
<script>
|
|
29
|
+
const expired = document.getElementById('expired');
|
|
30
|
+
const save = document.getElementById('save');
|
|
31
|
+
document.getElementById('form').addEventListener('submit', (event) => event.preventDefault());
|
|
32
|
+
// the session is back: the banner goes, Salva comes back and takes the focus
|
|
33
|
+
const signedIn = () => {
|
|
34
|
+
expired.classList.add('hidden');
|
|
35
|
+
save.classList.remove('hidden');
|
|
36
|
+
save.focus();
|
|
37
|
+
};
|
|
38
|
+
// the preview simulates the sign-in in the other tab; in the product the page checks the
|
|
39
|
+
// session when it is shown again (visibilitychange) and calls signedIn
|
|
40
|
+
document.getElementById('sign-in').addEventListener('click', (event) => {
|
|
41
|
+
event.preventDefault();
|
|
42
|
+
setTimeout(signedIn, 300);
|
|
43
|
+
});
|
|
44
|
+
</script>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
try: Look at the documents of the request: a few files, so no search, no summary and no pages; one card for each file right under the title of the section, two to a row when the section is wide.
|
|
3
|
+
-->
|
|
4
|
+
<section class="@container grid gap-title-content">
|
|
5
|
+
<mds-text typography="section" tag="h2">Documenti</mds-text>
|
|
6
|
+
<div class="grid gap-between-containers @2xl:grid-cols-2">
|
|
7
|
+
<mds-file filename="domanda-cambio-residenza.pdf"></mds-file>
|
|
8
|
+
<mds-file filename="documento-identita.jpg"></mds-file>
|
|
9
|
+
<mds-file filename="contratto-affitto.pdf"></mds-file>
|
|
10
|
+
<mds-file filename="dichiarazione-ospitalita.pdf"></mds-file>
|
|
11
|
+
</div>
|
|
12
|
+
</section>
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
try: Look at the end of the line of the summary: 2 practices arrived while the queue was open, and the table did not move. Wait a few seconds: a third arrives, the count in the dot grows and the dot pulses three times. Press Mostra: the new practices join the end of the queue, the summary counts them, and the line empties without giving up its place.
|
|
3
|
+
-->
|
|
4
|
+
<div class="grid gap-between-groups">
|
|
5
|
+
<form role="search" class="grid gap-between-fields">
|
|
6
|
+
<div class="field-group max-w-form">
|
|
7
|
+
<mds-input-field label="Cerca">
|
|
8
|
+
<mds-input type="search" name="q" placeholder="Numero o oggetto"></mds-input>
|
|
9
|
+
</mds-input-field>
|
|
10
|
+
<mds-input-field label="Canale" short>
|
|
11
|
+
<mds-input-select name="canale">
|
|
12
|
+
<option value="">Tutti i canali</option>
|
|
13
|
+
<option value="online">Online</option>
|
|
14
|
+
<option value="pec">PEC</option>
|
|
15
|
+
<option value="sportello">Sportello</option>
|
|
16
|
+
</mds-input-select>
|
|
17
|
+
</mds-input-field>
|
|
18
|
+
</div>
|
|
19
|
+
<mds-filter label="Stato" class="justify-self-start">
|
|
20
|
+
<mds-filter-item id="tutte" label="Tutte" value="" count="130"></mds-filter-item>
|
|
21
|
+
<mds-filter-item id="stato-nuove" label="Nuove" value="nuova" count="24" selected></mds-filter-item>
|
|
22
|
+
<mds-filter-item label="In lavorazione" value="in-lavorazione" count="41"></mds-filter-item>
|
|
23
|
+
<mds-filter-item label="In attesa" value="in-attesa" count="12"></mds-filter-item>
|
|
24
|
+
<mds-filter-item label="Chiuse" value="chiusa" count="53"></mds-filter-item>
|
|
25
|
+
</mds-filter>
|
|
26
|
+
</form>
|
|
27
|
+
<div class="grid gap-between-fields">
|
|
28
|
+
<div class="@container grid gap-title-content">
|
|
29
|
+
<div class="flex flex-wrap items-center gap-inline @2xl:justify-between">
|
|
30
|
+
<div class="flex flex-wrap items-center gap-inline">
|
|
31
|
+
<mds-text id="summary" typography="detail" tag="p" role="status">21-24 di 24 pratiche</mds-text>
|
|
32
|
+
<mds-button variant="dark" tone="text" size="sm">Rimuovi i filtri</mds-button>
|
|
33
|
+
</div>
|
|
34
|
+
<div id="nuove" class="flex basis-full items-center gap-inline @2xl:basis-auto">
|
|
35
|
+
<p role="status" class="flex items-center gap-inline">
|
|
36
|
+
<mds-notification id="punto" variant="info" value="2" pulse></mds-notification>
|
|
37
|
+
<mds-text id="quante" typography="detail" class="text-info-fg">nuove pratiche</mds-text>
|
|
38
|
+
</p>
|
|
39
|
+
<mds-button id="mostra" variant="info" tone="outline" size="sm">Mostra</mds-button>
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
<mds-table sorting="external" class="w-full [&_mds-table-cell]:text-nowrap [&_mds-text]:text-nowrap">
|
|
43
|
+
<mds-table-header>
|
|
44
|
+
<mds-table-header-cell label="Numero" sortable sort-key="numero"></mds-table-header-cell>
|
|
45
|
+
<mds-table-header-cell label="Oggetto"></mds-table-header-cell>
|
|
46
|
+
<mds-table-header-cell label="Richiedente"></mds-table-header-cell>
|
|
47
|
+
<mds-table-header-cell label="Ricevuta il" sortable sort-key="ricevuta" direction="ascending"></mds-table-header-cell>
|
|
48
|
+
</mds-table-header>
|
|
49
|
+
<mds-table-body id="righe">
|
|
50
|
+
<mds-table-row>
|
|
51
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0151</mds-link></mds-text></mds-table-cell>
|
|
52
|
+
<mds-table-cell><mds-text typography="detail">Carta di identità</mds-text></mds-table-cell>
|
|
53
|
+
<mds-table-cell><mds-text typography="detail">Giulia Bianchi</mds-text></mds-table-cell>
|
|
54
|
+
<mds-table-cell><mds-text typography="detail">3 marzo 2026, 9:05</mds-text></mds-table-cell>
|
|
55
|
+
</mds-table-row>
|
|
56
|
+
<mds-table-row>
|
|
57
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0152</mds-link></mds-text></mds-table-cell>
|
|
58
|
+
<mds-table-cell><mds-text typography="detail">Certificato di residenza</mds-text></mds-table-cell>
|
|
59
|
+
<mds-table-cell><mds-text typography="detail">Luca Ferri</mds-text></mds-table-cell>
|
|
60
|
+
<mds-table-cell><mds-text typography="detail">3 marzo 2026, 9:18</mds-text></mds-table-cell>
|
|
61
|
+
</mds-table-row>
|
|
62
|
+
<mds-table-row>
|
|
63
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0154</mds-link></mds-text></mds-table-cell>
|
|
64
|
+
<mds-table-cell><mds-text typography="detail">Cambio di indirizzo</mds-text></mds-table-cell>
|
|
65
|
+
<mds-table-cell><mds-text typography="detail">Marco Rossi</mds-text></mds-table-cell>
|
|
66
|
+
<mds-table-cell><mds-text typography="detail">3 marzo 2026, 9:31</mds-text></mds-table-cell>
|
|
67
|
+
</mds-table-row>
|
|
68
|
+
<mds-table-row>
|
|
69
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0155</mds-link></mds-text></mds-table-cell>
|
|
70
|
+
<mds-table-cell><mds-text typography="detail">Iscrizione anagrafica</mds-text></mds-table-cell>
|
|
71
|
+
<mds-table-cell><mds-text typography="detail">Anna Conti</mds-text></mds-table-cell>
|
|
72
|
+
<mds-table-cell><mds-text typography="detail">3 marzo 2026, 9:47</mds-text></mds-table-cell>
|
|
73
|
+
</mds-table-row>
|
|
74
|
+
</mds-table-body>
|
|
75
|
+
</mds-table>
|
|
76
|
+
</div>
|
|
77
|
+
<mds-paginator pages="3" current-page="3" class="justify-self-start"></mds-paginator>
|
|
78
|
+
</div>
|
|
79
|
+
</div>
|
|
80
|
+
<script>
|
|
81
|
+
const arrived = [
|
|
82
|
+
['2026/0157', 'Cambio di residenza', 'Paolo Neri', '3 marzo 2026, 10:02'],
|
|
83
|
+
['2026/0158', 'Stato di famiglia', 'Sara Galli', '3 marzo 2026, 10:10'],
|
|
84
|
+
];
|
|
85
|
+
const cell = (text) => `<mds-table-cell><mds-text typography="detail">${text}</mds-text></mds-table-cell>`;
|
|
86
|
+
// a third practice arrives while the queue is open: the count in the dot grows and the dot pulses
|
|
87
|
+
const arriving = setTimeout(() => {
|
|
88
|
+
arrived.push(['2026/0159', 'Carta di identità', 'Elena Fontana', '3 marzo 2026, 10:16']);
|
|
89
|
+
document.getElementById('punto').value = arrived.length;
|
|
90
|
+
}, 4000);
|
|
91
|
+
document.getElementById('mostra').addEventListener('click', () => {
|
|
92
|
+
clearTimeout(arriving);
|
|
93
|
+
// the list loads again with the same search: oldest first, so the new ones join the end of this last page
|
|
94
|
+
const rows = arrived.map(
|
|
95
|
+
([number, subject, person, received]) =>
|
|
96
|
+
`<mds-table-row><mds-table-cell><mds-text typography="detail"><mds-link href="#">${number}</mds-link></mds-text></mds-table-cell>${cell(subject)}${cell(person)}${cell(received)}</mds-table-row>`,
|
|
97
|
+
);
|
|
98
|
+
document.getElementById('righe').insertAdjacentHTML('beforeend', rows.join(''));
|
|
99
|
+
const total = 24 + arrived.length;
|
|
100
|
+
document.getElementById('summary').textContent = `21-${total} di ${total} pratiche`;
|
|
101
|
+
document.getElementById('stato-nuove').setAttribute('count', `${total}`);
|
|
102
|
+
document.getElementById('tutte').setAttribute('count', `${130 + arrived.length}`);
|
|
103
|
+
// the line empties but keeps its place (Mostra hidden, not removed): the items never move
|
|
104
|
+
document.getElementById('quante').textContent = '';
|
|
105
|
+
document.getElementById('punto').dismissed = true;
|
|
106
|
+
document.getElementById('mostra').style.visibility = 'hidden';
|
|
107
|
+
// Mostra is gone: the focus goes to the heading of the list, in page-header, outside this block
|
|
108
|
+
});
|
|
109
|
+
</script>
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
try: Look at the order of the list: the search form at the width of a form, then the summary that says which practices out of how many with Rimuovi i filtri, the table whose numbers are the links to each practice, and the pages under it.
|
|
3
|
+
-->
|
|
4
|
+
<div class="grid gap-between-groups">
|
|
5
|
+
<form role="search" class="grid gap-between-fields">
|
|
6
|
+
<div class="field-group max-w-form">
|
|
7
|
+
<mds-input-field label="Cerca">
|
|
8
|
+
<mds-input type="search" name="q" placeholder="Numero o oggetto"></mds-input>
|
|
9
|
+
</mds-input-field>
|
|
10
|
+
<mds-input-field label="Ufficio" short>
|
|
11
|
+
<mds-input-select name="ufficio" value="anagrafe">
|
|
12
|
+
<option value="">Tutti gli uffici</option>
|
|
13
|
+
<option value="anagrafe">Anagrafe</option>
|
|
14
|
+
<option value="stato-civile">Stato civile</option>
|
|
15
|
+
</mds-input-select>
|
|
16
|
+
</mds-input-field>
|
|
17
|
+
</div>
|
|
18
|
+
<mds-filter label="Stato" class="justify-self-start">
|
|
19
|
+
<mds-filter-item label="Tutte" value="" count="44" selected></mds-filter-item>
|
|
20
|
+
<mds-filter-item label="Nuove" value="nuova" count="8"></mds-filter-item>
|
|
21
|
+
<mds-filter-item label="In lavorazione" value="in-lavorazione" count="14"></mds-filter-item>
|
|
22
|
+
<mds-filter-item label="In attesa" value="in-attesa" count="6"></mds-filter-item>
|
|
23
|
+
<mds-filter-item label="Chiuse" value="chiusa" count="16"></mds-filter-item>
|
|
24
|
+
</mds-filter>
|
|
25
|
+
</form>
|
|
26
|
+
<div class="grid gap-between-fields">
|
|
27
|
+
<div class="grid gap-title-content">
|
|
28
|
+
<div class="flex flex-wrap items-center gap-inline">
|
|
29
|
+
<mds-text typography="detail" tag="p" role="status">41-44 di 44 pratiche</mds-text>
|
|
30
|
+
<mds-button variant="dark" tone="text" size="sm">Rimuovi i filtri</mds-button>
|
|
31
|
+
</div>
|
|
32
|
+
<mds-table sorting="external" class="w-full [&_mds-table-cell]:text-nowrap [&_mds-text]:text-nowrap">
|
|
33
|
+
<mds-table-header>
|
|
34
|
+
<mds-table-header-cell label="Numero" sortable sort-key="numero"></mds-table-header-cell>
|
|
35
|
+
<mds-table-header-cell label="Oggetto"></mds-table-header-cell>
|
|
36
|
+
<mds-table-header-cell label="Richiedente"></mds-table-header-cell>
|
|
37
|
+
<mds-table-header-cell label="Stato"></mds-table-header-cell>
|
|
38
|
+
<mds-table-header-cell label="Ricevuta il" sortable sort-key="ricevuta" direction="descending"></mds-table-header-cell>
|
|
39
|
+
</mds-table-header>
|
|
40
|
+
<mds-table-body>
|
|
41
|
+
<mds-table-row>
|
|
42
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0118</mds-link></mds-text></mds-table-cell>
|
|
43
|
+
<mds-table-cell><mds-text typography="detail">Cambio di residenza</mds-text></mds-table-cell>
|
|
44
|
+
<mds-table-cell><mds-text typography="detail">Giulia Bianchi</mds-text></mds-table-cell>
|
|
45
|
+
<mds-table-cell><mds-badge variant="warning" label="In lavorazione"></mds-badge></mds-table-cell>
|
|
46
|
+
<mds-table-cell><mds-text typography="detail">24 febbraio 2026</mds-text></mds-table-cell>
|
|
47
|
+
</mds-table-row>
|
|
48
|
+
<mds-table-row>
|
|
49
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0115</mds-link></mds-text></mds-table-cell>
|
|
50
|
+
<mds-table-cell><mds-text typography="detail">Iscrizione anagrafica</mds-text></mds-table-cell>
|
|
51
|
+
<mds-table-cell><mds-text typography="detail">Luca Ferri</mds-text></mds-table-cell>
|
|
52
|
+
<mds-table-cell><mds-badge variant="success" label="Chiusa"></mds-badge></mds-table-cell>
|
|
53
|
+
<mds-table-cell><mds-text typography="detail">23 febbraio 2026</mds-text></mds-table-cell>
|
|
54
|
+
</mds-table-row>
|
|
55
|
+
<mds-table-row>
|
|
56
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0112</mds-link></mds-text></mds-table-cell>
|
|
57
|
+
<mds-table-cell><mds-text typography="detail">Certificato di residenza</mds-text></mds-table-cell>
|
|
58
|
+
<mds-table-cell><mds-text typography="detail">Marco Rossi</mds-text></mds-table-cell>
|
|
59
|
+
<mds-table-cell><mds-badge variant="success" label="Chiusa"></mds-badge></mds-table-cell>
|
|
60
|
+
<mds-table-cell><mds-text typography="detail">20 febbraio 2026</mds-text></mds-table-cell>
|
|
61
|
+
</mds-table-row>
|
|
62
|
+
<mds-table-row>
|
|
63
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0109</mds-link></mds-text></mds-table-cell>
|
|
64
|
+
<mds-table-cell><mds-text typography="detail">Cambio di indirizzo</mds-text></mds-table-cell>
|
|
65
|
+
<mds-table-cell><mds-text typography="detail">Anna Conti</mds-text></mds-table-cell>
|
|
66
|
+
<mds-table-cell><mds-badge variant="info" label="In attesa"></mds-badge></mds-table-cell>
|
|
67
|
+
<mds-table-cell><mds-text typography="detail">19 febbraio 2026</mds-text></mds-table-cell>
|
|
68
|
+
</mds-table-row>
|
|
69
|
+
</mds-table-body>
|
|
70
|
+
</mds-table>
|
|
71
|
+
</div>
|
|
72
|
+
<mds-paginator pages="5" current-page="5" class="justify-self-start"></mds-paginator>
|
|
73
|
+
</div>
|
|
74
|
+
</div>
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
try: Look at the two rows selected: the bar of the table says how many and offers Archivia and Assegna, the main one last; the search, the summary and the pages stay where they are in every list.
|
|
3
|
+
-->
|
|
4
|
+
<div class="grid gap-between-groups">
|
|
5
|
+
<form role="search" class="grid gap-between-fields">
|
|
6
|
+
<div class="field-group max-w-form">
|
|
7
|
+
<mds-input-field label="Cerca">
|
|
8
|
+
<mds-input type="search" name="q" placeholder="Numero o oggetto"></mds-input>
|
|
9
|
+
</mds-input-field>
|
|
10
|
+
<mds-input-field label="Ufficio" short>
|
|
11
|
+
<mds-input-select name="ufficio">
|
|
12
|
+
<option value="">Tutti gli uffici</option>
|
|
13
|
+
<option value="anagrafe">Anagrafe</option>
|
|
14
|
+
<option value="stato-civile">Stato civile</option>
|
|
15
|
+
</mds-input-select>
|
|
16
|
+
</mds-input-field>
|
|
17
|
+
</div>
|
|
18
|
+
<mds-filter label="Stato" class="justify-self-start">
|
|
19
|
+
<mds-filter-item label="Tutte" value="" count="128"></mds-filter-item>
|
|
20
|
+
<mds-filter-item label="Da assegnare" value="da-assegnare" count="14" selected></mds-filter-item>
|
|
21
|
+
<mds-filter-item label="In lavorazione" value="in-lavorazione" count="31"></mds-filter-item>
|
|
22
|
+
<mds-filter-item label="In attesa" value="in-attesa" count="12"></mds-filter-item>
|
|
23
|
+
<mds-filter-item label="Chiuse" value="chiusa" count="71"></mds-filter-item>
|
|
24
|
+
</mds-filter>
|
|
25
|
+
</form>
|
|
26
|
+
<div class="grid gap-between-fields">
|
|
27
|
+
<div class="grid gap-title-content">
|
|
28
|
+
<div class="flex flex-wrap items-center gap-inline">
|
|
29
|
+
<mds-text typography="detail" tag="p" role="status">11-14 di 14 pratiche</mds-text>
|
|
30
|
+
<mds-button variant="dark" tone="text" size="sm">Rimuovi i filtri</mds-button>
|
|
31
|
+
</div>
|
|
32
|
+
<mds-table id="pratiche" selectable sorting="external" class="w-full [&_mds-table-cell]:text-nowrap [&_mds-text]:text-nowrap">
|
|
33
|
+
<mds-table-header>
|
|
34
|
+
<mds-table-header-cell label="Numero" sortable sort-key="numero"></mds-table-header-cell>
|
|
35
|
+
<mds-table-header-cell label="Oggetto"></mds-table-header-cell>
|
|
36
|
+
<mds-table-header-cell label="Richiedente"></mds-table-header-cell>
|
|
37
|
+
<mds-table-header-cell label="Ricevuta il" sortable sort-key="ricevuta" direction="descending"></mds-table-header-cell>
|
|
38
|
+
</mds-table-header>
|
|
39
|
+
<mds-table-body>
|
|
40
|
+
<mds-table-row value="2026/0101">
|
|
41
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0101</mds-link></mds-text></mds-table-cell>
|
|
42
|
+
<mds-table-cell><mds-text typography="detail">Cambio di residenza</mds-text></mds-table-cell>
|
|
43
|
+
<mds-table-cell><mds-text typography="detail">Giulia Bianchi</mds-text></mds-table-cell>
|
|
44
|
+
<mds-table-cell><mds-text typography="detail">16 febbraio 2026</mds-text></mds-table-cell>
|
|
45
|
+
</mds-table-row>
|
|
46
|
+
<mds-table-row value="2026/0097">
|
|
47
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0097</mds-link></mds-text></mds-table-cell>
|
|
48
|
+
<mds-table-cell><mds-text typography="detail">Iscrizione anagrafica</mds-text></mds-table-cell>
|
|
49
|
+
<mds-table-cell><mds-text typography="detail">Luca Ferri</mds-text></mds-table-cell>
|
|
50
|
+
<mds-table-cell><mds-text typography="detail">13 febbraio 2026</mds-text></mds-table-cell>
|
|
51
|
+
</mds-table-row>
|
|
52
|
+
<mds-table-row value="2026/0094">
|
|
53
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0094</mds-link></mds-text></mds-table-cell>
|
|
54
|
+
<mds-table-cell><mds-text typography="detail">Certificato di residenza</mds-text></mds-table-cell>
|
|
55
|
+
<mds-table-cell><mds-text typography="detail">Marco Rossi</mds-text></mds-table-cell>
|
|
56
|
+
<mds-table-cell><mds-text typography="detail">12 febbraio 2026</mds-text></mds-table-cell>
|
|
57
|
+
</mds-table-row>
|
|
58
|
+
<mds-table-row value="2026/0090">
|
|
59
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0090</mds-link></mds-text></mds-table-cell>
|
|
60
|
+
<mds-table-cell><mds-text typography="detail">Cambio di indirizzo</mds-text></mds-table-cell>
|
|
61
|
+
<mds-table-cell><mds-text typography="detail">Anna Conti</mds-text></mds-table-cell>
|
|
62
|
+
<mds-table-cell><mds-text typography="detail">10 febbraio 2026</mds-text></mds-table-cell>
|
|
63
|
+
</mds-table-row>
|
|
64
|
+
</mds-table-body>
|
|
65
|
+
<mds-button slot="batch-action" variant="dark" tone="outline" size="sm">Archivia</mds-button>
|
|
66
|
+
<mds-button slot="batch-action" variant="primary" tone="outline" size="sm">Assegna</mds-button>
|
|
67
|
+
</mds-table>
|
|
68
|
+
</div>
|
|
69
|
+
<mds-paginator pages="2" current-page="2" class="justify-self-start"></mds-paginator>
|
|
70
|
+
</div>
|
|
71
|
+
</div>
|
|
72
|
+
<script>
|
|
73
|
+
// two rows the person has ticked; a row selected in the markup is not counted by the table
|
|
74
|
+
const table = document.getElementById('pratiche');
|
|
75
|
+
customElements.whenDefined('mds-table-row').then(async () => {
|
|
76
|
+
const rows = ['2026/0097', '2026/0094'].map((value) => table.querySelector(`mds-table-row[value="${value}"]`));
|
|
77
|
+
await Promise.all(rows.map((row) => row.componentOnReady()));
|
|
78
|
+
rows.forEach((row) => (row.selected = true));
|
|
79
|
+
});
|
|
80
|
+
</script>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
try: Look at Dati anagrafici: four short data in two columns as wide as the column of a form, one under the other on a phone; the address takes the whole row, and Stato civile says Non indicato in the muted foreground.
|
|
3
|
+
-->
|
|
4
|
+
<div class="grid gap-between-sections">
|
|
5
|
+
<mds-text typography="page" tag="h1">Mario Rossi</mds-text>
|
|
6
|
+
<section class="grid gap-title-content">
|
|
7
|
+
<mds-text typography="section" tag="h2">Dati anagrafici</mds-text>
|
|
8
|
+
<dl class="m-0 grid max-w-form items-start gap-between-fields @md:grid-cols-2">
|
|
9
|
+
<div class="grid gap-label-control">
|
|
10
|
+
<mds-text typography="label" tag="dt" class="text-fg-muted">Codice fiscale</mds-text>
|
|
11
|
+
<mds-text tag="dd" class="m-0">RSSMRA80A01H294X</mds-text>
|
|
12
|
+
</div>
|
|
13
|
+
<div class="grid gap-label-control">
|
|
14
|
+
<mds-text typography="label" tag="dt" class="text-fg-muted">Nato il</mds-text>
|
|
15
|
+
<mds-text tag="dd" class="m-0">1 gennaio 1980</mds-text>
|
|
16
|
+
</div>
|
|
17
|
+
<div class="grid gap-label-control">
|
|
18
|
+
<mds-text typography="label" tag="dt" class="text-fg-muted">Luogo di nascita</mds-text>
|
|
19
|
+
<mds-text tag="dd" class="m-0">Rimini</mds-text>
|
|
20
|
+
</div>
|
|
21
|
+
<div class="grid gap-label-control">
|
|
22
|
+
<mds-text typography="label" tag="dt" class="text-fg-muted">Stato civile</mds-text>
|
|
23
|
+
<mds-text tag="dd" class="m-0 text-fg-muted">Non indicato</mds-text>
|
|
24
|
+
</div>
|
|
25
|
+
<div class="col-span-full grid gap-label-control">
|
|
26
|
+
<mds-text typography="label" tag="dt" class="text-fg-muted">Residenza</mds-text>
|
|
27
|
+
<mds-text tag="dd" class="m-0">Via Roma 21<br>47921 Rimini (RN)</mds-text>
|
|
28
|
+
</div>
|
|
29
|
+
</dl>
|
|
30
|
+
</section>
|
|
31
|
+
</div>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
try: Look at the data of the payment above Paga: Richiesta and Importo side by side in the column of the form, one under the other on a phone, with no title of their own.
|
|
3
|
+
-->
|
|
4
|
+
<div class="grid gap-between-sections">
|
|
5
|
+
<mds-text typography="page" tag="h1">Pagamento del bollo</mds-text>
|
|
6
|
+
<form class="@container grid max-w-form gap-content-actions">
|
|
7
|
+
<dl class="m-0 grid items-start gap-between-fields @md:grid-cols-2">
|
|
8
|
+
<div class="grid gap-label-control">
|
|
9
|
+
<mds-text typography="label" tag="dt" class="text-fg-muted">Richiesta</mds-text>
|
|
10
|
+
<mds-text tag="dd" class="m-0">2026/0412</mds-text>
|
|
11
|
+
</div>
|
|
12
|
+
<div class="grid gap-label-control">
|
|
13
|
+
<mds-text typography="label" tag="dt" class="text-fg-muted">Importo</mds-text>
|
|
14
|
+
<mds-text tag="dd" class="m-0">16,00 euro con pagoPA</mds-text>
|
|
15
|
+
</div>
|
|
16
|
+
</dl>
|
|
17
|
+
<div class="flex justify-end gap-inline">
|
|
18
|
+
<mds-button>Paga</mds-button>
|
|
19
|
+
</div>
|
|
20
|
+
</form>
|
|
21
|
+
</div>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
try: Look at the dialog that asks before sending the reminder: Destinatario and Testo as labels and values in the window, with no title of their own; the text takes the whole row.
|
|
3
|
+
height: 480
|
|
4
|
+
-->
|
|
5
|
+
<mds-modal opened aria-label="Inviare il sollecito a Marco Bianchi?">
|
|
6
|
+
<mds-banner slot="window" variant="light" tone="box" dismissible headline="Inviare il sollecito a Marco Bianchi?">
|
|
7
|
+
<div class="@container">
|
|
8
|
+
<dl class="m-0 grid items-start gap-between-fields @md:grid-cols-2">
|
|
9
|
+
<div class="grid gap-label-control">
|
|
10
|
+
<mds-text typography="label" tag="dt" class="text-fg-muted">Destinatario</mds-text>
|
|
11
|
+
<mds-text tag="dd" class="m-0">m.bianchi@pec.esempio.it</mds-text>
|
|
12
|
+
</div>
|
|
13
|
+
<div class="col-span-full grid gap-label-control">
|
|
14
|
+
<mds-text typography="label" tag="dt" class="text-fg-muted">Testo</mds-text>
|
|
15
|
+
<mds-text tag="dd" class="m-0">
|
|
16
|
+
Per la pratica 2026/0412 manca ancora la planimetria dell'immobile. La carichi entro il 30
|
|
17
|
+
marzo, o la pratica viene archiviata.
|
|
18
|
+
</mds-text>
|
|
19
|
+
</div>
|
|
20
|
+
</dl>
|
|
21
|
+
</div>
|
|
22
|
+
<mds-button slot="action" variant="dark" tone="outline" autofocus>Annulla</mds-button>
|
|
23
|
+
<mds-button slot="action">Invia sollecito</mds-button>
|
|
24
|
+
</mds-banner>
|
|
25
|
+
</mds-modal>
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
try: Look at the two rows selected on the page: the bar of the table says how many and offers Assegna and Archivia. Press Archivia: the list loads again on the same page without them, and a toast says how many went.
|
|
3
|
+
whole-page: true
|
|
4
|
+
-->
|
|
5
|
+
<mds-header>
|
|
6
|
+
<mds-header-bar>
|
|
7
|
+
<mds-text typography="h6" tag="p">Servizi demografici</mds-text>
|
|
8
|
+
<mds-button slot="nav" href="#" aria-current="page" variant="dark" tone="weak">Pratiche</mds-button>
|
|
9
|
+
<mds-button slot="nav" href="#" variant="dark" tone="text">Contatti</mds-button>
|
|
10
|
+
<mds-button id="persona" slot="nav" icon="mi/baseline/account-circle" variant="dark" tone="text" aria-label="Account di Mario Rossi"></mds-button>
|
|
11
|
+
</mds-header-bar>
|
|
12
|
+
<nav slot="menu" class="grid gap-inline p-inset">
|
|
13
|
+
<mds-button href="#" aria-current="page" variant="dark" tone="weak" class="w-full justify-start">Pratiche</mds-button>
|
|
14
|
+
<mds-button href="#" variant="dark" tone="text" class="w-full justify-start">Contatti</mds-button>
|
|
15
|
+
<mds-separator></mds-separator>
|
|
16
|
+
<mds-text typography="detail" tag="p" class="text-fg-muted">Mario Rossi</mds-text>
|
|
17
|
+
<mds-button href="#" variant="dark" tone="text" class="w-full justify-start">Profilo</mds-button>
|
|
18
|
+
<mds-button href="#" variant="dark" tone="text" class="w-full justify-start">Esci</mds-button>
|
|
19
|
+
</nav>
|
|
20
|
+
</mds-header>
|
|
21
|
+
<mds-dropdown target="#persona" placement="bottom-end" strategy="fixed">
|
|
22
|
+
<mds-text typography="detail" tag="p" class="text-fg-muted">Mario Rossi</mds-text>
|
|
23
|
+
<mds-button href="#" icon="mi/baseline/person" variant="dark" tone="text" label="Profilo"></mds-button>
|
|
24
|
+
<mds-separator></mds-separator>
|
|
25
|
+
<mds-button href="#" icon="mi/baseline/logout" variant="dark" tone="text" label="Esci"></mds-button>
|
|
26
|
+
</mds-dropdown>
|
|
27
|
+
<main class="page-frame grid gap-between-sections py-between-sections">
|
|
28
|
+
<header class="@container flex flex-wrap items-start justify-between gap-inline">
|
|
29
|
+
<div class="grid min-w-0 grow basis-actions gap-title-content">
|
|
30
|
+
<mds-text typography="page" tag="h1">Pratiche</mds-text>
|
|
31
|
+
<mds-text typography="detail" tag="p" class="text-fg-muted">Le pratiche che i cittadini inviano agli uffici.</mds-text>
|
|
32
|
+
</div>
|
|
33
|
+
<div class="flex gap-inline @max-actions:basis-full @max-actions:flex-col @max-actions:*:self-stretch">
|
|
34
|
+
<mds-button variant="dark" tone="outline">Esporta</mds-button>
|
|
35
|
+
<mds-button>Nuova pratica</mds-button>
|
|
36
|
+
</div>
|
|
37
|
+
</header>
|
|
38
|
+
<div class="grid gap-between-groups">
|
|
39
|
+
<form role="search" class="grid gap-between-fields">
|
|
40
|
+
<div class="field-group max-w-form">
|
|
41
|
+
<mds-input-field label="Cerca">
|
|
42
|
+
<mds-input type="search" name="q" placeholder="Numero o oggetto"></mds-input>
|
|
43
|
+
</mds-input-field>
|
|
44
|
+
</div>
|
|
45
|
+
<mds-filter label="Stato" class="justify-self-start">
|
|
46
|
+
<mds-filter-item id="tutte" label="Tutte" value="" count="128"></mds-filter-item>
|
|
47
|
+
<mds-filter-item label="Nuove" value="nuova" count="31"></mds-filter-item>
|
|
48
|
+
<mds-filter-item id="in-lavorazione" label="In lavorazione" value="in-lavorazione" count="14" selected></mds-filter-item>
|
|
49
|
+
<mds-filter-item label="In attesa" value="in-attesa" count="12"></mds-filter-item>
|
|
50
|
+
<mds-filter-item label="Chiuse" value="chiusa" count="71"></mds-filter-item>
|
|
51
|
+
</mds-filter>
|
|
52
|
+
</form>
|
|
53
|
+
<div class="grid gap-between-fields">
|
|
54
|
+
<div class="grid gap-title-content">
|
|
55
|
+
<div class="flex flex-wrap items-center gap-inline">
|
|
56
|
+
<mds-text id="summary" typography="detail" tag="p" role="status">11-14 di 14 pratiche</mds-text>
|
|
57
|
+
<mds-button variant="dark" tone="text" size="sm">Rimuovi i filtri</mds-button>
|
|
58
|
+
</div>
|
|
59
|
+
<mds-table id="pratiche" selectable sorting="external" class="w-full [&_mds-table-cell]:text-nowrap [&_mds-text]:text-nowrap">
|
|
60
|
+
<mds-table-header>
|
|
61
|
+
<mds-table-header-cell label="Numero" sortable sort-key="numero"></mds-table-header-cell>
|
|
62
|
+
<mds-table-header-cell label="Oggetto"></mds-table-header-cell>
|
|
63
|
+
<mds-table-header-cell label="Richiedente"></mds-table-header-cell>
|
|
64
|
+
<mds-table-header-cell label="Ricevuta il" sortable sort-key="ricevuta" direction="descending"></mds-table-header-cell>
|
|
65
|
+
</mds-table-header>
|
|
66
|
+
<mds-table-body>
|
|
67
|
+
<mds-table-row value="2026/0101">
|
|
68
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0101</mds-link></mds-text></mds-table-cell>
|
|
69
|
+
<mds-table-cell><mds-text typography="detail">Cambio di residenza</mds-text></mds-table-cell>
|
|
70
|
+
<mds-table-cell><mds-text typography="detail">Giulia Bianchi</mds-text></mds-table-cell>
|
|
71
|
+
<mds-table-cell><mds-text typography="detail">16 febbraio 2026</mds-text></mds-table-cell>
|
|
72
|
+
</mds-table-row>
|
|
73
|
+
<mds-table-row value="2026/0097">
|
|
74
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0097</mds-link></mds-text></mds-table-cell>
|
|
75
|
+
<mds-table-cell><mds-text typography="detail">Iscrizione anagrafica</mds-text></mds-table-cell>
|
|
76
|
+
<mds-table-cell><mds-text typography="detail">Luca Ferri</mds-text></mds-table-cell>
|
|
77
|
+
<mds-table-cell><mds-text typography="detail">13 febbraio 2026</mds-text></mds-table-cell>
|
|
78
|
+
</mds-table-row>
|
|
79
|
+
<mds-table-row value="2026/0094">
|
|
80
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0094</mds-link></mds-text></mds-table-cell>
|
|
81
|
+
<mds-table-cell><mds-text typography="detail">Certificato di residenza</mds-text></mds-table-cell>
|
|
82
|
+
<mds-table-cell><mds-text typography="detail">Marco Rossi</mds-text></mds-table-cell>
|
|
83
|
+
<mds-table-cell><mds-text typography="detail">12 febbraio 2026</mds-text></mds-table-cell>
|
|
84
|
+
</mds-table-row>
|
|
85
|
+
<mds-table-row value="2026/0090">
|
|
86
|
+
<mds-table-cell><mds-text typography="detail"><mds-link href="#">2026/0090</mds-link></mds-text></mds-table-cell>
|
|
87
|
+
<mds-table-cell><mds-text typography="detail">Cambio di indirizzo</mds-text></mds-table-cell>
|
|
88
|
+
<mds-table-cell><mds-text typography="detail">Anna Conti</mds-text></mds-table-cell>
|
|
89
|
+
<mds-table-cell><mds-text typography="detail">10 febbraio 2026</mds-text></mds-table-cell>
|
|
90
|
+
</mds-table-row>
|
|
91
|
+
</mds-table-body>
|
|
92
|
+
<mds-button slot="batch-action" variant="dark" tone="outline" size="sm">Assegna</mds-button>
|
|
93
|
+
<mds-button id="archivia" slot="batch-action" variant="primary" tone="outline" size="sm">Archivia</mds-button>
|
|
94
|
+
</mds-table>
|
|
95
|
+
</div>
|
|
96
|
+
<mds-paginator pages="2" current-page="2" class="justify-self-start"></mds-paginator>
|
|
97
|
+
</div>
|
|
98
|
+
</div>
|
|
99
|
+
</main>
|
|
100
|
+
<mds-toast-region>
|
|
101
|
+
<mds-toast id="esito">2 pratiche archiviate</mds-toast>
|
|
102
|
+
</mds-toast-region>
|
|
103
|
+
<script>
|
|
104
|
+
const table = document.getElementById('pratiche');
|
|
105
|
+
// two rows the person has ticked; a row selected in the markup is not counted by the table
|
|
106
|
+
customElements.whenDefined('mds-table-row').then(async () => {
|
|
107
|
+
const rows = ['2026/0097', '2026/0094'].map((value) => table.querySelector(`mds-table-row[value="${value}"]`));
|
|
108
|
+
await Promise.all(rows.map((row) => row.componentOnReady()));
|
|
109
|
+
rows.forEach((row) => (row.selected = true));
|
|
110
|
+
});
|
|
111
|
+
document.getElementById('archivia').addEventListener('click', () => {
|
|
112
|
+
const gone = [...table.querySelectorAll('mds-table-row[selected]')];
|
|
113
|
+
table.selectAll(false);
|
|
114
|
+
gone.forEach((row) => row.remove());
|
|
115
|
+
const left = 14 - gone.length;
|
|
116
|
+
document.getElementById('summary').textContent = `11-${left} di ${left} pratiche`;
|
|
117
|
+
document.getElementById('in-lavorazione').setAttribute('count', String(left));
|
|
118
|
+
document.getElementById('tutte').setAttribute('count', String(128 - gone.length));
|
|
119
|
+
document.getElementById('esito').visible = true;
|
|
120
|
+
});
|
|
121
|
+
</script>
|