taxtank-core 0.28.96 → 0.28.97

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.
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/common/http'), require('rxjs/operators'), require('rxjs'), require('class-transformer'), require('@auth0/angular-jwt'), require('lodash/get'), require('lodash/flatten'), require('lodash/hasIn'), require('lodash/first'), require('lodash/last'), require('lodash/uniqBy'), require('lodash/concat'), require('moment'), require('moment-range'), require('lodash/cloneDeep'), require('rxjs/internal/observable/throwError'), require('lodash/clone'), require('event-source-polyfill/src/eventsource.min.js'), require('lodash/compact'), require('lodash/differenceBy'), require('@angular/forms'), require('lodash'), require('@angular/router'), require('@stripe/stripe-js'), require('lodash/fromPairs'), require('html2pdf.js'), require('lodash/merge'), require('jspdf-autotable'), require('jspdf'), require('lodash/isEqual'), require('xlsx'), require('file-saver')) :
3
- typeof define === 'function' && define.amd ? define('taxtank-core', ['exports', '@angular/core', '@angular/common', '@angular/common/http', 'rxjs/operators', 'rxjs', 'class-transformer', '@auth0/angular-jwt', 'lodash/get', 'lodash/flatten', 'lodash/hasIn', 'lodash/first', 'lodash/last', 'lodash/uniqBy', 'lodash/concat', 'moment', 'moment-range', 'lodash/cloneDeep', 'rxjs/internal/observable/throwError', 'lodash/clone', 'event-source-polyfill/src/eventsource.min.js', 'lodash/compact', 'lodash/differenceBy', '@angular/forms', 'lodash', '@angular/router', '@stripe/stripe-js', 'lodash/fromPairs', 'html2pdf.js', 'lodash/merge', 'jspdf-autotable', 'jspdf', 'lodash/isEqual', 'xlsx', 'file-saver'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["taxtank-core"] = {}, global.ng.core, global.ng.common, global.ng.common.http, global.rxjs.operators, global.rxjs, global.classTransformer, global.angularJwt, global.get, global.flatten, global.hasIn, global.first, global.last, global.uniqBy, global.concat, global.moment$1, global.momentRange, global.cloneDeep$1, global.rxjs["internal/observable/throwError"], global.clone, global.eventsource_min_js, global.compact, global.differenceBy, global.ng.forms, global._, global.ng.router, global.stripeJs, global.fromPairs, global.html2pdf, global.merge, global.autoTable, global.jsPDF, global.isEqual, global.xlsx, global.FileSaver));
5
- })(this, (function (exports, i0, i1$1, i1, operators, rxjs, classTransformer, angularJwt, get, flatten, hasIn, first, last, uniqBy, concat, moment$1, momentRange, cloneDeep$1, throwError, clone, eventsource_min_js, compact, differenceBy, forms, _, i1$2, stripeJs, fromPairs, html2pdf, merge, autoTable, jsPDF, isEqual, xlsx, FileSaver) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/common/http'), require('rxjs/operators'), require('rxjs'), require('class-transformer'), require('@auth0/angular-jwt'), require('lodash/get'), require('lodash/flatten'), require('lodash/hasIn'), require('lodash/first'), require('lodash/last'), require('lodash/uniqBy'), require('lodash/concat'), require('moment'), require('moment-range'), require('lodash/intersection'), require('lodash/cloneDeep'), require('rxjs/internal/observable/throwError'), require('lodash/clone'), require('event-source-polyfill/src/eventsource.min.js'), require('lodash/compact'), require('lodash/differenceBy'), require('@angular/forms'), require('lodash'), require('@angular/router'), require('@stripe/stripe-js'), require('lodash/fromPairs'), require('html2pdf.js'), require('lodash/merge'), require('jspdf-autotable'), require('jspdf'), require('lodash/isEqual'), require('xlsx'), require('file-saver')) :
3
+ typeof define === 'function' && define.amd ? define('taxtank-core', ['exports', '@angular/core', '@angular/common', '@angular/common/http', 'rxjs/operators', 'rxjs', 'class-transformer', '@auth0/angular-jwt', 'lodash/get', 'lodash/flatten', 'lodash/hasIn', 'lodash/first', 'lodash/last', 'lodash/uniqBy', 'lodash/concat', 'moment', 'moment-range', 'lodash/intersection', 'lodash/cloneDeep', 'rxjs/internal/observable/throwError', 'lodash/clone', 'event-source-polyfill/src/eventsource.min.js', 'lodash/compact', 'lodash/differenceBy', '@angular/forms', 'lodash', '@angular/router', '@stripe/stripe-js', 'lodash/fromPairs', 'html2pdf.js', 'lodash/merge', 'jspdf-autotable', 'jspdf', 'lodash/isEqual', 'xlsx', 'file-saver'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["taxtank-core"] = {}, global.ng.core, global.ng.common, global.ng.common.http, global.rxjs.operators, global.rxjs, global.classTransformer, global.angularJwt, global.get, global.flatten, global.hasIn, global.first, global.last, global.uniqBy, global.concat, global.moment$1, global.momentRange, global.intersection, global.cloneDeep$1, global.rxjs["internal/observable/throwError"], global.clone, global.eventsource_min_js, global.compact, global.differenceBy, global.ng.forms, global._, global.ng.router, global.stripeJs, global.fromPairs, global.html2pdf, global.merge, global.autoTable, global.jsPDF, global.isEqual, global.xlsx, global.FileSaver));
5
+ })(this, (function (exports, i0, i1$1, i1, operators, rxjs, classTransformer, angularJwt, get, flatten, hasIn, first, last, uniqBy, concat, moment$1, momentRange, intersection, cloneDeep$1, throwError, clone, eventsource_min_js, compact, differenceBy, forms, _, i1$2, stripeJs, fromPairs, html2pdf, merge, autoTable, jsPDF, isEqual, xlsx, FileSaver) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -35,6 +35,7 @@
35
35
  var uniqBy__default = /*#__PURE__*/_interopDefaultLegacy(uniqBy);
36
36
  var concat__default = /*#__PURE__*/_interopDefaultLegacy(concat);
37
37
  var moment__namespace = /*#__PURE__*/_interopNamespace(moment$1);
38
+ var intersection__default = /*#__PURE__*/_interopDefaultLegacy(intersection);
38
39
  var cloneDeep__default = /*#__PURE__*/_interopDefaultLegacy(cloneDeep$1);
39
40
  var clone__default = /*#__PURE__*/_interopDefaultLegacy(clone);
40
41
  var compact__default = /*#__PURE__*/_interopDefaultLegacy(compact);
@@ -5443,6 +5444,22 @@
5443
5444
  classTransformer.Type(function () { return Date; })
5444
5445
  ], BasReport.prototype, "dateTo", void 0);
