@pacem/pacem-ui 1.0.0-bernoulli → 1.0.0-binet

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 (55) hide show
  1. package/dist/browser/pacem-ui.js +166 -20
  2. package/dist/browser/pacem-ui.js.map +1 -1
  3. package/dist/browser/pacem-ui.min.js +2 -3
  4. package/dist/bundle/pacem-ui.min.mjs +32 -32
  5. package/dist/bundle/pacem-ui.mjs +95 -45
  6. package/dist/bundle/pacem-ui.mjs.map +3 -3
  7. package/dist/docs/pacem-ui.json +18628 -0
  8. package/dist/esm/adapter.js +10 -13
  9. package/dist/esm/anchor.js +3 -2
  10. package/dist/esm/balloon.js +9 -1
  11. package/dist/esm/binder.js +11 -1
  12. package/dist/esm/blade.js +2 -1
  13. package/dist/esm/bottom-sheet.js +12 -6
  14. package/dist/esm/button.js +2 -1
  15. package/dist/esm/buttonset.js +2 -1
  16. package/dist/esm/calendar.js +19 -1
  17. package/dist/esm/collapse.js +2 -1
  18. package/dist/esm/dialog-abstractions.js +8 -1
  19. package/dist/esm/dialog.js +8 -2
  20. package/dist/esm/divider.js +2 -1
  21. package/dist/esm/icon.js +2 -1
  22. package/dist/esm/image.js +2 -1
  23. package/dist/esm/index-components-ui.js +1 -1
  24. package/dist/esm/index-components.js +1 -1
  25. package/dist/esm/index-iife.js +1 -1
  26. package/dist/esm/index.js +1 -1
  27. package/dist/esm/infinite-scroller.js +3 -1
  28. package/dist/esm/iterative.js +6 -1
  29. package/dist/esm/lightbox-abstractions.js +2 -1
  30. package/dist/esm/lightbox.js +2 -1
  31. package/dist/esm/loader.js +3 -1
  32. package/dist/esm/markdown-svc.js +4 -1
  33. package/dist/esm/markdown.js +4 -1
  34. package/dist/esm/marquee.js +2 -1
  35. package/dist/esm/media-query.js +2 -1
  36. package/dist/esm/menu.js +4 -1
  37. package/dist/esm/pager.js +2 -1
  38. package/dist/esm/picture.js +4 -1
  39. package/dist/esm/progressbar.js +2 -1
  40. package/dist/esm/sidebar.js +4 -1
  41. package/dist/esm/slideshow.js +3 -1
  42. package/dist/esm/social-twitter.js +2 -1
  43. package/dist/esm/sticky-header.js +5 -1
  44. package/dist/esm/tabs.js +4 -1
  45. package/dist/esm/ticker.js +2 -1
  46. package/dist/esm/toast.js +12 -1
  47. package/dist/esm/toc.js +2 -1
  48. package/dist/esm/tuner.js +4 -1
  49. package/dist/esm/types.js +2 -1
  50. package/dist/esm/vibration.js +3 -1
  51. package/dist/esm/view.js +26 -3
  52. package/dist/esm/window.js +5 -1
  53. package/package.json +2 -1
  54. package/typings/index.d.ts +244 -2
  55. package/dist/browser/pacem-ui.min.js.map +0 -1
@@ -7,15 +7,18 @@ import { PacemEventTarget } from '@pacem/pacem-core';
7
7
  import { Point } from '@pacem/pacem-foundation';
8
8
  import { PropertyConverter } from '@pacem/pacem-core';
9
9
 
10
+ /** Orientation used by a {@link PacemAdapterElement} to interpret arrow-key navigation. */
10
11
  declare enum AdapterOrientation {
11
12
  Vertical = "vertical",
12
13
  Horizontal = "horizontal"
13
14
  }
14
15
 
16
+ /** Event dispatched by {@link PacemAdapterElement} whenever a page/dashboard button needs to (re)compute its visible state or content. */
15
17
  declare class AdapterPageButtonRefreshEvent extends CustomEvent<AdapterPageButtonRefreshEventArgs> {
16
18
  constructor(args: AdapterPageButtonRefreshEventArgs);
17
19
  }
18
20
 
