@colijnit/transaction 262.1.44 → 262.1.46

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.d.ts CHANGED
@@ -298,6 +298,7 @@ import { SuggestedReceiptLocation } from '@colijnit/transactionapi/build/model/s
298
298
  import { PdfHistoricPosReceiptRequest } from '@colijnit/transactionapi/build/model/pdf-historic-pos-receipt-request';
299
299
  import { CreatePublicQuoteRequest } from '@colijnit/transactionapi/build/model/create-public-quote-request';
300
300
  import { UpsertTransactionStandardTextRequest } from '@colijnit/transactionapi/build/model/upsert-transaction-standard-text-request';
301
+ import { ChangeHeaderExtraDocRequest } from '@colijnit/transactionapi/build/model/change-header-extra-doc-request';
301
302
  import { BusinessObjectIDType } from '@colijnit/ioneconnector/build/type/business-object-id-type';
302
303
  import { RelationKind as RelationKind$1 } from '@colijnit/articleapi/build/enum/relation-kind.enum';
303
304
  import { Relation } from '@colijnit/relationapi/build/model/relation.bo';
@@ -364,6 +365,7 @@ import { SalesOrderLineAllocationDetails } from '@colijnit/transactionapi/build/
364
365
  import { PlanningTask } from '@colijnit/transactionapi/build/model/planning-task-object.bo';
365
366
  import { LayoutCode as LayoutCode$1 } from '@colijnit/mainapi/build/enum/layout-code.enum';
366
367
  import { QuantityInHistoricState } from '@colijnit/transactionapi/build/enum/quantity-in-historic-state.enum';
368
+ import { ExtraDocValues } from '@colijnit/transactionapi/build/enum/extra-doc-values.enum';
367
369
  import { LogisticStickerRequest } from '@colijnit/transactionapi/build/model/logistic-sticker-request';
368
370
  import { Payment } from '@colijnit/transactionapi/build/model/payment.bo';
369
371
  import { WorkflowCategoryType } from '@colijnit/mainapi/build/enum/workflow-category.enum';
