Compare commits

...

4 Commits

Author SHA1 Message Date
d0105e1b80 v3.45.1
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-03-10 14:42:02 +00:00
1eeebb35e6 fix(dees-appui): substitute route params into URL hash when navigating 2026-03-10 14:42:02 +00:00
14e8b8c533 v3.45.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-03-10 13:56:22 +00:00
eaf327ea75 feat(dees-form): register new input components (tags, list, wysiwyg, richtext) and emit change notification for richtext updates 2026-03-10 13:56:22 +00:00
6 changed files with 35 additions and 4 deletions

View File

@@ -1,5 +1,18 @@
# Changelog
## 2026-03-10 - 3.45.1 - fix(dees-appui)
substitute route params into URL hash when navigating
- Replaces :param placeholders in view.route with provided params before updating the URL hash.
- Ensures window.history.pushState is called with the resolved route so URLs do not contain literal parameter tokens.
## 2026-03-10 - 3.45.0 - feat(dees-form)
register new input components (tags, list, wysiwyg, richtext) and emit change notification for richtext updates
- Added imports and registration of DeesInputTags, DeesInputList, DeesInputWysiwyg, and DeesInputRichtext in dees-form
- Extended TFormInputElement union type to include the new input components
- DeesInputRichtext now calls changeSubject.next(this.value) in the editor onUpdate handler to propagate changes
## 2026-03-10 - 3.44.0 - feat(appui-tabs)
add support for left/right tab action buttons and content tab action APIs

View File

@@ -1,6 +1,6 @@
{
"name": "@design.estate/dees-catalog",
"version": "3.44.0",
"version": "3.45.1",
"private": false,
"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",

View File

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

View File

@@ -875,8 +875,13 @@ export class DeesAppui extends DeesElement {
try {
await this.loadView(view, params);
// Update URL hash
const route = view.route || viewId;
// Update URL hash (substitute params into route pattern)
let route = view.route || viewId;
if (params) {
for (const [key, val] of Object.entries(params)) {
route = route.replace(`:${key}`, val);
}
}
const newHash = `#${route}`;
if (window.location.hash !== newHash) {
window.history.pushState({ viewId }, '', newHash);

View File

@@ -22,6 +22,10 @@ import { DeesInputMultitoggle } from '../../00group-input/dees-input-multitoggle
import { DeesInputPhone } from '../../00group-input/dees-input-phone/dees-input-phone.js';
import { DeesInputToggle } from '../../00group-input/dees-input-toggle/dees-input-toggle.js';
import { DeesInputTypelist } from '../../00group-input/dees-input-typelist/dees-input-typelist.js';
import { DeesInputTags } from '../../00group-input/dees-input-tags/dees-input-tags.js';
import { DeesInputList } from '../../00group-input/dees-input-list/dees-input-list.js';
import { DeesInputWysiwyg } from '../../00group-input/dees-input-wysiwyg/dees-input-wysiwyg.js';
import { DeesInputRichtext } from '../../00group-input/dees-input-richtext/component.js';
import { DeesFormSubmit } from '../dees-form-submit/dees-form-submit.js';
import { DeesTable } from '../../00group-dataview/dees-table/index.js';
import { demoFunc } from './dees-form.demo.js';
@@ -41,6 +45,10 @@ const FORM_INPUT_TYPES = [
DeesInputText,
DeesInputToggle,
DeesInputTypelist,
DeesInputTags,
DeesInputList,
DeesInputWysiwyg,
DeesInputRichtext,
DeesTable,
];
@@ -58,6 +66,10 @@ export type TFormInputElement =
| DeesInputText
| DeesInputToggle
| DeesInputTypelist
| DeesInputTags
| DeesInputList
| DeesInputWysiwyg
| DeesInputRichtext
| DeesTable<any>;
declare global {

View File

@@ -269,6 +269,7 @@ export class DeesInputRichtext extends DeesInputBase<string> {
onUpdate: ({ editor }) => {
this.value = editor.getHTML();
this.updateWordCount();
this.changeSubject.next(this.value);
this.dispatchEvent(
new CustomEvent('input', {
detail: { value: this.value },