@design.estate/dees-wcctools 3.5.3 → 3.6.1

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.
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@design.estate/dees-wcctools',
6
- version: '3.5.3',
6
+ version: '3.6.1',
7
7
  description: 'A set of web component tools for creating element catalogues, enabling the structured development and documentation of custom elements and pages.'
8
8
  };
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHNfd2ViLzAwX2NvbW1pdGluZm9fZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixJQUFJLEVBQUUsOEJBQThCO0lBQ3BDLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLFdBQVcsRUFBRSxtSkFBbUo7Q0FDakssQ0FBQSJ9
@@ -43,6 +43,7 @@ export declare class WccSidebar extends DeesElement {
43
43
  private toggleSectionCollapsed;
44
44
  private toggleExpanded;
45
45
  private handleSearchInput;
46
+ private clearSearch;
46
47
  private matchesSearch;
47
48
  private highlightMatch;
48
49
  protected updated(changedProperties: Map<string, unknown>): void;
@@ -169,7 +169,8 @@ let WccSidebar = (() => {
169
169
  --ring: #3b82f6;
170
170
  --radius: 4px;
171
171
 
172
- display: ${this.isHidden ? 'none' : 'block'};
172
+ display: ${this.isHidden ? 'none' : 'flex'};
173
+ flex-direction: column;
173
174
  border-right: 1px solid rgba(255, 255, 255, 0.08);
174
175
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
175
176
  font-size: 14px;
@@ -179,13 +180,20 @@ let WccSidebar = (() => {
179
180
  width: ${this.sidebarWidth}px;
180
181
  top: 0px;
181
182
  bottom: 0px;
182
- overflow-y: auto;
183
- overflow-x: hidden;
183
+ overflow: hidden;
184
184
  background: var(--background);
185
185
  color: var(--foreground);
186
186
  }
187
187
 
188
+ .sidebar-header {
189
+ flex-shrink: 0;
190
+ }
191
+
188
192
  .menu {
193
+ flex: 1;
194
+ min-height: 0;
195
+ overflow-y: auto;
196
+ overflow-x: hidden;
189
197
  padding: 0.5rem 0;
190
198
  }
191
199
 
@@ -379,6 +387,7 @@ let WccSidebar = (() => {
379
387
  .search-container {
380
388
  padding: 0.5rem;
381
389
  border-bottom: 1px solid var(--border);
390
+ position: relative;
382
391
  }
383
392
 
384
393
  .search-input {
@@ -387,7 +396,7 @@ let WccSidebar = (() => {
387
396
  background: var(--input);
388
397
  border: 1px solid var(--border);
389
398
  border-radius: var(--radius);
390
- padding: 0.5rem 0.75rem;
399
+ padding: 0.5rem 1.75rem 0.5rem 0.75rem;
391
400
  color: var(--foreground);
392
401
  font-size: 0.75rem;
393
402
  font-family: inherit;
@@ -403,6 +412,33 @@ let WccSidebar = (() => {
403
412
  color: var(--muted-foreground);
404
413
  }
405
414
 
415
+ .search-clear {
416
+ position: absolute;
417
+ right: 0.75rem;
418
+ top: 50%;
419
+ transform: translateY(-50%);
420
+ background: none;
421
+ border: none;
422
+ padding: 0.25rem;
423
+ cursor: pointer;
424
+ color: var(--muted-foreground);
425
+ display: flex;
426
+ align-items: center;
427
+ justify-content: center;
428
+ border-radius: 2px;
429
+ transition: color 0.15s ease, background 0.15s ease;
430
+ }
431
+
432
+ .search-clear:hover {
433
+ color: var(--foreground);
434
+ background: rgba(255, 255, 255, 0.1);
435
+ }
436
+
437
+ .search-clear .material-symbols-outlined {
438
+ font-size: 14px;
439
+ opacity: 1;
440
+ }
441
+
406
442
  .highlight {
407
443
  background: rgba(59, 130, 246, 0.3);
408
444
  border-radius: 2px;
@@ -492,17 +528,24 @@ let WccSidebar = (() => {
492
528
  background: var(--primary);
493
529
  }
494
530
  </style>
495
- <div class="search-container">
496
- <input
497
- type="text"
498
- class="search-input"
499
- placeholder="Search..."
500
- .value=${this.searchQuery}
501
- @input=${this.handleSearchInput}
502
- />
531
+ <div class="sidebar-header">
532
+ <div class="search-container">
533
+ <input
534
+ type="text"
535
+ class="search-input"
536
+ placeholder="Search..."
537
+ .value=${this.searchQuery}
538
+ @input=${this.handleSearchInput}
539
+ />
540
+ ${this.searchQuery ? html `
541
+ <button class="search-clear" @click=${this.clearSearch}>
542
+ <i class="material-symbols-outlined">close</i>
543
+ </button>
544
+ ` : null}
545
+ </div>
546
+ ${this.renderPinnedSection()}
503
547
  </div>
504
548
  <div class="menu">
505
- ${this.renderPinnedSection()}
506
549
  ${this.renderSections()}
507
550
  </div>
508
551
  <div
@@ -681,24 +724,35 @@ let WccSidebar = (() => {
681
724
  }
682
725
  groupedItems.get(group).push(entry);
683
726
  }
684
- const result = [];
685
- // Render ungrouped items first
727
+ const renderItems = [];
728
+ // Add ungrouped items
686
729
  const ungrouped = groupedItems.get(null) || [];
687
730
  for (const entry of ungrouped) {
688
- result.push(this.renderElementItem(entry, section));
731
+ renderItems.push({ type: 'element', entry, sortKey: entry[0].toLowerCase() });
689
732
  }
690
- // Render grouped items
733
+ // Add groups (sorted by their first element's name)
691
734
  for (const [groupName, items] of groupedItems) {
692
735
  if (groupName === null)
693
736
  continue;
694
- result.push(html `
695
- <div class="item-group">
696
- <span class="item-group-legend">${groupName}</span>
697
- ${items.map((entry) => this.renderElementItem(entry, section))}
698
- </div>
699
- `);
737
+ const firstElementName = items[0]?.[0] || '';
738
+ renderItems.push({ type: 'group', groupName, items, sortKey: firstElementName.toLowerCase() });
700
739
  }
701
- return result;
740
+ // Sort all items alphabetically by sortKey
741
+ renderItems.sort((a, b) => a.sortKey.localeCompare(b.sortKey));
742
+ // Render in sorted order
743
+ return renderItems.map((item) => {
744
+ if (item.type === 'element') {
745
+ return this.renderElementItem(item.entry, section);
746
+ }
747
+ else {
748
+ return html `
749
+ <div class="item-group">
750
+ <span class="item-group-legend">${item.groupName}</span>
751
+ ${item.items.map((entry) => this.renderElementItem(entry, section))}
752
+ </div>
753
+ `;
754
+ }
755
+ });
702
756
  }
703
757
  }
704
758
  /**
@@ -787,6 +841,10 @@ let WccSidebar = (() => {
787
841
  this.searchQuery = input.value;
788
842
  this.dispatchEvent(new CustomEvent('searchChanged', { detail: this.searchQuery }));
789
843
  }
844
+ clearSearch() {
845
+ this.searchQuery = '';
846
+ this.dispatchEvent(new CustomEvent('searchChanged', { detail: this.searchQuery }));
847
+ }
790
848
  matchesSearch(name) {
791
849
  if (!this.searchQuery)
792
850
  return true;
@@ -911,4 +969,4 @@ let WccSidebar = (() => {
911
969
  return WccSidebar = _classThis;
912
970
  })();
913
971
  export { WccSidebar };
914
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2NjLXNpZGViYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvd2NjLXNpZGViYXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sd0JBQXdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBdUIsS0FBSyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckgsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0lBR3pDLFVBQVU7NEJBRHRCLGFBQWEsQ0FBQyxhQUFhLENBQUM7Ozs7c0JBQ0csV0FBVzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzswQkFBbkIsU0FBUSxXQUFXOzs7O3dDQUN4QyxRQUFRLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7d0NBRzlCLFFBQVEsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQzt3Q0FHOUIsUUFBUSxFQUFFO29DQUdWLFFBQVEsRUFBRTs0Q0FJVixLQUFLLEVBQUU7NkNBSVAsS0FBSyxFQUFFO3VDQUlQLFFBQVEsRUFBRTt1Q0FJVixRQUFRLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7d0NBSTlCLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQztzQ0FJMUIsS0FBSyxFQUFFO29DQUlQLEtBQUssRUFBRTtZQXBDUix5TEFBUyxZQUFZLDZCQUFaLFlBQVksbUdBQWlDO1lBR3RELHlMQUFTLFlBQVksNkJBQVosWUFB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
972
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2NjLXNpZGViYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c193ZWIvZWxlbWVudHMvd2NjLXNpZGViYXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sd0JBQXdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBdUIsS0FBSyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckgsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0lBR3pDLFVBQVU7NEJBRHRCLGFBQWEsQ0FBQyxhQUFhLENBQUM7Ozs7c0JBQ0csV0FBVzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzswQkFBbkIsU0FBUSxXQUFXOzs7O3dDQUN4QyxRQUFRLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7d0NBRzlCLFFBQVEsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQzt3Q0FHOUIsUUFBUSxFQUFFO29DQUdWLFFBQVEsRUFBRTs0Q0FJVixLQUFLLEVBQUU7NkNBSVAsS0FBSyxFQUFFO3VDQUlQLFFBQVEsRUFBRTt1Q0FJVixRQUFRLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7d0NBSTlCLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQztzQ0FJMUIsS0FBSyxFQUFFO29DQUlQLEtBQUssRUFBRTtZQXBDUix5TEFBUyxZQUFZLDZCQUFaLFlBQVksbUdBQWlDO1lBR3RELHlMQUFTLFlBQVksNkJBQVosWUFB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
@@ -42074,7 +42074,8 @@ var WccSidebar = class extends (_a3 = DeesElement, _selectedItem_dec = [n5({ att
42074
42074
  --ring: #3b82f6;
42075
42075
  --radius: 4px;
42076
42076
 
42077
- display: ${this.isHidden ? "none" : "block"};
42077
+ display: ${this.isHidden ? "none" : "flex"};
42078
+ flex-direction: column;
42078
42079
  border-right: 1px solid rgba(255, 255, 255, 0.08);
42079
42080
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
42080
42081
  font-size: 14px;
@@ -42084,13 +42085,20 @@ var WccSidebar = class extends (_a3 = DeesElement, _selectedItem_dec = [n5({ att
42084
42085
  width: ${this.sidebarWidth}px;
42085
42086
  top: 0px;
42086
42087
  bottom: 0px;
42087
- overflow-y: auto;
42088
- overflow-x: hidden;
42088
+ overflow: hidden;
42089
42089
  background: var(--background);
42090
42090
  color: var(--foreground);
42091
42091
  }
42092
42092
 
42093
+ .sidebar-header {
42094
+ flex-shrink: 0;
42095
+ }
42096
+
42093
42097
  .menu {
42098
+ flex: 1;
42099
+ min-height: 0;
42100
+ overflow-y: auto;
42101
+ overflow-x: hidden;
42094
42102
  padding: 0.5rem 0;
42095
42103
  }
42096
42104
 
@@ -42284,6 +42292,7 @@ var WccSidebar = class extends (_a3 = DeesElement, _selectedItem_dec = [n5({ att
42284
42292
  .search-container {
42285
42293
  padding: 0.5rem;
42286
42294
  border-bottom: 1px solid var(--border);
42295
+ position: relative;
42287
42296
  }
42288
42297
 
42289
42298
  .search-input {
@@ -42292,7 +42301,7 @@ var WccSidebar = class extends (_a3 = DeesElement, _selectedItem_dec = [n5({ att
42292
42301
  background: var(--input);
42293
42302
  border: 1px solid var(--border);
42294
42303
  border-radius: var(--radius);
42295
- padding: 0.5rem 0.75rem;
42304
+ padding: 0.5rem 1.75rem 0.5rem 0.75rem;
42296
42305
  color: var(--foreground);
42297
42306
  font-size: 0.75rem;
42298
42307
  font-family: inherit;
@@ -42308,6 +42317,33 @@ var WccSidebar = class extends (_a3 = DeesElement, _selectedItem_dec = [n5({ att
42308
42317
  color: var(--muted-foreground);
42309
42318
  }
42310
42319
 
42320
+ .search-clear {
42321
+ position: absolute;
42322
+ right: 0.75rem;
42323
+ top: 50%;
42324
+ transform: translateY(-50%);
42325
+ background: none;
42326
+ border: none;
42327
+ padding: 0.25rem;
42328
+ cursor: pointer;
42329
+ color: var(--muted-foreground);
42330
+ display: flex;
42331
+ align-items: center;
42332
+ justify-content: center;
42333
+ border-radius: 2px;
42334
+ transition: color 0.15s ease, background 0.15s ease;
42335
+ }
42336
+
42337
+ .search-clear:hover {
42338
+ color: var(--foreground);
42339
+ background: rgba(255, 255, 255, 0.1);
42340
+ }
42341
+
42342
+ .search-clear .material-symbols-outlined {
42343
+ font-size: 14px;
42344
+ opacity: 1;
42345
+ }
42346
+
42311
42347
  .highlight {
42312
42348
  background: rgba(59, 130, 246, 0.3);
42313
42349
  border-radius: 2px;
@@ -42397,17 +42433,24 @@ var WccSidebar = class extends (_a3 = DeesElement, _selectedItem_dec = [n5({ att
42397
42433
  background: var(--primary);
42398
42434
  }
42399
42435
  </style>
42400
- <div class="search-container">
42401
- <input
42402
- type="text"
42403
- class="search-input"
42404
- placeholder="Search..."
42405
- .value=${this.searchQuery}
42406
- @input=${this.handleSearchInput}
42407
- />
42436
+ <div class="sidebar-header">
42437
+ <div class="search-container">
42438
+ <input
42439
+ type="text"
42440
+ class="search-input"
42441
+ placeholder="Search..."
42442
+ .value=${this.searchQuery}
42443
+ @input=${this.handleSearchInput}
42444
+ />
42445
+ ${this.searchQuery ? b2`
42446
+ <button class="search-clear" @click=${this.clearSearch}>
42447
+ <i class="material-symbols-outlined">close</i>
42448
+ </button>
42449
+ ` : null}
42450
+ </div>
42451
+ ${this.renderPinnedSection()}
42408
42452
  </div>
42409
42453
  <div class="menu">
42410
- ${this.renderPinnedSection()}
42411
42454
  ${this.renderSections()}
42412
42455
  </div>
42413
42456
  <div
@@ -42577,21 +42620,29 @@ var WccSidebar = class extends (_a3 = DeesElement, _selectedItem_dec = [n5({ att
42577
42620
  }
42578
42621
  groupedItems.get(group).push(entry);
42579
42622
  }
42580
- const result = [];
42623
+ const renderItems = [];
42581
42624
  const ungrouped = groupedItems.get(null) || [];
42582
42625
  for (const entry of ungrouped) {
42583
- result.push(this.renderElementItem(entry, section));
42626
+ renderItems.push({ type: "element", entry, sortKey: entry[0].toLowerCase() });
42584
42627
  }
42585
42628
  for (const [groupName, items] of groupedItems) {
42586
42629
  if (groupName === null) continue;
42587
- result.push(b2`
42588
- <div class="item-group">
42589
- <span class="item-group-legend">${groupName}</span>
42590
- ${items.map((entry) => this.renderElementItem(entry, section))}
42591
- </div>
42592
- `);
42630
+ const firstElementName = items[0]?.[0] || "";
42631
+ renderItems.push({ type: "group", groupName, items, sortKey: firstElementName.toLowerCase() });
42593
42632
  }
42594
- return result;
42633
+ renderItems.sort((a4, b4) => a4.sortKey.localeCompare(b4.sortKey));
42634
+ return renderItems.map((item) => {
42635
+ if (item.type === "element") {
42636
+ return this.renderElementItem(item.entry, section);
42637
+ } else {
42638
+ return b2`
42639
+ <div class="item-group">
42640
+ <span class="item-group-legend">${item.groupName}</span>
42641
+ ${item.items.map((entry) => this.renderElementItem(entry, section))}
42642
+ </div>
42643
+ `;
42644
+ }
42645
+ });
42595
42646
  }
42596
42647
  }
42597
42648
  /**
@@ -42675,6 +42726,10 @@ var WccSidebar = class extends (_a3 = DeesElement, _selectedItem_dec = [n5({ att
42675
42726
  this.searchQuery = input.value;
42676
42727
  this.dispatchEvent(new CustomEvent("searchChanged", { detail: this.searchQuery }));
42677
42728
  }
42729
+ clearSearch() {
42730
+ this.searchQuery = "";
42731
+ this.dispatchEvent(new CustomEvent("searchChanged", { detail: this.searchQuery }));
42732
+ }
42678
42733
  matchesSearch(name) {
42679
42734
  if (!this.searchQuery) return true;
42680
42735
  return name.toLowerCase().includes(this.searchQuery.toLowerCase());