taon-ui 21.0.57 → 21.0.59

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 (93) hide show
  1. package/VERIFIED-BUILD-DATA.jsonc +2 -2
  2. package/bin/start.js +1 -1
  3. package/browser/fesm2022/taon-ui-browser.mjs +23 -9
  4. package/browser/fesm2022/taon-ui-browser.mjs.map +1 -1
  5. package/browser/package.json +1 -1
  6. package/browser/types/taon-ui-browser.d.ts +5 -1
  7. package/browser-prod/fesm2022/taon-ui-browser-prod.mjs +23 -9
  8. package/browser-prod/fesm2022/taon-ui-browser-prod.mjs.map +1 -1
  9. package/browser-prod/package.json +1 -1
  10. package/browser-prod/types/taon-ui-browser-prod.d.ts +6 -2
  11. package/html/lib/ui/taon-lang-selector/taon-lang-selector.component.html +14 -16
  12. package/lib/build-info._auto-generated_.d.ts +1 -1
  13. package/lib/build-info._auto-generated_.js +1 -1
  14. package/lib/layouts/taon-bootstrap-navbar/index.js +2 -2
  15. package/lib/package.json +1 -1
  16. package/lib/ui/anonymize-text/index.js +2 -2
  17. package/lib/ui/directives/index.js +2 -2
  18. package/lib/ui/index.js +2 -2
  19. package/lib/ui/taon-github-fork-me-corner/index.js +2 -2
  20. package/lib/ui/taon-github-fork-me-ribbon/index.js +2 -2
  21. package/lib/ui/taon-iframe-sync/index.js +2 -2
  22. package/lib/ui/taon-lang-selector/index.js +2 -2
  23. package/lib/ui/taon-lang-selector/taon-lang-selector.component.d.ts +5 -0
  24. package/lib/ui/taon-progress-bar/index.js +2 -2
  25. package/lib/ui/taon-session-passcode/index.js +2 -2
  26. package/lib/ui/taon-settings/index.js +2 -2
  27. package/lib/ui/taon-table/index.js +2 -2
  28. package/lib-esm/app.electron.d.ts +1 -1
  29. package/lib-esm/app.electron.js +1 -1
  30. package/lib-esm/app.hosts.d.ts +2 -2
  31. package/lib-esm/app.hosts.js +4 -4
  32. package/lib-esm/lib/build-info._auto-generated_.d.ts +1 -1
  33. package/lib-esm/lib/build-info._auto-generated_.js +1 -1
  34. package/lib-esm/lib/layouts/taon-bootstrap-navbar/index.d.ts +1 -1
  35. package/lib-esm/lib/layouts/taon-bootstrap-navbar/index.js +1 -1
  36. package/lib-esm/lib/ui/anonymize-text/index.d.ts +1 -1
  37. package/lib-esm/lib/ui/anonymize-text/index.js +1 -1
  38. package/lib-esm/lib/ui/directives/index.d.ts +1 -1
  39. package/lib-esm/lib/ui/directives/index.js +1 -1
  40. package/lib-esm/lib/ui/index.d.ts +1 -1
  41. package/lib-esm/lib/ui/index.js +1 -1
  42. package/lib-esm/lib/ui/taon-github-fork-me-corner/index.d.ts +1 -1
  43. package/lib-esm/lib/ui/taon-github-fork-me-corner/index.js +1 -1
  44. package/lib-esm/lib/ui/taon-github-fork-me-ribbon/index.d.ts +1 -1
  45. package/lib-esm/lib/ui/taon-github-fork-me-ribbon/index.js +1 -1
  46. package/lib-esm/lib/ui/taon-iframe-sync/index.d.ts +1 -1
  47. package/lib-esm/lib/ui/taon-iframe-sync/index.js +1 -1
  48. package/lib-esm/lib/ui/taon-lang-selector/index.d.ts +1 -1
  49. package/lib-esm/lib/ui/taon-lang-selector/index.js +1 -1
  50. package/lib-esm/lib/ui/taon-progress-bar/index.d.ts +1 -1
  51. package/lib-esm/lib/ui/taon-progress-bar/index.js +1 -1
  52. package/lib-esm/lib/ui/taon-session-passcode/index.d.ts +1 -1
  53. package/lib-esm/lib/ui/taon-session-passcode/index.js +1 -1
  54. package/lib-esm/lib/ui/taon-settings/index.d.ts +1 -1
  55. package/lib-esm/lib/ui/taon-settings/index.js +1 -1
  56. package/lib-esm/lib/ui/taon-table/index.d.ts +1 -1
  57. package/lib-esm/lib/ui/taon-table/index.js +1 -1
  58. package/lib-prod/build-info._auto-generated_.d.ts +1 -1
  59. package/lib-prod/build-info._auto-generated_.js +1 -1
  60. package/lib-prod/layouts/taon-bootstrap-navbar/index.d.ts +1 -1
  61. package/lib-prod/layouts/taon-bootstrap-navbar/index.js +1 -1
  62. package/lib-prod/package.json +1 -1
  63. package/lib-prod/ui/anonymize-text/index.d.ts +1 -1
  64. package/lib-prod/ui/anonymize-text/index.js +1 -1
  65. package/lib-prod/ui/directives/index.d.ts +1 -1
  66. package/lib-prod/ui/directives/index.js +1 -1
  67. package/lib-prod/ui/index.d.ts +1 -1
  68. package/lib-prod/ui/index.js +1 -1
  69. package/lib-prod/ui/taon-github-fork-me-corner/index.d.ts +1 -1
  70. package/lib-prod/ui/taon-github-fork-me-corner/index.js +1 -1
  71. package/lib-prod/ui/taon-github-fork-me-ribbon/index.d.ts +1 -1
  72. package/lib-prod/ui/taon-github-fork-me-ribbon/index.js +1 -1
  73. package/lib-prod/ui/taon-iframe-sync/index.d.ts +1 -1
  74. package/lib-prod/ui/taon-iframe-sync/index.js +1 -1
  75. package/lib-prod/ui/taon-lang-selector/index.d.ts +1 -1
  76. package/lib-prod/ui/taon-lang-selector/index.js +1 -1
  77. package/lib-prod/ui/taon-progress-bar/index.d.ts +1 -1
  78. package/lib-prod/ui/taon-progress-bar/index.js +1 -1
  79. package/lib-prod/ui/taon-session-passcode/index.d.ts +1 -1
  80. package/lib-prod/ui/taon-session-passcode/index.js +1 -1
  81. package/lib-prod/ui/taon-settings/index.d.ts +1 -1
  82. package/lib-prod/ui/taon-settings/index.js +1 -1
  83. package/lib-prod/ui/taon-table/index.d.ts +1 -1
  84. package/lib-prod/ui/taon-table/index.js +1 -1
  85. package/package.json +1 -1
  86. package/websql/fesm2022/taon-ui-websql.mjs +23 -9
  87. package/websql/fesm2022/taon-ui-websql.mjs.map +1 -1
  88. package/websql/package.json +1 -1
  89. package/websql/types/taon-ui-websql.d.ts +5 -1
  90. package/websql-prod/fesm2022/taon-ui-websql-prod.mjs +23 -9
  91. package/websql-prod/fesm2022/taon-ui-websql-prod.mjs.map +1 -1
  92. package/websql-prod/package.json +1 -1
  93. package/websql-prod/types/taon-ui-websql-prod.d.ts +6 -2
