@dereekb/dbx-web 13.10.7 → 13.10.9

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.
Files changed (33) hide show
  1. package/docs/README.md +10 -0
  2. package/eslint/index.cjs.js +8 -1
  3. package/eslint/index.esm.js +8 -1
  4. package/fesm2022/dereekb-dbx-web-calendar.mjs +9 -9
  5. package/fesm2022/dereekb-dbx-web-docs.mjs +146 -0
  6. package/fesm2022/dereekb-dbx-web-docs.mjs.map +1 -0
  7. package/fesm2022/dereekb-dbx-web-mapbox.mjs +52 -52
  8. package/fesm2022/dereekb-dbx-web-table.mjs +77 -77
  9. package/fesm2022/dereekb-dbx-web.mjs +1438 -914
  10. package/fesm2022/dereekb-dbx-web.mjs.map +1 -1
  11. package/lib/action/snackbar/_snackbar.scss +5 -0
  12. package/lib/button/_button.scss +27 -0
  13. package/lib/error/_error.scss +5 -0
  14. package/lib/extension/pdf/_pdf.scss +21 -59
  15. package/lib/interaction/dialog/_dialog.scss +5 -0
  16. package/lib/interaction/popover/_popover.scss +5 -0
  17. package/lib/interaction/popup/_popup.scss +5 -0
  18. package/lib/interaction/prompt/_prompt.scss +4 -0
  19. package/lib/interaction/upload/_upload.scss +15 -2
  20. package/lib/layout/avatar/_avatar.scss +26 -0
  21. package/lib/layout/bar/_bar.scss +27 -0
  22. package/lib/layout/block/_block.scss +4 -0
  23. package/lib/layout/column/_column.scss +3 -0
  24. package/lib/layout/content/_content.scss +29 -0
  25. package/lib/layout/flex/_flex.scss +37 -0
  26. package/lib/layout/list/_list.scss +99 -0
  27. package/lib/layout/section/_section.scss +7 -0
  28. package/lib/layout/style/_style.scss +49 -0
  29. package/lib/layout/text/_text.scss +298 -14
  30. package/lib/loading/_loading.scss +6 -0
  31. package/package.json +27 -14
  32. package/types/dereekb-dbx-web-docs.d.ts +73 -0
  33. package/types/dereekb-dbx-web.d.ts +521 -147
package/docs/README.md ADDED
@@ -0,0 +1,10 @@
1
+ # @dereekb/dbx-web/docs
2
+
3
+ Documentation primitives for dbx-components apps. Provides the `<dbx-docs-ui-example>` component family that wraps a single self-contained UI example with a header, descriptive prose slot, runnable content slot, and optional imports/notes slots.
4
+
5
+ These components serve a dual purpose:
6
+
7
+ - **Runtime**: render documentation example pages in a downstream app (e.g. `apps/demo`).
8
+ - **MCP catalog source**: the `dbx-components-mcp` UI tools scan example components decorated with `@dbxDocsUiExample` JSDoc tags and use the stable `dbx-docs-ui-example*` selectors as deterministic anchors when extracting body, info, and content into the catalog manifest.
9
+
10
+ See `@dereekb/dbx-components-mcp` for the matching scanner and tag conventions.
@@ -378,7 +378,14 @@
378
378
  }
379
379
  });
380
380
  var tokenBeforeImplements = implementsKeyword ? sourceCode.getTokenBefore(implementsKeyword) : null;
381
- var startPos = tokenBeforeImplements ? tokenBeforeImplements.range[1] : implementsKeyword ? implementsKeyword.range[0] : clauseSpecifier.range[0];
381
+ var startPos;
382
+ if (tokenBeforeImplements) {
383
+ startPos = tokenBeforeImplements.range[1];
384
+ } else if (implementsKeyword) {
385
+ startPos = implementsKeyword.range[0];
386
+ } else {
387
+ startPos = clauseSpecifier.range[0];
388
+ }
382
389
  result = [
383
390
  startPos,
384
391
  clauseSpecifier.range[1]
@@ -376,7 +376,14 @@
376
376
  }
