@bizdoc/core 1.13.28 → 1.13.29

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.
@@ -2113,6 +2113,7 @@ const STRINGS = {
2113
2113
  ReplyingTo: '{0} replying to {1}',
2114
2114
  YouRepliedTo: 'You replied {0}',
2115
2115
  ReplyingToYou: '{0} in reply to you',
2116
+ YouBy: 'You by {0}',
2116
2117
  ByYou: '{0} by you',
2117
2118
  ActionBy: '{0} by {1}',
2118
2119
  ActionByBy: '{0} by {1} on behalf of {2}',
@@ -2369,6 +2370,7 @@ const STRINGS = {
2369
2370
  ChatHelp: 'Communicate with other users privately',
2370
2371
  ShowAs: 'Show as {0}',
2371
2372
  Unauthorized: 'Unauthorized access',
2373
+ NotAcceptable: 'Unauthorized access',
2372
2374
  LicenseErr: 'License',
2373
2375
  RemoveAsk: 'Are you sure?',
2374
2376
  Comments: 'Comments',
@@ -2507,6 +2509,7 @@ const STRINGS = {
2507
2509
  Color: 'צבע',
2508
2510
  FontSize: 'גודל פונט',
2509
2511
  Unauthorized: 'לא מורשה',
2512
+ NotAcceptable: 'לא מורשה',
2510
2513
  Add: 'הוסף/י',
2511
2514
  Check: 'בחר/י',
2512
2515
  Help: 'עזרה',
@@ -2800,6 +2803,9 @@ const STRINGS = {
2800
2803
  YouRepliedTo: '{0}השבת ל',
2801
2804
  ReplyingToYou: '{0} השיב לך',
2802
2805
  ByYou: '{0} דרכך',
2806
+ YouByMale: 'אתה דרך {0}',
2807
+ YouByFemale: 'את דרך {0}',
2808
+ YouBy: 'את/ה דרך {0}',
2803
2809
  ActionByYou: '{0} דרכך',
2804
2810
  ActionByBy: '{0} דרך {1} בשם {2}',
2805
2811
  ActionBy: '{0} דרך {1}',
@@ -6631,7 +6637,7 @@ function errResource(error) {
6631
6637
  case 426:
6632
6638
  return 'LicenseErr';
6633
6639
  case 406:
6634
- return 'Unauthorized';
6640
+ return 'NotAcceptable';
6635
6641
  }
6636
6642
  return null;
6637
6643
  }
@@ -13967,7 +13973,7 @@ class FlowViewComponent extends TraceBase {
13967
13973
  content: this._tooltip(tooltip),
13968
13974
  position: 'TopCenter'
13969
13975
  },
13970
- constraints: NodeConstraints.Default | NodeConstraints.Tooltip,
13976
+ constraints: Object.keys(tooltip).length ? NodeConstraints.Default | NodeConstraints.Tooltip : NodeConstraints.Default,
13971
13977
  addInfo: {
13972
13978
  tooltip,
13973
13979
  recipient,
@@ -14442,7 +14448,6 @@ class TraceViewComponent extends TraceBase {
14442
14448
  sameDay: `[${this._translate.get('Today')}] HH:mm`,
14443
14449
  sameElse: 'MMM D HH:mm'
14444
14450
  };
14445
- this._showMode = 'everything';
14446
14451
  this._showMode = localStorage.getItem('traceMode') || 'everything';
14447
14452
  }
14448
14453
  ngOnChanges(_changes) {
@@ -14451,11 +14456,15 @@ class TraceViewComponent extends TraceBase {
14451
14456
  async _initialize() {
14452
14457
  const { issued, log, recipients, attachments } = this.model;
14453
14458
  const me = this;
14459
+ /**
14460
+ * account info as promise
14461
+ * @param id
14462
+ */
14454
14463
  function profileOf(id) {
14455
14464
  return me._accounts.get(id).toPromise();
14456
14465
  }
14457
14466
  /**
14458
- * user name, chat anchor tag or You
14467
+ * user name, chat anchor tag
14459
14468
  * @param user
14460
14469
  */
14461
14470
  function nameOf(user) {
@@ -14527,38 +14536,44 @@ class TraceViewComponent extends TraceBase {
14527
14536
  step.role = this._roleName(recipient.role);
14528
14537
  step.fyi = recipient.fyi;
14529
14538
  if (recipient.substituteId) {
14530
- let substituting = await profileOf(recipient.substituteId);
14531
14539
  if (recipient.byId) {
14532
- if (recipient.byId === this._session.userId) {
14540
+ if (recipient.byId === this._session.userId && !this._session.isImpersonating) {
14533
14541
  let who = await profileOf(recipient.userId);
14534
- if (recipient.substituteId === this._session.userId)
14542
+ if (recipient.substituteId === this._session.userId && !this._session.isImpersonating)
14535
14543
  step.name = this._translate.get('ByYou', nameOf(who));
14536
- else
14544
+ else {
14545
+ let substituting = await profileOf(recipient.substituteId);
14537
14546
  step.name = this._translate.personalize('SubstitutingByYou', who.gender, nameOf(who), nameOf(substituting));
14547
+ }
14538
14548
  if (action)
14539
14549
  step.action = await actionBy(action, You, recipient.id);
14540
14550
  }
14541
14551
  else {
14542
14552
  let by = await profileOf(recipient.byId);
14543
14553
  let who = await profileOf(recipient.userId);
14554
+ let substituting = await profileOf(recipient.substituteId);
14544
14555
  step.name = this._translate.get('SubstitutingBy', nameOf(who), nameOf(substituting), nameOf(by));
14545
14556
  if (by.role)
14546
14557
  step.role = by.role;
14547
14558
  if (action)
14548
- step.action = await actionBy(action, by.gender);
14559
+ step.action = await actionBy(action, by.gender, recipient.id);
14549
14560
  }
14550
14561
  }
14551
14562
  else {
14552
- let who = await profileOf(recipient.userId);
14553
- if (recipient.substituteId === this._session.userId) {
14554
- step.name = this._translate.personalize('SubstitutingForYou', who.gender, nameOf(who));
14563
+ if (recipient.userId === this._session.userId && !this._session.isImpersonating) {
14564
+ let substituting = await profileOf(recipient.substituteId);
14565
+ step.name = this._translate.personalize('YouSubstitute', this._session.profile.byGender, nameOf(substituting));
14566
+ if (action)
14567
+ step.action = await actionBy(action, this._session.gender, recipient.id);
14555
14568
  }
14556
- else if (recipient.userId === this._session.userId) {
14557
- step.name = this._translate.personalize('YouSubstitute', this._session.profile.byGender, nameOf(who));
14569
+ else if (recipient.substituteId === this._session.userId && !this._session.isImpersonating) {
14570
+ let who = await profileOf(recipient.userId);
14571
+ step.name = this._translate.personalize('SubstitutingForYou', who.gender, nameOf(who));
14558
14572
  if (action)
14559
14573
  step.action = await actionBy(action, who.gender, recipient.id);
14560
14574
  }
14561
14575
  else {
14576
+ let who = await profileOf(recipient.userId), substituting = await profileOf(recipient.substituteId);
14562
14577
  step.name = this._translate.personalize('Substituting', who.gender, nameOf(who), nameOf(substituting));
14563
14578
  if (who.role)
14564
14579
  step.role = who.role;
@@ -14568,19 +14583,31 @@ class TraceViewComponent extends TraceBase {
14568
14583
  }
14569
14584
  }
14570
14585
  else if (recipient.byId) {
14571
- let who = await profileOf(recipient.userId), by = await profileOf(recipient.byId);
14572
- if (recipient.byId === this._session.userId)
14573
- step.name = this._translate.get('ByYou', nameOf(who));
14586
+ if (recipient.userId === this._session.userId && !this._session.isImpersonating) {
14587
+ let by = await profileOf(recipient.byId);
14588
+ step.name = this._translate.get('YouBy', nameOf(by));
14589
+ if (action)
14590
+ step.action = await actionBy(action, by.gender, recipient.id);
14591
+ }
14574
14592
  else {
14575
- step.name = this._translate.get('By', nameOf(who), nameOf(by));
14576
- if (by.role)
14577
- step.role = by.role;
14593
+ let who = await profileOf(recipient.userId);
14594
+ if (recipient.byId === this._session.userId && !this._session.isImpersonating) {
14595
+ step.name = this._translate.get('ByYou', nameOf(who));
14596
+ if (action)
14597
+ step.action = await actionBy(action, this._session.profile.byGender, recipient.id);
14598
+ }
14599
+ else {
14600
+ let by = await profileOf(recipient.byId);
14601
+ step.name = this._translate.get('By', nameOf(who), nameOf(by));
14602
+ if (by.role)
14603
+ step.role = by.role;
14604
+ if (action)
14605
+ step.action = await actionBy(action, by.gender, recipient.id);
14606
+ }
14578
14607
  }
14579
- if (action)
14580
- step.action = await actionBy(action, by.gender, recipient.id);
14581
14608
  }
14582
14609
  else {
14583
- if (recipient.userId === this._session.userId)
14610
+ if (recipient.userId === this._session.userId && !this._session.isImpersonating)
14584
14611
  step.name = this._translate.get('You');
14585
14612
  else {
14586
14613
  let who = await profileOf(recipient.userId);
@@ -14593,15 +14620,27 @@ class TraceViewComponent extends TraceBase {
14593
14620
  }
14594
14621
  }
14595
14622
  else {
14596
- if (l.userId === this._session.profile.userId)
14597
- step.name = this._session.isImpersonating ? this._session.profile.name : this._translate.get('You');
14623
+ if (l.userId === this._session.profile.userId) {
14624
+ if (this._session.isImpersonating) {
14625
+ if (l.userId === this._session.profile.byId)
14626
+ step.name = this._translate.get('ByYou', this._session.profile.name);
14627
+ else
14628
+ step.name = this._session.profile.name;
14629
+ }
14630
+ else
14631
+ step.name = this._translate.get('You');
14632
+ }
14598
14633
  else {
14599
14634
  let who = await profileOf(l.userId);
14600
14635
  if (who.role)
14601
14636
  step.role = who.role;
14602
14637
  if (l.byId) {
14603
- let by = await profileOf(l.byId);
14604
- step.name = this._translate.get('By', nameOf(who), nameOf(by));
14638
+ if (l.byId === this._session.profile.byId)
14639
+ step.name = this._translate.get('ByYou', nameOf(who));
14640
+ else {
14641
+ let by = await profileOf(l.byId);
14642
+ step.name = this._translate.get('By', nameOf(who), nameOf(by));
14643
+ }
14605
14644
  }
14606
14645
  else
14607
14646
  step.name = nameOf(who);
@@ -14712,8 +14751,7 @@ class TraceViewComponent extends TraceBase {
14712
14751
  this.data = this._data.filter(l => l.time >= this.model.issued);
14713
14752
  break;
14714
14753
  case 'route':
14715
- this.data = this._data.filter(l => l.type === 'ActionTaken'
14716
- || l.type === 'Estimate' || l.type === 'Pending');
14754
+ this.data = this._data.filter(l => l.type === 'ActionTaken' || l.type === 'Estimate' || l.type === 'Pending');
14717
14755
  break;
14718
14756
  default:
14719
14757
  this.data = this._data;
@@ -20840,7 +20878,10 @@ let AssignActionComponent = class AssignActionComponent {
20840
20878
  const me = this._session.userId;
20841
20879
  this.users$ = this.userIds.valueChanges.
20842
20880
  pipe(debounceTime$1(200), takeUntil(this._destroy), switchMap(v => this._accounts.findAll(v, { take: 20 }).
20843
- pipe(map(r => r.filter(u => u.id !== me)))));
20881
+ pipe(map(r => {
20882
+ const userIds = this.form.controls['userIds'].value;
20883
+ return r.filter(u => u.id !== me && userIds.indexOf(u.id) < 0);
20884
+ }))));
20844
20885
  }
20845
20886
  /**
20846
20887
  *