@@ -865,7 +867,7 @@ declare class TransactionEventService {
865
867
  readonly transactionCopyNavigation: Subject<string>;
866
868
  readonly transactionDeleted: Subject<void>;
867
869
  readonly transactionPaymentDone: Subject<void>;
868
- readonly transactionLoaded: Subject<void>;
870
+ readonly transactionLoaded: Subject<TransactionInfoResponse>;
869
871
  readonly copyOrder: Subject<void>;
870
872
  readonly updateTransactionReferences: Subject<void>;
871
873
  readonly transactionLineVisibilityChange: BehaviorSubject<{
@@ -1329,6 +1331,7 @@ declare class TransactionConnectorAdapterService {
1329
1331
  getDropshipmentInfosByRelationId(relationId: number): Promise<DropshipmentInfo[]>;
1330
1332
  insertNewDropshipmentInfo(request: DropshipmentInfo): Promise<void>;
1331
1333
  changeHeaderDropshipmentInfo(request: ChangeHeaderDropshipmentInfoRequest): Promise<TransactionInfoResponse>;
1334
+ changeHeaderExtraDoc(request: ChangeHeaderExtraDocRequest): Promise<TransactionInfoResponse>;
1332
1335
  pdfPosReceipt(pdfPosReceiptRequest: PdfPosReceiptRequest, localPrint: boolean): Promise<boolean>;
1333
1336
  pdfHistoricPosReceipt(pdfHistoricPosReceiptRequest: PdfHistoricPosReceiptRequest, localPrint: boolean): Promise<boolean>;
1334
1337
  printPosReceipt(printPosReceiptRequest: PrintPosReceiptRequest): Promise<boolean>;
@@ -1830,6 +1833,7 @@ declare class TransactionConnectorService {
1830
1833
  getDropshipmentInfosByRelationId(relationId: number): Promise<DropshipmentInfo[]>;
1831
1834
  insertNewDropshipmentInfo(request: DropshipmentInfo): Promise<void>;
1832
1835
  changeHeaderDropshipmentInfo(request: ChangeHeaderDropshipmentInfoRequest): Promise<TransactionInfoResponse>;
1836
+ changeHeaderExtraDoc(request: ChangeHeaderExtraDocRequest): Promise<TransactionInfoResponse>;
1833
1837
  pdfPosReceipt(pdfPosReceiptRequest: PdfPosReceiptRequest, localPrint: boolean): Promise<boolean>;
1834
1838
  pdfHistoricPosReceipt(pdfHistoricPosReceiptRequest: PdfHistoricPosReceiptRequest, localPrint: boolean): Promise<boolean>;
1835
1839
  printPosReceipt(printPosReceiptRequest: PrintPosReceiptRequest): Promise<boolean>;
@@ -2101,6 +2105,7 @@ declare enum Icon {
2101
2105
  CloseDialog = "close_dialog",
2102
2106
  CodeRegular = "code_regular",
2103
2107
  ContainerStorageRegularFull = "container_storage_regular_full",
2108
+ CopyRegularFull = "copy_regular_full",
2104
2109
  CreditCardRegular = "credit_card_regular",
2105
2110
  CreditCardRegularCheck = "credit_card_regular_check",
2106
2111
  CreditCardSolid = "credit_card_solid",
@@ -2712,6 +2717,7 @@ declare class TransactionService extends PendingReasonService {
2712
2717
  getDropshipmentInfosByRelationId(relationId: number): Promise<DropshipmentInfo[]>;
2713
2718
  insertNewDropshipmentInfo(request: DropshipmentInfo): Promise<void>;
2714
2719
  changeHeaderDropshipmentInfo(request: ChangeHeaderDropshipmentInfoRequest): Promise<TransactionInfoResponse>;
2720
+ changeHeaderExtraDoc(request: ChangeHeaderExtraDocRequest, saveTransaction: boolean): Promise<boolean>;
2715
2721
  pdfPosReceipt(pdfPosReceiptRequest: PdfPosReceiptRequest, localPrint?: boolean): Promise<boolean>;
2716
2722
  pdfHistoricPosReceipt(pdfHistoricPosReceiptRequest: PdfHistoricPosReceiptRequest, localPrint?: boolean): Promise<boolean>;
2717
2723
  printPosReceipt(printPosReceiptRequest: PrintPosReceiptRequest): Promise<boolean>;
@@ -4737,7 +4743,9 @@ declare class TransactionMappingService {
4737
4743
  private _cardConfig;
4738
4744
  private _sidePanelConfig;
4739
4745
  private _quickAccessConfig;
4746
+ private _handledByDescription;
4740
4747
  constructor(_buttonBarConfig: TransactionButtonBarMappingConfig, _filterConfig: TransactionFilterMappingConfig, _searchConfig: TransactionSearchMappingConfig, _lineConfig: TransactionLineMappingConfig, _cardConfig: TransactionCardMappingConfig, _sidePanelConfig: TransactionSidePanelMappingConfig, _quickAccessConfig: TransactionQuickAccessMappingConfig);
4748
+ getHandledByDescription(type: TransactionKind): string;
4741
4749
  getButtonBar(type: TransactionKind): TransactionBarButton[];
4742
4750
  getSidePanelComponent(type: TransactionKind): any;
4743
4751
  getQuickAccessComponent(type: TransactionKind, category: TransactionTypeCategory): any;
@@ -7611,12 +7619,16 @@ declare class AvatarComponent implements OnInit {
7611
7619
  get image(): CoDocument;
7612
7620
  set relationId(value: number);
7613
7621
  get relationId(): number;
7622
+ tooltipTitle: string;
7614
7623
  set relation(value: RelationListObject);
7615
7624
  get relation(): RelationListObject;
7616
- showBranchNr: boolean;
7625
+ showRelationNr: boolean;
7617
7626
  showClass(): boolean;
7618
- imageSrc: string;
7619
7627
  backgroundColor: string;
7628
+ imageSrc: string;
7629
+ relationName: string;
7630
+ tooltip: string;
7631
+ initialsFontSize: number;
7620
7632
  set initials(value: string);
7621
7633
  get initials(): string;
7622
7634
  private _initials;
@@ -7631,14 +7643,24 @@ declare class AvatarComponent implements OnInit {
7631
7643
  private _setRelationInitials;
7632
7644
  private _getImageContent;
7633
7645
  private _setBackgroundColor;
7646
+ private _handleRelationSet;
7647
+ /**
7648
+ * Returns the font size (in SVG user units) at which the initials still fit inside the round avatar.
7649
+ *
7650
+ * The widest text that fits a circle depends on how tall that text is: for a centred single line with cap height
7651
+ * `h` the usable chord is `2 * sqrt(r^2 - (h / 2)^2)`. Estimating the text width as
7652
+ * `length * AVATAR_GLYPH_ADVANCE_RATIO * fontSize` and the cap height as `AVATAR_CAP_HEIGHT_RATIO * fontSize` and solving for the
7653
+ * font size gives the expression below, capped at `AVATAR_MAX_FONT_SIZE` so short initials keep their normal size.
7654
+ */
7655
+ private _calculateFontSize;
7634
7656
  private _detectChanges;
7635
7657
  static ɵfac: i0.ɵɵFactoryDeclaration<AvatarComponent, never>;
7636
- static ɵcmp: i0.ɵɵComponentDeclaration<AvatarComponent, "co-avatar", never, { "image": { "alias": "image"; "required": false; }; "relationId": { "alias": "relationId"; "required": false; }; "relation": { "alias": "relation"; "required": false; }; "showBranchNr": { "alias": "showBranchNr"; "required": false; }; }, {}, never, never, false, never>;
7658
+ static ɵcmp: i0.ɵɵComponentDeclaration<AvatarComponent, "co-avatar", never, { "image": { "alias": "image"; "required": false; }; "relationId": { "alias": "relationId"; "required": false; }; "tooltipTitle": { "alias": "tooltipTitle"; "required": false; }; "relation": { "alias": "relation"; "required": false; }; "showRelationNr": { "alias": "showRelationNr"; "required": false; }; }, {}, never, never, false, never>;
7637
7659
  }
7638
7660
 
7639
7661
  declare class AvatarModule {
7640
7662
  static ɵfac: i0.ɵɵFactoryDeclaration<AvatarModule, never>;
7641
- static ɵmod: i0.ɵɵNgModuleDeclaration<AvatarModule, [typeof AvatarComponent], [typeof i2.CommonModule, typeof CoreModule], [typeof AvatarComponent]>;
7663
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AvatarModule, [typeof AvatarComponent], [typeof i2.CommonModule, typeof CoreModule, typeof i3.TooltipDirectiveModule], [typeof AvatarComponent]>;
7642
7664
  static ɵinj: i0.ɵɵInjectorDeclaration<AvatarModule>;
7643
7665
  }
7644
7666
 
@@ -10006,7 +10028,7 @@ declare class TransactionSalesOverviewButtonBarButtonComponent extends Transacti
10006
10028
  showCategories: boolean;
10007
10029
  constructor(iconCacheService: IconCacheService, changeDetector: ChangeDetectorRef, _transactionEventService: TransactionEventService, _mappingService: TransactionMappingService, _dictionaryService: DictionaryService, _screenConfigService: TransactionScreenConfigurationService, _transactionService: TransactionService, _elementRef: ElementRef, _renderer: Renderer2, _transactionBaseService: TransactionService);
10008
10030
  currentIcon(): Icon.CartShoppingRegular | Icon.ChartPieSimpleRegular;
10009
- currentTitle(): "MARGINS" | "OVERVIEW";
10031
+ currentTitle(): "OVERVIEW" | "MARGINS";
10010
10032
  ngOnDestroy(): void;
10011
10033
  handleClickWrapper(event: MouseEvent): void;
10012
10034
  handleMarginClicked(event: MouseEvent, category: TransactionTypeCategory): void;
@@ -10032,7 +10054,7 @@ declare class TransactionPurchaseOverviewButtonBarButtonComponent extends Transa
10032
10054
  constructor(iconCacheService: IconCacheService, transactionHeaderService: TransactionHeaderService, transactionEventService: TransactionEventService, changeDetector: ChangeDetectorRef, _mappingService: TransactionMappingService, _transactionService: TransactionService, _elementRef: ElementRef);
10033
10055
  ngOnDestroy(): void;
10034
10056
  currentIcon(): Icon.CartShoppingRegular | Icon.ChartPieSimpleRegular;
10035
- currentTitle(): "MARGINS" | "OVERVIEW";
10057
+ currentTitle(): "OVERVIEW" | "MARGINS";
10036
10058
  handleClickWrapper(event: MouseEvent): void;
10037
10059
  handleMarginClicked(event: MouseEvent, category: TransactionTypeCategory): Promise<void>;
10038
10060
  private handleDocumentClick;
@@ -10084,7 +10106,7 @@ declare class TransactionSalesQuotationButtonBarButtonComponent extends Transact
10084
10106
  showCategories: boolean;
10085
10107
  constructor(iconCacheService: IconCacheService, changeDetector: ChangeDetectorRef, _transactionEventService: TransactionEventService, _mappingService: TransactionMappingService, _dictionaryService: DictionaryService, _screenConfigService: TransactionScreenConfigurationService, _transactionService: TransactionService, _elementRef: ElementRef, _renderer: Renderer2, _transactionBaseService: TransactionService);
10086
10108
  currentIcon(): Icon.CartShoppingRegular | Icon.ChartPieSimpleRegular;
10087
- currentTitle(): "MARGINS" | "OVERVIEW";
10109
+ currentTitle(): "OVERVIEW" | "MARGINS";
10088
10110
  ngOnDestroy(): void;
10089
10111
  handleClickWrapper(event: MouseEvent): void;
10090
10112
  handleMarginClicked(event: MouseEvent, category: TransactionTypeCategory): void;
@@ -13803,7 +13825,6 @@ declare class TransactionHeaderBlockComponent {
13803
13825
  secondBlockTemplate: TemplateRef<any>;
13804
13826
  thirdBlockTemplate: TemplateRef<any>;
13805
13827
  hiddenBlockTemplate: TemplateRef<any>;
13806
- dontShowEditIcon: boolean;
13807
13828
  headerClick: EventEmitter<MouseEvent>;
13808
13829
  showClass(): boolean;
13809
13830
  handleHostClick(event: MouseEvent): void;
@@ -13811,7 +13832,7 @@ declare class TransactionHeaderBlockComponent {
13811
13832
  constructor(iconCacheService: IconCacheService);
13812
13833
  onHeaderClick(event: MouseEvent): void;
13813
13834
  static ɵfac: i0.ɵɵFactoryDeclaration<TransactionHeaderBlockComponent, never>;
13814
- static ɵcmp: i0.ɵɵComponentDeclaration<TransactionHeaderBlockComponent, "co-transaction-header-block", never, { "headerBlockTemplate": { "alias": "headerBlockTemplate"; "required": false; }; "firstBlockTemplate": { "alias": "firstBlockTemplate"; "required": false; }; "secondBlockTemplate": { "alias": "secondBlockTemplate"; "required": false; }; "thirdBlockTemplate": { "alias": "thirdBlockTemplate"; "required": false; }; "hiddenBlockTemplate": { "alias": "hiddenBlockTemplate"; "required": false; }; "dontShowEditIcon": { "alias": "dontShowEditIcon"; "required": false; }; }, { "headerClick": "headerClick"; }, never, never, false, never>;
13835
+ static ɵcmp: i0.ɵɵComponentDeclaration<TransactionHeaderBlockComponent, "co-transaction-header-block", never, { "headerBlockTemplate": { "alias": "headerBlockTemplate"; "required": false; }; "firstBlockTemplate": { "alias": "firstBlockTemplate"; "required": false; }; "secondBlockTemplate": { "alias": "secondBlockTemplate"; "required": false; }; "thirdBlockTemplate": { "alias": "thirdBlockTemplate"; "required": false; }; "hiddenBlockTemplate": { "alias": "hiddenBlockTemplate"; "required": false; }; }, { "headerClick": "headerClick"; }, never, never, false, never>;
13815
13836
  }
13816
13837
 
13817
13838
  declare class TransactionHeaderBlockModule {
@@ -14157,8 +14178,14 @@ declare class TransactionHeaderComponent {
14157
14178
  static ɵcmp: i0.ɵɵComponentDeclaration<TransactionHeaderComponent, "co-transaction-header", never, { "transaction": { "alias": "transaction"; "required": false; }; }, {}, never, never, false, never>;
14158
14179
  }
14159
14180
 
14181
+ declare enum ContactValueKind {
14182
+ Email = "email",
14183
+ Phone = "phone"
14184
+ }
14185
+
14160
14186
  declare class TransactionHeaderRelationComponent extends TransactionHeaderBaseComponent implements OnInit, OnDestroy {
14161
14187
  readonly icons: typeof Icon;
14188
+ readonly contactKinds: typeof ContactValueKind;
14162
14189
  showClass(): boolean;
14163
14190
  firstAddress: string;
14164
14191
  firstPostal: string;
@@ -14180,9 +14207,49 @@ declare class TransactionHeaderRelationComponent extends TransactionHeaderBaseCo
14180
14207
  static ɵcmp: i0.ɵɵComponentDeclaration<TransactionHeaderRelationComponent, "co-transaction-header-relation", never, {}, {}, never, never, false, never>;
14181
14208
  }
14182
14209
 
14210
+ declare class TransactionHeaderContactComponent implements OnInit, OnDestroy {
14211
+ iconCacheService: IconCacheService;
14212
+ private _changeDetector;
14213
+ value: string;
14214
+ kind: ContactValueKind;
14215
+ showClass(): boolean;
14216
+ readonly icons: typeof Icon;
14217
+ copied: boolean;
14218
+ /**
14219
+ * Href of the `mailto:` / `tel:` link, or `undefined` when the value must render as plain text.
14220
+ * Only touch-only devices get a link: there a tap to call or to mail is what the user wants, and a
14221
+ * long press hands them the operating system's own "copy" menu. With a mouse the same link would
14222
+ * hijack the click and open an unwanted mail client.
14223
+ */
14224
+ get href(): string;
14225
+ private _touchOnlyDevice;
14226
+ private _copyResetTimeoutId;
14227
+ constructor(iconCacheService: IconCacheService, _changeDetector: ChangeDetectorRef);
14228
+ ngOnInit(): void;
14229
+ ngOnDestroy(): void;
14230
+ handleValueClick(event: MouseEvent): void;
14231
+ handleCopyClick(event: MouseEvent): void;
14232
+ private _isTouchOnlyDevice;
14233
+ private _copyUsingFallback;
14234
+ private _confirmCopy;
14235
+ /**
14236
+ * Fallback for the pages where `navigator.clipboard` is missing — it needs a secure context, so it is
14237
+ * simply absent when iOne is served over plain http.
14238
+ */
14239
+ private _copyUsingSelection;
14240
+ static ɵfac: i0.ɵɵFactoryDeclaration<TransactionHeaderContactComponent, never>;
14241
+ static ɵcmp: i0.ɵɵComponentDeclaration<TransactionHeaderContactComponent, "co-transaction-header-contact", never, { "value": { "alias": "value"; "required": false; }; "kind": { "alias": "kind"; "required": false; }; }, {}, never, never, false, never>;
14242
+ }
14243
+
14244
+ declare class TransactionHeaderContactModule {
14245
+ static ɵfac: i0.ɵɵFactoryDeclaration<TransactionHeaderContactModule, never>;
14246
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TransactionHeaderContactModule, [typeof TransactionHeaderContactComponent], [typeof i2.CommonModule, typeof i3.IconModule, typeof PipeModule], [typeof TransactionHeaderContactComponent]>;
14247
+ static ɵinj: i0.ɵɵInjectorDeclaration<TransactionHeaderContactModule>;
14248
+ }
14249
+
14183
14250
  declare class TransactionHeaderRelationModule {
14184
14251
  static ɵfac: i0.ɵɵFactoryDeclaration<TransactionHeaderRelationModule, never>;
14185
- static ɵmod: i0.ɵɵNgModuleDeclaration<TransactionHeaderRelationModule, [typeof TransactionHeaderRelationComponent], [typeof i2.CommonModule, typeof TransactionHeaderBlockModule, typeof CheckoutModule, typeof RelationTypeModule, typeof CoreModule, typeof RelationGeneralModule, typeof RelationAddressModule, typeof RelationAddressesModule, typeof i3.InputCheckboxModule, typeof RelationContactDetailsModule, typeof RelationPreferencesModule, typeof PipeModule, typeof i3.CoDialogModule, typeof TransactionFilterCategoriesModule, typeof i3.ButtonModule, typeof i3.FormModule, typeof TransactionHeaderPopupModule, typeof i3.IconModule, typeof AvatarModule, typeof i3.ScreenConfigurationModule], [typeof TransactionHeaderRelationComponent]>;
14252
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TransactionHeaderRelationModule, [typeof TransactionHeaderRelationComponent], [typeof i2.CommonModule, typeof TransactionHeaderBlockModule, typeof TransactionHeaderContactModule, typeof CheckoutModule, typeof RelationTypeModule, typeof CoreModule, typeof RelationGeneralModule, typeof RelationAddressModule, typeof RelationAddressesModule, typeof i3.InputCheckboxModule, typeof RelationContactDetailsModule, typeof RelationPreferencesModule, typeof PipeModule, typeof i3.CoDialogModule, typeof TransactionFilterCategoriesModule, typeof i3.ButtonModule, typeof i3.FormModule, typeof TransactionHeaderPopupModule, typeof i3.IconModule, typeof AvatarModule, typeof i3.ScreenConfigurationModule], [typeof TransactionHeaderRelationComponent]>;
14186
14253
  static ɵinj: i0.ɵɵInjectorDeclaration<TransactionHeaderRelationModule>;
14187
14254
  }
14188
14255
 
@@ -14565,6 +14632,7 @@ declare class TransactionQuickAccessOverviewModule {
14565
14632
  }
14566
14633
 
14567
14634
  declare class TransactionQuickAccessOrderDeliveryComponent extends TransactionQuickAccessSendMethodBaseComponent implements OnInit, AfterViewInit, OnDestroy {
14635
+ protected readonly ExtraDocValues: typeof ExtraDocValues;
14568
14636
  showClass(): boolean;
14569
14637
  reportDocumentEmailRequest: ReportingDocumentEmailSignDocBaseRequest;
14570
14638
  reportDocumentPrintRequest: ReportingDocumentPrintSignDocBaseRequest;
@@ -14579,6 +14647,7 @@ declare class TransactionQuickAccessOrderDeliveryComponent extends TransactionQu
14579
14647
  ngAfterViewInit(): void;
14580
14648
  ngOnDestroy(): void;
14581
14649
  handleSelectAllLines(value: boolean): void;
14650
+ handleNoDeliveryNoteChanged(value: boolean): Promise<void>;
14582
14651
  protected getDefaultEmailAddressList(): Promise<string[]>;
14583
14652
  protected getDefaultSendMethod(): Promise<number>;
14584
14653
  protected getEmailLayouts(): Promise<ReportLayoutSelectionEmail[]>;
@@ -16591,7 +16660,9 @@ declare class TransactionSalesPersonInputModule {
16591
16660
  static ɵinj: i0.ɵɵInjectorDeclaration<TransactionSalesPersonInputModule>;
16592
16661
  }
16593
16662
 
16594
- declare class TransactionHeaderHandledByComponent implements ScreenConfigAdapterComponent {
16663
+ declare class TransactionHeaderHandledByComponent implements ScreenConfigAdapterComponent, OnInit {
16664
+ private _mappingService;
16665
+ private _dictionary;
16595
16666
  transaction: TransactionInfoResponse;
16596
16667
  showClass(): boolean;
16597
16668
  objectConfigName: string;
@@ -16602,13 +16673,18 @@ declare class TransactionHeaderHandledByComponent implements ScreenConfigAdapter
16602
16673
  maxLength: number;
16603
16674
  decimals: number;
16604
16675
  redErrorBackground: boolean;
16676
+ relationName: string;
16677
+ handledByDescription: string;
16678
+ tooltip: string;
16679
+ constructor(_mappingService: TransactionMappingService, _dictionary: DictionaryService);
16680
+ ngOnInit(): void;
16605
16681
  static ɵfac: i0.ɵɵFactoryDeclaration<TransactionHeaderHandledByComponent, never>;
16606
16682
  static ɵcmp: i0.ɵɵComponentDeclaration<TransactionHeaderHandledByComponent, "co-transaction-header-handled-by", never, { "transaction": { "alias": "transaction"; "required": false; }; }, {}, never, never, false, never>;
16607
16683
  }
16608
16684
 
16609
16685
  declare class TransactionHeaderHandledByModule {
16610
16686
  static ɵfac: i0.ɵɵFactoryDeclaration<TransactionHeaderHandledByModule, never>;
16611
- static ɵmod: i0.ɵɵNgModuleDeclaration<TransactionHeaderHandledByModule, [typeof TransactionHeaderHandledByComponent], [typeof i2.CommonModule, typeof AvatarModule], [typeof TransactionHeaderHandledByComponent]>;
16687
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TransactionHeaderHandledByModule, [typeof TransactionHeaderHandledByComponent], [typeof i2.CommonModule, typeof AvatarModule, typeof i3.TooltipDirectiveModule], [typeof TransactionHeaderHandledByComponent]>;
16612
16688
  static ɵinj: i0.ɵɵInjectorDeclaration<TransactionHeaderHandledByModule>;
16613
16689
  }
16614
16690
 
@@ -17,10 +17,6 @@
17
17
  border-radius: $tp-transaction-header-block-border-radius $tp-transaction-header-block-border-radius 0 0;
18
18
  z-index: 100;
19
19
  }
20
- &.no-pointer {
21
- pointer-events: none;
22
- cursor: initial;
23
- }
24
20
  .transaction-header-block-header {
25
21
  font-family: $tp-transaction-header-block-label-font-family;
26
22
  display: flex;
@@ -0,0 +1,65 @@
1
+ @include export-module('co-transaction-header-contact-layout') {
2
+ .co-transaction-header-contact {
3
+ display: flex;
4
+ align-items: center;
5
+ column-gap: var(--co-transaction-header-contact-column-gap);
6
+ min-width: 0;
7
+
8
+ .transaction-header-contact-value {
9
+ flex: 1 1 auto;
10
+ min-width: 0;
11
+ overflow: hidden;
12
+ text-overflow: ellipsis;
13
+ white-space: nowrap;
14
+ text-decoration: none;
15
+ }
16
+
17
+ .transaction-header-contact-copy {
18
+ display: flex;
19
+ align-items: center;
20
+ justify-content: center;
21
+ flex-shrink: 0;
22
+ width: var(--co-transaction-header-contact-copy-hit-size);
23
+ height: var(--co-transaction-header-contact-copy-hit-size);
24
+ cursor: pointer;
25
+ // Always visible, so the option is discoverable without a hovering pointer.
26
+ opacity: var(--co-transaction-header-contact-copy-idle-opacity);
27
+ transition: var(--co-transaction-header-contact-copy-transition);
28
+
29
+ &:hover, &.copied {
30
+ opacity: 1;
31
+ }
32
+
33
+ .co-icon {
34
+ width: var(--co-transaction-header-contact-copy-icon-size);
35
+ height: var(--co-transaction-header-contact-copy-icon-size);
36
+ }
37
+ }
38
+
39
+ // Deliberately not the screen-mobile mixin: the target has to grow wherever a finger is doing the
40
+ // tapping, which is the same condition under which the component renders a mailto: / tel: link.
41
+ // A tablet in landscape is wider than the mobile breakpoint and still needs the bigger target.
42
+ @media only screen and (max-width: 700px), (hover: none) and (pointer: coarse) {
43
+ min-height: var(--co-transaction-header-contact-copy-hit-size-touch);
44
+
45
+ .transaction-header-contact-copy {
46
+ width: var(--co-transaction-header-contact-copy-hit-size-touch);
47
+ height: var(--co-transaction-header-contact-copy-hit-size-touch);
48
+ }
49
+ }
50
+ }
51
+
52
+ .transaction-header-contact-clipboard-proxy {
53
+ position: fixed;
54
+ top: 0;
55
+ left: 0;
56
+ width: 1px;
57
+ height: 1px;
58
+ padding: 0;
59
+ border-width: 0;
60
+ // iOS zooms in on a focused field below 16px, even one it cannot see.
61
+ font-size: 16px;
62
+ opacity: 0;
63
+ pointer-events: none;
64
+ }
65
+ }
@@ -0,0 +1,25 @@
1
+ $tp-transaction-header-contact-column-gap: 4px !default;
2
+ $tp-transaction-header-contact-copy-icon-size: 11px !default;
3
+ $tp-transaction-header-contact-copy-hit-size: 16px !default;
4
+ // A finger needs a target of its own; on touch the contact row grows to fit it.
5
+ $tp-transaction-header-contact-copy-hit-size-touch: 32px !default;
6
+ $tp-transaction-header-contact-copy-idle-opacity: 0.45 !default;
7
+ $tp-transaction-header-contact-copy-transition: opacity 0.2s !default;
8
+
9
+ $tp-transaction-header-contact-copy-color: $tp-color-text-grey !default;
10
+ $tp-transaction-header-contact-copy-hover-color: $tp-color-action !default;
11
+ $tp-transaction-header-contact-copied-color: $tp-color-active !default;
12
+
13
+ @include export-module('co-transaction-header-contact-tokens') {
14
+ :root {
15
+ --co-transaction-header-contact-column-gap: #{$tp-transaction-header-contact-column-gap};
16
+ --co-transaction-header-contact-copy-icon-size: #{$tp-transaction-header-contact-copy-icon-size};
17
+ --co-transaction-header-contact-copy-hit-size: #{$tp-transaction-header-contact-copy-hit-size};
18
+ --co-transaction-header-contact-copy-hit-size-touch: #{$tp-transaction-header-contact-copy-hit-size-touch};
19
+ --co-transaction-header-contact-copy-idle-opacity: #{$tp-transaction-header-contact-copy-idle-opacity};
20
+ --co-transaction-header-contact-copy-transition: #{$tp-transaction-header-contact-copy-transition};
21
+ --co-transaction-header-contact-copy-color: #{$tp-transaction-header-contact-copy-color};
22
+ --co-transaction-header-contact-copy-hover-color: #{$tp-transaction-header-contact-copy-hover-color};
23
+ --co-transaction-header-contact-copied-color: #{$tp-transaction-header-contact-copied-color};
24
+ }
25
+ }
@@ -0,0 +1,34 @@
1
+ @include export-module('co-transaction-header-contact-theme') {
2
+ .co-transaction-header-contact {
3
+ .transaction-header-contact-value {
4
+ color: inherit;
5
+ }
6
+
7
+ .transaction-header-contact-copy {
8
+ svg {
9
+ fill: var(--co-transaction-header-contact-copy-color);
10
+ }
11
+ [fill] {
12
+ fill: var(--co-transaction-header-contact-copy-color);
13
+ }
14
+
15
+ &:hover {
16
+ svg {
17
+ fill: var(--co-transaction-header-contact-copy-hover-color);
18
+ }
19
+ [fill] {
20
+ fill: var(--co-transaction-header-contact-copy-hover-color);
21
+ }
22
+ }
23
+
24
+ &.copied {
25
+ svg {
26
+ fill: var(--co-transaction-header-contact-copied-color);
27
+ }
28
+ [fill] {
29
+ fill: var(--co-transaction-header-contact-copied-color);
30
+ }
31
+ }
32
+ }
33
+ }
34
+ }
@@ -0,0 +1,4 @@
1
+ @import "../../../../../../style/mixin";
2
+ @import "./_material-definition";
3
+ @import "./_layout";
4
+ @import "./_theme";
@@ -125,7 +125,7 @@
125
125
  .header-relation-email {
126
126
  margin: $tp-co-transaction-header-relation-content-email-margin;
127
127
  }
128
- .text-overflow {
128
+ .text-overflow, .co-transaction-header-contact .transaction-header-contact-value {
129
129
  max-height: $tp-co-transaction-header-relation-content-line-height;
130
130
  text-overflow: ellipsis;
131
131
  overflow: hidden;
@@ -2,6 +2,7 @@
2
2
  @import "./layout";
3
3
  @import "./theme";
4
4
  @import "../../../core/base/components/transaction-header-block/style/material";
5
+ @import "../../../core/base/components/transaction-header-contact/style/material";
5
6
  @import "../../../relation/relation-type/style/material";
6
7
  @import "../../../relation/relation-addresses/style/material";
7
8
  @import "../../../relation/relation-address/style/material";
@@ -1,12 +1,17 @@
1
1
  @include export-module('co-transaction-quick-access-order-delivery-layout') {
2
2
  .co-transaction-quick-access-order-delivery {
3
- .select-all-wrapper {
3
+ .quick-access-content-wrapper {
4
4
  display: flex;
5
- align-items: center;
6
- }
5
+ row-gap: 10px;
6
+ align-items: start;
7
+ flex-direction: column;
7
8
 
8
- .hidden {
9
- display: none;
9
+ .sub-section {
10
+ display: flex;
11
+ align-items: center;
12
+ flex-direction: row;
13
+ column-gap: 10px;
14
+ }
10
15
  }
11
16
  }
12
17
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@colijnit/transaction",
3
- "version": "262.1.44",
3
+ "version": "262.1.46",
4
4
  "description": "Colijn IT transaction module for Angular 20",
5
5
  "repository": "npm/npm",
6
6
  "author": "Colijn IT",
@@ -13,13 +13,13 @@
13
13
  "@colijnit/catalog": ">=262.1.0",
14
14
  "@colijnit/corecomponents_v12": ">=262.1.16",
15
15
  "@colijnit/ioneconnector": ">=262.1.0",
16
- "@colijnit/mainapi": ">=262.1.17",
16
+ "@colijnit/mainapi": ">=262.1.18",
17
17
  "@colijnit/product": ">=262.1.0",
18
18
  "@colijnit/relation": ">=262.1.0",
19
19
  "@colijnit/relationapi": ">=262.1.1",
20
20
  "@colijnit/sharedapi": ">=1.0.20",
21
- "@colijnit/sharedcomponents": ">=262.1.11",
22
- "@colijnit/transactionapi": ">=262.1.18"
21
+ "@colijnit/sharedcomponents": ">=262.1.23",
22
+ "@colijnit/transactionapi": ">=262.1.19"
23
23
  },
24
24
  "dependencies": {
25
25
  "tslib": "^2.8.1"