377
377
  });
378
378
  var tokenBeforeImplements = implementsKeyword ? sourceCode.getTokenBefore(implementsKeyword) : null;
379
- var startPos = tokenBeforeImplements ? tokenBeforeImplements.range[1] : implementsKeyword ? implementsKeyword.range[0] : clauseSpecifier.range[0];
379
+ var startPos;
380
+ if (tokenBeforeImplements) {
381
+ startPos = tokenBeforeImplements.range[1];
382
+ } else if (implementsKeyword) {
383
+ startPos = implementsKeyword.range[0];
384
+ } else {
385
+ startPos = clauseSpecifier.range[0];
386
+ }
380
387
  result = [
381
388
  startPos,
382
389
  clauseSpecifier.range[1]
@@ -172,10 +172,10 @@ class DbxCalendarStore extends ComponentStore {
172
172
  setNavigationRangeLimit = this.updater((state, navigationRangeLimit) => updateCalendarStateWithNavigationRangeLimit(state, navigationRangeLimit));
173
173
  setShowTodayButton = this.updater((state, showTodayButton) => ({ ...state, showTodayButton: showTodayButton ?? true }));
174
174
  setShowPageButtons = this.updater((state, showPageButtons) => ({ ...state, showPageButtons: showPageButtons ?? false }));
175
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: DbxCalendarStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
176
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: DbxCalendarStore });
175
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxCalendarStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
176
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxCalendarStore });
177
177
  }
178
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: DbxCalendarStore, decorators: [{
178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxCalendarStore, decorators: [{
179
179
  type: Injectable
180
180
  }], ctorParameters: () => [] });
