Compare commits

...

2 Commits

Author SHA1 Message Date
961b811b7a v3.75.0
Some checks failed
Default (tags) / security (push) Failing after 0s
Default (tags) / test (push) Failing after 0s
Default (tags) / release (push) Has been skipped
Default (tags) / metadata (push) Has been skipped
2026-04-12 17:45:33 +00:00
cd491e1517 feat(dees-tile): add configurable overscroll handling to tile content and use it in modals 2026-04-12 17:45:33 +00:00
5 changed files with 21 additions and 12 deletions

View File

@@ -1,5 +1,12 @@
# Changelog # Changelog
## 2026-04-12 - 3.75.0 - feat(dees-tile)
add configurable overscroll handling to tile content and use it in modals
- introduces a reflected overscroll property on dees-tile with contain, auto, and none options
- moves tile content scrolling and scrollbar styling into dees-tile instead of modal-specific styling
- updates dees-modal to enable contained overscroll through the new dees-tile API
## 2026-04-12 - 3.74.2 - fix(modal,tile,input-text) ## 2026-04-12 - 3.74.2 - fix(modal,tile,input-text)
move scroll handling from tile content to modal and update input text demo to use changeSubject subscriptions move scroll handling from tile content to modal and update input text demo to use changeSubject subscriptions

View File

@@ -1,6 +1,6 @@
{ {
"name": "@design.estate/dees-catalog", "name": "@design.estate/dees-catalog",
"version": "3.74.2", "version": "3.75.0",
"private": false, "private": false,
"description": "A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript.", "description": "A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript.",
"main": "dist_ts_web/index.js", "main": "dist_ts_web/index.js",

View File

@@ -3,6 +3,6 @@
*/ */
export const commitinfo = { export const commitinfo = {
name: '@design.estate/dees-catalog', name: '@design.estate/dees-catalog',
version: '3.74.2', version: '3.75.0',
description: 'A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript.' description: 'A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript.'
} }

View File

@@ -45,6 +45,9 @@ export class DeesTile extends DeesElement {
@property({ type: String }) @property({ type: String })
accessor heading: string = ''; accessor heading: string = '';
@property({ type: String, reflect: true })
accessor overscroll: 'contain' | 'auto' | 'none' = 'auto';
@state() @state()
accessor hasFooter: boolean = false; accessor hasFooter: boolean = false;
@@ -100,7 +103,14 @@ export class DeesTile extends DeesElement {
border-radius: 8px; border-radius: 8px;
border-top: 1px solid var(--dees-color-border-subtle); border-top: 1px solid var(--dees-color-border-subtle);
border-bottom: 1px solid var(--dees-color-border-subtle); border-bottom: 1px solid var(--dees-color-border-subtle);
overflow: hidden; overflow-x: hidden;
overflow-y: auto;
scrollbar-width: thin;
scrollbar-color: var(--dees-color-scrollbar-thumb) transparent;
}
:host([overscroll="contain"]) .tile-content {
overscroll-behavior: contain;
} }
.tile-content.no-footer { .tile-content.no-footer {

View File

@@ -153,14 +153,6 @@ export class DeesModal extends DeesElement {
overscroll-behavior: contain; overscroll-behavior: contain;
} }
dees-tile::part(content) {
overflow-x: hidden;
overflow-y: auto;
overscroll-behavior: contain;
scrollbar-width: thin;
scrollbar-color: var(--dees-color-scrollbar-thumb) transparent;
}
dees-tile::part(outer) { dees-tile::part(outer) {
box-shadow: box-shadow:
0 0 0 1px ${cssManager.bdTheme('hsl(0 0% 0% / 0.03)', 'hsl(0 0% 100% / 0.03)')}, 0 0 0 1px ${cssManager.bdTheme('hsl(0 0% 0% / 0.03)', 'hsl(0 0% 100% / 0.03)')},
@@ -351,7 +343,7 @@ export class DeesModal extends DeesElement {
${minWidthStyle ? `dees-tile { min-width: ${minWidthStyle}; }` : ''} ${minWidthStyle ? `dees-tile { min-width: ${minWidthStyle}; }` : ''}
</style> </style>
<div class="modalContainer" @click=${this.handleOutsideClick} style="z-index: ${this.modalZIndex}"> <div class="modalContainer" @click=${this.handleOutsideClick} style="z-index: ${this.modalZIndex}">
<dees-tile class="${widthClass} ${mobileFullscreenClass}"> <dees-tile class="${widthClass} ${mobileFullscreenClass}" .overscroll=${'contain'}>
<div slot="header" class="heading"> <div slot="header" class="heading">
<div class="heading-text">${this.heading}</div> <div class="heading-text">${this.heading}</div>
<div class="header-buttons"> <div class="header-buttons">