@@ -1,5 +1,5 @@
1
1
  {
2
- "commitHash": "9a2b0eb5897e68b9e9b4425675c6b146e80a1879",
2
+ "commitHash": "dde42ffeba6b27baa6dd9c587e000b6b5f4330cb",
3
3
  "commitName": "chore: update",
4
- "commitDate": "11-07-2026 01:04:09"
4
+ "commitDate": "21-07-2026 20:53:24"
5
5
  }
package/bin/start.js CHANGED
@@ -1,4 +1,4 @@
1
- global.frameworkName = 'taon-ui';
1
+ global.frameworkName = 'taon-ui';
2
2
  Error.stackTraceLimit = 100;
3
3
  global.i0 = {
4
4
  defineInjectable: function () { }
@@ -110,7 +110,7 @@ const CURRENT_PACKAGE_TAON_VERSION = 'v21';
110
110
  /**
111
111
  * Autogenerated by current cli tool. Use *tnp release* to bump version.
112
112
  */
113
- const CURRENT_PACKAGE_VERSION = '21.0.57';
113
+ const CURRENT_PACKAGE_VERSION = '21.0.59';
114
114
  // THIS FILE IS GENERATED - DO NOT MODIFY
115
115
 
116
116
  function myOrgProj() { }
@@ -1700,11 +1700,11 @@ class TaonKvAuthorizationComponent {
1700
1700
  return this.authorizedProductsData().filter(p => p.authorized).length;
1701
1701
  }
1702
1702
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonKvAuthorizationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1703
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: TaonKvAuthorizationComponent, isStandalone: true, selector: "taon-kv-authorization", inputs: { email: "email", url: "url", products: "products" }, outputs: { authorizedProducts: "authorizedProducts" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"taon-kv-authorization\">\n <div *ngIf=\"loading()\">{{ infoMsg() }}</div>\n\n <div *ngIf=\"!loading()\">\n <div\n *ngIf=\"authorizedCount() === 0\"\n translate [translate-t]=\"t\" [translate-t]=\"t\">\n You did not purchase any products\n </div>\n\n <div *ngIf=\"authorizedCount() > 0\">\n <span translate [translate-t]=\"t\">You purchased </span> {{ authorizedCount() }}\n <span translate [translate-t]=\"t\">products</span>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TranslateDirective, selector: "[translate]", inputs: ["translate-t", "translate-params", "translate-context"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1703
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: TaonKvAuthorizationComponent, isStandalone: true, selector: "taon-kv-authorization", inputs: { email: "email", url: "url", products: "products" }, outputs: { authorizedProducts: "authorizedProducts" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"taon-kv-authorization\">\n <div *ngIf=\"loading()\">{{ infoMsg() }}</div>\n\n <div *ngIf=\"!loading()\">\n <div\n *ngIf=\"authorizedCount() === 0\"\n translate [translate-t]=\"t\" [translate-t]=\"t\">\n You did not purchase any products\n </div>\n\n <div *ngIf=\"authorizedCount() > 0\">\n <span translate [translate-t]=\"t\">You purchased </span> {{ authorizedCount() }}\n <span translate [translate-t]=\"t\">products</span>\n </div>\n </div>\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TranslateDirective, selector: "[translate]", inputs: ["translate-t", "translate-params", "translate-context"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1704
1704
  }
1705
1705
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonKvAuthorizationComponent, decorators: [{
1706
1706
  type: Component,
1707
- args: [{ selector: 'taon-kv-authorization', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, TranslateDirective], template: "<div class=\"taon-kv-authorization\">\n <div *ngIf=\"loading()\">{{ infoMsg() }}</div>\n\n <div *ngIf=\"!loading()\">\n <div\n *ngIf=\"authorizedCount() === 0\"\n translate [translate-t]=\"t\" [translate-t]=\"t\">\n You did not purchase any products\n </div>\n\n <div *ngIf=\"authorizedCount() > 0\">\n <span translate [translate-t]=\"t\">You purchased </span> {{ authorizedCount() }}\n <span translate [translate-t]=\"t\">products</span>\n </div>\n </div>\n</div>\n" }]
1707
+ args: [{ selector: 'taon-kv-authorization', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, TranslateDirective], template: "<div class=\"taon-kv-authorization\">\n <div *ngIf=\"loading()\">{{ infoMsg() }}</div>\n\n <div *ngIf=\"!loading()\">\n <div\n *ngIf=\"authorizedCount() === 0\"\n translate [translate-t]=\"t\" [translate-t]=\"t\">\n You did not purchase any products\n </div>\n\n <div *ngIf=\"authorizedCount() > 0\">\n <span translate [translate-t]=\"t\">You purchased </span> {{ authorizedCount() }}\n <span translate [translate-t]=\"t\">products</span>\n </div>\n </div>\n</div>" }]
1708
1708
  }], propDecorators: { email: [{
1709
1709
  type: Input,
1710
1710
  args: [{ required: true }]
@@ -1730,21 +1730,35 @@ class TaonLangSelectorComponent {
1730
1730
  // console.log({ availableLangs });
1731
1731
  // }),
1732
1732
  );
1733
+ this.currentLang = 'en-US';
1733
1734
  this.currentGlobalLanguage$ = this.translateService.manager.currentGlobalLanguage$.pipe(withLatestFrom(this.availableLangs$), map(([currentGlobalLanguage, availableLangs]) => {
1734
1735
  return availableLangs.find(c => c.code === currentGlobalLanguage)?.code;
1736
+ }), tap(currentGlobalLanguage => {
1737
+ this.currentLang = currentGlobalLanguage;
1735
1738
  }));
1736
1739
  this.isDisabled$ = this.availableLangs$.pipe(map(c => c.length <= 1));
1740
+ this.sub = new Subscription();
1741
+ }
1742
+ ngOnInit() {
1743
+ //Called after the constructor, initializing input properties, and the first call to ngOnChanges.
1744
+ //Add 'implements OnInit' to the class.
1745
+ this.sub.add(this.currentGlobalLanguage$.subscribe());
1746
+ }
1747
+ ngOnDestroy() {
1748
+ //Called once, before the instance is destroyed.
1749
+ //Add 'implements OnDestroy' to the class.
1750
+ this.sub.unsubscribe();
1737
1751
  }
1738
1752
  async changeLanguage(event) {
1739
1753
  const select = event.target;
1740
1754
  await this.translateService.changeGlobalLang(select.value);
1741
1755
  }
1742
1756
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonLangSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1743
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: TaonLangSelectorComponent, isStandalone: true, selector: "taon-lang-selector", ngImport: i0, template: "<label class=\"taon-lang-selector\">\n <span class=\"taon-lang-selector__label\">\n {{\n t.gettext('Select Language') +\n ' ' +\n ((isDisabled$ | async) ? t.gettext('(disabled)') : '')\n }}\n </span>\n\n @if (currentGlobalLanguage$ | async; as currentLang) {\n <!-- currentLang = {{ currentLang | json }} -->\n\n <select\n class=\"taon-lang-selector__select\"\n [value]=\"currentLang\"\n [disabled]=\"isDisabled$ | async\"\n (change)=\"changeLanguage($event)\">\n @for (lang of availableLangs$ | async; track lang.code) {\n <option\n [value]=\"lang.code\"\n [selected]=\"lang.code === currentLang\">\n {{ lang.label }}\n </option>\n }\n </select>\n }\n</label>", styles: [":host{display:block}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1757
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: TaonLangSelectorComponent, isStandalone: true, selector: "taon-lang-selector", ngImport: i0, template: "<label class=\"taon-lang-selector\">\n <span class=\"taon-lang-selector__label\">\n {{\n t.gettext('Select Language') +\n ' ' +\n ((isDisabled$ | async) ? t.gettext('(disabled)') : '')\n }}\n </span>\n\n <!-- currentLang = {{ currentLang | json }} -->\n\n <select\n class=\"taon-lang-selector__select\"\n [value]=\"currentLang\"\n [disabled]=\"isDisabled$ | async\"\n (change)=\"changeLanguage($event)\">\n @for (lang of availableLangs$ | async; track lang.code) {\n <option\n [value]=\"lang.code\"\n [selected]=\"lang.code === currentLang\">\n {{ lang.label }}\n </option>\n }\n </select>\n</label>", styles: [":host{display:block}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1744
1758
  }
1745
1759
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonLangSelectorComponent, decorators: [{
1746
1760
  type: Component,
1747
- args: [{ selector: 'taon-lang-selector', changeDetection: ChangeDetectionStrategy.OnPush, imports: [AsyncPipe, TranslateDirective, JsonPipe], template: "<label class=\"taon-lang-selector\">\n <span class=\"taon-lang-selector__label\">\n {{\n t.gettext('Select Language') +\n ' ' +\n ((isDisabled$ | async) ? t.gettext('(disabled)') : '')\n }}\n </span>\n\n @if (currentGlobalLanguage$ | async; as currentLang) {\n <!-- currentLang = {{ currentLang | json }} -->\n\n <select\n class=\"taon-lang-selector__select\"\n [value]=\"currentLang\"\n [disabled]=\"isDisabled$ | async\"\n (change)=\"changeLanguage($event)\">\n @for (lang of availableLangs$ | async; track lang.code) {\n <option\n [value]=\"lang.code\"\n [selected]=\"lang.code === currentLang\">\n {{ lang.label }}\n </option>\n }\n </select>\n }\n</label>", styles: [":host{display:block}\n"] }]
1761
+ args: [{ selector: 'taon-lang-selector', changeDetection: ChangeDetectionStrategy.OnPush, imports: [AsyncPipe, TranslateDirective, JsonPipe], template: "<label class=\"taon-lang-selector\">\n <span class=\"taon-lang-selector__label\">\n {{\n t.gettext('Select Language') +\n ' ' +\n ((isDisabled$ | async) ? t.gettext('(disabled)') : '')\n }}\n </span>\n\n <!-- currentLang = {{ currentLang | json }} -->\n\n <select\n class=\"taon-lang-selector__select\"\n [value]=\"currentLang\"\n [disabled]=\"isDisabled$ | async\"\n (change)=\"changeLanguage($event)\">\n @for (lang of availableLangs$ | async; track lang.code) {\n <option\n [value]=\"lang.code\"\n [selected]=\"lang.code === currentLang\">\n {{ lang.label }}\n </option>\n }\n </select>\n</label>", styles: [":host{display:block}\n"] }]
1748
1762
  }], ctorParameters: () => [] });
1749
1763
 
1750
1764
  class TaonNotFoundComponent {
@@ -1788,11 +1802,11 @@ class TaonRumbleComponent {
1788
1802
  return this.state === 'video-preview-private';
1789
1803
  }
1790
1804
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonRumbleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1791
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: TaonRumbleComponent, isStandalone: true, selector: "taon-rumble", inputs: { title: "title", clipId: "clipId", picturePreviewUrl: "picturePreviewUrl", state: "state" }, outputs: { paddlockClicked: "paddlockClicked", previewClicked: "previewClicked" }, ngImport: i0, template: "<div class=\"taon-rumble\">\n <!-- PREVIEW MODE -->\n <div\n *ngIf=\"isPreview()\"\n class=\"preview\"\n (click)=\"onPreviewClick()\">\n <img\n class=\"preview-img\"\n [src]=\"picturePreviewUrl\"\n [alt]=\"title\" />\n\n <div class=\"title\">\n {{ title }}\n </div>\n\n <!-- PLAY BUTTON -->\n <div class=\"play-button\">\u25B6</div>\n\n <!-- LOCK -->\n <div\n *ngIf=\"isLocked()\"\n class=\"lock\"\n (click)=\"onPadlockClick($event)\">\n \uD83D\uDD12\n </div>\n </div>\n\n <!-- VIDEO OPEN -->\n <div\n *ngIf=\"isVideoOpen()\"\n class=\"video\">\n <iframe\n class=\"rumble-frame\"\n [src]=\"embedUrl()\"\n frameborder=\"0\"\n allowfullscreen>\n </iframe>\n </div>\n\n <!-- PRIVATE VIDEO -->\n <div\n *ngIf=\"isPrivate()\"\n class=\"private\">\n <div class=\"private-box\">\uD83D\uDD12 Private video</div>\n </div>\n</div>\n", styles: [".taon-rumble{width:100%;max-width:640px;margin:auto;position:relative;font-family:inherit}.preview{position:relative;cursor:pointer;overflow:hidden;border-radius:10px}.preview-img{width:100%;display:block}.title{position:absolute;left:0;bottom:0;right:0;padding:10px 14px;background:linear-gradient(transparent,#000c);color:#fff;font-size:14px}.play-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:40px;color:#fff;background:#00000080;width:70px;height:70px;display:flex;align-items:center;justify-content:center;border-radius:50%}.lock{position:absolute;top:10px;right:10px;font-size:20px;background:#0009;color:#fff;padding:6px 8px;border-radius:6px}.video{position:relative;padding-top:56.25%}.rumble-frame{position:absolute;top:0;left:0;width:100%;height:100%}.private{display:flex;align-items:center;justify-content:center;height:200px;background:#111;color:#fff}.private-box{opacity:.7}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1805
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: TaonRumbleComponent, isStandalone: true, selector: "taon-rumble", inputs: { title: "title", clipId: "clipId", picturePreviewUrl: "picturePreviewUrl", state: "state" }, outputs: { paddlockClicked: "paddlockClicked", previewClicked: "previewClicked" }, ngImport: i0, template: "<div class=\"taon-rumble\">\n <!-- PREVIEW MODE -->\n <div\n *ngIf=\"isPreview()\"\n class=\"preview\"\n (click)=\"onPreviewClick()\">\n <img\n class=\"preview-img\"\n [src]=\"picturePreviewUrl\"\n [alt]=\"title\" />\n\n <div class=\"title\">\n {{ title }}\n </div>\n\n <!-- PLAY BUTTON -->\n <div class=\"play-button\">\u25B6</div>\n\n <!-- LOCK -->\n <div\n *ngIf=\"isLocked()\"\n class=\"lock\"\n (click)=\"onPadlockClick($event)\">\n \uD83D\uDD12\n </div>\n </div>\n\n <!-- VIDEO OPEN -->\n <div\n *ngIf=\"isVideoOpen()\"\n class=\"video\">\n <iframe\n class=\"rumble-frame\"\n [src]=\"embedUrl()\"\n frameborder=\"0\"\n allowfullscreen>\n </iframe>\n </div>\n\n <!-- PRIVATE VIDEO -->\n <div\n *ngIf=\"isPrivate()\"\n class=\"private\">\n <div class=\"private-box\">\uD83D\uDD12 Private video</div>\n </div>\n</div>", styles: [".taon-rumble{width:100%;max-width:640px;margin:auto;position:relative;font-family:inherit}.preview{position:relative;cursor:pointer;overflow:hidden;border-radius:10px}.preview-img{width:100%;display:block}.title{position:absolute;left:0;bottom:0;right:0;padding:10px 14px;background:linear-gradient(transparent,#000c);color:#fff;font-size:14px}.play-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:40px;color:#fff;background:#00000080;width:70px;height:70px;display:flex;align-items:center;justify-content:center;border-radius:50%}.lock{position:absolute;top:10px;right:10px;font-size:20px;background:#0009;color:#fff;padding:6px 8px;border-radius:6px}.video{position:relative;padding-top:56.25%}.rumble-frame{position:absolute;top:0;left:0;width:100%;height:100%}.private{display:flex;align-items:center;justify-content:center;height:200px;background:#111;color:#fff}.private-box{opacity:.7}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
1792
1806
  }
1793
1807
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonRumbleComponent, decorators: [{
1794
1808
  type: Component,
1795
- args: [{ selector: 'taon-rumble', standalone: true, imports: [NgIf], template: "<div class=\"taon-rumble\">\n <!-- PREVIEW MODE -->\n <div\n *ngIf=\"isPreview()\"\n class=\"preview\"\n (click)=\"onPreviewClick()\">\n <img\n class=\"preview-img\"\n [src]=\"picturePreviewUrl\"\n [alt]=\"title\" />\n\n <div class=\"title\">\n {{ title }}\n </div>\n\n <!-- PLAY BUTTON -->\n <div class=\"play-button\">\u25B6</div>\n\n <!-- LOCK -->\n <div\n *ngIf=\"isLocked()\"\n class=\"lock\"\n (click)=\"onPadlockClick($event)\">\n \uD83D\uDD12\n </div>\n </div>\n\n <!-- VIDEO OPEN -->\n <div\n *ngIf=\"isVideoOpen()\"\n class=\"video\">\n <iframe\n class=\"rumble-frame\"\n [src]=\"embedUrl()\"\n frameborder=\"0\"\n allowfullscreen>\n </iframe>\n </div>\n\n <!-- PRIVATE VIDEO -->\n <div\n *ngIf=\"isPrivate()\"\n class=\"private\">\n <div class=\"private-box\">\uD83D\uDD12 Private video</div>\n </div>\n</div>\n", styles: [".taon-rumble{width:100%;max-width:640px;margin:auto;position:relative;font-family:inherit}.preview{position:relative;cursor:pointer;overflow:hidden;border-radius:10px}.preview-img{width:100%;display:block}.title{position:absolute;left:0;bottom:0;right:0;padding:10px 14px;background:linear-gradient(transparent,#000c);color:#fff;font-size:14px}.play-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:40px;color:#fff;background:#00000080;width:70px;height:70px;display:flex;align-items:center;justify-content:center;border-radius:50%}.lock{position:absolute;top:10px;right:10px;font-size:20px;background:#0009;color:#fff;padding:6px 8px;border-radius:6px}.video{position:relative;padding-top:56.25%}.rumble-frame{position:absolute;top:0;left:0;width:100%;height:100%}.private{display:flex;align-items:center;justify-content:center;height:200px;background:#111;color:#fff}.private-box{opacity:.7}\n"] }]
1809
+ args: [{ selector: 'taon-rumble', standalone: true, imports: [NgIf], template: "<div class=\"taon-rumble\">\n <!-- PREVIEW MODE -->\n <div\n *ngIf=\"isPreview()\"\n class=\"preview\"\n (click)=\"onPreviewClick()\">\n <img\n class=\"preview-img\"\n [src]=\"picturePreviewUrl\"\n [alt]=\"title\" />\n\n <div class=\"title\">\n {{ title }}\n </div>\n\n <!-- PLAY BUTTON -->\n <div class=\"play-button\">\u25B6</div>\n\n <!-- LOCK -->\n <div\n *ngIf=\"isLocked()\"\n class=\"lock\"\n (click)=\"onPadlockClick($event)\">\n \uD83D\uDD12\n </div>\n </div>\n\n <!-- VIDEO OPEN -->\n <div\n *ngIf=\"isVideoOpen()\"\n class=\"video\">\n <iframe\n class=\"rumble-frame\"\n [src]=\"embedUrl()\"\n frameborder=\"0\"\n allowfullscreen>\n </iframe>\n </div>\n\n <!-- PRIVATE VIDEO -->\n <div\n *ngIf=\"isPrivate()\"\n class=\"private\">\n <div class=\"private-box\">\uD83D\uDD12 Private video</div>\n </div>\n</div>", styles: [".taon-rumble{width:100%;max-width:640px;margin:auto;position:relative;font-family:inherit}.preview{position:relative;cursor:pointer;overflow:hidden;border-radius:10px}.preview-img{width:100%;display:block}.title{position:absolute;left:0;bottom:0;right:0;padding:10px 14px;background:linear-gradient(transparent,#000c);color:#fff;font-size:14px}.play-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:40px;color:#fff;background:#00000080;width:70px;height:70px;display:flex;align-items:center;justify-content:center;border-radius:50%}.lock{position:absolute;top:10px;right:10px;font-size:20px;background:#0009;color:#fff;padding:6px 8px;border-radius:6px}.video{position:relative;padding-top:56.25%}.rumble-frame{position:absolute;top:0;left:0;width:100%;height:100%}.private{display:flex;align-items:center;justify-content:center;height:200px;background:#111;color:#fff}.private-box{opacity:.7}\n"] }]
1796
1810
  }], propDecorators: { title: [{
1797
1811
  type: Input,
1798
1812
  args: [{
@@ -2075,11 +2089,11 @@ class TaonStripeBuyButtonComponent {
2075
2089
  }
2076
2090
  }
2077
2091
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonStripeBuyButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2078
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: TaonStripeBuyButtonComponent, isStandalone: true, selector: "taon-stripe-buy-button", inputs: { priceId: "priceId", productId: "productId", promotionPreviousPrice: "promotionPreviousPrice", workerUrl: "workerUrl", email: "email", successUrl: "successUrl", cancelUrl: "cancelUrl" }, ngImport: i0, template: "<button\n type=\"button\"\n matButton=\"filled\"\n (click)=\"buy()\"\n [disabled]=\"loading\">\n <span *ngIf=\"!loading\">\n {{ label() }}\n </span>\n <span\n class=\"line-through absolute bg-red-500 p-1 border-round white-space-nowrap\"\n style=\"margin-top: -25px\"\n *ngIf=\"promotionPreviousPrice\">\n {{ promotionPreviousPrice }}\n </span>\n\n <span *ngIf=\"loading\"> Redirecting to Stripe... </span>\n</button>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3$1.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"] }] }); }
2092
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: TaonStripeBuyButtonComponent, isStandalone: true, selector: "taon-stripe-buy-button", inputs: { priceId: "priceId", productId: "productId", promotionPreviousPrice: "promotionPreviousPrice", workerUrl: "workerUrl", email: "email", successUrl: "successUrl", cancelUrl: "cancelUrl" }, ngImport: i0, template: "<button\n type=\"button\"\n matButton=\"filled\"\n (click)=\"buy()\"\n [disabled]=\"loading\">\n <span *ngIf=\"!loading\">\n {{ label() }}\n </span>\n <span\n class=\"line-through absolute bg-red-500 p-1 border-round white-space-nowrap\"\n style=\"margin-top: -25px\"\n *ngIf=\"promotionPreviousPrice\">\n {{ promotionPreviousPrice }}\n </span>\n\n <span *ngIf=\"loading\"> Redirecting to Stripe... </span>\n</button>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3$1.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"] }] }); }
2079
2093
  }