181
181
  /**
@@ -290,10 +290,10 @@ class DbxCalendarBaseComponent {
290
290
  typeToggleChanged(event) {
291
291
  this.calendarStore.setDisplayType(event.value);
292
292
  }
293
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: DbxCalendarBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
294
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.10", type: DbxCalendarBaseComponent, isStandalone: true, selector: "dbx-calendar-base", ngImport: i0, template: "<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ viewDateSignal() | calendarDate: displayTypeSignal() + 'ViewTitle' : 'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left dbx-flex\" fxFlex=\"nogrow\">\n @if (showTodayButtonSignal()) {\n <button mat-stroked-button [disabled]=\"!canJumpToTodaySignal()\" (click)=\"todayClicked()\">Today</button>\n }\n <dbx-button-spacer></dbx-button-spacer>\n @if (hasMultiplePagesSignal()) {\n <div class=\"d-iblock\">\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" aria-label=\"first page button\" (click)=\"firstPageButtonClicked()\">\n <mat-icon>first_page</mat-icon>\n </button>\n }\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" [attr.aria-label]=\"'Previous ' + displayTypeSignal() + ' button'\" (click)=\"previousButtonClicked()\">\n <mat-icon>navigate_before</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" [attr.aria-label]=\"'Next ' + displayTypeSignal() + ' button'\" (click)=\"nextButtonClicked()\">\n <mat-icon>navigate_next</mat-icon>\n </button>\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" aria-label=\"last page button\" (click)=\"lastPageButtonClicked()\">\n <mat-icon>last_page</mat-icon>\n </button>\n }\n </div>\n }\n </span>\n <span class=\"spacer\"></span>\n <span class=\"dbx-calendar-controls-right\" fxFlex=\"nogrow\">\n <ng-content select=\"[controls]\"></ng-content>\n </span>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: FlexLayoutModule }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "pipe", type: CalendarDatePipe, name: "calendarDate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
293
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxCalendarBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
294
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxCalendarBaseComponent, isStandalone: true, selector: "dbx-calendar-base", ngImport: i0, template: "<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ viewDateSignal() | calendarDate: displayTypeSignal() + 'ViewTitle' : 'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left dbx-flex\" fxFlex=\"nogrow\">\n @if (showTodayButtonSignal()) {\n <button mat-stroked-button [disabled]=\"!canJumpToTodaySignal()\" (click)=\"todayClicked()\">Today</button>\n }\n <dbx-button-spacer></dbx-button-spacer>\n @if (hasMultiplePagesSignal()) {\n <div class=\"d-iblock\">\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" aria-label=\"first page button\" (click)=\"firstPageButtonClicked()\">\n <mat-icon>first_page</mat-icon>\n </button>\n }\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" [attr.aria-label]=\"'Previous ' + displayTypeSignal() + ' button'\" (click)=\"previousButtonClicked()\">\n <mat-icon>navigate_before</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" [attr.aria-label]=\"'Next ' + displayTypeSignal() + ' button'\" (click)=\"nextButtonClicked()\">\n <mat-icon>navigate_next</mat-icon>\n </button>\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" aria-label=\"last page button\" (click)=\"lastPageButtonClicked()\">\n <mat-icon>last_page</mat-icon>\n </button>\n }\n </div>\n }\n </span>\n <span class=\"spacer\"></span>\n <span class=\"dbx-calendar-controls-right\" fxFlex=\"nogrow\">\n <ng-content select=\"[controls]\"></ng-content>\n </span>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: FlexLayoutModule }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "pipe", type: CalendarDatePipe, name: "calendarDate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
295
295
  }
296
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: DbxCalendarBaseComponent, decorators: [{
296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxCalendarBaseComponent, decorators: [{
297
297
  type: Component,
298
298
  args: [{ selector: 'dbx-calendar-base', standalone: true, imports: [MatButtonModule, MatButtonToggleModule, DbxButtonSpacerDirective, MatIconModule, CalendarDatePipe, FlexLayoutModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ viewDateSignal() | calendarDate: displayTypeSignal() + 'ViewTitle' : 'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left dbx-flex\" fxFlex=\"nogrow\">\n @if (showTodayButtonSignal()) {\n <button mat-stroked-button [disabled]=\"!canJumpToTodaySignal()\" (click)=\"todayClicked()\">Today</button>\n }\n <dbx-button-spacer></dbx-button-spacer>\n @if (hasMultiplePagesSignal()) {\n <div class=\"d-iblock\">\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" aria-label=\"first page button\" (click)=\"firstPageButtonClicked()\">\n <mat-icon>first_page</mat-icon>\n </button>\n }\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDateSignal()\" [attr.aria-label]=\"'Previous ' + displayTypeSignal() + ' button'\" (click)=\"previousButtonClicked()\">\n <mat-icon>navigate_before</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" [attr.aria-label]=\"'Next ' + displayTypeSignal() + ' button'\" (click)=\"nextButtonClicked()\">\n <mat-icon>navigate_next</mat-icon>\n </button>\n @if (showPageButtonsSignal()) {\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDateSignal()\" aria-label=\"last page button\" (click)=\"lastPageButtonClicked()\">\n <mat-icon>last_page</mat-icon>\n </button>\n }\n </div>\n }\n </span>\n <span class=\"spacer\"></span>\n <span class=\"dbx-calendar-controls-right\" fxFlex=\"nogrow\">\n <ng-content select=\"[controls]\"></ng-content>\n </span>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n" }]
299
299
  }] });
@@ -333,10 +333,10 @@ class DbxCalendarComponent {
333
333
  typeToggleChanged(event) {
334
334
  this.calendarStore.setDisplayType(event.value);
335
335
  }
336
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: DbxCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
337
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.10", type: DbxCalendarComponent, isStandalone: true, selector: "dbx-calendar", outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "<dbx-calendar-base>\n <ng-container controls>\n <mat-button-toggle-group name=\"calendarDisplayStyle\" [value]=\"displayTypeSignal()\" (change)=\"typeToggleChanged($event)\" aria-label=\"Display Style\">\n <mat-button-toggle value=\"month\">Month</mat-button-toggle>\n <mat-button-toggle value=\"week\">Week</mat-button-toggle>\n <mat-button-toggle value=\"day\">Day</mat-button-toggle>\n </mat-button-toggle-group>\n </ng-container>\n <div class=\"dbx-calendar-content\" [ngClass]=\"displayTypeClassSignal()\">\n @switch (displayTypeSignal()) {\n @case ('month') {\n <mwl-calendar-month-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" [activeDayIsOpen]=\"activeDayIsOpenSignal()\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-month-view>\n }\n @case ('week') {\n <mwl-calendar-week-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-week-view>\n }\n @case ('day') {\n <mwl-calendar-day-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-day-view>\n }\n }\n </div>\n</dbx-calendar-base>\n", dependencies: [{ kind: "component", type: DbxCalendarBaseComponent, selector: "dbx-calendar-base" }, { kind: "component", type: CalendarMonthViewComponent, selector: "mwl-calendar-month-view", inputs: ["viewDate", "events", "excludeDays", "activeDayIsOpen", "activeDay", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "cellTemplate", "openDayEventsTemplate", "eventTitleTemplate", "eventActionsTemplate", "weekendDays"], outputs: ["beforeViewRender", "dayClicked", "eventClicked", "columnHeaderClicked", "eventTimesChanged"] }, { kind: "component", type: CalendarDayViewComponent, selector: "mwl-calendar-day-view", inputs: ["viewDate", "events", "hourSegments", "hourSegmentHeight", "hourDuration", "minimumEventHeight", "dayStartHour", "dayStartMinute", "dayEndHour", "dayEndMinute", "refresh", "locale", "eventSnapSize", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "hourSegmentTemplate", "eventTemplate", "eventTitleTemplate", "eventActionsTemplate", "snapDraggedEvents", "allDayEventsLabelTemplate", "currentTimeMarkerTemplate", "validateEventTimesChanged", "resizeCursors"], outputs: ["eventClicked", "hourSegmentClicked", "eventTimesChanged", "beforeViewRender"] }, { kind: "component", type: CalendarWeekViewComponent, selector: "mwl-calendar-week-view", inputs: ["viewDate", "events", "excludeDays", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "eventTemplate", "eventTitleTemplate", "eventActionsTemplate", "precision", "weekendDays", "snapDraggedEvents", "hourSegments", "hourDuration", "hourSegmentHeight", "minimumEventHeight", "dayStartHour", "dayStartMinute", "dayEndHour", "dayEndMinute", "hourSegmentTemplate", "eventSnapSize", "allDayEventsLabelTemplate", "daysInWeek", "currentTimeMarkerTemplate", "validateEventTimesChanged", "resizeCursors"], outputs: ["dayHeaderClicked", "eventClicked", "eventTimesChanged", "beforeViewRender", "hourSegmentClicked"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: i1$1.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "disabledInteractive", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i1$1.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled", "disabledInteractive"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
336
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
337
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: DbxCalendarComponent, isStandalone: true, selector: "dbx-calendar", outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "<dbx-calendar-base>\n <ng-container controls>\n <mat-button-toggle-group name=\"calendarDisplayStyle\" [value]=\"displayTypeSignal()\" (change)=\"typeToggleChanged($event)\" aria-label=\"Display Style\">\n <mat-button-toggle value=\"month\">Month</mat-button-toggle>\n <mat-button-toggle value=\"week\">Week</mat-button-toggle>\n <mat-button-toggle value=\"day\">Day</mat-button-toggle>\n </mat-button-toggle-group>\n </ng-container>\n <div class=\"dbx-calendar-content\" [ngClass]=\"displayTypeClassSignal()\">\n @switch (displayTypeSignal()) {\n @case ('month') {\n <mwl-calendar-month-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" [activeDayIsOpen]=\"activeDayIsOpenSignal()\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-month-view>\n }\n @case ('week') {\n <mwl-calendar-week-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-week-view>\n }\n @case ('day') {\n <mwl-calendar-day-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-day-view>\n }\n }\n </div>\n</dbx-calendar-base>\n", dependencies: [{ kind: "component", type: DbxCalendarBaseComponent, selector: "dbx-calendar-base" }, { kind: "component", type: CalendarMonthViewComponent, selector: "mwl-calendar-month-view", inputs: ["viewDate", "events", "excludeDays", "activeDayIsOpen", "activeDay", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "cellTemplate", "openDayEventsTemplate", "eventTitleTemplate", "eventActionsTemplate", "weekendDays"], outputs: ["beforeViewRender", "dayClicked", "eventClicked", "columnHeaderClicked", "eventTimesChanged"] }, { kind: "component", type: CalendarDayViewComponent, selector: "mwl-calendar-day-view", inputs: ["viewDate", "events", "hourSegments", "hourSegmentHeight", "hourDuration", "minimumEventHeight", "dayStartHour", "dayStartMinute", "dayEndHour", "dayEndMinute", "refresh", "locale", "eventSnapSize", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "hourSegmentTemplate", "eventTemplate", "eventTitleTemplate", "eventActionsTemplate", "snapDraggedEvents", "allDayEventsLabelTemplate", "currentTimeMarkerTemplate", "validateEventTimesChanged", "resizeCursors"], outputs: ["eventClicked", "hourSegmentClicked", "eventTimesChanged", "beforeViewRender"] }, { kind: "component", type: CalendarWeekViewComponent, selector: "mwl-calendar-week-view", inputs: ["viewDate", "events", "excludeDays", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "eventTemplate", "eventTitleTemplate", "eventActionsTemplate", "precision", "weekendDays", "snapDraggedEvents", "hourSegments", "hourDuration", "hourSegmentHeight", "minimumEventHeight", "dayStartHour", "dayStartMinute", "dayEndHour", "dayEndMinute", "hourSegmentTemplate", "eventSnapSize", "allDayEventsLabelTemplate", "daysInWeek", "currentTimeMarkerTemplate", "validateEventTimesChanged", "resizeCursors"], outputs: ["dayHeaderClicked", "eventClicked", "eventTimesChanged", "beforeViewRender", "hourSegmentClicked"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: i1$1.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "disabledInteractive", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i1$1.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled", "disabledInteractive"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
338
338
  }
339
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.10", ngImport: i0, type: DbxCalendarComponent, decorators: [{
339
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxCalendarComponent, decorators: [{
340
340
  type: Component,
341
341
  args: [{ selector: 'dbx-calendar', imports: [DbxCalendarBaseComponent, CalendarMonthViewComponent, CalendarDayViewComponent, CalendarWeekViewComponent, MatButtonToggleModule, NgClass], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<dbx-calendar-base>\n <ng-container controls>\n <mat-button-toggle-group name=\"calendarDisplayStyle\" [value]=\"displayTypeSignal()\" (change)=\"typeToggleChanged($event)\" aria-label=\"Display Style\">\n <mat-button-toggle value=\"month\">Month</mat-button-toggle>\n <mat-button-toggle value=\"week\">Week</mat-button-toggle>\n <mat-button-toggle value=\"day\">Day</mat-button-toggle>\n </mat-button-toggle-group>\n </ng-container>\n <div class=\"dbx-calendar-content\" [ngClass]=\"displayTypeClassSignal()\">\n @switch (displayTypeSignal()) {\n @case ('month') {\n <mwl-calendar-month-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" [activeDayIsOpen]=\"activeDayIsOpenSignal()\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-month-view>\n }\n @case ('week') {\n <mwl-calendar-week-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-week-view>\n }\n @case ('day') {\n <mwl-calendar-day-view [viewDate]=\"viewDateSignal()\" [events]=\"eventsSignal()\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-day-view>\n }\n }\n </div>\n</dbx-calendar-base>\n" }]
342
342
  }], propDecorators: { clickEvent: [{ type: i0.Output, args: ["clickEvent"] }] } });
@@ -0,0 +1,146 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { DbxSectionComponent } from '@dereekb/dbx-web';
4
+
5
+ /**
6
+ * Wrapper for a single self-contained documentation UI example.
7
+ *
8
+ * The `<dbx-docs-ui-example>` element is the parser contract for the
9
+ * `@dereekb/dbx-components-mcp` UI examples scanner: every example component
10
+ * tagged with `@dbxDocsUiExample` must render exactly one of these as the
11
+ * template root, with the runnable snippet placed inside
12
+ * `<dbx-docs-ui-example-content>` and descriptive prose inside
13
+ * `<dbx-docs-ui-example-info>`. Optional `<dbx-docs-ui-example-imports>` and
14
+ * `<dbx-docs-ui-example-notes>` slots are also picked up by the scanner.
15
+ *
16
+ * Selector and child element names are stable — renaming them would break
17
+ * the scanner's deterministic anchors, so treat the names as a public
18
+ * contract on par with a JSDoc tag vocabulary.
19
+ */
20
+ class DbxDocsUiExampleComponent {
21
+ header = input.required(...(ngDevMode ? [{ debugName: "header" }] : /* istanbul ignore next */ []));
22
+ hint = input(undefined, ...(ngDevMode ? [{ debugName: "hint" }] : /* istanbul ignore next */ []));
23
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDocsUiExampleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
24
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.11", type: DbxDocsUiExampleComponent, isStandalone: true, selector: "dbx-docs-ui-example", inputs: { header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: true, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
25
+ <div class="dbx-docs-ui-example dbx-content-border">
26
+ <dbx-section [h]="3" [header]="header()" [hint]="hint()">
27
+ <ng-content></ng-content>
28
+ </dbx-section>
29
+ </div>
30
+ `, isInline: true, styles: [".dbx-docs-ui-example{display:block;margin-bottom:12px}\n"], dependencies: [{ kind: "component", type: DbxSectionComponent, selector: "dbx-section", inputs: ["elevate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
31
+ }
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDocsUiExampleComponent, decorators: [{
33
+ type: Component,
34
+ args: [{ selector: 'dbx-docs-ui-example', template: `
35
+ <div class="dbx-docs-ui-example dbx-content-border">
36
+ <dbx-section [h]="3" [header]="header()" [hint]="hint()">
37
+ <ng-content></ng-content>
38
+ </dbx-section>
39
+ </div>
40
+ `, imports: [DbxSectionComponent], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".dbx-docs-ui-example{display:block;margin-bottom:12px}\n"] }]
41
+ }], propDecorators: { header: [{ type: i0.Input, args: [{ isSignal: true, alias: "header", required: true }] }], hint: [{ type: i0.Input, args: [{ isSignal: true, alias: "hint", required: false }] }] } });
42
+
43
+ /**
44
+ * Descriptive prose slot inside a `<dbx-docs-ui-example>`.
45
+ *
46
+ * The MCP scanner extracts the projected content as the example entry's
47
+ * `info` field. Multiple `<dbx-docs-ui-example-info>` children are joined in
48
+ * source order. Free-form HTML / inline markdown is allowed.
49
+ */
50
+ class DbxDocsUiExampleInfoComponent {
51
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDocsUiExampleInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
52
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: DbxDocsUiExampleInfoComponent, isStandalone: true, selector: "dbx-docs-ui-example-info", ngImport: i0, template: `
53
+ <div class="dbx-docs-ui-example-info">
54
+ <ng-content></ng-content>
55
+ </div>
56
+ `, isInline: true, styles: [".dbx-docs-ui-example-info{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
57
+ }
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDocsUiExampleInfoComponent, decorators: [{
59
+ type: Component,
60
+ args: [{ selector: 'dbx-docs-ui-example-info', template: `
61
+ <div class="dbx-docs-ui-example-info">
62
+ <ng-content></ng-content>
63
+ </div>
64
+ `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".dbx-docs-ui-example-info{display:block}\n"] }]
65
+ }] });
66
+
67
+ /**
68
+ * Runnable-snippet slot inside a `<dbx-docs-ui-example>`.
69
+ *
70
+ * The MCP scanner extracts the projected HTML body as the example entry's
71
+ * `snippet` field. Whatever is inside this element is treated as the literal
72
+ * code shown to LLM consumers — keep it minimal, copy-paste-ready, and free of
73
+ * documentation-only chrome.
74
+ */
75
+ class DbxDocsUiExampleContentComponent {
76
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDocsUiExampleContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
77
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: DbxDocsUiExampleContentComponent, isStandalone: true, selector: "dbx-docs-ui-example-content", ngImport: i0, template: `
78
+ <div class="dbx-docs-ui-example-content">
79
+ <ng-content></ng-content>
80
+ </div>
81
+ `, isInline: true, styles: [".dbx-docs-ui-example-content{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
82
+ }
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDocsUiExampleContentComponent, decorators: [{
84
+ type: Component,
85
+ args: [{ selector: 'dbx-docs-ui-example-content', template: `
86
+ <div class="dbx-docs-ui-example-content">
87
+ <ng-content></ng-content>
88
+ </div>
89
+ `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".dbx-docs-ui-example-content{display:block}\n"] }]
90
+ }] });
91
+
92
+ /**
93
+ * Optional `import { … }` block slot inside a `<dbx-docs-ui-example>`.
94
+ *
95
+ * The MCP scanner extracts the projected text as the example entry's optional
96
+ * `imports` field. Use this for the import lines a consumer would copy along
97
+ * with the runnable snippet.
98
+ */
99
+ class DbxDocsUiExampleImportsComponent {
100
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDocsUiExampleImportsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
101
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: DbxDocsUiExampleImportsComponent, isStandalone: true, selector: "dbx-docs-ui-example-imports", ngImport: i0, template: `
102
+ <ng-content></ng-content>
103
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
104
+ }
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDocsUiExampleImportsComponent, decorators: [{
106
+ type: Component,
107
+ args: [{
108
+ selector: 'dbx-docs-ui-example-imports',
109
+ template: `
110
+ <ng-content></ng-content>
111
+ `,
112
+ standalone: true,
113
+ changeDetection: ChangeDetectionStrategy.OnPush
114
+ }]
115
+ }] });
116
+
117
+ /**
118
+ * Optional footnotes slot inside a `<dbx-docs-ui-example>`.
119
+ *
120
+ * The MCP scanner extracts the projected content as the example entry's
121
+ * optional `notes` field, appended to `full`-depth output.
122
+ */
123
+ class DbxDocsUiExampleNotesComponent {
124
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDocsUiExampleNotesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
125
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: DbxDocsUiExampleNotesComponent, isStandalone: true, selector: "dbx-docs-ui-example-notes", ngImport: i0, template: `
126
+ <ng-content></ng-content>
127
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
128
+ }
129
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: DbxDocsUiExampleNotesComponent, decorators: [{
130
+ type: Component,
131
+ args: [{
132
+ selector: 'dbx-docs-ui-example-notes',
133
+ template: `
134
+ <ng-content></ng-content>
135
+ `,
136
+ standalone: true,
137
+ changeDetection: ChangeDetectionStrategy.OnPush
138
+ }]
139
+ }] });
140
+
141
+ /**
142
+ * Generated bundle index. Do not edit.
143
+ */
144
+
145
+ export { DbxDocsUiExampleComponent, DbxDocsUiExampleContentComponent, DbxDocsUiExampleImportsComponent, DbxDocsUiExampleInfoComponent, DbxDocsUiExampleNotesComponent };
146
+ //# sourceMappingURL=dereekb-dbx-web-docs.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dereekb-dbx-web-docs.mjs","sources":["../../../../packages/dbx-web/docs/src/lib/ui.example.component.ts","../../../../packages/dbx-web/docs/src/lib/ui.example.info.component.ts","../../../../packages/dbx-web/docs/src/lib/ui.example.content.component.ts","../../../../packages/dbx-web/docs/src/lib/ui.example.imports.component.ts","../../../../packages/dbx-web/docs/src/lib/ui.example.notes.component.ts","../../../../packages/dbx-web/docs/src/dereekb-dbx-web-docs.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { DbxSectionComponent } from '@dereekb/dbx-web';\n\n/**\n * Wrapper for a single self-contained documentation UI example.\n *\n * The `<dbx-docs-ui-example>` element is the parser contract for the\n * `@dereekb/dbx-components-mcp` UI examples scanner: every example component\n * tagged with `@dbxDocsUiExample` must render exactly one of these as the\n * template root, with the runnable snippet placed inside\n * `<dbx-docs-ui-example-content>` and descriptive prose inside\n * `<dbx-docs-ui-example-info>`. Optional `<dbx-docs-ui-example-imports>` and\n * `<dbx-docs-ui-example-notes>` slots are also picked up by the scanner.\n *\n * Selector and child element names are stable — renaming them would break\n * the scanner's deterministic anchors, so treat the names as a public\n * contract on par with a JSDoc tag vocabulary.\n */\n@Component({\n selector: 'dbx-docs-ui-example',\n template: `\n <div class=\"dbx-docs-ui-example dbx-content-border\">\n <dbx-section [h]=\"3\" [header]=\"header()\" [hint]=\"hint()\">\n <ng-content></ng-content>\n </dbx-section>\n </div>\n `,\n styles: [\n `\n .dbx-docs-ui-example {\n display: block;\n margin-bottom: 12px;\n }\n `\n ],\n imports: [DbxSectionComponent],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxDocsUiExampleComponent {\n readonly header = input.required<string>();\n readonly hint = input<string | undefined>(undefined);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Descriptive prose slot inside a `<dbx-docs-ui-example>`.\n *\n * The MCP scanner extracts the projected content as the example entry's\n * `info` field. Multiple `<dbx-docs-ui-example-info>` children are joined in\n * source order. Free-form HTML / inline markdown is allowed.\n */\n@Component({\n selector: 'dbx-docs-ui-example-info',\n template: `\n <div class=\"dbx-docs-ui-example-info\">\n <ng-content></ng-content>\n </div>\n `,\n styles: [\n `\n .dbx-docs-ui-example-info {\n display: block;\n }\n `\n ],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxDocsUiExampleInfoComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Runnable-snippet slot inside a `<dbx-docs-ui-example>`.\n *\n * The MCP scanner extracts the projected HTML body as the example entry's\n * `snippet` field. Whatever is inside this element is treated as the literal\n * code shown to LLM consumers — keep it minimal, copy-paste-ready, and free of\n * documentation-only chrome.\n */\n@Component({\n selector: 'dbx-docs-ui-example-content',\n template: `\n <div class=\"dbx-docs-ui-example-content\">\n <ng-content></ng-content>\n </div>\n `,\n styles: [\n `\n .dbx-docs-ui-example-content {\n display: block;\n }\n `\n ],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxDocsUiExampleContentComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Optional `import { … }` block slot inside a `<dbx-docs-ui-example>`.\n *\n * The MCP scanner extracts the projected text as the example entry's optional\n * `imports` field. Use this for the import lines a consumer would copy along\n * with the runnable snippet.\n */\n@Component({\n selector: 'dbx-docs-ui-example-imports',\n template: `\n <ng-content></ng-content>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxDocsUiExampleImportsComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Optional footnotes slot inside a `<dbx-docs-ui-example>`.\n *\n * The MCP scanner extracts the projected content as the example entry's\n * optional `notes` field, appended to `full`-depth output.\n */\n@Component({\n selector: 'dbx-docs-ui-example-notes',\n template: `\n <ng-content></ng-content>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxDocsUiExampleNotesComponent {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}