gd-bs 6.2.7 → 6.2.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.
package/index.html CHANGED
@@ -206,7 +206,7 @@
206
206
  text: "Popover Demo",
207
207
  id: "popover-demo"
208
208
  });
209
- GD.Components.Popover({
209
+ window["popover1"] = GD.Components.Popover({
210
210
  target: btnPopover.el,
211
211
  title: "My Popover",
212
212
  placement: 10,
@@ -215,7 +215,7 @@
215
215
  trigger: "click"
216
216
  }
217
217
  });
218
- GD.Components.Popover({
218
+ window["popover2"] = GD.Components.Popover({
219
219
  el: document.querySelector("#popover1"),
220
220
  btnProps: {
221
221
  id: "popover-demo2",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gd-bs",
3
- "version": "6.2.7",
3
+ "version": "6.2.9",
4
4
  "description": "Bootstrap JavaScript, TypeScript and Web Components library.",
5
5
  "main": "build/index.js",
6
6
  "typings": "src/index.d.ts",
@@ -221,6 +221,7 @@ class _Popover extends Base<IPopoverProps> implements IPopover {
221
221
 
222
222
  // Create the popover content element
223
223
  this._elContent = document.createElement("div") as HTMLDivElement;
224
+ this._elContent.classList.add("popover");
224
225
  this._elContent.classList.add("popover-content");
225
226
  this._elContent.innerHTML = '<div class="popover-header"></div><div class="popover-body"></div>';
226
227
  appendContent(this._elContent.querySelector(".popover-header"), this.props.title);
@@ -286,12 +287,36 @@ class _Popover extends Base<IPopoverProps> implements IPopover {
286
287
  // The tippy instance
287
288
  get tippy() { return this._tippy; }
288
289
 
290
+ // Sets the popover body element
291
+ setBody(content: string | Element) {
292
+ let elBody: HTMLElement = this.tippy.popper.querySelector(".popover-body");
293
+ if (elBody) {
294
+ // Clear the content
295
+ while (elBody.firstChild) { elBody.removeChild(elBody.firstChild); }
296
+
297
+ // Update the content
298
+ appendContent(elBody, content);
299
+ }
300
+ }
301
+
289
302
  // Sets the tippy content
290
303
  setContent(content: string | Element) {
291
304
  // Set the tippy content
292
305
  this.tippy.setContent(content);
293
306
  }
294
307
 
308
+ // Sets the popover header element
309
+ setHeader(content: string | Element) {
310
+ let elHeader: HTMLElement = this.tippy.popper.querySelector(".popover-header");
311
+ if (elHeader) {
312
+ // Clear the content
313
+ while (elHeader.firstChild) { elHeader.removeChild(elHeader.firstChild); }
314
+
315
+ // Update the content
316
+ appendContent(elHeader, content);
317
+ }
318
+ }
319
+
295
320
  // Shows the popover
296
321
  show() {
297
322
  // See if it's hidden
@@ -84,9 +84,15 @@ export interface IPopover {
84
84
  /** Toggles an element's popover. */
85
85
  toggle: () => void;
86
86
 
87
+ /** Sets the body element of the popover. */
88
+ setBody: (content: string | Element) => void;
89
+
87
90
  /** Sets the tippy content. */
88
91
  setContent: (content: string | Element) => void;
89
92
 
93
+ /** Sets the header element of the popover. */
94
+ setHeader: (content: string | Element) => void;
95
+
90
96
  /** Reveals an element’s popover. */
91
97
  show: () => void;
92
98
  }
@@ -35,8 +35,8 @@
35
35
  @import "~bootstrap/scss/modal";
36
36
  /* We are using tippyjs styling
37
37
  @import "~bootstrap/scss/tooltip";
38
- @import "~bootstrap/scss/popover";
39
38
  */
39
+ @import "~bootstrap/scss/popover";
40
40
  @import "~bootstrap/scss/carousel";
41
41
  @import "~bootstrap/scss/spinners";
42
42
  @import "~bootstrap/scss/offcanvas";