5445
5446
 
5447
+ /**
5448
+ * role hierarchy
5449
+ */
5450
+ var USER_ROLES = {
5451
+ ROLE_FIRM_OWNER: [exports.UserRolesEnum.FIRM_OWNER, exports.UserRolesEnum.FIRM_MANAGER, exports.UserRolesEnum.ACCOUNTANT, exports.UserRolesEnum.ADVISOR],
5452
+ ROLE_FIRM_MANAGER: [exports.UserRolesEnum.FIRM_MANAGER, exports.UserRolesEnum.ACCOUNTANT, exports.UserRolesEnum.ADVISOR],
5453
+ ROLE_EMPLOYEE: [exports.UserRolesEnum.ACCOUNTANT, exports.UserRolesEnum.ADVISOR],
5454
+ ROLE_ACCOUNTANT: [exports.UserRolesEnum.ACCOUNTANT],
5455
+ ROLE_ADVISOR: [exports.UserRolesEnum.ADVISOR],
5456
+ ROLE_CLIENT: [exports.UserRolesEnum.CLIENT],
5457
+ ROLE_USER_SUBSCRIPTION: [exports.UserRolesEnum.SUBSCRIPTION],
5458
+ ROLE_USER_WORK: [exports.UserRolesEnum.WORK_TANK],
5459
+ ROLE_USER_PROPERTY: [exports.UserRolesEnum.PROPERTY_TANK],
5460
+ ROLE_USER_SOLE: [exports.UserRolesEnum.SOLE_TANK],
5461
+ };
5462
+
5446
5463
  var User = /** @class */ (function (_super) {
5447
5464
  __extends(User, _super);
5448
5465
  function User() {
@@ -5489,8 +5506,16 @@
5489
5506
  enumerable: false,
5490
5507
  configurable: true
5491
5508
  });
5492
- User.prototype.hasRole = function (role) {
5493
- return this.roles.includes(role);
5509
+ /**
5510
+ * search roles including hierarchy
5511
+ */
5512
+ User.prototype.hasRoles = function (roles) {
5513
+ roles = roles instanceof Array ? roles : [roles];
5514
+ if (!roles.length) {
5515
+ return true;
5516
+ }
5517
+ roles = flatten__default["default"](roles.map(function (role) { return USER_ROLES[role]; }));
5518
+ return !!intersection__default["default"](this.roles, roles).length;
5494
5519
  };
5495
5520
  User.prototype.isOnboarding = function () {
5496
5521
  return this.status === exports.UserStatusEnum.ON_BOARDING;
@@ -12491,19 +12516,6 @@
12491
12516
  return Occupation;
12492
12517
  }(Occupation$1));
12493
12518
 
12494
- var USER_ROLES = {
12495
- ROLE_FIRM_OWNER: [exports.UserRolesEnum.FIRM_OWNER],
12496
- ROLE_FIRM_MANAGER: [exports.UserRolesEnum.FIRM_MANAGER, exports.UserRolesEnum.FIRM_OWNER],
12497
- ROLE_ACCOUNTANT: [exports.UserRolesEnum.FIRM_MANAGER, exports.UserRolesEnum.FIRM_OWNER, exports.UserRolesEnum.ACCOUNTANT],
12498
- ROLE_CLIENT: [exports.UserRolesEnum.CLIENT],
12499
- ROLE_USER: [exports.UserRolesEnum.USER],
12500
- ROLE_USER_SUBSCRIPTION: [exports.UserRolesEnum.SUBSCRIPTION],
12501
- ROLE_USER_WORK: [exports.UserRolesEnum.WORK_TANK],
12502
- ROLE_USER_PROPERTY: [exports.UserRolesEnum.PROPERTY_TANK],
12503
- ROLE_USER_SOLE: [exports.UserRolesEnum.SOLE_TANK],
12504
- ROLE_PREVIOUS_ADMIN: [exports.UserRolesEnum.SWITCH_USER]
12505
- };
12506
-
12507
12519
  /**
12508
12520
  * Class with basic information about registering user
12509
12521
  */
@@ -15798,7 +15810,13 @@
15798
15810
  SubscriptionService.prototype.listenSubscriptions = function () {
15799
15811
  var _this = this;
15800
15812
  this.sseService.on("serviceSubscriptions")
15801
- .pipe(operators.map(function (event) { return classTransformer.plainToClass(ServiceSubscription, event); }))
15813
+ .pipe(operators.map(function (event) {
15814
+ // @TODO for some reason mercure return object when there is only one item
15815
+ if (event['items'] instanceof Object) {
15816
+ event['items'] = Object.values(event['items']);
15817
+ }
15818
+ return classTransformer.plainToClass(ServiceSubscription, event);
15819
+ }))
15802
15820
  .subscribe(function (subscription) {
15803
15821
  _this._serviceSubscription = subscription;
15804
15822
  _this.serviceSubscriptionSubject.next(_this._serviceSubscription);