tnp-helpers 13.1.13 → 13.1.15

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 (37) hide show
  1. package/app.js +3 -3
  2. package/browser/esm2020/lib/helpers-browser.mjs +47 -0
  3. package/browser/esm2020/lib/helpers-numbers.mjs +1 -1
  4. package/browser/esm2020/lib/helpers.mjs +4 -2
  5. package/browser/fesm2015/tnp-helpers.mjs +51 -1
  6. package/browser/fesm2020/tnp-helpers.mjs +49 -1
  7. package/browser/lib/helpers-browser.d.ts +12 -0
  8. package/browser/lib/helpers.d.ts +2 -0
  9. package/client/esm2020/lib/helpers-browser.mjs +47 -0
  10. package/client/esm2020/lib/helpers-numbers.mjs +1 -1
  11. package/client/esm2020/lib/helpers.mjs +4 -2
  12. package/client/fesm2015/tnp-helpers.mjs +51 -1
  13. package/client/fesm2020/tnp-helpers.mjs +49 -1
  14. package/client/lib/helpers-browser.d.ts +12 -0
  15. package/client/lib/helpers.d.ts +2 -0
  16. package/lib/base-component.js +3 -3
  17. package/lib/base-formly-component.js +3 -3
  18. package/lib/dual-component-ctrl.js +3 -3
  19. package/lib/git-project.d.ts +1 -2
  20. package/lib/helpers-browser.d.ts +11 -0
  21. package/lib/helpers-browser.js +70 -0
  22. package/lib/helpers-file-folders.backend.d.ts +1 -1
  23. package/lib/helpers-file-folders.backend.js +6 -3
  24. package/lib/helpers-git.backend.js +1 -1
  25. package/lib/helpers-process.backend.d.ts +4 -3
  26. package/lib/helpers-process.backend.js +30 -3
  27. package/lib/helpers.d.ts +3 -1
  28. package/lib/helpers.js +2 -0
  29. package/package.json +3 -3
  30. package/tmp-environment.json +11 -10
  31. package/websql/esm2020/lib/helpers-browser.mjs +47 -0
  32. package/websql/esm2020/lib/helpers-numbers.mjs +1 -1
  33. package/websql/esm2020/lib/helpers.mjs +4 -2
  34. package/websql/fesm2015/tnp-helpers.mjs +51 -1
  35. package/websql/fesm2020/tnp-helpers.mjs +49 -1
  36. package/websql/lib/helpers-browser.d.ts +12 -0
  37. package/websql/lib/helpers.d.ts +2 -0
@@ -474,6 +474,53 @@ class HelpersNumber {
474
474
  ;
475
475
  ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-numbers.ts
476
476
 
477
+ const key = Symbol('[firedev-helpers] helper browser key');
478
+ class HelpersBrowaser {
479
+ constructor(win) {
480
+ this.init = (() => {
481
+ const win = this.win;
482
+ if (!win[key]) {
483
+ win[key] = new HelpersBrowaser(win);
484
+ }
485
+ HelpersBrowaser.inst = win[key];
486
+ })();
487
+ win.addEventListener("beforeunload", (e) => {
488
+ win.sessionStorage.tabId = this.tabId;
489
+ return null;
490
+ });
491
+ setTimeout(() => {
492
+ if (win.sessionStorage?.tabId) {
493
+ // @ts-ignore
494
+ this.tabId = Number(win.sessionStorage.tabId);
495
+ win.sessionStorage.removeItem("tabId");
496
+ }
497
+ else {
498
+ // @ts-ignore
499
+ this.tabId = Math.floor(Math.random() * 1000000) + (new Date()).getTime();
500
+ }
501
+ HelpersBrowaser.callbacks.forEach((c) => {
502
+ c(this);
503
+ });
504
+ });
505
+ }
506
+ static onInit(callback) {
507
+ this.callbacks.push(callback);
508
+ }
509
+ get win() {
510
+ let win = window;
511
+ return win;
512
+ }
513
+ get tabIdSessionStorage() {
514
+ return Number(this.win.sessionStorage?.tabId) || 0;
515
+ }
516
+ static get instance() {
517
+ return HelpersBrowaser.inst;
518
+ }
519
+ }
520
+ HelpersBrowaser.callbacks = [];
521
+ ;
522
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-browser.ts
523
+
477
524
  function applyMixins(derivedCtor, baseCtors) {
478
525
  baseCtors.forEach(baseCtor => {
479
526
  Object.getOwnPropertyNames(baseCtor.prototype).forEach(name => {
@@ -497,11 +544,12 @@ class HelpersTnp extends CoreHelpers {
497
544
  /* */
498
545
  /* */
499
546
  /* */
500
- arrays = new HelpersArrayObj(), strings = new HelpersStrings(), numbers = new HelpersNumber()) {
547
+ arrays = new HelpersArrayObj(), strings = new HelpersStrings(), numbers = new HelpersNumber(), browser = HelpersBrowaser.instance) {
501
548
  super();
502
549
  this.arrays = arrays;
503
550
  this.strings = strings;
504
551
  this.numbers = numbers;
552
+ this.browser = browser;
505
553
  this.conditionWait = conditionWait;
506
554
  /* */
507
555
  /* */
@@ -0,0 +1,12 @@
1
+ // @ts-nocheck
2
+ export declare class HelpersBrowaser {
3
+ private static callbacks;
4
+ static onInit(callback: (ins: HelpersBrowaser) => any): void;
5
+ get win(): Window & typeof globalThis;
6
+ private get tabIdSessionStorage();
7
+ readonly tabId: number;
8
+ private static inst;
9
+ init: void;
10
+ private constructor();
11
+ static get instance(): HelpersBrowaser;
12
+ }
@@ -6,11 +6,13 @@ import { HelpersStrings } from './helpers-strings';
6
6
  import { conditionWait } from './condition-wait';
7
7
  import { CoreHelpers } from 'tnp-core/websql';
8
8
  import { HelpersNumber } from './helpers-numbers';
9
+ import { HelpersBrowaser } from './helpers-browser';
9
10
  export declare function applyMixins(derivedCtor: any, baseCtors: any[]): void;
10
11
  export declare class HelpersTnp extends CoreHelpers {
11
12
  arrays: HelpersArrayObj;
12
13
  strings: HelpersStrings;
13
14
  numbers: HelpersNumber;
15
+ browser: HelpersBrowaser;
14
16
  private static _instance;
15
17
  static get Instance(): HelpersTnp & CoreHelpers;
16
18
  private constructor();