@annalib/anna-feature-spots-approval 0.0.2

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 (102) hide show
  1. package/README.md +63 -0
  2. package/anna-feature-shared-lib/index.d.ts +5 -0
  3. package/anna-feature-shared-lib/public-api.d.ts +16 -0
  4. package/anna-feature-shared-lib/src/biz-rules/constants/generic-business-rule-page.constants.d.ts +5 -0
  5. package/anna-feature-shared-lib/src/biz-rules/models/generic-business-rule-history-popup.model.d.ts +10 -0
  6. package/anna-feature-shared-lib/src/biz-rules/services/generic-business-rule-common-SI-BI-logic.service.d.ts +20 -0
  7. package/anna-feature-shared-lib/src/constants/generic-feature-related-constants.d.ts +3 -0
  8. package/anna-feature-shared-lib/src/daily-revision-listing/components/action-comments-popup/action-comments-popup.component.d.ts +35 -0
  9. package/anna-feature-shared-lib/src/daily-revision-listing/components/offer-rejection-popup/offer-rejection-popup.component.d.ts +44 -0
  10. package/anna-feature-shared-lib/src/daily-revision-listing/models/generic-daily-revision-listing.model.d.ts +64 -0
  11. package/anna-feature-shared-lib/src/daily-revision-listing/models/generic-offers-awaiting-approval.model.d.ts +36 -0
  12. package/anna-feature-shared-lib/src/daily-revision-listing/models/generic-todays-anna-offers-listing.model.d.ts +34 -0
  13. package/anna-feature-shared-lib/src/daily-revision-listing/models/generic-todays-user-offers-listing.model.d.ts +39 -0
  14. package/anna-feature-shared-lib/src/daily-revision-listing/models/spot-approval-generic.model.d.ts +12 -0
  15. package/anna-feature-shared-lib/src/daily-revision-listing/services/generic-daily-revision-listing.service.d.ts +12 -0
  16. package/anna-feature-shared-lib/src/generic-primary-order-panel/models/generic-primary-order-panel.model.d.ts +5 -0
  17. package/anna-feature-shared-lib/src/generic-primary-order-panel/services/generic-primary-order-panel.service.d.ts +13 -0
  18. package/anna-feature-shared-lib/src/order-listing/constants/generic-order-listing.constant.d.ts +18 -0
  19. package/anna-feature-shared-lib/src/spot-approval/models/spot-approval-generic-in-feature-shared-lib.model.d.ts +7 -0
  20. package/anna-feature-shared-lib/src/spot-approval/services/spot-approval-generic-in-feature-shared-lib.service.d.ts +14 -0
  21. package/drr-listing/index.d.ts +5 -0
  22. package/drr-listing/public-api.d.ts +8 -0
  23. package/drr-listing/src/daily-revision-filter-modal/config/daily-revision-listing-backend-service.token.d.ts +10 -0
  24. package/drr-listing/src/daily-revision-filter-modal/daily-revision-filter-modal.component.d.ts +89 -0
  25. package/drr-listing/src/daily-revision-filter-modal/models/daily-revision-filter-modal.model.d.ts +41 -0
  26. package/drr-listing/src/daily-revision-listing/config/daily-revision-listing-backend-service.token.d.ts +18 -0
  27. package/drr-listing/src/daily-revision-listing/constants/daily-revision-listing.constant.d.ts +80 -0
  28. package/drr-listing/src/daily-revision-listing/constants/orders.constant.d.ts +69 -0
  29. package/drr-listing/src/daily-revision-listing/daily-revision-listing.component.d.ts +154 -0
  30. package/drr-listing/src/daily-revision-listing/models/daily-revision-listing.model.d.ts +33 -0
  31. package/drr-listing/src/daily-revision-listing/services/daily-revision-listing.service.d.ts +25 -0
  32. package/fesm2022/annalib-anna-feature-spots-approval-anna-feature-shared-lib.mjs +670 -0
  33. package/fesm2022/annalib-anna-feature-spots-approval-anna-feature-shared-lib.mjs.map +1 -0
  34. package/fesm2022/annalib-anna-feature-spots-approval-drr-listing.mjs +2844 -0
  35. package/fesm2022/annalib-anna-feature-spots-approval-drr-listing.mjs.map +1 -0
  36. package/fesm2022/annalib-anna-feature-spots-approval-spot-approval-shared-lib.mjs +112 -0
  37. package/fesm2022/annalib-anna-feature-spots-approval-spot-approval-shared-lib.mjs.map +1 -0
  38. package/fesm2022/annalib-anna-feature-spots-approval-spots-approval.mjs +12115 -0
  39. package/fesm2022/annalib-anna-feature-spots-approval-spots-approval.mjs.map +1 -0
  40. package/fesm2022/annalib-anna-feature-spots-approval-src-lib-all-offers-listing.mjs +1369 -0
  41. package/fesm2022/annalib-anna-feature-spots-approval-src-lib-all-offers-listing.mjs.map +1 -0
  42. package/fesm2022/annalib-anna-feature-spots-approval-src-lib-spot-approval-seller-or-buyer-revision.mjs +1223 -0
  43. package/fesm2022/annalib-anna-feature-spots-approval-src-lib-spot-approval-seller-or-buyer-revision.mjs.map +1 -0
  44. package/fesm2022/annalib-anna-feature-spots-approval.mjs +88 -0
  45. package/fesm2022/annalib-anna-feature-spots-approval.mjs.map +1 -0
  46. package/index.d.ts +5 -0
  47. package/lib/anna-feature-spots-approval.module.d.ts +20 -0
  48. package/package.json +57 -0
  49. package/public-api.d.ts +1 -0
  50. package/spot-approval-shared-lib/index.d.ts +5 -0
  51. package/spot-approval-shared-lib/public-api.d.ts +2 -0
  52. package/spot-approval-shared-lib/src/revision-offer-status-progress-view/revision-offer-status-progress-view.component.d.ts +19 -0
  53. package/spot-approval-shared-lib/src/revision-summary-panel/revision-summary-panel.component.d.ts +21 -0
  54. package/spots-approval/index.d.ts +5 -0
  55. package/spots-approval/public-api.d.ts +21 -0
  56. package/spots-approval/src/add-os-spots-popup/add-os-spots-popup.component.d.ts +59 -0
  57. package/spots-approval/src/anna-revision/anna-revision.component.d.ts +551 -0
  58. package/spots-approval/src/badly-behaved-spot-details-popup/badly-behaved-spot-details-popup.component.d.ts +38 -0
  59. package/spots-approval/src/badly-behaved-spot-details-popup/models/badly-behaved-spot-details-popup.model.d.ts +15 -0
  60. package/spots-approval/src/badly-behaved-spot-details-popup/services/badly-behaved-spot-details-popup.service.d.ts +7 -0
  61. package/spots-approval/src/cancel-offers-popup/cancel-offers-popup.component.d.ts +36 -0
  62. package/spots-approval/src/config/spots-approval-backend-service.token.d.ts +30 -0
  63. package/spots-approval/src/constants/create-or-edit-offers.constant.d.ts +44 -0
  64. package/spots-approval/src/constants/spots-approval.constant.d.ts +129 -0
  65. package/spots-approval/src/create-or-edit-adu-or-bonus/create-or-edit-adu-or-bonus.component.d.ts +214 -0
  66. package/spots-approval/src/create-or-edit-offers-popup/create-or-edit-offers-popup.component.d.ts +333 -0
  67. package/spots-approval/src/credit-confirmation-table-popup/credit-confirmation-table-popup.component.d.ts +72 -0
  68. package/spots-approval/src/models/anna-revisions-backend.model.d.ts +325 -0
  69. package/spots-approval/src/models/anna-revisions-enums.model.d.ts +53 -0
  70. package/spots-approval/src/models/anna-revisions-response.model.d.ts +355 -0
  71. package/spots-approval/src/models/anna-revisions-total-rows.model.d.ts +124 -0
  72. package/spots-approval/src/models/create-or-edit-offer-total-rows.model.d.ts +73 -0
  73. package/spots-approval/src/models/create-or-edit-offers-popup.model.d.ts +384 -0
  74. package/spots-approval/src/models/order-revision-detail.model.d.ts +156 -0
  75. package/spots-approval/src/offered-mg-edit-table/offered-mg-edit-table.component.d.ts +74 -0
  76. package/spots-approval/src/other-spots-edit-table/other-spots-edit-table.component.d.ts +44 -0
  77. package/spots-approval/src/political-rate-warning-popup/political-rate-warning-popup.component.d.ts +26 -0
  78. package/spots-approval/src/revision-header/revision-header.component.d.ts +21 -0
  79. package/spots-approval/src/revision-summary/revision-summary.component.d.ts +22 -0
  80. package/spots-approval/src/select-spot-length-popup/select-spot-length-popup.component.d.ts +37 -0
  81. package/spots-approval/src/services/create-or-edit-offers-popup.service.d.ts +25 -0
  82. package/spots-approval/src/services/generic-spots-approval.service.d.ts +99 -0
  83. package/spots-approval/src/services/spots-approval.service.d.ts +81 -0
  84. package/spots-approval/src/spot-details-popup/spot-details-popup.component.d.ts +57 -0
  85. package/src/lib/all-offers-listing/index.d.ts +5 -0
  86. package/src/lib/all-offers-listing/public-api.d.ts +6 -0
  87. package/src/lib/all-offers-listing/src/all-offers-listing.component.d.ts +162 -0
  88. package/src/lib/all-offers-listing/src/configs/all-offers-listing-backend.token.d.ts +11 -0
  89. package/src/lib/all-offers-listing/src/models/all-offers-filter.model.d.ts +12 -0
  90. package/src/lib/all-offers-listing/src/models/all-offers-listing-backend.model.d.ts +88 -0
  91. package/src/lib/all-offers-listing/src/models/all-offers-listing.constant.d.ts +84 -0
  92. package/src/lib/all-offers-listing/src/models/all-offers-listing.model.d.ts +95 -0
  93. package/src/lib/all-offers-listing/src/services/all-offers-listing.service.d.ts +25 -0
  94. package/src/lib/spot-approval-seller-or-buyer-revision/index.d.ts +5 -0
  95. package/src/lib/spot-approval-seller-or-buyer-revision/public-api.d.ts +6 -0
  96. package/src/lib/spot-approval-seller-or-buyer-revision/src/seller-or-buyer-revision/models/seller-or-buyer-revision-additional-data.model.d.ts +73 -0
  97. package/src/lib/spot-approval-seller-or-buyer-revision/src/seller-or-buyer-revision/models/seller-or-buyer-revision-backend.model.d.ts +57 -0
  98. package/src/lib/spot-approval-seller-or-buyer-revision/src/seller-or-buyer-revision/models/seller-or-buyer-revision-response.model.d.ts +117 -0
  99. package/src/lib/spot-approval-seller-or-buyer-revision/src/seller-or-buyer-revision/models/seller-or-buyer-revision-total-row.model.d.ts +29 -0
  100. package/src/lib/spot-approval-seller-or-buyer-revision/src/seller-or-buyer-revision/models/seller-or-buyer-revision.constant.d.ts +13 -0
  101. package/src/lib/spot-approval-seller-or-buyer-revision/src/seller-or-buyer-revision/models/seller-or-buyer-revision.token.d.ts +14 -0
  102. package/src/lib/spot-approval-seller-or-buyer-revision/src/seller-or-buyer-revision/seller-or-buyer-revision.component.d.ts +128 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annalib-anna-feature-spots-approval-anna-feature-shared-lib.mjs","sources":["../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/biz-rules/constants/generic-business-rule-page.constants.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/biz-rules/models/generic-business-rule-history-popup.model.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/biz-rules/services/generic-business-rule-common-SI-BI-logic.service.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/generic-primary-order-panel/models/generic-primary-order-panel.model.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/generic-primary-order-panel/services/generic-primary-order-panel.service.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/daily-revision-listing/models/generic-daily-revision-listing.model.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/daily-revision-listing/models/generic-offers-awaiting-approval.model.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/daily-revision-listing/models/generic-todays-anna-offers-listing.model.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/daily-revision-listing/models/generic-todays-user-offers-listing.model.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/daily-revision-listing/services/generic-daily-revision-listing.service.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/order-listing/constants/generic-order-listing.constant.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/daily-revision-listing/components/action-comments-popup/action-comments-popup.component.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/daily-revision-listing/components/action-comments-popup/action-comments-popup.component.html","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/daily-revision-listing/components/offer-rejection-popup/offer-rejection-popup.component.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/daily-revision-listing/components/offer-rejection-popup/offer-rejection-popup.component.html","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/spot-approval/services/spot-approval-generic-in-feature-shared-lib.service.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/src/constants/generic-feature-related-constants.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/public-api.ts","../../../projects/anna-feature-spots-approval/anna-feature-shared-lib/annalib-anna-feature-spots-approval-anna-feature-shared-lib.ts"],"sourcesContent":["export enum BizRuleStatus {\n AWAITING_APPROVAL = \"AWAITING_APPROVAL\",\n APPROVED = \"APPROVED\",\n SELLER_SAVED = \"SELLER_SAVED\",\n}\n","export enum BizHistoryType {\n STATION = \"station\",\n ADVERTISER = \"advertiser\",\n ORDER = \"order\",\n}\nexport class BuyerContactInfo {\n Email: string;\n Name: string;\n ContactNumber: string;\n}\n","/* eslint-disable max-len */\nimport { Injectable } from \"@angular/core\";\nimport { Subject } from \"rxjs\";\n\nimport { BuyerContactInfo } from \"../models/generic-business-rule-history-popup.model\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class GenericBusinessRuleCommonSIBILogicService {\n // Manage biz rule tab service\n stationIdFilterFromUrlForStationBizTab: any = null;\n\n filtersFromTheUrlForAdvertiserBizTab: any = null;\n stationIdfiltersFromTheUrlForAdvertiserBizTab: any = null;\n popupFiltersFromTheUrlForAdvertiserBizTab: any = null;\n\n filtersFromTheUrlForOrderBizTab: any = null;\n popupfiltersFromTheUrlForOrderBizTab: any = null;\n\n buyerDetailsChanged$ = new Subject<{ primaryBuyer: BuyerContactInfo; secondaryBuyer: BuyerContactInfo }>();\n\n private businessRulesSubject = new Subject<void>();\n businessRules$ = this.businessRulesSubject.asObservable();\n notifyBusinessRulesChanged(): void {\n this.businessRulesSubject.next();\n }\n}\n","// These value we get from backend. there is mapping at backend ex: WO_TRAFFIC (BE) comes as -> Non electronic\n\nexport enum OrderMetrics {\n rating = \"GRP\",\n imps = \"IMP('000)\",\n}\n\nexport type OrderRoute =\n | \"WOZ\"\n | \"WOC Unlinked\"\n | \"WOC Linked\"\n | \"Others\"\n | \"Non electronic\"\n | \"Medialine\"\n | \"WOP\"\n | \"Darwin\";\n","import { Injectable } from \"@angular/core\";\nimport { BehaviorSubject, Subject } from \"rxjs\";\n\nimport { OrderMetrics } from \"../models/generic-primary-order-panel.model\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class PrimaryOrderPanelService {\n parentContainerScrolled: Subject<boolean> = new Subject<boolean>();\n isPrimaryOrderPanelOpen$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n\n getOrderMetricsDropdownValues() {\n return [\n { id: 1, text: OrderMetrics.rating },\n { id: 2, text: OrderMetrics.imps },\n ];\n }\n}\n","export class DRROrderGenericData {\n orderId: string;\n revisionNo: number;\n alternateOrderId: string;\n primaryAEName: string;\n region: string;\n agencyName: string;\n location: string;\n advertiserName: string;\n flightStartDate: string;\n flightEndDate: string;\n revisionStartDate: string;\n revisionType: REVISIONTYPES;\n revisionTypeForEasyFilters: REVISIONTYPES;\n campaignId: number;\n isPayForPerformanceOrder: boolean;\n isWriteEnabledOrder: boolean;\n annaEnteredRepOrder: boolean;\n isStarred: boolean;\n\n constructor(data: any) {\n this.campaignId = +data.CampaignId;\n this.orderId = data.OrderId;\n this.primaryAEName = data.PrimaryAEName;\n this.region = data.Region;\n this.agencyName = data.AgencyName;\n this.location = data.Location;\n this.advertiserName = data.AdvertiserName;\n this.revisionStartDate = data.RevisionStartDate;\n this.flightStartDate = data.FlightStartDate;\n this.flightEndDate = data.FlightEndDate;\n this.revisionNo = data.RevisionNo;\n this.alternateOrderId = data.AlternateOrderId ? data.AlternateOrderId : \"-\";\n this.revisionType = data.RevisionType;\n this.revisionTypeForEasyFilters = data.RevisionType;\n this.isWriteEnabledOrder = data.IsAutomated;\n this.isStarred = data.IsStarred;\n this.annaEnteredRepOrder = data.AnnaEnteredRepOrder;\n this.isPayForPerformanceOrder = data.IsPayForPerformanceOrder;\n }\n}\n\ntype REVISIONTYPES = \"ANNA\" | \"BUYER\" | \"SELLER USER\";\n\nexport type REVISIONSTATUSES =\n | `Seller Pending`\n | `Buyer Pending`\n | `Seller Reconfirm`\n | `SM Pending`\n | `Rev Generated`\n | `Rev Discarded`\n | `O/S Spots`\n | `O/S UD`;\n\nexport class AdditionalDRROrderGenericData extends DRROrderGenericData {\n revisionNumberText: string;\n orderIdAndRevNumber: string;\n iconClass: string;\n\n constructor(data: any) {\n super(data);\n const roundedRevisionNumber = Math.floor(data.RevisionNo);\n this.revisionNumberText = roundedRevisionNumber > 0 ? `Rev${roundedRevisionNumber}` : \"Original\";\n this.orderIdAndRevNumber = `${data.OrderId}-${this.revisionNumberText}`;\n this.iconClass = this.isStarred ? \"mdi mdi-star highlight-star\" : \"mdi mdi-star-outline\";\n }\n}\n\nexport enum StatusCodeAndBackgroundColors {\n \"Seller Pending\" = \"#F7F2D1\",\n \"Seller Reconfirm\" = \"#D9D1F7\",\n \"Buyer Pending\" = \"#D5E3F4\",\n \"SM Pending\" = \"#FEE7D2\",\n \"Rev Discarded\" = \"#FDD8D5\",\n \"Rev Generated\" = \"#DBF0E4\",\n \"O/S Spots\" = \"#EFEFEF\",\n // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values\n \"O/S UD\" = \"#EFEFEF\",\n}\n\nexport enum StatusCodeAndClass {\n \"Seller Pending\" = \"seller-pending\",\n \"Seller Reconfirm\" = \"seller-reconfirm\",\n \"Buyer Pending\" = \"buyer-pending\",\n \"SM Pending\" = \"sm-pending\",\n \"Rev Generated\" = \"rev-generated\",\n \"Rev Discarded\" = \"rev-discarded\",\n \"O/S Spots\" = \"os-spots\",\n \"O/S UD\" = \"os-ud\",\n}\n\n// export enum StatusCodeAndEasyFilterTextmap {\n// \"Seller Pending\" = \"SELLER PENDING\",\n// \"Seller Reconfirm\" = \"SELLER RECONFIRM\",\n// \"Buyer Pending\" = \"BUYER PENDING\",\n// \"SM Pending\" = \"SM PENDING\",\n// \"Rev Generated\" = \"REV GENERATED\",\n// \"Rev Discarded\" = \"REV DISCARDED\",\n// \"O/S Spots\" = \"OS SPOTS\",\n// }\n\nexport interface RevisionListingPayloadForSeller {\n loggedInUserId: number;\n StationId: number;\n isEquivalized: boolean;\n isNormalized: boolean;\n demoId?: number;\n}\n\nexport interface RevisionListingPayloadForBuyer {\n BuyerId: string;\n OgId: number;\n isEquivalized: boolean;\n isNormalized: boolean;\n demoId?: number;\n}","import { ISvgOrIconTypeInGTTable, SvgOrIconNames } from \"@annalib/anna-core\";\n\nimport {\n AdditionalDRROrderGenericData,\n REVISIONSTATUSES,\n StatusCodeAndBackgroundColors,\n StatusCodeAndClass,\n} from \"./generic-daily-revision-listing.model\";\n\nexport class ANNAOfferSpecificDRROrderDataForBuyer extends AdditionalDRROrderGenericData {\n primaryBuyer: string;\n secondaryBuyer: string;\n station: string;\n stationId: number;\n timeoutDateTimeForDisplay: string;\n timeoutDate: string;\n timeoutTime: string;\n offerCount: number;\n showNeedsAttentionIcon: boolean;\n includeOrderInBubbleCount: boolean;\n orderRevisionStatus: REVISIONSTATUSES;\n orderRevisionStatusForEasyFilter: REVISIONSTATUSES;\n offeredMGsValueDisplay: string;\n offeredMGsValue: string;\n offeredADUsValueDisplay: string;\n offeredADUsValue: number;\n outstandingSpotsValueDisplay: string;\n outstandingSpotsValue: number;\n uDProjectionValueDisplay: string;\n uDProjectionValue: number;\n backgroundColor: string;\n poDandAAKey: ISvgOrIconTypeInGTTable[];\n statusAndNeedsAttentionActionKey: { showObjectKey: boolean; svgOrIconName: any; svgOrIconTooltipMsg: string }[];\n // correspondingEasyFilterText: string;\n gtClass: string;\n buyerNames: string = null;\n repUserNames: string = null;\n\n constructor(data: any) {\n super(data);\n this.station = data.StationName;\n this.stationId = data.StationId;\n this.timeoutDateTimeForDisplay = `${data.TimeoutDate} ${data.TimeoutTimeForDisplay}`;\n this.timeoutTime = data.TimeoutTime;\n this.timeoutDate = data.TimeoutDate;\n this.offerCount = data.OfferCount;\n this.orderRevisionStatus = data.OrderRevisionStatus;\n this.orderRevisionStatusForEasyFilter = data.OrderRevisionStatus;\n this.showNeedsAttentionIcon = data.ShowNeedsAttentionIcon;\n this.includeOrderInBubbleCount = data.IncludeOrderInBubbleCount;\n this.backgroundColor = data.RevisionStartedAt;\n this.statusAndNeedsAttentionActionKey = [\n {\n showObjectKey: true,\n svgOrIconName: this.showNeedsAttentionIcon ? SvgOrIconNames.WARNING_ICON : null,\n svgOrIconTooltipMsg: this.showNeedsAttentionIcon ? \"Needs attention\" : null,\n },\n ];\n this.offeredMGsValueDisplay = data.OfferedMGsValueDisplay;\n this.offeredMGsValue = data.OfferedMGsValue;\n this.offeredADUsValueDisplay = data.OfferedADUsValueDisplay;\n this.offeredADUsValue = data.OfferedADUsValue;\n this.outstandingSpotsValueDisplay = data.OutstandingSpotsValueDisplay;\n this.outstandingSpotsValue = data.OutstandingSpotsValue;\n this.uDProjectionValueDisplay = data.UDProjectionValueDisplay;\n this.uDProjectionValue = data.UDProjectionValue;\n this.poDandAAKey = [\n {\n showObjectKey: true,\n svgOrIconName: this.isPayForPerformanceOrder ? SvgOrIconNames.PAY_FOR_PERFORMANCE_ACTIVE : null,\n },\n ];\n this.buyerNames = ANNAOfferSpecificDRROrderDataForBuyer.convertToCommaSeperatedString(data.Buyers);\n this.repUserNames = ANNAOfferSpecificDRROrderDataForBuyer.convertToCommaSeperatedString(data.Reps);\n this.backgroundColor = StatusCodeAndBackgroundColors[this.orderRevisionStatus];\n this.gtClass = StatusCodeAndClass[this.orderRevisionStatus];\n // this.correspondingEasyFilterText = StatusCodeAndEasyFilterTextmap[this.orderRevisionStatus];\n }\n static convertToCommaSeperatedString(arrList: any[]): string {\n let nameList = \"\";\n if (arrList && arrList.length) {\n nameList = arrList.join(\", \");\n } else {\n nameList = \"-\";\n }\n return nameList;\n }\n}\n","import { ISvgOrIconTypeInGTTable, SvgOrIconNames } from \"@annalib/anna-core\";\n\nimport {\n AdditionalDRROrderGenericData,\n REVISIONSTATUSES,\n StatusCodeAndBackgroundColors,\n StatusCodeAndClass,\n} from \"./generic-daily-revision-listing.model\";\n\nexport interface StationRevisionInformationForANNAOffers {\n SellerCutOffTime: string;\n SellerReconfirmCutOffTime: string;\n IsSellerCutOffTimeExpired: boolean;\n IsSellerReconfirmCutOffTimeExpired: boolean;\n StationTimeZone: string;\n}\n\nexport class ANNAOfferSpecificDRROrderDataForSeller extends AdditionalDRROrderGenericData {\n productCode: string;\n offerCount: number;\n orderRevisionStatus: REVISIONSTATUSES;\n orderRevisionStatusForEasyFilter: REVISIONSTATUSES;\n showNeedsAttentionIcon: boolean;\n includeOrderInBubbleCount: boolean;\n offeredMGsValueDisplay: string;\n offeredMGsValue: string;\n offeredADUsValueDisplay: string;\n offeredADUsValue: number;\n outstandingSpotsValueDisplay: string;\n outstandingSpotsValue: number;\n uDProjectionValueDisplay: string;\n uDProjectionValue: number;\n backgroundColor: string;\n statusAndNeedsAttentionActionKey: ISvgOrIconTypeInGTTable[];\n statusAndNeedsAttentionKey: string;\n gtClass: string;\n poDandAAKey: ISvgOrIconTypeInGTTable[];\n isDeletedAtTraffic: boolean;\n creditAdusValue: number;\n creditAdusValueDisplay: string;\n\n constructor(data: any) {\n super(data);\n this.productCode = data.ProductCode;\n this.offerCount = data.OfferCount;\n this.orderRevisionStatus = data.OrderRevisionStatus;\n this.orderRevisionStatusForEasyFilter = data.OrderRevisionStatus;\n this.showNeedsAttentionIcon = data.ShowNeedsAttentionIcon;\n this.includeOrderInBubbleCount = data.IncludeOrderInBubbleCount;\n this.offeredMGsValueDisplay = data.OfferedMGsValueDisplay;\n this.offeredMGsValue = data.OfferedMGsValue;\n this.offeredADUsValueDisplay = data.OfferedADUsValueDisplay;\n this.offeredADUsValue = data.OfferedADUsValue;\n this.outstandingSpotsValueDisplay = data.OutstandingSpotsValueDisplay;\n this.outstandingSpotsValue = data.OutstandingSpotsValue;\n this.uDProjectionValueDisplay = data.UDProjectionValueDisplay;\n this.uDProjectionValue = data.UDProjectionValue;\n this.isDeletedAtTraffic = data.IsDeletedAtTraffic;\n this.backgroundColor = StatusCodeAndBackgroundColors[this.orderRevisionStatus];\n this.gtClass = StatusCodeAndClass[this.orderRevisionStatus];\n this.creditAdusValue = data.CreditAdusValue;\n this.creditAdusValueDisplay = data.CreditAdusValueDisplay;\n\n this.poDandAAKey = [\n {\n showObjectKey: true,\n svgOrIconName: this.isDeletedAtTraffic ? \"DELETED_ORDER\" : null,\n },\n {\n showObjectKey: false,\n svgOrIconName: this.isPayForPerformanceOrder ? SvgOrIconNames.PAY_FOR_PERFORMANCE_ACTIVE : null,\n },\n {\n showObjectKey: false,\n svgOrIconName: this.isWriteEnabledOrder ? SvgOrIconNames.AUTOMATED : null,\n },\n ];\n\n this.statusAndNeedsAttentionActionKey = [\n {\n showObjectKey: true,\n svgOrIconName: this.showNeedsAttentionIcon ? SvgOrIconNames.WARNING_ICON : null,\n svgOrIconTooltipMsg: this.showNeedsAttentionIcon ? \"Needs attention\" : null,\n },\n ];\n }\n}\n","import { ISvgOrIconTypeInGTTable, SvgOrIconNames } from \"@annalib/anna-core\";\n\nimport { AdditionalDRROrderGenericData } from \"./generic-daily-revision-listing.model\";\n\nexport class StationRevisionInformationForUserOffers {\n revisionStartedAt: string;\n stationTimezone: string;\n constructor(data: any) {\n this.revisionStartedAt = data.RevisionStartedAt;\n this.stationTimezone = data.StationTimezone;\n }\n}\n\nexport class UserOfferSpecificDRROrderDataForSeller extends AdditionalDRROrderGenericData {\n userMGValue: number;\n userMGValueDisplay: string;\n outstandingPreemptionsValueDisplay: string;\n outstandingPreemptionsValue: number;\n userADUValue: number;\n userADUValueDisplay: string;\n audienceDeficitValue: number;\n audienceDeficitValueDisplay: string;\n userChangesValue: number;\n userChangesValueDisplay: string;\n buyerChangesValue: number;\n buyerChangesValueDisplay: string;\n\n buyerGrpChangesValue: number;\n buyerImpChangesValue: number;\n buyerGrpChangesValueDisplay: string;\n buyerImpChangesValueDisplay: string;\n\n productCode: string;\n isDeletedAtTraffic: boolean;\n poDandAAKey: ISvgOrIconTypeInGTTable[];\n displayRevisionType: string;\n buyerAddedValue: any;\n buyerDeletedValue: any;\n buyerAddedValueDisplay: any;\n buyerDeletedValueDisplay: any;\n\n constructor(data: any) {\n super(data);\n this.productCode = data.ProductCode;\n this.userMGValue = data.UserMGValue;\n this.userMGValueDisplay = data.UserMGValueDisplay;\n this.outstandingPreemptionsValueDisplay = data.OutstandingPreemptionsValueDisplay;\n this.outstandingPreemptionsValue = data.OutstandingPreemptionsValue;\n this.userADUValue = data.UserADUValue;\n this.userADUValueDisplay = data.UserADUValueDisplay;\n this.audienceDeficitValue = data.AudienceDeficitValue;\n this.audienceDeficitValueDisplay = data.AudienceDeficitValueDisplay;\n this.userChangesValue = data.UserChangesValue;\n this.userChangesValueDisplay = data.UserChangesValueDisplay;\n this.buyerChangesValue = data.BuyerChangesValue;\n this.buyerChangesValueDisplay = data.BuyerChangesValueDisplay;\n\n this.buyerGrpChangesValue = data.BuyerGrpChangesValue;\n this.buyerImpChangesValue = data.BuyerImpChangesValue;\n this.buyerGrpChangesValueDisplay = data.BuyerGrpChangesValueDisplay;\n this.buyerImpChangesValueDisplay = data.BuyerImpChangesValueDisplay;\n\n this.buyerAddedValue = data.BuyerAddedValue;\n this.buyerDeletedValue = data.BuyerDeletedValue;\n this.buyerAddedValueDisplay = data.BuyerAddedDisplay;\n this.buyerDeletedValueDisplay = data.BuyerDeletedDisplay;\n\n this.displayRevisionType = RevisionTypeAndDisplayRevisionType[this.revisionType];\n this.isDeletedAtTraffic = data.IsDeletedAtTraffic;\n this.poDandAAKey = [\n {\n showObjectKey: true,\n svgOrIconName: this.isDeletedAtTraffic ? \"DELETED_ORDER\" : null,\n },\n {\n showObjectKey: false,\n svgOrIconName: this.isPayForPerformanceOrder ? SvgOrIconNames.PAY_FOR_PERFORMANCE_ACTIVE : null,\n },\n {\n showObjectKey: false,\n svgOrIconName: this.isWriteEnabledOrder ? SvgOrIconNames.AUTOMATED : null,\n },\n ];\n }\n}\n\nexport enum RevisionTypeAndDisplayRevisionType {\n \"SELLER USER\" = \"Seller User\",\n \"BUYER\" = \"Buyer\",\n \"ANNA\" = \"ANNA\",\n}\n","import { Injectable } from \"@angular/core\";\n\nimport { DRROrderGenericData } from \"../models/generic-daily-revision-listing.model\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class GenericDailyRevisionService {\n public orderInfo: DRROrderGenericData;\n public selectedStationId: any;\n public selectedOgId: number;\n fromOrderRevisionsPage: boolean = false;\n fromOrderHistoryPage: boolean = false;\n spotsApprovalFiltersAppliedRouteChange: boolean;\n}\n","export class OrderListingConstants {\n static readonly InFlightAndUpcoming = \"In-flight & Upcoming\";\n static readonly Completed = \"Completed\";\n static readonly BlankAndDeleted = \"Blank & Deleted\";\n static readonly Deleted = \"Deleted\";\n static readonly TodaysANNAOffers = \"Today’s ANNA Offers\";\n static readonly TodaysUserOffers = \"Today’s User Offers\";\n static readonly OffersAwaitingApproval = \"Offers Awaiting Approval\";\n static readonly RATING = \"RATING\";\n static readonly IMPRESSIONS = \"IMPRESSIONS\";\n static readonly GRP = \"GRP\";\n\n static readonly TvRevenueAndDigital = \"TV & Digital\";\n static readonly DRR = \"Daily Revisions\";\n\n static readonly TvRevenue = \"TV Revenue\";\n static readonly TV = \"TV\";\n static readonly OtherRevenue = \"Other Revenue\";\n static readonly AnnaOrderEntry = \"ANNA ORDER ENTRY\";\n}\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, TemplateRef, ViewChild } from \"@angular/core\";\nimport { FormsModule } from \"@angular/forms\";\nimport {\n AnnaDesignComponentsLibModule,\n GenericMessageBoxTheme,\n MessageBoxData,\n} from \"@annalib/anna-design-components-lib\";\nimport { NgbModal, NgbModalOptions } from \"@ng-bootstrap/ng-bootstrap\";\nimport { cloneDeep } from \"lodash-es\";\n\n@Component({\n selector: \"anna-feature-action-comments-popup\",\n imports: [CommonModule, FormsModule, AnnaDesignComponentsLibModule],\n templateUrl: \"./action-comments-popup.component.html\",\n styleUrls: [\"./action-comments-popup.component.scss\"],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ActionCommentsPopupComponent {\n @Input() title: string;\n @Input() allowEdit: boolean;\n @Input() applyCloseButtonText: { apply: string; cancel: string } = { apply: \"Apply\", cancel: \"Cancel\" };\n @Output() commented = new EventEmitter<{ spotData: any; comment: string }>();\n @Output() userActed = new EventEmitter();\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() cancel = new EventEmitter<boolean>();\n\n comment: string;\n infoMessage: MessageBoxData;\n disableApply: boolean;\n\n @ViewChild(\"actionCommentModal\", { static: true }) private actionCommentModal: TemplateRef<any>;\n actionCommentModalRef: any;\n originalComment: any;\n spotData: any;\n\n constructor(private modalService: NgbModal) { }\n\n openModal(data: any, comment: string, customTopMessage: string = null) {\n this.comment = cloneDeep(comment);\n if (customTopMessage === \"\") {\n this.infoMessage = null;\n } else if (customTopMessage) {\n this.infoMessage = new MessageBoxData(\n \"\",\n customTopMessage,\n \"mdi mdi-information\",\n GenericMessageBoxTheme.informationBlue.messageBoxClass,\n );\n } else {\n this.infoMessage = new MessageBoxData(\n \"\",\n \"Please note, this comment will be entered on the rep platform against this offer.\",\n \"mdi mdi-information\",\n GenericMessageBoxTheme.informationBlue.messageBoxClass,\n );\n }\n this.spotData = cloneDeep(data);\n this.originalComment = cloneDeep(this.comment);\n this.disableApply = true;\n const ngbModalOptions: NgbModalOptions = {\n backdrop: \"static\",\n keyboard: false,\n windowClass: \"action-comment-modal\",\n };\n\n this.actionCommentModalRef = this.modalService.open(this.actionCommentModal, ngbModalOptions);\n }\n\n cancelClicked() {\n const revertToDefault = false;\n // if ((this.title.includes(\"approve\") && this.comment) || (this.title.includes(\"Credit\") && this.comment)) {\n // revertToDefault = false;\n // }\n // const actionTaken: \"approve\" | \"credit\" = this.title.includes(\"approve\") ? \"approve\" : \"credit\";\n // const payload = { revertToDefault, actionTaken };\n this.cancel.emit(revertToDefault);\n this.closeModal();\n }\n\n closeModal() {\n this.actionCommentModalRef?.close();\n }\n\n apply() {\n const trimmedComment = this.comment ? this.comment.trim() : null;\n this.commented.emit({ spotData: this.spotData, comment: trimmedComment });\n }\n\n reasonChanged() {\n this.enableDisableApply();\n this.userActed.emit();\n }\n\n enableDisableApply() {\n const isReofferPopup = this.title?.toLowerCase().includes(\"reoffer\");\n const isCancelPopup = this.title?.toLowerCase().includes(\"cancel\");\n const trimmedComment = this.comment ? this.comment.trim() : null;\n if (isReofferPopup || isCancelPopup) {\n const isCommentEmpty = !trimmedComment || trimmedComment === \"\";\n this.disableApply = isCommentEmpty;\n } else {\n this.disableApply = this.originalComment === trimmedComment;\n }\n }\n}\n","<ng-template\n #actionCommentModal\n let-modal\n>\n <div class=\"modal-header\">\n <h3 class=\"modal-title\">{{ title }}</h3>\n <i\n (click)=\"closeModal()\"\n class=\"mi mdi-close-icon mdi-font-md action-comments-close\"\n *ngIf=\"!allowEdit\"\n ></i>\n </div>\n <div class=\"modal-body\">\n <anna-design-message-box *ngIf=\"infoMessage\" [messageBoxData]=\"infoMessage\"></anna-design-message-box>\n <textarea\n [(ngModel)]=\"comment\"\n [disabled]=\"!allowEdit\"\n spellcheck=\"false\"\n (ngModelChange)=\"reasonChanged()\"\n ></textarea>\n\n <div\n class=\"button-container-modal\"\n *ngIf=\"allowEdit\"\n >\n <button\n class=\"anna cancel-button\"\n (click)=\"cancelClicked()\"\n >\n {{ applyCloseButtonText?.cancel }}\n </button>\n <button\n class=\"anna apply-button\"\n (click)=\"apply()\"\n [disabled]=\"disableApply\"\n >\n {{ applyCloseButtonText?.apply }}\n </button>\n </div>\n </div>\n</ng-template>\n","import { NgClass, NgFor, NgIf } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, TemplateRef, ViewChild } from \"@angular/core\";\nimport { FormsModule } from \"@angular/forms\";\nimport { NgbModal, NgbModalOptions } from \"@ng-bootstrap/ng-bootstrap\";\nimport { cloneDeep, isEqual } from \"lodash-es\";\n\n// eslint-disable-next-line max-len\nimport { OfferRejectedReasonAndCommentPopupData } from \"../../models/spot-approval-generic.model\";\n\n@Component({\n selector: \"anna-feature-offer-rejection-popup\",\n templateUrl: \"./offer-rejection-popup.component.html\",\n styleUrls: [\"./offer-rejection-popup.component.scss\"],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgIf, NgFor, NgClass, FormsModule],\n})\nexport class OfferRejectionPopupComponent {\n @Input() spotType: any;\n @Input() rejectionHeader: string = \"Reject Offer\";\n @Input() rejectionPopupData: {\n showActionInRejectionPopup: boolean;\n allowActionInRejectionPopup: boolean;\n rejectActionComment: string[] | any;\n excludeFromFutureOffers: boolean;\n rejectionHeader: string;\n } = {\n showActionInRejectionPopup: true,\n allowActionInRejectionPopup: false,\n rejectActionComment: [],\n excludeFromFutureOffers: false,\n rejectionHeader: \"Reject Offer\"\n };\n @Input() isSubmitCommentButtonEnabled: boolean = false;\n @Input() offerRjectionPossibleReasons: string[];\n @Input() hideExcludePECheckbox: boolean = false;\n\n @Output() apply = new EventEmitter<{\n comments: string[];\n excludeFutureOffers: boolean;\n }>();\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() cancel = new EventEmitter();\n @Output() userActed = new EventEmitter();\n\n offerRejectedReasonAndCommentPopupData: OfferRejectedReasonAndCommentPopupData;\n\n @ViewChild(\"offerRejectionReasonAndCommentModal\", { static: true })\n private offerRejectionReasonAndCommentModal: TemplateRef<any>;\n offerRejectionReasonAndCommentModalRef: any;\n rejectionReasonHasSpecialCharacter: boolean;\n revertToApproveIfCancelClickedInPopup: boolean;\n\n constructor(private modalService: NgbModal) { }\n\n setRevertToApproveIfCancelClickedInPopup(revertToApproveIfCancelClickedInPopup: boolean) {\n this.revertToApproveIfCancelClickedInPopup = cloneDeep(revertToApproveIfCancelClickedInPopup);\n this.openOfferRejectionReasonAndCommentModal();\n }\n\n openOfferRejectionReasonAndCommentModal() {\n this.hideExcludePECheckbox = this.hideExcludePECheckbox || this.spotType.toLowerCase().includes(\"adu\");\n const ngbModalOptions: NgbModalOptions = {\n windowClass: \"offer-rejection-modal\",\n };\n const rejectionReasons: {\n title: string;\n isSelected: boolean;\n }[] = [];\n this.offerRjectionPossibleReasons.forEach((item) => {\n rejectionReasons.push({\n title: item,\n isSelected:\n this.rejectionPopupData.rejectActionComment &&\n this.rejectionPopupData.rejectActionComment.includes(item),\n });\n });\n this.offerRejectedReasonAndCommentPopupData = {\n reasons: rejectionReasons,\n comment:\n this.rejectionPopupData.rejectActionComment && !this.revertToApproveIfCancelClickedInPopup\n ? this.rejectionPopupData.rejectActionComment.filter(\n (n: any) => !this.offerRjectionPossibleReasons.includes(n),\n )[0]\n : null,\n isDisabled: !this.rejectionPopupData.allowActionInRejectionPopup,\n disableApply: false,\n excludeFutureOffers: this.rejectionPopupData.excludeFromFutureOffers,\n disableCommentBox:\n !this.rejectionPopupData.allowActionInRejectionPopup ||\n rejectionReasons.filter((n) => n.isSelected).length === 0,\n commentBoxPlaceholder: rejectionReasons.filter((n) => n.title.includes(\"Other\"))[0]?.isSelected\n ? \"Please specify the reason for rejection (Max 200 characters)\"\n : \"Please provide any additional comments for offer rejection here (Max 200 characters)\",\n };\n this.disableEnableOfferRejectedReasonAndCommentPopupApplyButton();\n if (this.offerRejectionReasonAndCommentModalRef) {\n this.offerRejectionReasonAndCommentModalRef.close();\n }\n this.offerRejectionReasonAndCommentModalRef = this.modalService.open(\n this.offerRejectionReasonAndCommentModal,\n ngbModalOptions,\n );\n }\n\n changesMadeInCommentBox(e: any) {\n if (!/[a-zA-Z0-9 ]/.test(e.key)) {\n e.preventDefault();\n }\n }\n\n reasonTextChanged(event: any) {\n this.userActed.emit();\n this.rejectionReasonHasSpecialCharacter = !!/[`!@#$%^&*()_+\\-=[\\]{};':\"\\\\|,.<>/?~]/.test(event);\n this.disableEnableOfferRejectedReasonAndCommentPopupApplyButton();\n }\n\n closeOfferRejectionReasonAndCommentModal() {\n let revertRadioButtonSelectionToApprove: boolean = false;\n if (!this.offerRejectedReasonAndCommentPopupData.isDisabled) {\n if (\n this.revertToApproveIfCancelClickedInPopup ||\n this.rejectionPopupData.rejectActionComment === \"\" ||\n !this.rejectionPopupData.rejectActionComment ||\n this.rejectionPopupData.rejectActionComment.length === 0\n ) {\n revertRadioButtonSelectionToApprove = true;\n }\n }\n this.cancel.emit(revertRadioButtonSelectionToApprove);\n this.offerRejectionReasonAndCommentModalRef.close();\n }\n\n applyOfferRejectionReasonSelectedAndComment() {\n this.apply.emit({\n comments: this.prepareCommentsArray(),\n excludeFutureOffers: this.offerRejectedReasonAndCommentPopupData.excludeFutureOffers,\n });\n this.offerRejectionReasonAndCommentModalRef.close();\n }\n\n prepareCommentsArray(): string[] {\n const comments: string[] = this.offerRejectedReasonAndCommentPopupData.reasons\n .filter((n: any) => n.isSelected)\n .map((n: any) => n.title);\n\n const trimmedComment = this.offerRejectedReasonAndCommentPopupData.comment\n ? this.offerRejectedReasonAndCommentPopupData.comment.trim()\n : null;\n if (trimmedComment && trimmedComment !== \"\") {\n comments.push(trimmedComment);\n }\n return comments;\n }\n\n isOfferRejectionReasonsChanged(): boolean {\n return (\n !isEqual(this.prepareCommentsArray(), this.rejectionPopupData.rejectActionComment) ||\n this.rejectionPopupData.excludeFromFutureOffers !==\n this.offerRejectedReasonAndCommentPopupData.excludeFutureOffers\n );\n }\n\n disableEnableOfferRejectedReasonAndCommentPopupApplyButton() {\n const trimmedComment = this.offerRejectedReasonAndCommentPopupData.comment\n ? this.offerRejectedReasonAndCommentPopupData.comment.trim()\n : null;\n\n this.offerRejectedReasonAndCommentPopupData.disableApply =\n this.offerRejectedReasonAndCommentPopupData.reasons.filter((n: any) => n.isSelected).length === 0 ||\n (this.offerRejectedReasonAndCommentPopupData.reasons.filter((n: any) => n.title.includes(\"Other\"))[0]\n .isSelected &&\n (!trimmedComment || trimmedComment === \"\")) ||\n !this.isOfferRejectionReasonsChanged() ||\n this.rejectionReasonHasSpecialCharacter;\n }\n\n offerRejectionReasonCheckedOrUnchecked(index: number) {\n this.userActed.emit();\n if (!this.offerRejectedReasonAndCommentPopupData.isDisabled) {\n this.offerRejectedReasonAndCommentPopupData.reasons[index].isSelected =\n !this.offerRejectedReasonAndCommentPopupData.reasons[index].isSelected;\n this.disableEnableOfferRejectedReasonAndCommentPopupApplyButton();\n this.offerRejectedReasonAndCommentPopupData.disableCommentBox =\n this.offerRejectedReasonAndCommentPopupData.reasons.filter((n) => n.isSelected).length === 0;\n this.offerRejectedReasonAndCommentPopupData.commentBoxPlaceholder =\n this.offerRejectedReasonAndCommentPopupData.reasons.filter((n) => n.title.includes(\"Other\"))[0]\n ?.isSelected\n ? \"Please specify the reason for rejection (Max 200 characters)\"\n : \"Please provide any additional comments for offer rejection here (Max 200 characters)\";\n }\n }\n\n excludeFutureOffers() {\n this.userActed.emit();\n this.offerRejectedReasonAndCommentPopupData.excludeFutureOffers =\n !this.offerRejectedReasonAndCommentPopupData.excludeFutureOffers;\n this.disableEnableOfferRejectedReasonAndCommentPopupApplyButton();\n }\n}\n","<ng-template\n #offerRejectionReasonAndCommentModal\n let-modal\n>\n <div class=\"modal-header\">\n <h3 class=\"modal-title\">{{ rejectionHeader }}</h3>\n <i\n (click)=\"closeOfferRejectionReasonAndCommentModal()\"\n class=\"mi mdi-close-icon mdi-font-md offer-rejection-close\"\n *ngIf=\"offerRejectedReasonAndCommentPopupData?.isDisabled\"\n ></i>\n </div>\n <div class=\"modal-body offer-rejection-reasoning-modal\">\n <ng-container *ngIf=\"rejectionPopupData?.showActionInRejectionPopup\">\n <p class=\"mb-10\">\n {{\n offerRejectedReasonAndCommentPopupData.isDisabled\n ? \"Reason for rejection:\"\n : \"Please select reason for\n rejection:\"\n }}\n </p>\n <ul>\n <label\n *ngFor=\"let reason of offerRejectedReasonAndCommentPopupData.reasons; let i = index\"\n (click)=\"offerRejectionReasonCheckedOrUnchecked(i)\"\n [ngClass]=\"{ disabled: offerRejectedReasonAndCommentPopupData?.isDisabled }\"\n >\n <i\n class=\"mi mdi-check-box\"\n *ngIf=\"reason.isSelected\"\n ></i>\n <i\n class=\"mi mdi-check-box-outline-blank\"\n *ngIf=\"!reason.isSelected\"\n ></i>\n <span>{{ reason.title }}</span>\n </label>\n </ul>\n </ng-container>\n\n <p\n class=\"mb-10\"\n *ngIf=\"!rejectionPopupData?.showActionInRejectionPopup\"\n >\n Reason for rejection:\n </p>\n <textarea\n [(ngModel)]=\"offerRejectedReasonAndCommentPopupData.comment\"\n spellcheck=\"false\"\n id=\"offerRejectionCommentInput\"\n [disabled]=\"offerRejectedReasonAndCommentPopupData.disableCommentBox\"\n (ngModelChange)=\"reasonTextChanged($event)\"\n (keydown)=\"changesMadeInCommentBox($event)\"\n (keyup)=\"disableEnableOfferRejectedReasonAndCommentPopupApplyButton()\"\n placeholder=\"{{\n offerRejectedReasonAndCommentPopupData.isDisabled\n ? ''\n : offerRejectedReasonAndCommentPopupData.commentBoxPlaceholder\n }}\"\n maxlength=\"200\"\n ></textarea>\n <p\n class=\"text-danger\"\n *ngIf=\"rejectionReasonHasSpecialCharacter\"\n >\n Special Character not allowed\n </p>\n <hr *ngIf=\"rejectionPopupData?.showActionInRejectionPopup\" />\n <ng-container *ngIf=\"!hideExcludePECheckbox && rejectionPopupData?.showActionInRejectionPopup\">\n <p *ngIf=\"!offerRejectedReasonAndCommentPopupData.isDisabled\">\n You can choose to exclude the preemption(s) of this offer set from further attempts to find MakeGoods.\n In this case, you will have to manually create the MakeGoods.\n </p>\n <label\n class=\"mt-8\"\n (click)=\"excludeFutureOffers()\"\n [ngClass]=\"{ disabled: offerRejectedReasonAndCommentPopupData?.disableCommentBox }\"\n >\n <i\n class=\"mi mdi-check-box\"\n *ngIf=\"offerRejectedReasonAndCommentPopupData.excludeFutureOffers\"\n ></i>\n <i\n class=\"mi mdi-check-box-outline-blank\"\n *ngIf=\"!offerRejectedReasonAndCommentPopupData.excludeFutureOffers\"\n ></i>\n <span>Exclude the preemption(s) of this offer set from future attempts</span>\n </label>\n </ng-container>\n\n <ng-container *ngIf=\"!offerRejectedReasonAndCommentPopupData.isDisabled\">\n <p>\n Please note that the offer will not be marked as rejected if you do not select the reason for rejection.\n </p>\n <div class=\"button-container-modal\">\n <button\n class=\"anna cancel-button\"\n (click)=\"closeOfferRejectionReasonAndCommentModal()\"\n >\n Cancel\n </button>\n <button\n class=\"anna apply-button\"\n (click)=\"applyOfferRejectionReasonSelectedAndComment()\"\n [disabled]=\"offerRejectedReasonAndCommentPopupData.disableApply\"\n >\n Apply\n </button>\n </div>\n </ng-container>\n </div>\n</ng-template>\n","// Angular import statements\nimport { Injectable } from \"@angular/core\";\nimport { SvgOrIconNames } from \"@annalib/anna-core\";\n\nimport { ESTIMATEPRIORITIES, SolvedTypeFromBE } from \"../models/spot-approval-generic-in-feature-shared-lib.model\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class SpotApprovalGenericInFeatureSharedLibService {\n public static returnTooltipAndIconForSolvedType(\n solvedType: SolvedTypeFromBE,\n metric: string,\n valueToUse: number,\n ): { icon: SvgOrIconNames; tooltipMsg: string } {\n switch (solvedType) {\n case \"LINE\":\n return {\n icon: SvgOrIconNames.ALPHA_B_CIRCLE,\n tooltipMsg: `The booked ${metric} for this spot is calculated based on the booked ${metric} (${valueToUse}) of the inventory code of the spot.`,\n };\n case \"ROLLING_ESTIMATES\":\n return {\n icon: SvgOrIconNames.ALPHA_R_CIRCLE,\n tooltipMsg: `The booked ${metric} for this spot is calculated based on the ANNA Estimate value (${valueToUse}) of the program.`,\n };\n case \"ESTIMATES\":\n return {\n icon: SvgOrIconNames.ALPHA_E_CIRCLE,\n tooltipMsg: `The booked ${metric} for this spot is calculated based on the station’s estimated ${metric} (${valueToUse}) of the program.`,\n };\n case \"AVERAGE\":\n return {\n icon: SvgOrIconNames.ALPHA_A_CIRCLE,\n tooltipMsg: `The booked ${metric} for this spot is calculated based on the average booked ${metric} (${valueToUse}).`,\n };\n default:\n return null;\n }\n }\n\n public static returnEstimatePriorities(data: any, estimatePriority: ESTIMATEPRIORITIES[]): string[] {\n const firstAndSecondEstimatePrioritiesForRTGMetric = `${this.returnEstimateValueBasedOnKeyForRTGMetric(\n data,\n estimatePriority[0],\n )} | ${this.returnEstimateValueBasedOnKeyForRTGMetric(data, estimatePriority[1])}`;\n\n const thirdAndFourthEstimatePrioritiesForRTGMetric = `${this.returnEstimateValueBasedOnKeyForRTGMetric(\n data,\n estimatePriority[2],\n )} | ${this.returnEstimateValueBasedOnKeyForRTGMetric(data, estimatePriority[3])}`;\n\n const firstAndSecondEstimatePrioritiesForIMPSMetric = `${this.returnEstimateValueBasedOnKeyForIMPSMetric(\n data,\n estimatePriority[0],\n )} | ${this.returnEstimateValueBasedOnKeyForIMPSMetric(data, estimatePriority[1])}`;\n\n const thirdAndFourthEstimatePrioritiesForIMPSGMetric = `${this.returnEstimateValueBasedOnKeyForIMPSMetric(\n data,\n estimatePriority[2],\n )} | ${this.returnEstimateValueBasedOnKeyForIMPSMetric(data, estimatePriority[3])}`;\n return [\n firstAndSecondEstimatePrioritiesForRTGMetric,\n thirdAndFourthEstimatePrioritiesForRTGMetric,\n firstAndSecondEstimatePrioritiesForIMPSMetric,\n thirdAndFourthEstimatePrioritiesForIMPSGMetric,\n ];\n }\n\n // TODO ADD THE KEYS IN BE\n public static returnEstimateValueBasedOnKeyForRTGMetric(BEData: any, key: ESTIMATEPRIORITIES): number | string {\n switch (key) {\n case \"AverageRTG\":\n return BEData.BookedAvgRatings !== null ? BEData.BookedAvgRatings : \"-\";\n\n case \"BookedRTG\":\n return BEData.BookedRatings !== null ? BEData.BookedRatings : \"-\";\n\n case \"RollingEstimate\":\n return BEData.RollingEstimateRatings === 0 ? \"-\" : BEData.RollingEstimateRatings;\n\n case \"StationEstimate\":\n return BEData.StationEstimateRatings === 0 ? \"-\" : BEData.StationEstimateRatings;\n // no default\n }\n\n return \"-\";\n }\n\n public static returnEstimateValueBasedOnKeyForIMPSMetric(data: any, key: ESTIMATEPRIORITIES): number | string {\n switch (key) {\n case \"AverageRTG\":\n return data.BookedAvgImpressions !== null ? data.BookedAvgImpressions : \"-\";\n\n case \"BookedRTG\":\n return data.BookedImpressions !== null ? data.BookedImpressions : \"-\";\n\n case \"RollingEstimate\":\n return data.RollingEstimateImpressions === 0 ? \"-\" : data.RollingEstimateImpressions;\n\n case \"StationEstimate\":\n return data.StationEstimateImpressions === 0 ? \"-\" : data.StationEstimateImpressions;\n // no default\n }\n\n return \"-\";\n }\n}\n","export class GenericFeatureRelatedConstants {\n public static readonly ProjectedGrpOrImpsMessage =\n \"ANNA calculates projected RTG/IMPS values using either the computed estimates or the actual posted data, depending on what is available. If posted data has not yet been received, ANNA will use the computed estimates as the projected value. Once the actual posted data is received, the projection will automatically update to reflect the real, posted values. This ensures that projected data is always based on the most accurate and up-to-date information.\";\n}\n","// biz-rules\nexport * from \"./src/biz-rules/constants/generic-business-rule-page.constants\";\nexport * from \"./src/biz-rules/models/generic-business-rule-history-popup.model\";\nexport * from \"./src/biz-rules/services/generic-business-rule-common-SI-BI-logic.service\";\n\n// primary order panel\nexport * from \"./src/generic-primary-order-panel/models/generic-primary-order-panel.model\";\nexport * from \"./src/generic-primary-order-panel/services/generic-primary-order-panel.service\";\n\n// ol\nexport * from \"./src/daily-revision-listing/models/generic-daily-revision-listing.model\";\nexport * from \"./src/daily-revision-listing/models/generic-offers-awaiting-approval.model\";\nexport * from \"./src/daily-revision-listing/models/generic-todays-anna-offers-listing.model\";\nexport * from \"./src/daily-revision-listing/models/generic-todays-user-offers-listing.model\";\nexport * from \"./src/daily-revision-listing/services/generic-daily-revision-listing.service\";\nexport * from \"./src/order-listing/constants/generic-order-listing.constant\";\n\n// component\nexport * from \"./src/daily-revision-listing/components/action-comments-popup/action-comments-popup.component\";\nexport * from \"./src/daily-revision-listing/components/offer-rejection-popup/offer-rejection-popup.component\";\n\n// services\nexport * from \"./src/spot-approval/models/spot-approval-generic-in-feature-shared-lib.model\";\nexport * from \"./src/spot-approval/services/spot-approval-generic-in-feature-shared-lib.service\";\n// constants\nexport * from \"./src/constants/generic-feature-related-constants\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2"],"mappings":"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"}