2080
2094
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonStripeBuyButtonComponent, decorators: [{
2081
2095
  type: Component,
2082
- args: [{ selector: 'taon-stripe-buy-button', imports: [CommonModule, MatButtonModule], template: "<button\n type=\"button\"\n matButton=\"filled\"\n (click)=\"buy()\"\n [disabled]=\"loading\">\n <span *ngIf=\"!loading\">\n {{ label() }}\n </span>\n <span\n class=\"line-through absolute bg-red-500 p-1 border-round white-space-nowrap\"\n style=\"margin-top: -25px\"\n *ngIf=\"promotionPreviousPrice\">\n {{ promotionPreviousPrice }}\n </span>\n\n <span *ngIf=\"loading\"> Redirecting to Stripe... </span>\n</button>\n" }]
2096
+ args: [{ selector: 'taon-stripe-buy-button', imports: [CommonModule, MatButtonModule], template: "<button\n type=\"button\"\n matButton=\"filled\"\n (click)=\"buy()\"\n [disabled]=\"loading\">\n <span *ngIf=\"!loading\">\n {{ label() }}\n </span>\n <span\n class=\"line-through absolute bg-red-500 p-1 border-round white-space-nowrap\"\n style=\"margin-top: -25px\"\n *ngIf=\"promotionPreviousPrice\">\n {{ promotionPreviousPrice }}\n </span>\n\n <span *ngIf=\"loading\"> Redirecting to Stripe... </span>\n</button>" }]
2083
2097
  }], propDecorators: { priceId: [{
2084
2098
  type: Input,
2085
2099
  args: [{ required: true }]