21
+ /** Payload of the {@link AdapterPageButtonRefreshEvent}, mutable so listeners can override how a page button is rendered. */
19
22
  declare interface AdapterPageButtonRefreshEventArgs {
20
23
  index: number;
21
24
  hide: boolean;
@@ -25,6 +28,7 @@ declare interface AdapterPageButtonRefreshEventArgs {
25
28
 
26
29
  declare const AdapterPageButtonRefreshEventName = "pagerefresh";
27
30
 
31
+ /** Cross-axis alignment of a {@link PacemBalloonElement} relative to its `target`. */
28
32
  declare enum BalloonAlignment {
29
33
  Start = "start",
30
34
  Center = "center",
@@ -32,12 +36,14 @@ declare enum BalloonAlignment {
32
36
  Auto = "auto"
33
37
  }
34
38
 
39
+ /** How a {@link PacemBalloonElement} behaves once popped up: a dismissible menu, a tooltip, or non-interactive. */
35
40
  declare enum BalloonBehavior {
36
41
  Menu = "menu",
37
42
  Tooltip = "tooltip",
38
43
  Inert = "inert"
39
44
  }
40
45
 
46
+ /** Configuration bag accepted by {@link PacemBalloonElement}'s `options` property. */
41
47
  declare type BalloonOptions = {
42
48
  trigger?: BalloonTrigger;
43
49
  position?: BalloonPosition;
@@ -57,10 +63,13 @@ declare type BalloonOptions = {
57
63
  autoAdjust?: boolean;
58
64
  };
59
65
 
66
+ /** Event name fired by {@link PacemBalloonElement} once it has finished popping out (after the hide transition). */
60
67
  declare const BalloonPopoutEventName = "popout";
61
68
 
69
+ /** Event name fired by {@link PacemBalloonElement} once it has finished popping up (after the show transition). */
62
70
  declare const BalloonPopupEventName = "popup";
63
71
 
72
+ /** Side of `target` a {@link PacemBalloonElement} is anchored to (with automatic variants that pick the side with the most room). */
64
73
  declare enum BalloonPosition {
65
74
  Top = "top",
66
75
  Left = "left",
@@ -71,11 +80,13 @@ declare enum BalloonPosition {
71
80
  VerticalAuto = "y"
72
81
  }
73
82
 
83
+ /** Whether a {@link PacemBalloonElement} sizes itself freely or matches its `target`'s size along the anchored axis. */
74
84
  declare enum BalloonSizing {
75
85
  Auto = "auto",
76
86
  Match = "match"
77
87
  }
78
88
 
89
+ /** The user interaction on `target` that pops a {@link PacemBalloonElement} up. */
79
90
  declare enum BalloonTrigger {
80
91
  Hover = "hover",
81
92
  Click = "click",
@@ -83,6 +94,7 @@ declare enum BalloonTrigger {
83
94
  Focus = "focus"
84
95
  }
85
96
 
97
+ /** Edge (or center) of an element a {@link PacemBinderElement} curve attaches to. */
86
98
  declare enum BinderAnchor {
87
99
  Auto = "auto",
88
100
  Left = "left",
@@ -92,6 +104,7 @@ declare enum BinderAnchor {
92
104
  Center = "center"
93
105
  }
94
106
 
107
+ /** Decoration drawn at either end of a {@link PacemBinderElement} curve. */
95
108
  declare enum BinderEnd {
96
109
  Default = "default",
97
110
  Arrow = "arrow",
@@ -99,12 +112,15 @@ declare enum BinderEnd {
99
112
  None = "none"
100
113
  }
101
114
 
115
+ /** Event dispatched by a {@link PacemBinderElement} wrapping the original user-interaction event on its path. */
102
116
  declare class BinderInteractionEvent extends CustomUIEvent<null> {
103
117
  constructor(orig: MouseEvent | KeyboardEvent | TouchEvent);
104
118
  }
105
119
 
120
+ /** Event name fired by a {@link PacemBinderElement} when its connecting path is interacted with (click, hover, etc.). */
106
121
  declare const BinderInteractionEventName = "interact";
107
122
 
123
+ /** How a {@link PacemBinderElement} computes its Bezier control points: from the elements' mass (size) or from the path direction. */
108
124
  declare enum BinderTension {
109
125
  Mass = "mass",
110
126
  Path = "path"
@@ -132,14 +148,17 @@ declare type CalendarEventEventArgs = {
132
148
  element: HTMLElement;
133
149
  };
134
150
 
151
+ /** Event dispatched when a {@link PacemCalendarEventElement} rendering gains focus/selection within its host calendar. */
135
152
  declare class CalendarEventSelectEvent extends CustomTypedEvent<CalendarEventEventArgs> {
136
153
  constructor(args: CalendarEventEventArgs);
137
154
  }
138
155
 
156
+ /** Event dispatched when a {@link PacemCalendarEventElement} rendering loses focus/selection within its host calendar. */
139
157
  declare class CalendarEventUnselectEvent extends CustomTypedEvent<CalendarEventEventArgs> {
140
158
  constructor(args: CalendarEventEventArgs);
141
159
  }
142
160
 
161
+ /** Granularity of a calendar/schedule/agenda view. */
143
162
  declare enum CalendarZoom {
144
163
  Month = "month",
145
164
  Week = "week",
@@ -152,15 +171,18 @@ export declare namespace Components {
152
171
  }
153
172
  }
154
173
 
174
+ /** A (half-open) date interval, e.g. used to describe a disabled range in a calendar/agenda. */
155
175
  declare type DateRange = {
156
176
  from?: Date;
157
177
  to?: Date;
158
178
  };
159
179
 
180
+ /** Event dispatched (and bubbling) when a day is selected on a {@link PacemCalendarElement}, carrying the selected date. */
160
181
  declare class DateSelectEvent extends CustomTypedEvent<Date> {
161
182
  constructor(date: Date);
162
183
  }
163
184
 
185
+ /** Single button a dialog can be committed/closed with. */
164
186
  declare enum DialogButton {
165
187
  Yes = "yes",
166
188
  No = "no",
@@ -168,6 +190,7 @@ declare enum DialogButton {
168
190
  Ok = "ok"
169
191
  }
170
192
 
193
+ /** Set of buttons shown by a dialog (e.g. {@link PacemDialogBase}), controlling which {@link DialogButton}s are visible. */
171
194
  declare enum DialogButtons {
172
195
  YesNo = "yesno",
173
196
  YesNoCancel = "yesnocancel",
@@ -175,42 +198,53 @@ declare enum DialogButtons {
175
198
  OkCancel = "okcancel"
176
199
  }
177
200
 
201
+ /** Event dispatched by a {@link PacemDialogBase} when it is committed/closed via one of its buttons; also the resolution value of `open()`'s promise. */
178
202
  declare class DialogResultEvent extends CustomTypedEvent<DialogResultEventArgs> {
179
203
  constructor(args: DialogResultEventArgs);
180
204
  }
181
205
 
206
+ /** Payload of a {@link DialogResultEvent}: which button committed the dialog, plus its `state` at commit time. */
182
207
  declare type DialogResultEventArgs = {
183
208
  button: DialogButton;
184
209
  state?: any;
185
210
  };
186
211
 
212
+ /** Event name dispatched by a {@link PacemDialogBase} when it is committed/closed via one of its buttons. */
187
213
  declare const DialogResultEventName = "commit";
188
214
 
215
+ /** Either a DOM `Element` or a plain `{x,y}` `Point`. */
189
216
  declare type ElementOrPoint = Element | Point;
190
217
 
218
+ /** Converts an attribute value into an `Element` (resolved via `querySelector`) or, failing that, a parsed `Point`/JSON value. */
191
219
  declare const ElementOrPointPropertyConverter: PropertyConverter;
192
220
 
221
+ /** Minimal contract for a show/hide overlay element (implemented by {@link PacemLightboxElement}), used by consumers such as {@link PacemDialogBase} that only need to toggle visibility. */
193
222
  declare interface Lightbox {
194
223
  show: boolean;
195
224
  behavior: LightboxBehavior;
196
225
  }
197
226
 
227
+ /** How a {@link Lightbox} reacts to a click outside its content. */
198
228
  declare enum LightboxBehavior {
199
229
  ClickOutsideClose = "clickOutsideClose",
200
230
  ExplicitClose = "explicitClose"
201
231
  }
202
232
 
233
+ /** Visual style of a {@link PacemLoaderElement}'s spinner. */
203
234
  declare enum LoaderType {
204
235
  Spinner = "spin",
205
236
  Pacem = "pacem",
206
237
  Custom = "custom"
207
238
  }
208
239
 
240
+ /** Parses Markdown into HTML, extended with C-like/script/markup code-fence highlighting and Pacem-specific inline embeds (`{tweet}(id)`, `{yt}(id)`). */
209
241
  declare class MarkdownService {
210
242
  #private;
211
243
  constructor();
212
244
  private _escape;
245
+ /** Converts the given Markdown source into an HTML string. */
213
246
  toHtml(md: string): string;
247
+ /** Tokenizes the given Markdown source, without rendering it to HTML. */
214
248
  tokenize(md: string): any[];
215
249
  }
216
250
 
@@ -238,18 +272,26 @@ declare const MEDIAQUERY_XL = "(min-width: 1824px)";
238
272
 
239
273
  declare const MEDIAQUERY_XS = "(max-width: 767px)";
240
274
 
275
+ /** Base class for elements iterating a `datasource` under the control of a {@link PacemAdapterElement} (e.g. a slideshow), exposing `index`-relative helpers (`isPrevious`, `isNext`, `isCloseTo`). */
241
276
  declare abstract class PacemAdaptedIterativeElement<TItem> extends Components_2.PacemElement {
277
+ /** @readonly Gets the {@link PacemAdapterElement} driving this element's navigation. */
242
278
  protected abstract get adapter(): PacemAdapterElement;
279
+ /** Gets or sets the currently focused item's index within `datasource`. */
243
280
  index: number;
281
+ /** Gets or sets the collection of items being iterated. */
244
282
  datasource: TItem[];
283
+ /** Gets whether `ndx` is the focused item itself, or immediately adjacent (previous/next, wrapping around) to `focusndx`. */
245
284
  protected isCloseTo(ndx: number, focusndx: number): boolean;
285
+ /** Gets whether `ndx` is the item immediately preceding `focusndx` (wrapping around the datasource). */
246
286
  protected isPrevious(ndx: number, focusndx: number): boolean;
287
+ /** Gets whether `ndx` is the item immediately following `focusndx` (wrapping around the datasource). */
247
288
  protected isNext(ndx: number, focusndx: number): boolean;
248
289
  private _isNextCore;
249
290
  private _isPreviousCore;
250
291
  private _isCloseToCore;
251
292
  }
252
293
 
294
+ /** Renders a dashboard of prev/next buttons and page indicators driving a {@link Components.PacemAdapter} (e.g. a `<pacem-slideshow>` master). */
253
295
  declare class PacemAdapterElement extends Components_2.PacemAdapter<Components_2.PacemIterativeElement<any>, any> {
254
296
  private _repeater;
255
297
  private _prevBtn;
@@ -269,15 +311,21 @@ declare class PacemAdapterElement extends Components_2.PacemAdapter<Components_2
269
311
  private _fireAdapterPageRefreshCallback;
270
312
  private _tickVersion;
271
313
  private _handle;
314
+ /** Gets or sets whether a play/pause button is shown to toggle the auto-advance timer (see `interval`). */
272
315
  pausable: boolean;
316
+ /** Gets or sets the auto-advance interval, in milliseconds. Unset (or non-positive) disables auto-advance. */
273
317
  interval: number;
318
+ /** Gets or sets the orientation used to interpret arrow-key navigation. */
274
319
  orientation: AdapterOrientation;
320
+ /** Gets or sets whether the dashboard responds to user interaction (keyboard, click, swipe). */
275
321
  interactive: boolean;
276
322
  /** Gets or sets whether swipe gesture is enabled for navigation (also depends on the 'interactive' flag being set to 'true') */
277
323
  swipeEnabled: boolean;
278
324
  /** Gets or sets whether, by selecting twice an item, you will de-select it and obtain an overall unselected state. */
279
325
  deselectable: boolean;
326
+ /** Gets or sets whether navigating past the last (or before the first) item wraps around. */
280
327
  loop: boolean;
328
+ /** Gets or sets the callback computing a page button's caption for a given item/index (defaults to the 1-based index). */
281
329
  labelCallback: (item: any, index: number) => string | Node;
282
330
  private _index;
283
331
  private _paused;
@@ -298,26 +346,37 @@ declare class PacemAdapterElement extends Components_2.PacemAdapter<Components_2
298
346
  private _labelCallback;
299
347
  }
300
348
 
349
+ /** Renders a day/week hourly grid ("agenda" view) with an all-day row, placing {@link PacemCalendarEventElement} items on the timeline and dispatching {@link TimeSelectEvent} on slot click. */
301
350
  declare class PacemAgendaElement extends PacemCalendarWithEventsBaseElement {
302
351
  protected buildDataSource(items: PacemCalendarEventElement[]): CalendarDataItem[][];
303
352
  private _clock;
353
+ /** Gets or sets the currently selected time slot; setting it dispatches a {@link TimeSelectEvent}. */
304
354
  time: Date;
305
355
  private _allDayDatasource;
356
+ /** @readonly Gets the computed all-day row of positioned event items ready for rendering. */
306
357
  get allDayDatasource(): CalendarDataItem[];
307
358
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
308
359
  }
309
360
 
361
+ /** Anchor-like custom element, supporting routed navigation (via a {@link Components.PacemRouterElement}), OAuth-authenticated downloads and keyboard activation. */
310
362
  declare class PacemAnchorElement extends Components_2.PacemElement implements Net.OAuthFetchable {
363
+ /** Gets or sets the credentials mode used when fetching a `download`-ed resource. */
311
364
  fetchCredentials: RequestCredentials;
365
+ /** Gets or sets extra headers (e.g. `Authorization`) sent when fetching a `download`-ed resource. */
312
366
  fetchHeaders: {
313
367
  [key: string]: string;
314
368
  };
315
369
  constructor();
370
+ /** Gets or sets the link's target URL (optionally formatted through `router`'s current state). */
316
371
  href: string;
372
+ /** Gets or sets the window/frame target to open `href` into (bypasses routed navigation). */
317
373
  target: string;
374
+ /** Gets or sets whether clicking triggers a download instead of navigating: `true` downloads with the original filename, a string downloads with that filename. */
318
375
  download: string | boolean;
376
+ /** Gets or sets the {@link Components.PacemRouterElement} to delegate navigation to, instead of a full page load. */
319
377
  router: Components_2.PacemRouterElement;
320
378
  private _fetching;
379
+ /** @readonly Gets whether a `download` fetch is currently in progress. */
321
380
  get fetching(): boolean;
322
381
  connectedCallback(): void;
323
382
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
@@ -325,6 +384,7 @@ declare class PacemAnchorElement extends Components_2.PacemElement implements Ne
325
384
  private _download;
326
385
  }
327
386
 
387
+ /** Positions its content as a floating popup (menu or tooltip) anchored to a `target` element or point; see {@link BalloonOptions}. */
328
388
  declare class PacemBalloonElement extends Components_2.PacemElement {
329
389
  private _timer;
330
390
  private _visible;
@@ -333,7 +393,9 @@ declare class PacemBalloonElement extends Components_2.PacemElement {
333
393
  private _container;
334
394
  private _resize;
335
395
  private _position;
396
+ /** Gets or sets the element (or point) the balloon is anchored to. Defaults to the parent element once activated. */
336
397
  target: ElementOrPoint;
398
+ /** Gets or sets the balloon's behavior/trigger/positioning options; see {@link BalloonOptions}. */
337
399
  options: BalloonOptions;
338
400
  /** Gets whether the balloon is open and visible. */
339
401
  get visible(): boolean;
@@ -370,15 +432,25 @@ declare class PacemBalloonElement extends Components_2.PacemElement {
370
432
  private _setHandlers;
371
433
  }
372
434
 
435
+ /** Draws an SVG Bezier curve connecting two elements (or points), following them as they move/resize; e.g. wires or diagram connectors. */
373
436
  declare class PacemBinderElement extends Components_2.PacemElement {
437
+ /** Gets or sets the curve's starting element (or point). */
374
438
  from: PacemBinderTarget;
439
+ /** Gets or sets the curve's ending element (or point). */
375
440
  to: PacemBinderTarget;
441
+ /** Gets or sets the edge of `from` the curve attaches to. */
376
442
  fromAnchor: BinderAnchor;
443
+ /** Gets or sets the edge of `to` the curve attaches to. */
377
444
  toAnchor: BinderAnchor;
445
+ /** Gets or sets the decoration drawn at the `from` end of the curve. */
378
446
  fromEnd: BinderEnd;
447
+ /** Gets or sets the decoration drawn at the `to` end of the curve. */
379
448
  toEnd: BinderEnd;
449
+ /** Gets or sets how the curve's control points are computed. */
380
450
  tension: BinderTension;
451
+ /** Gets or sets the curve's stroke color. */
381
452
  color: string;
453
+ /** Gets or sets whether the curve's path responds to pointer interaction (dispatching {@link BinderInteractionEvent}). */
382
454
  interactive: boolean;
383
455
  connectedCallback(): void;
384
456
  viewActivatedCallback(): void;
@@ -387,11 +459,13 @@ declare class PacemBinderElement extends Components_2.PacemElement {
387
459
  disconnectedCallback(): void;
388
460
  private _setPathVisibility;
389
461
  private _ensurePath;
462
+ /** Resizes the shared full-page SVG overlay to match the current document size; call after layout changes that may affect `document.body`'s scroll size. */
390
463
  invalidateSize(): void;
391
464
  private _path;
392
465
  private _svg;
393
466
  private _state;
394
467
  private _computeAnchorPoints;
468
+ /** Updates the cached position/size for the given endpoint (`from` or `to`) and redraws the curve if both ends are known. @param args Pre-computed layout, or omitted to reuse the last known/cached value. */
395
469
  refresh(element: PacemBinderTarget, args?: Components_2.ResizeEventArgs): void;
396
470
  private _draw;
397
471
  private _getDefaultEndingPath;
@@ -401,21 +475,25 @@ declare class PacemBinderElement extends Components_2.PacemElement {
401
475
 
402
476
  declare type PacemBinderTarget = ElementOrPoint;
403
477
 
478
+ /** Slide-in panel toggled via its `open` property, dispatching `open`/`close` events as it transitions. */
404
479
  declare class PacemBladeElement extends Components_2.PacemElement {
480
+ /** Gets or sets whether the blade is expanded (visible) or collapsed. */
405
481
  open: boolean;
406
482
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
407
483
  private _toggle;
408
484
  }
409
485
 
486
+ /** Mobile-style panel anchored to the bottom of the viewport, draggable (via its {@link PacemBottomSheetHandleElement}) and swipeable open/closed. */
410
487
  declare class PacemBottomSheetElement extends Components_2.PacemElement {
411
488
  private _swiper;
412
489
  private _resizer;
413
490
  private _handleResizer;
414
491
  private _sheet;
492
+ /** Gets or sets whether the sheet is expanded (visible) or collapsed off-screen. */
415
493
  open: boolean;
416
494
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
417
495
  private _toggleSwiper;
418
- /** @internal */
496
+ /** @internal Wires (or clears) the swiper's drag handle selector to the given {@link PacemBottomSheetHandleElement}. */
419
497
  _setHandle(handle: PacemBottomSheetHandleElement | null): void;
420
498
  private _assignLogger;
421
499
  private _resizeHandler;
@@ -442,9 +520,11 @@ declare class PacemBottomSheetElement extends Components_2.PacemElement {
442
520
  private _toggle;
443
521
  }
444
522
 
523
+ /** Drag handle for an ancestor {@link PacemBottomSheetElement}: renders a small grip icon, toggles the sheet on click and drives its swipe-to-drag behavior. */
445
524
  declare class PacemBottomSheetHandleElement extends Components_2.PacemElement {
446
525
  #private;
447
526
  _icon: PacemIconElement;
527
+ /** Gets or sets the icon glyph shown on the handle (defaults to a horizontal rule/grip). */
448
528
  iconGlyph: string;
449
529
  viewActivatedCallback(): void;
450
530
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
@@ -455,33 +535,49 @@ declare class PacemBottomSheetHandleElement extends Components_2.PacemElement {
455
535
  private _setIcon;
456
536
  }
457
537
 
538
+ /** Clickable button element with optional icon, command dispatching (via {@link CommandEvent}) and an optional confirmation dialog gate. */
458
539
  declare class PacemButtonElement extends Components_2.PacemIterableElement {
459
540
  constructor();
541
+ /** Gets or sets the icon glyph (ligature) rendered before the button's content. */
460
542
  iconGlyph: string;
543
+ /** Gets or sets the icon image URL rendered before the button's content. */
461
544
  iconUrl: string;
545
+ /** Gets or sets the command name dispatched (as a {@link CommandEvent}) when the button is clicked. */
462
546
  commandName: string;
547
+ /** Gets or sets the argument carried by the {@link CommandEvent} dispatched on click. */
463
548
  commandArgument: any;
549
+ /** Gets or sets the message shown by `confirmationDialog` before the click is actually processed. */
464
550
  confirmationMessage: string;
551
+ /** Gets or sets the dialog used to confirm the click before it's processed; when set, the click only proceeds if the user answers Yes/Ok. */
465
552
  confirmationDialog: PacemDialogBase;
466
553
  connectedCallback(): void;
467
554
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
468
555
  protected emit(evt: Event): void;
469
556
  }
470
557
 
558
+ /** Groups {@link PacemButtonElement} children into a single iterable/selectable set, focusing the item matching `index`. */
471
559
  declare class PacemButtonsetElement extends Components_2.PacemIterativeElement<PacemButtonElement> {
472
560
  connectedCallback(): void;
473
561
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
474
562
  validate(item: any): item is PacemButtonElement;
475
563
  }
476
564
 
565
+ /** Base class shared by the calendar-family elements ({@link PacemCalendarElement}, {@link PacemAgendaElement}, {@link PacemScheduleElement}): holds the current view date/zoom/week/month grids and the {@link PacemCalendarEventElement} items collection. */
477
566
  declare abstract class PacemCalendarBaseElement extends Components_2.PacemItemsContainerElement<PacemCalendarEventElement> {
478
567
  validate(item: PacemCalendarEventElement): boolean;
568
+ /** Gets or sets the date currently being viewed (drives which week/month is displayed). */
479
569
  viewDate: Date;
570
+ /** Gets or sets the date/time considered "now" (drives the "today"/clock highlighting). */
480
571
  now: Date;
572
+ /** Gets or sets the view granularity (month, week or day). */
481
573
  zoom: CalendarZoom;
574
+ /** Gets or sets which day is considered the first day of the week. */
482
575
  weekStart: 'mon' | 'sun' | 'm' | 's' | 'monday' | 'sunday';
576
+ /** Gets or sets the 7 dates (Date instances) making up the currently viewed week. */
483
577
  week: Date[];
578
+ /** Gets or sets the weeks-of-dates grid (rows of 7 dates each) making up the currently viewed month. */
484
579
  month: Date[][];
580
+ /** Gets or sets the date ranges disabled for interaction/selection. */
485
581
  disabledRanges: DateRange[];
486
582
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
487
583
  protected oneventselect(el: HTMLElement, evt: PacemCalendarEventElement): void;
@@ -502,7 +598,9 @@ declare abstract class PacemCalendarBaseElement extends Components_2.PacemItemsC
502
598
  private _synchronizeWeek;
503
599
  }
504
600
 
601
+ /** Declarative {@link PacemCalendarRuleBaseElement} that disables every day of the ancestor calendar not listed in `days` (e.g. weekends). */
505
602
  declare class PacemCalendarDayOfWeekRuleElement extends PacemCalendarRuleBaseElement {
603
+ /** Gets or sets the allowed days of week (e.g. `['monday', 'tuesday', ...]`); every other day gets disabled. */
506
604
  days: string[];
507
605
  viewActivatedCallback(): void;
508
606
  private _daysOfWeek;
@@ -511,8 +609,10 @@ declare class PacemCalendarDayOfWeekRuleElement extends PacemCalendarRuleBaseEle
511
609
  protected computeDisabledRanges(): DateRange[];
512
610
  }
513
611
 
612
+ /** Renders a classic month grid, placing {@link PacemCalendarEventElement} items on their spanning day cells and dispatching {@link DateSelectEvent} on day click. */
514
613
  declare class PacemCalendarElement extends PacemCalendarWithEventsBaseElement {
515
614
  protected buildDataSource(items: PacemCalendarEventElement[]): CalendarDataItem[][];
615
+ /** Gets or sets the currently selected day; setting it dispatches a {@link DateSelectEvent}. */
516
616
  date: Date;
517
617
  /** Gets or sets the format for the first day of each month. */
518
618
  dayLabelFormatter: (d: Date) => string;
@@ -522,42 +622,57 @@ declare class PacemCalendarElement extends PacemCalendarWithEventsBaseElement {
522
622
  protected getDayLabel(d: Date, _?: number): string;
523
623
  }
524
624
 
625
+ /** A single event/appointment item, meant as a child of a {@link PacemCalendarWithEventsBaseElement} (e.g. {@link PacemCalendarElement} or {@link PacemAgendaElement}). */
525
626
  declare class PacemCalendarEventElement extends Components_2.PacemItemElement {
627
+ /** Gets or sets the event's start date/time. */
526
628
  start: Date;
629
+ /** Gets or sets the event's end date/time. */
527
630
  end: Date;
631
+ /** Gets or sets the event's display caption. */
528
632
  caption: string;
633
+ /** Gets or sets the event's place/location. */
529
634
  place: string;
635
+ /** Gets or sets whether the event spans the whole day (rendered in the all-day row/column). */
530
636
  allDay: boolean;
531
637
  private _handle;
532
638
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
533
639
  }
534
640
 
641
+ /** Base class for declarative rule elements that compute and inject {@link DateRange}s into an ancestor {@link PacemCalendarBaseElement}'s `disabledRanges` (e.g. {@link PacemCalendarDayOfWeekRuleElement}). */
535
642
  declare abstract class PacemCalendarRuleBaseElement extends HTMLElement {
536
643
  viewActivatedCallback(): void;
537
644
  disconnectedCallback(): void;
538
645
  private _target;
646
+ /** @readonly Gets the ancestor calendar element this rule applies its disabled ranges to. */
539
647
  protected get target(): PacemCalendarBaseElement;
540
648
  private _disabledRanges;
541
649
  protected refreshDisabledRanges(): void;
542
650
  protected abstract computeDisabledRanges(): DateRange[];
543
651
  }
544
652
 
653
+ /** Base class for calendar-family elements that render their {@link PacemCalendarEventElement} items into a positioned grid (see {@link PacemCalendarElement}, {@link PacemAgendaElement}); subclasses supply the grid-building logic via `buildDataSource`. */
545
654
  declare abstract class PacemCalendarWithEventsBaseElement extends PacemCalendarBaseElement {
546
655
  private _datasource;
547
656
  private _handle;
657
+ /** @readonly Gets the computed, per-row (week or day) grid of positioned event items ready for rendering. */
548
658
  get datasource(): CalendarDataItem[][];
549
659
  private _getSortedItems;
550
660
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
551
661
  protected abstract buildDataSource(items: PacemCalendarEventElement[]): CalendarDataItem[][];
552
662
  }
553
663
 
664
+ /** Displays (and CSS-classes itself by) the current hour/minute; typically overlaid on a {@link PacemAgendaElement} to mark the current-time line. */
554
665
  declare class PacemClockElement extends Components_2.PacemElement {
666
+ /** Gets or sets the date/time the clock displays. */
555
667
  now: Date;
556
668
  }
557
669
 
670
+ /** Animates its content's height (or width, if `horizontal`) between 0 and its natural size, toggled via the `collapse` property. */
558
671
  declare class PacemCollapseElement extends PacemEventTarget {
559
672
  #private;
673
+ /** Gets or sets whether the content is collapsed (hidden, size 0) or expanded. */
560
674
  collapse: boolean;
675
+ /** Gets or sets whether the collapse animates along the horizontal (width) axis instead of the vertical (height) one. */
561
676
  horizontal: boolean;
562
677
  private _resizer;
563
678
  private _container;
@@ -567,29 +682,39 @@ declare class PacemCollapseElement extends PacemEventTarget {
567
682
  private _toggle;
568
683
  }
569
684
 
685
+ /** Base class for modal dialog elements (see {@link PacemDialogElement}): wraps a {@link Lightbox} with an open/commit lifecycle resolved through a promise. */
570
686
  declare abstract class PacemDialogBase extends Components_2.PacemElement {
571
687
  #private;
572
688
  /** Gets the current state/datacontext of the dialog.
573
689
  * It is automatically destroyed when the dialog closes.
574
690
  * (It has not to be set declaratively.) */
575
691
  state: any;
692
+ /** @readonly Gets the underlying {@link Lightbox} instance this dialog shows/hides itself through. */
576
693
  protected abstract get lightbox(): Lightbox;
694
+ /** Opens the dialog, optionally seeding its `state`. @returns A promise resolved with the {@link DialogResultEventArgs} once the dialog is committed. */
577
695
  open(state?: any): Promise<DialogResultEventArgs>;
696
+ /** Closes the dialog with the given button outcome, resolving the pending `open()` promise and dispatching a {@link DialogResultEvent}. */
578
697
  protected commit(btn: DialogButton, evt: Event): void;
579
698
  }
580
699
 
700
+ /** Modal dialog built on top of a {@link PacemLightboxElement}, with a configurable Ok/Yes/No/Cancel button set (see {@link DialogButtons}). */
581
701
  declare class PacemDialogElement extends PacemDialogBase {
702
+ /** Gets or sets which button set is shown (Ok, OkCancel, YesNo, YesNoCancel). */
582
703
  buttons: DialogButtons;
704
+ /** Gets or sets the caption of the Ok button. */
583
705
  okCaption: string;
706
+ /** Gets or sets the caption of the Yes button. */
584
707
  yesCaption: string;
708
+ /** Gets or sets the caption of the No button. */
585
709
  noCaption: string;
710
+ /** Gets or sets the caption of the Cancel button. */
586
711
  cancelCaption: string;
587
712
  private _buttons;
588
713
  protected lightbox: PacemLightboxElement;
589
714
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
590
715
  open(state?: any): Promise<DialogResultEventArgs>;
591
716
  viewActivatedCallback(): void;
592
- /** Gets the 'ok', 'yes', 'no' and 'cancel' dialog buttons. */
717
+ /** @readonly Gets the 'ok', 'yes', 'no' and 'cancel' dialog buttons. */
593
718
  get dialogButtons(): {
594
719
  ok: Element;
595
720
  yes: Element;
@@ -598,32 +723,41 @@ declare class PacemDialogElement extends PacemDialogBase {
598
723
  };
599
724
  }
600
725
 
726
+ /** ARIA-`separator` element drawing a horizontal or vertical divider line, with optional `prepend`/`append` slotted content. */
601
727
  declare class PacemDividerElement extends Components_2.PacemElement {
602
728
  constructor();
729
+ /** Gets or sets the divider's orientation. Invalid/unset values fall back to `'horizontal'`. */
603
730
  orientation: 'vertical' | 'horizontal';
604
731
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
605
732
  viewActivatedCallback(): void;
606
733
  private _syncOrientation;
607
734
  }
608
735
 
736
+ /** Renders an icon from a wide range of notations (inline SVG, Font Awesome, Material Symbols/Icons, LineIcons, CoreUI, or a plain image URL), lazily importing the matching stylesheet/script on demand. */
609
737
  declare class PacemIconElement extends Components_2.PacemElement {
610
738
  constructor();
739
+ /** Gets or sets the icon notation to render (see class remarks for the supported formats). */
611
740
  icon: string;
612
741
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
613
742
  viewActivatedCallback(): void;
614
743
  private _setIcon;
615
744
  }
616
745
 
746
+ /** Renders an image as a CSS background (rather than an `<img>` src), enabling `cover`/`contain`/`auto` fitting and reporting its natural/decoded size. */
617
747
  declare class PacemImageElement extends Components_2.PacemElement {
618
748
  #private;
619
749
  constructor();
750
+ /** Gets or sets how the image is fit within its box (`cover`, `contain`, or `auto` for natural size). */
620
751
  adapt: 'cover' | 'contain' | 'auto';
752
+ /** Gets or sets the image URL to load and display. */
621
753
  src: string;
754
+ /** Gets or sets an explicit `width,height` size (e.g. `"20,20"`, `".5vh"`); falls back to the image's natural size when unset. */
622
755
  size: {
623
756
  width: string;
624
757
  height: string;
625
758
  weight?: number;
626
759
  };
760
+ /** @readonly Gets whether the image is currently being fetched/decoded. */
627
761
  loading: boolean;
628
762
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
629
763
  viewActivatedCallback(): void;
@@ -631,13 +765,17 @@ declare class PacemImageElement extends Components_2.PacemElement {
631
765
  private _setSource;
632
766
  }
633
767
 
768
+ /** Watches a scrollable `container` and dispatches a `fetchmore` event whenever the user scrolls within `threshold` pixels of the bottom. */
634
769
  declare class PacemInfiniteScrollerElement extends PacemEventTarget {
635
770
  constructor();
771
+ /** Gets or sets the scrollable element (or a selector for it) to watch; `'$document'` (the default) watches the whole page. */
636
772
  container: string | HTMLElement;
773
+ /** Gets or sets the distance from the bottom (in pixels) that triggers a `fetchmore` event. */
637
774
  threshold: number;
638
775
  viewActivatedCallback(): void;
639
776
  disconnectedCallback(): void;
640
777
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
778
+ /** Re-targets the watched scroll container/viewport/scroll-event-source. @param v An element, a CSS selector, or `'$document'` for the whole page. */
641
779
  setInfiniteScrollContainer(v?: string | HTMLElement): void;
642
780
  private _scrollDelegate;
643
781
  private _enabled;
@@ -653,12 +791,16 @@ declare class PacemInfiniteScrollerElement extends PacemEventTarget {
653
791
  private _computeHeight;
654
792
  }
655
793
 
794
+ /** Full-viewport overlay ("lightbox") element showing its slotted content above a backdrop, with an auto-injected close button and optional modal (non-dismissible) behavior. */
656
795
  declare class PacemLightboxElement extends Components_2.PacemElement implements Lightbox {
657
796
  #private;
658
797
  private _keyupHandler;
659
798
  private _wrapperMousedownHandler;
799
+ /** Gets or sets whether the lightbox is visible. */
660
800
  show: boolean;
801
+ /** Gets or sets whether the lightbox is modal: when `true`, ESC and clicking outside no longer dismiss it and the close button is hidden. */
661
802
  modal: boolean;
803
+ /** Gets or sets whether clicking outside the content closes the lightbox (ignored while `modal`). */
662
804
  behavior: LightboxBehavior;
663
805
  private _wrapperElement;
664
806
  private _container;
@@ -679,25 +821,33 @@ declare class PacemLightboxElement extends Components_2.PacemElement implements
679
821
  private _lookForAButton;
680
822
  }
681
823
 
824
+ /** Shows a spinner (plain CSS or the branded Pacem gear/SVG animation) while `active`, typically overlaid on content being loaded. */
682
825
  declare class PacemLoaderElement extends Components_2.PacemElement {
683
826
  private _spinner;
684
827
  private _container;
685
828
  private _svgSpinner;
829
+ /** Gets or sets whether the loader's spinner is shown. */
686
830
  active: boolean;
831
+ /** Gets or sets the spinner's visual style. */
687
832
  type: LoaderType;
688
833
  viewActivatedCallback(): void;
689
834
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
690
835
  }
691
836
 
837
+ /** Renders its `value` property, interpreted as Markdown, as this element's inner HTML. */
692
838
  declare class PacemMarkdownElement extends Components_2.PacemElement {
693
839
  private _md;
694
840
  constructor(_md?: MarkdownService);
841
+ /** Gets or sets the Markdown source to render. */
695
842
  value: string;
696
843
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
844
+ /** Tokenizes the given (or current `value`) Markdown source. */
697
845
  tokens(md?: string): any[];
846
+ /** Converts the given (or current `value`) Markdown source to an HTML string. */
698
847
  html(md?: string): string;
699
848
  }
700
849
 
850
+ /** Continuously scrolls its content horizontally in a loop, like a classic marquee. */
701
851
  declare class PacemMarqueeElement extends Components_2.PacemElement {
702
852
  connectedCallback(): void;
703
853
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
@@ -715,8 +865,10 @@ declare class PacemMarqueeElement extends Components_2.PacemElement {
715
865
  private _adjust;
716
866
  }
717
867
 
868
+ /** Evaluates a CSS media query and reflects its match state, dispatching `change`/`match`/`unmatch` events as it changes. */
718
869
  declare class PacemMediaQueryElement extends PacemEventTarget {
719
870
  #private;
871
+ /** Gets or sets the CSS media query to evaluate. */
720
872
  query: string;
721
873
  /** @readonly */
722
874
  isMatch: boolean;
@@ -728,6 +880,7 @@ declare class PacemMediaQueryElement extends PacemEventTarget {
728
880
  private _init;
729
881
  }
730
882
 
883
+ /** Animated cursor/indicator that tracks the anchor matching the current path within an ancestor `PacemMenuElement`. */
731
884
  declare class PacemMenuCursorElement extends Components_2.PacemElement {
732
885
  private _menu;
733
886
  viewActivatedCallback(): void;
@@ -736,11 +889,17 @@ declare class PacemMenuCursorElement extends Components_2.PacemElement {
736
889
  private _onPathChange;
737
890
  }
738
891
 
892
+ /** Collapsible off-canvas/hamburger navigation menu, optionally synchronized with the enclosing shell's CSS classes. */
739
893
  declare class PacemMenuElement extends Components_2.PacemElement {
894
+ /** Gets or sets whether the menu is open. */
740
895
  open: boolean;
896
+ /** Gets or sets whether the hamburger (open) toggle button is hidden. */
741
897
  hideHamburgerButton: boolean;
898
+ /** Gets or sets whether the back (close) toggle button is hidden. */
742
899
  hideBackButton: boolean;
900
+ /** Gets or sets whether the menu renders outset, overlapping the surrounding content, rather than inline. */
743
901
  outset: boolean;
902
+ /** Gets or sets whether the open/close and outset state toggle CSS classes on the ancestor shell. */
744
903
  synchronizeShell: boolean;
745
904
  private _container;
746
905
  private _base;
@@ -754,51 +913,69 @@ declare class PacemMenuElement extends Components_2.PacemElement {
754
913
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
755
914
  }
756
915
 
916
+ /** Renders pagination buttons (first/previous/numbers/next/last, or a numeric-only strip) for a paged collection. */
757
917
  declare class PacemPagerElement extends Components_2.PacemElement {
758
918
  private _repeater;
919
+ /** Gets or sets the zero-based index of the first item of the current page. */
759
920
  index: number;
921
+ /** Gets or sets the total number of items to paginate. */
760
922
  total: number;
923
+ /** Gets or sets the number of page buttons to display at once. */
761
924
  pages: number;
925
+ /** Gets or sets the number of items per page. */
762
926
  size: number;
927
+ /** Gets or sets the rendering mode: `standard` (first/previous/numbers/next/last) or `numeric-only`. */
763
928
  mode: 'standard' | 'numeric-only';
764
929
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
765
930
  private _databind;
766
931
  }
767
932
 
933
+ /** Responsive `<picture>` wrapper that builds its `<source>` elements from child `PacemPictureSourceElement` items. */
768
934
  declare class PacemPictureElement extends Components_2.PacemItemsContainerElement<PacemPictureSourceElement> {
769
935
  constructor();
770
936
  validate(item: any): boolean;
771
937
  private _picture;
772
938
  private _img;
939
+ /** Gets or sets the fallback image URL, rendered on the inner `<img>`'s `src` attribute. */
773
940
  src: string;
941
+ /** @readonly Gets the URL currently selected by the browser among the declared sources. */
774
942
  currentSrc: string;
775
943
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
776
944
  viewActivatedCallback(): void;
777
945
  disconnectedCallback(): void;
778
946
  private _updateCurrentSrcHandler;
947
+ /** Rebuilds the `<source>` elements from the current child `PacemPictureSourceElement` items. */
779
948
  refreshSources(): void;
780
949
  private _setSources;
781
950
  private _setSource;
782
951
  private _setAltText;
783
952
  }
784
953
 
954
+ /** Declares a single `<source>` candidate (srcset/media/type) for an ancestor `PacemPictureElement`. */
785
955
  declare class PacemPictureSourceElement extends Components_2.PacemItemElement {
956
+ /** Gets or sets the candidate image URL(s), reflected onto the generated `<source>`'s `srcset` attribute. */
786
957
  srcset: string;
958
+ /** Gets or sets the media condition, reflected onto the generated `<source>`'s `media` attribute. */
787
959
  media: string;
960
+ /** Gets or sets the MIME type, reflected onto the generated `<source>`'s `type` attribute. */
788
961
  type: string;
789
962
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
790
963
  }
791
964
 
965
+ /** Horizontal progress bar with an optional textual caption. */
792
966
  declare class PacemProgressbarElement extends Components_2.PacemElement {
793
967
  constructor();
794
968
  private _bar;
795
969
  private _glow;
796
970
  private _caption;
971
+ /** Gets or sets the caption text; when empty, defaults to the current percentage value. */
797
972
  caption: string;
973
+ /** Gets or sets the completion percentage (0-100). */
798
974
  percentage: number;
799
975
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
800
976
  }
801
977
 
978
+ /** Combines a {@link PacemCalendarElement} (month view) and a {@link PacemAgendaElement} (day/week view) into a single scheduler, switching between them based on `zoom`. */
802
979
  declare class PacemScheduleElement extends PacemCalendarBaseElement {
803
980
  private _calendar;
804
981
  private _agenda;
@@ -806,9 +983,12 @@ declare class PacemScheduleElement extends PacemCalendarBaseElement {
806
983
  disconnectedCallback(): void;
807
984
  }
808
985
 
986
+ /** Collapsible off-canvas drawer/sidebar, optionally synchronized with the enclosing shell's CSS classes. */
809
987
  declare class PacemSidebarElement extends Components_2.PacemElement {
810
988
  #private;
989
+ /** Gets or sets whether the sidebar is open. */
811
990
  open: boolean;
991
+ /** Gets or sets whether the open/close state toggles CSS classes on the ancestor shell. */
812
992
  synchronizeShell: boolean;
813
993
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
814
994
  disconnectedCallback(): void;
@@ -816,18 +996,25 @@ declare class PacemSidebarElement extends Components_2.PacemElement {
816
996
  connectedCallback(): void;
817
997
  }
818
998
 
999
+ /** Single slide item hosted within a `PacemSlideshowElement`. */
819
1000
  declare class PacemSlideElement extends Components_2.PacemIterableElement {
820
1001
  }
821
1002
 
1003
+ /** Iterates over `PacemSlideElement` children, exposing them as a navigable slideshow. */
822
1004
  declare class PacemSlideshowElement extends Components_2.PacemIterativeElement<PacemSlideElement> {
823
1005
  validate(item: any): item is PacemSlideElement;
824
1006
  }
825
1007
 
1008
+ /** Header that reacts to page scroll, either staying pinned to the top of the shell or hiding/showing on scroll direction. */
826
1009
  declare class PacemStickyHeaderElement extends PacemEventTarget {
827
1010
  #private;
1011
+ /** Gets or sets the scroll offset, in pixels, beyond which the sticky behavior activates. */
828
1012
  threshold: number;
1013
+ /** @readonly Gets the current scroll offset tracked by this element. */
829
1014
  offset: Components_2.ScrollEventArgs;
1015
+ /** @readonly Gets whether the header is currently visible (relevant when `visibility` is `quickreturn`). */
830
1016
  visible: boolean;
1017
+ /** Gets or sets the sticky behavior: `persistent` (stays pinned) or `quickreturn` (hides/shows with scroll direction). */
831
1018
  visibility: StickyHeaderVisibility;
832
1019
  private _scrollHandler;
833
1020
  private _ensureScrollAwareElement;
@@ -837,6 +1024,7 @@ declare class PacemStickyHeaderElement extends PacemEventTarget {
837
1024
  disconnectedCallback(): void;
838
1025
  }
839
1026
 
1027
+ /** Single tab item, pairing a `label` with its content, hosted within a `PacemTabsElement`. */
840
1028
  declare class PacemTabElement extends Components_2.PacemIterableElement {
841
1029
  #private;
842
1030
  constructor();
@@ -844,17 +1032,22 @@ declare class PacemTabElement extends Components_2.PacemIterableElement {
844
1032
  viewActivatedCallback(): void;
845
1033
  disconnectedCallback(): void;
846
1034
  private _slotChangeHandler;
1035
+ /** @readonly Gets the nodes assigned to the `label` slot. */
847
1036
  get content(): NodeList;
1037
+ /** Gets or sets the tab's label, either as plain text/HTML or a DOM node (also settable via a `slot="label"` child). */
848
1038
  label: string | Node;
1039
+ /** Gets or sets the tab's key, used as a CSS class hook when no explicit label content is provided. */
849
1040
  key: string;
850
1041
  }
851
1042
 
1043
+ /** Iterates over `PacemTabElement` children, rendering a tab strip (via an adapter) and animating the transition between the active tab's content. */
852
1044
  declare class PacemTabsElement extends Components_2.PacemIterativeElement<PacemTabElement> {
853
1045
  private _tweener;
854
1046
  constructor(_tweener?: Animations.TweenService);
855
1047
  private _defaultTabAdapter;
856
1048
  private _tabs;
857
1049
  private _container;
1050
+ /** @readonly Gets whether the default (built-in) tab adapter is currently in use. */
858
1051
  private _isUsingDefaultTabAdapter;
859
1052
  /** Gets or sets the orientation of the default tabs adapter. */
860
1053
  orientation: AdapterOrientation;
@@ -866,6 +1059,7 @@ declare class PacemTabsElement extends Components_2.PacemIterativeElement<PacemT
866
1059
  validate(item: any): item is PacemTabElement;
867
1060
  }
868
1061
 
1062
+ /** Displays scrolling/ticking content, animating the swap whenever its `content` changes. */
869
1063
  declare class PacemTickerElement extends Components_2.PacemSafeContentElement {
870
1064
  #private;
871
1065
  private _slot;
@@ -879,9 +1073,13 @@ declare class PacemTickerElement extends Components_2.PacemSafeContentElement {
879
1073
  disconnectedCallback(): void;
880
1074
  }
881
1075
 
1076
+ /** Dismissible toast/snackbar notification, with optional autohide. */
882
1077
  declare class PacemToastElement extends Components_2.PacemElement {
1078
+ /** Gets or sets whether the toast automatically hides itself after `timeout` milliseconds. */
883
1079
  autohide: boolean;
1080
+ /** Gets or sets the autohide delay, in milliseconds. */
884
1081
  timeout: number;
1082
+ /** Gets or sets whether the toast is currently shown. */
885
1083
  show: boolean;
886
1084
  connectedCallback(): void;
887
1085
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
@@ -889,6 +1087,7 @@ declare class PacemToastElement extends Components_2.PacemElement {
889
1087
  private _handle;
890
1088
  private _doHide;
891
1089
  private _show;
1090
+ /** Shows the toast, (re)starting the autohide timer if applicable. */
892
1091
  popup(): void;
893
1092
  /**
894
1093
  * Opinionated shortcut/utility for toast spinning.
@@ -902,6 +1101,13 @@ declare class PacemToastElement extends Components_2.PacemElement {
902
1101
  timeout?: number;
903
1102
  cssClass?: string | string[];
904
1103
  }): Promise<void>;
1104
+ /**
1105
+ * Like `toast`, but renders the message inside a filled/bordered container for extra emphasis.
1106
+ * @param toaster Toast container
1107
+ * @param level Message criticity level
1108
+ * @param message The message
1109
+ * @param options Further options object
1110
+ */
905
1111
  static toast2(toaster: HTMLElement, level: 'info' | 'success' | 'warning' | 'danger' | 'error', message: string | HTMLElement, options?: {
906
1112
  autohide?: boolean;
907
1113
  timeout?: number;
@@ -909,12 +1115,17 @@ declare class PacemToastElement extends Components_2.PacemElement {
909
1115
  }): Promise<void>;
910
1116
  }
911
1117
 
1118
+ /** Table-of-contents that lists the headings/elements matched by `selector`, highlighting and scrolling to the currently focused one. */
912
1119
  declare class PacemTocElement extends Components_2.PacemElement {
913
1120
  private _tweener;
914
1121
  constructor(_tweener?: Animations.TweenService);
1122
+ /** Gets or sets the CSS selector used to collect the headings/items to list. */
915
1123
  selector: string;
1124
+ /** Gets or sets the vertical offset, in pixels (e.g. to account for a fixed header), applied when scrolling to an item. */
916
1125
  offset: number;
1126
+ /** Gets or sets the container element to search within (defaults to `document.body`) and observe for changes. */
917
1127
  target: HTMLElement;
1128
+ /** Gets or sets the `PacemRouterElement` used to navigate, if any, when clicking on an item. */
918
1129
  router: Components_2.PacemRouterElement;
919
1130
  /** @readonly */
920
1131
  hasContent: boolean;
@@ -937,6 +1148,7 @@ declare class PacemTocElement extends Components_2.PacemElement {
937
1148
  refresh(): void;
938
1149
  }
939
1150
 
1151
+ /** Circular dial/knob control for picking a numeric value between `min` and `max` by rotating a handle. */
940
1152
  declare class PacemTunerElement extends Components_2.PacemElement {
941
1153
  #private;
942
1154
  constructor();
@@ -948,10 +1160,15 @@ declare class PacemTunerElement extends Components_2.PacemElement {
948
1160
  viewActivatedCallback(): void;
949
1161
  disconnectedCallback(): void;
950
1162
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
1163
+ /** Gets or sets the current value. */
951
1164
  value: number;
1165
+ /** Gets or sets the minimum selectable value. */
952
1166
  min: number;
1167
+ /** Gets or sets the maximum selectable value. */
953
1168
  max: number;
1169
+ /** Gets or sets whether the dial can be rotated by the user. */
954
1170
  interactive: boolean;
1171
+ /** Gets or sets the number of decimal digits the value is rounded to. */
955
1172
  round: number;
956
1173
  private _toggleRotate;
957
1174
  private _angleToValue;
@@ -969,7 +1186,9 @@ declare class PacemTunerElement extends Components_2.PacemElement {
969
1186
  private _draw;
970
1187
  }
971
1188
 
1189
+ /** Embeds a tweet, given its id, via Twitter's `widgets.js`. */
972
1190
  declare class PacemTweetEmbedElement extends Components_2.PacemElement {
1191
+ /** Gets or sets the id of the tweet to embed. */
973
1192
  tweetid: string;
974
1193
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
975
1194
  private _scriptsLoaded;
@@ -977,17 +1196,26 @@ declare class PacemTweetEmbedElement extends Components_2.PacemElement {
977
1196
  private _render;
978
1197
  }
979
1198
 
1199
+ /** Triggers the device's vibration hardware (via the Vibration API) with a configurable pattern. */
980
1200
  declare class PacemVibrateElement extends PacemEventTarget {
1201
+ /** Gets or sets the vibration pattern: alternating vibration/pause durations, in milliseconds. */
981
1202
  pattern: number[];
1203
+ /** Triggers a vibration using the current `pattern`, if supported by the browser and not disabled. */
982
1204
  vibrate(): void;
983
1205
  }
984
1206
 
1207
+ /** Fetches and renders remote HTML (or a local `<template>`'s content) as its own inner content, dispatching `prerender`/`render` lifecycle events. */
985
1208
  declare class PacemViewElement extends PacemEventTarget {
986
1209
  #private;
1210
+ /** Gets or sets the content source: a URL to fetch, a CSS selector pointing to a `<template>`, or the template element itself. */
987
1211
  url: string | HTMLTemplateElement | Components_2.PacemTemplateProxyElement;
1212
+ /** @readonly Gets whether a remote fetch is currently in progress. */
988
1213
  fetching: boolean;
1214
+ /** @readonly Gets the current fetch progress, from 0 to 1 (`NaN` when unknown or not applicable). */
989
1215
  progress: number;
1216
+ /** Gets or sets whether non-OK HTTP responses should still be rendered instead of being ignored. */
990
1217
  renderErrors: boolean;
1218
+ /** Gets or sets whether 301/302 responses should be followed automatically. */
991
1219
  followRedirects: boolean;
992
1220
  /** use it to ensure animation */
993
1221
  debounce: number;
@@ -1003,9 +1231,12 @@ declare class PacemViewElement extends PacemEventTarget {
1003
1231
  private _setTmpl;
1004
1232
  private _manageUrl;
1005
1233
  private _manageResult;
1234
+ private _debounceDispatchHandler;
1006
1235
  private _dispatchRender;
1236
+ private _dispatchPrerender;
1007
1237
  }
1008
1238
 
1239
+ /** Container that arranges `PacemWindowElement` children as draggable/resizable floating windows, or docks them one at a time via an adapter. */
1009
1240
  declare class PacemWindowAreaElement extends Components_2.PacemIterativeElement<PacemWindowElement> {
1010
1241
  validate(item: PacemWindowElement): boolean;
1011
1242
  private _behaviors;
@@ -1020,27 +1251,37 @@ declare class PacemWindowAreaElement extends Components_2.PacemIterativeElement<
1020
1251
  viewActivatedCallback(): void;
1021
1252
  disconnectedCallback(): void;
1022
1253
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
1254
+ /** Registers a window item, wiring drag/resize behaviors and focus tracking; returns whether it was newly added. */
1023
1255
  register(item: PacemWindowElement): boolean;
1256
+ /** Unregisters a window item, tearing down its drag/resize behaviors; returns whether it was found and removed. */
1024
1257
  unregister(item: PacemWindowElement): boolean;
1025
1258
  private _itemPropertyChangeHandler;
1026
1259
  private _adapterPagerCallback;
1027
1260
  private _syncVisibility;
1028
1261
  }
1029
1262
 
1263
+ /** Single draggable, resizable, and dockable window pane hosted within a `PacemWindowAreaElement`. */
1030
1264
  declare class PacemWindowElement extends Components_2.PacemIterableElement {
1265
+ /** Gets or sets the window's title bar caption. */
1031
1266
  caption: string;
1267
+ /** Gets or sets whether the window is minimized. */
1032
1268
  minimized: boolean;
1269
+ /** Gets or sets whether the window floats freely (draggable/resizable) rather than being docked. */
1033
1270
  floating: boolean;
1034
1271
  propertyChangedCallback(name: string, old: any, val: any, first?: boolean): void;
1035
1272
  viewActivatedCallback(): void;
1036
1273
  private _syncLayout;
1037
1274
  }
1038
1275
 
1276
+ /** Determines how a `PacemStickyHeaderElement` behaves once the scroll offset passes its `threshold`. */
1039
1277
  declare enum StickyHeaderVisibility {
1278
+ /** Stays pinned/visible once past the threshold. */
1040
1279
  Persistent = "persistent",
1280
+ /** Hides while scrolling down and reappears while scrolling up. */
1041
1281
  QuickReturn = "quickreturn"
1042
1282
  }
1043
1283
 
1284
+ /** Event dispatched (and bubbling) when a time slot is selected on a {@link PacemAgendaElement}, carrying the selected date/time. */
1044
1285
  declare class TimeSelectEvent extends CustomTypedEvent<Date> {
1045
1286
  constructor(date: Date);
1046
1287
  }
@@ -1150,6 +1391,7 @@ export declare namespace UI {
1150
1391
  }
1151
1392
  }
1152
1393
 
1394
+ /** Event dispatched by a {@link PacemCalendarBaseElement} whenever its `viewDate` changes, carrying the new date. */
1153
1395
  declare class ViewDateChangeEvent extends CustomTypedEvent<Date> {
1154
1396
  constructor(date: Date);
1155
1397
  }