@digital-realty/ui-service-management 11.0.6 → 11.0.7
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/dist/sw.js +1 -1
- package/dist/sw.js.map +1 -1
- package/dist/ui-service-management15.js +1 -1
- package/dist/ui-service-management17.js +2 -2
- package/dist/ui-service-management26.js +1 -1
- package/dist/ui-service-management31.js +1 -1
- package/dist/ui-service-management9.js +1 -1
- package/package.json +1 -1
package/dist/sw.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
if(!self.define){let e,i={};const a=(a,
|
|
1
|
+
if(!self.define){let e,i={};const a=(a,n)=>(a=new URL(a+".js",n).href,i[a]||new Promise(i=>{if("document"in self){const e=document.createElement("script");e.src=a,e.onload=i,document.head.appendChild(e)}else e=a,importScripts(a),i()}).then(()=>{let e=i[a];if(!e)throw new Error(`Module ${a} didn’t register its module`);return e}));self.define=(n,c)=>{const r=e||("document"in self?document.currentScript.src:"")||location.href;if(i[r])return;let s={};const f=e=>a(e,r),u={module:{uri:r},exports:s,require:f};i[r]=Promise.all(n.map(e=>u[e]||f(e))).then(e=>(c(...e),s))}}define(["./workbox-a523fd56"],function(e){"use strict";self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"index.html",revision:"33598f536a26a9f2ab0de37f455190f0"},{url:"ui-service-management.js",revision:"99583b3c5108a4709cd9037a464bacbc"},{url:"ui-service-management10.js",revision:"161d48535a2adbf45e02367620c72d9b"},{url:"ui-service-management11.js",revision:"bdb272eb21c1ba32658f367dad7c00cc"},{url:"ui-service-management12.js",revision:"3bf4c6643fac5b7d6ebaafc807e0726c"},{url:"ui-service-management13.js",revision:"e68fe1534ea992dc313b8d655babf8a4"},{url:"ui-service-management14.js",revision:"50d0b6cdce1ac88878109a9d41326e1a"},{url:"ui-service-management15.js",revision:"21418378d7bd57b43465415efc302a0a"},{url:"ui-service-management16.js",revision:"ceae85c9aa0235c38fdb2a76e39a3f27"},{url:"ui-service-management17.js",revision:"7d66666498231205871e6f18e49751f0"},{url:"ui-service-management18.js",revision:"eba0ac899ae9a77efc777382cae03998"},{url:"ui-service-management19.js",revision:"36ab69f67dea2fe957c69bbe2f9ee082"},{url:"ui-service-management2.js",revision:"5d011571bf7f6c48f914a13861963dc7"},{url:"ui-service-management20.js",revision:"ded43c9ca5c0a600dbf0ad8314d6954c"},{url:"ui-service-management21.js",revision:"2e9fdebf759d1e000fcc00e8e91c2674"},{url:"ui-service-management22.js",revision:"38863ef3f54073efa8764e55e6717a58"},{url:"ui-service-management23.js",revision:"b97d5298fa9d2319d0ef72f34f9992ec"},{url:"ui-service-management24.js",revision:"32a8c20f28c8420fccdadd8179a19673"},{url:"ui-service-management25.js",revision:"cfeb5973873e5a4a9d75331b2c08d525"},{url:"ui-service-management26.js",revision:"81afaef16542d5b0b3828ea840b0c640"},{url:"ui-service-management27.js",revision:"a4f98848486560bce9050b754f973de5"},{url:"ui-service-management28.js",revision:"f6443713fea66c4b21e148778c090388"},{url:"ui-service-management29.js",revision:"818f83c1c7feefe1759db4c078429b58"},{url:"ui-service-management3.js",revision:"3ba84facb028d273bc989d316a260d7a"},{url:"ui-service-management30.js",revision:"1a81ec043a4dee889ad3f8b31acc915f"},{url:"ui-service-management31.js",revision:"3a2abf9bf856cbffca3bdfbd72fab896"},{url:"ui-service-management4.js",revision:"c5bd4942f563e4021c8d17b532c26511"},{url:"ui-service-management5.js",revision:"397e7ebed4f687ac6399c42862b6c58f"},{url:"ui-service-management6.js",revision:"a6fce0a52e0cc8671f82c8d4e6a95c1e"},{url:"ui-service-management7.js",revision:"1714cd5b62442c75baac5b1cd1550adf"},{url:"ui-service-management8.js",revision:"2f219e0798d90248885bbd874d93b455"},{url:"ui-service-management9.js",revision:"1f0952a08e1d2ee4e9e2b3fc6bce0f2a"}],{}),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("/index.html"))),e.registerRoute("polyfills/*.js",new e.CacheFirst,"GET")});
|
|
2
2
|
//# sourceMappingURL=sw.js.map
|
package/dist/sw.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sw.js","sources":["../../../../../../tmp/
|
|
1
|
+
{"version":3,"file":"sw.js","sources":["../../../../../../tmp/08d91b4800aeac80cfcf12ab90b05238/sw.js"],"sourcesContent":["import {registerRoute as workbox_routing_registerRoute} from '/home/vsts/work/1/s/ui-service-management/node_modules/workbox-routing/registerRoute.mjs';\nimport {CacheFirst as workbox_strategies_CacheFirst} from '/home/vsts/work/1/s/ui-service-management/node_modules/workbox-strategies/CacheFirst.mjs';\nimport {clientsClaim as workbox_core_clientsClaim} from '/home/vsts/work/1/s/ui-service-management/node_modules/workbox-core/clientsClaim.mjs';\nimport {precacheAndRoute as workbox_precaching_precacheAndRoute} from '/home/vsts/work/1/s/ui-service-management/node_modules/workbox-precaching/precacheAndRoute.mjs';\nimport {NavigationRoute as workbox_routing_NavigationRoute} from '/home/vsts/work/1/s/ui-service-management/node_modules/workbox-routing/NavigationRoute.mjs';\nimport {createHandlerBoundToURL as workbox_precaching_createHandlerBoundToURL} from '/home/vsts/work/1/s/ui-service-management/node_modules/workbox-precaching/createHandlerBoundToURL.mjs';/**\n * Welcome to your Workbox-powered service worker!\n *\n * You'll need to register this file in your web app.\n * See https://goo.gl/nhQhGp\n *\n * The rest of the code is auto-generated. Please don't update this file\n * directly; instead, make changes to your Workbox build configuration\n * and re-run your build process.\n * See https://goo.gl/2aRDsh\n */\n\n\n\n\n\n\n\n\nself.skipWaiting();\n\nworkbox_core_clientsClaim();\n\n\n/**\n * The precacheAndRoute() method efficiently caches and responds to\n * requests for URLs in the manifest.\n * See https://goo.gl/S9QRab\n */\nworkbox_precaching_precacheAndRoute([\n {\n \"url\": \"index.html\",\n \"revision\": \"33598f536a26a9f2ab0de37f455190f0\"\n },\n {\n \"url\": \"ui-service-management.js\",\n \"revision\": \"99583b3c5108a4709cd9037a464bacbc\"\n },\n {\n \"url\": \"ui-service-management10.js\",\n \"revision\": \"161d48535a2adbf45e02367620c72d9b\"\n },\n {\n \"url\": \"ui-service-management11.js\",\n \"revision\": \"bdb272eb21c1ba32658f367dad7c00cc\"\n },\n {\n \"url\": \"ui-service-management12.js\",\n \"revision\": \"3bf4c6643fac5b7d6ebaafc807e0726c\"\n },\n {\n \"url\": \"ui-service-management13.js\",\n \"revision\": \"e68fe1534ea992dc313b8d655babf8a4\"\n },\n {\n \"url\": \"ui-service-management14.js\",\n \"revision\": \"50d0b6cdce1ac88878109a9d41326e1a\"\n },\n {\n \"url\": \"ui-service-management15.js\",\n \"revision\": \"21418378d7bd57b43465415efc302a0a\"\n },\n {\n \"url\": \"ui-service-management16.js\",\n \"revision\": \"ceae85c9aa0235c38fdb2a76e39a3f27\"\n },\n {\n \"url\": \"ui-service-management17.js\",\n \"revision\": \"7d66666498231205871e6f18e49751f0\"\n },\n {\n \"url\": \"ui-service-management18.js\",\n \"revision\": \"eba0ac899ae9a77efc777382cae03998\"\n },\n {\n \"url\": \"ui-service-management19.js\",\n \"revision\": \"36ab69f67dea2fe957c69bbe2f9ee082\"\n },\n {\n \"url\": \"ui-service-management2.js\",\n \"revision\": \"5d011571bf7f6c48f914a13861963dc7\"\n },\n {\n \"url\": \"ui-service-management20.js\",\n \"revision\": \"ded43c9ca5c0a600dbf0ad8314d6954c\"\n },\n {\n \"url\": \"ui-service-management21.js\",\n \"revision\": \"2e9fdebf759d1e000fcc00e8e91c2674\"\n },\n {\n \"url\": \"ui-service-management22.js\",\n \"revision\": \"38863ef3f54073efa8764e55e6717a58\"\n },\n {\n \"url\": \"ui-service-management23.js\",\n \"revision\": \"b97d5298fa9d2319d0ef72f34f9992ec\"\n },\n {\n \"url\": \"ui-service-management24.js\",\n \"revision\": \"32a8c20f28c8420fccdadd8179a19673\"\n },\n {\n \"url\": \"ui-service-management25.js\",\n \"revision\": \"cfeb5973873e5a4a9d75331b2c08d525\"\n },\n {\n \"url\": \"ui-service-management26.js\",\n \"revision\": \"81afaef16542d5b0b3828ea840b0c640\"\n },\n {\n \"url\": \"ui-service-management27.js\",\n \"revision\": \"a4f98848486560bce9050b754f973de5\"\n },\n {\n \"url\": \"ui-service-management28.js\",\n \"revision\": \"f6443713fea66c4b21e148778c090388\"\n },\n {\n \"url\": \"ui-service-management29.js\",\n \"revision\": \"818f83c1c7feefe1759db4c078429b58\"\n },\n {\n \"url\": \"ui-service-management3.js\",\n \"revision\": \"3ba84facb028d273bc989d316a260d7a\"\n },\n {\n \"url\": \"ui-service-management30.js\",\n \"revision\": \"1a81ec043a4dee889ad3f8b31acc915f\"\n },\n {\n \"url\": \"ui-service-management31.js\",\n \"revision\": \"3a2abf9bf856cbffca3bdfbd72fab896\"\n },\n {\n \"url\": \"ui-service-management4.js\",\n \"revision\": \"c5bd4942f563e4021c8d17b532c26511\"\n },\n {\n \"url\": \"ui-service-management5.js\",\n \"revision\": \"397e7ebed4f687ac6399c42862b6c58f\"\n },\n {\n \"url\": \"ui-service-management6.js\",\n \"revision\": \"a6fce0a52e0cc8671f82c8d4e6a95c1e\"\n },\n {\n \"url\": \"ui-service-management7.js\",\n \"revision\": \"1714cd5b62442c75baac5b1cd1550adf\"\n },\n {\n \"url\": \"ui-service-management8.js\",\n \"revision\": \"2f219e0798d90248885bbd874d93b455\"\n },\n {\n \"url\": \"ui-service-management9.js\",\n \"revision\": \"1f0952a08e1d2ee4e9e2b3fc6bce0f2a\"\n }\n], {});\n\nworkbox_routing_registerRoute(new workbox_routing_NavigationRoute(workbox_precaching_createHandlerBoundToURL(\"/index.html\")));\n\n\nworkbox_routing_registerRoute(\"polyfills/*.js\", new workbox_strategies_CacheFirst(), 'GET');\n\n\n\n\n"],"names":["self","skipWaiting","workbox_core_clientsClaim","workbox_precaching_precacheAndRoute","url","revision","workbox","registerRoute","workbox_routing_NavigationRoute","workbox_precaching_createHandlerBoundToURL","workbox_strategies_CacheFirst"],"mappings":"inBAwBAA,KAAKC,cAELC,EAAAA,eAQAC,EAAAA,iBAAoC,CAClC,CACEC,IAAO,aACPC,SAAY,oCAEd,CACED,IAAO,2BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,6BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,oCAEd,CACED,IAAO,4BACPC,SAAY,qCAEb,CAAE,GAEwBC,EAAAC,cAAC,IAAIC,EAAAA,gBAAgCC,EAAAA,wBAA2C,iBAGhFH,EAAAC,cAAC,iBAAkB,IAAIG,aAAiC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as l}from"tslib";import{MobxLitElement as u}from"@adobe/lit-mobx";import"@digital-realty/ix-button/ix-button.js";import"@digital-realty/ix-divider/ix-divider.js";import"@digital-realty/ix-drawer/ix-drawer.js";import{html as s,nothing as d}from"lit";import{customElement as p,property as D,state as y}from"lit/decorators.js";import"./ui-service-management3.js";import{ifDefined as v}from"lit-html/directives/if-defined.js";import{T as R,y as i,F as b,n as L,E as A,S,O as F,e as c,x,J as z,aO as I,A as m,a1 as B,L as O,v as U,az as q,a as V,aP as j,aQ as W}from"./ui-service-management.js";import{S as h,N as M,i as J,j as Q,k as G,l as K,U as X,m as Y}from"./ui-service-management9.js";import{m as H,r as Z,i as ee}from"./ui-service-management16.js";import"@digital-realty/ix-chip/ix-custom-chip.js";import"@digital-realty/ix-date/ix-date.js";import"@digital-realty/ix-date-next/ix-date-next.js";import"./ui-service-management17.js";import{g as ie}from"./ui-service-management13.js";import"@digital-realty/ix-wizard/ix-wizard-step.js";import"@digital-realty/ix-wizard/ix-wizard.js";import"@digital-realty/ix-email-list/ix-email-list.js";import"@digital-realty/ix-file-uploader/ix-file-uploader.js";import"@digital-realty/ix-select/ix-select-option.js";import"@digital-realty/ix-select/ix-select.js";import"@digital-realty/ix-textbox/ix-textbox.js";import"lit/directives/class-map.js";import"@vaadin/router";import"@digital-realty/ix-progress/ix-progress.js";import"moment";import"@digital-realty/theme";import"moment-timezone";import"date-fns/format.js";import"mobx";import"mobx-persist-store";import"@digital-realty/ix-account-switcher";import"oidc-client-ts";import"lit/directives/if-defined.js";import"@digital-realty/ix-icon-button/ix-icon-button.js";import"lit-html/directives/until.js";import"libphonenumber-js";import"@digital-realty/ix-dialog/ix-dialog.js";import"./ui-service-management18.js";import"@digital-realty/ix-toast/ix-toasters.js";import"@digital-realty/ix-toast/ix-message-toast.js";import"@material/web/icon/icon.js";let P=class extends u{render(){var e,t,o,a;const n=((e=i.selectedTicket)===null||e===void 0?void 0:e.status)===b.Cancelled;return s` <div class="ticket-details-body__section"> <span class="informations-section__title">Ticket Details</span> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field label="Subject" value="${v((t=i.selectedTicket)===null||t===void 0?void 0:t.subject)}" .hideIcon="${!0}"> </info-field> </div> <div class="informations-section__items-row"> <info-field label="Description" .hideIcon="${!0}" useHtmlValue> <div slot="htmlValue" class="break-normal"> <span class="whitespace-break-spaces">${(o=i.selectedTicket)===null||o===void 0?void 0:o.description}</span> </div> </info-field> </div> ${n?s` <div class="informations-section__items-row"> <info-field label="Reason for Cancellation" value="${v((a=i.selectedTicket)===null||a===void 0?void 0:a.cancellationReason)}" .hideIcon="${!0}"> </info-field> </div>`:d} </div> </div> `}};P.styles=[h,R],P=l([p("customer-care-ticket-details-section")],P);let N=class extends u{constructor(){super(),this.useNewDatePickerComponent=!1,this.useNewDatePickerComponent=L.showNewDatePickerComponent()}render(){var e,t,o,a,n,k,w,T,g,C,$,_;return s` <div class="ticket-details-body__section"> <span class="informations-section__title">Service Ticket Information</span> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="Ticket Number" value="${v((e=i.selectedTicket)===null||e===void 0?void 0:e.id)}"> <svg slot="icon">${M}</svg> </info-field> <info-field class="informations-section__items-col" label="Ticket Type" value="Customer Care"> <svg slot="icon">${J}</svg> </info-field> <info-field class="informations-section__items-col" label="Status" useHtmlValue> <svg slot="icon">${Q}</svg> <div slot="htmlValue"> ${H((t=i===null||i===void 0?void 0:i.selectedTicket)===null||t===void 0?void 0:t.status)!=="default"?s` <ix-custom-chip pill appearance="${H((o=i===null||i===void 0?void 0:i.selectedTicket)===null||o===void 0?void 0:o.status)}"></ix-custom-chip> `:s`<ix-custom-chip pill noIcon appearance="default">${(a=i===null||i===void 0?void 0:i.selectedTicket)===null||a===void 0?void 0:a.status}</ix-custom-chip>`} </div> </info-field> <info-field class="informations-section__items-col" label="Requester" .value="${(n=i.selectedTicket)===null||n===void 0?void 0:n.createdBy}"> <svg slot="icon">${G}</svg> </info-field> <info-field class="informations-section__items-col" label="Create Date" useHtmlValue> <svg slot="icon">${K}</svg> <div slot="htmlValue"> ${this.useNewDatePickerComponent?s`<ix-date-next type="static" .value="${(k=i.selectedTicket)===null||k===void 0?void 0:k.createdAt}"></ix-date-next>`:s`<ix-date type="static" .value="${(w=i.selectedTicket)===null||w===void 0?void 0:w.createdAt}"> </ix-date>`} </div> </info-field> <info-field class="informations-section__items-col" label="Updated On" useHtmlValue> <svg slot="icon">${X}</svg> <div slot="htmlValue"> ${this.useNewDatePickerComponent?s`<ix-date-next type="static" .value="${(T=i.selectedTicket)===null||T===void 0?void 0:T.updatedAt}"></ix-date-next>`:s`<ix-date type="static" .value="${(g=i.selectedTicket)===null||g===void 0?void 0:g.updatedAt}"> </ix-date>`} </div> </info-field> ${!((C=i.selectedTicket)===null||C===void 0)&&C.closedAt?s` <info-field class="informations-section__items-col" label="Closed On" useHtmlValue> <svg slot="icon">${Y}</svg> <div slot="htmlValue"> ${this.useNewDatePickerComponent?s`<ix-date-next type="static" .value="${($=i.selectedTicket)===null||$===void 0?void 0:$.closedAt}"> </ix-date-next>`:s`<ix-date type="static" .value="${(_=i.selectedTicket)===null||_===void 0?void 0:_.closedAt}"> </ix-date>`} </div> </info-field>`:d} </div> </div> </div>`}};N.styles=[h],N=l([p("customer-care-ticket-information-section")],N);let f=class extends u{async firstUpdated(){var e;this.siteName=await A((e=i.selectedTicket)===null||e===void 0?void 0:e.site)}render(){var e,t,o,a,n;return s`<div class="ticket-details-body__section"> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="Request Type" value="${v((e=i.selectedTicket)===null||e===void 0?void 0:e.requestType)}" .hideIcon="${!0}"> </info-field> <info-field class="informations-section__items-col" label="Category" value="${v((t=i.selectedTicket)===null||t===void 0?void 0:t.category)}" .hideIcon="${!0}"> </info-field> </div> ${((o=i.selectedTicket)===null||o===void 0?void 0:o.serviceBackend)!==S.TelxSFDC?s`<div class="informations-section__items-row"> <info-field label="Customer Reference Number" value="${v((a=i.selectedTicket)===null||a===void 0?void 0:a.customerReference)}" .hideIcon="${!0}"> </info-field> </div>`:d} <div class="informations-section__items-row"> <info-field label="Site" value="${v(this.siteName)}" .hideIcon="${!0}"> </info-field> </div> <div class="informations-section__items-row"> <info-field label="Location(s)" hideIcon useHtmlValue> <div slot="htmlValue"> <div>${((n=i.selectedTicket)===null||n===void 0?void 0:n.location)||"-"}</div> </div> </info-field> </div> </div> </div>`}};f.styles=[h],l([D({type:String})],f.prototype,"siteName",void 0),f=l([p("customer-care-ticket-other-information-section")],f);let E=class extends u{render(){var e;return s`<div class="ticket-details-body__section"> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field label="${F}" .hideIcon="${!0}" .useHtmlValue="${!0}"> <div slot="htmlValue"> ${Z((e=i.selectedTicket)===null||e===void 0?void 0:e.notificationRecipients)} </div> </info-field> </div> </div> </div>`}};E.styles=[h],E=l([p("customer-care-ticket-recipients-section")],E);let r=class extends u{constructor(){super(...arguments),this.ticketId="",this.hasPermissions=!1,this.showDrawer=!1,this.showCancellationDialog=!1,this.selectedCancellationReason="",this.handleEditTicket=()=>{this.toggleDrawerHandler(),i.ticket.attachments=[]},this.toggleDrawerHandler=this.toggleDrawer.bind(this),this.cancelTicketHandler=this.setShowCancellationDialog.bind(this)}get CustomerCareServiceTicketWizard(){var e;return(e=this.shadowRoot)===null||e===void 0?void 0:e.querySelector("customer-care-service-ticket-wizard")}async toggleDrawer(){var e;this.showDrawer=!this.showDrawer,(e=this.CustomerCareServiceTicketWizard)===null||e===void 0||e.handleWizardClose();try{!this.showDrawer&&(c.ticketStep!==x||c.ticketStep===x&&i.submissionResult.state===z.Error)&&await i.setTicket()}catch(t){await I(t,!1)}}setShowCancellationDialog(){this.showCancellationDialog=!0}connectedCallback(){super.connectedCallback(),window.addEventListener(m.DrawerClose,this.toggleDrawerHandler),window.addEventListener(m.CancelTicket,this.cancelTicketHandler),window.addEventListener(m.EditTicket,this.handleEditTicket)}async firstUpdated(){try{c.loadings.serviceTicket=!0,c.error.fetchingTicket=!1,this.ticketId||(this.ticketId=ie.pathname.split("/").pop()),await i.getSelectedTicket(this.ticketId);try{const e=this.getPermissionLocationId();e&&(this.hasPermissions=await B(O.Update,U.CustomerCare,e,i.selectedTicket.accountNumber))}catch(e){throw await I(e,!1),e}}catch(e){await I(e,!1),c.error.fetchingTicket=!0}finally{c.loadings.serviceTicket=!1}}getPermissionLocationId(){var e,t,o,a;return((e=i.selectedTicket)===null||e===void 0?void 0:e.serviceBackend)===S.TelxSFDC?q((t=i.selectedTicket)===null||t===void 0?void 0:t.location)?i.selectedTicket.location:(o=i.selectedTicket)===null||o===void 0?void 0:o.site:(a=i.selectedTicket)===null||a===void 0?void 0:a.location}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener(m.DrawerClose,this.toggleDrawerHandler),window.removeEventListener(m.CancelTicket,this.cancelTicketHandler),window.removeEventListener(m.EditTicket,this.toggleDrawerHandler),i.clear()}renderBody(){var e,t;return s` <customer-care-ticket-information-section></customer-care-ticket-information-section> <ix-divider></ix-divider> <customer-care-ticket-details-section></customer-care-ticket-details-section> <ix-divider></ix-divider> <customer-care-ticket-other-information-section class="w-full"></customer-care-ticket-other-information-section> ${((e=i.selectedTicket)===null||e===void 0?void 0:e.serviceBackend)!==S.TelxSFDC?s`<ix-divider></ix-divider> <customer-care-ticket-recipients-section></customer-care-ticket-recipients-section>`:d} <ix-divider></ix-divider> <attachments-section .ticketType="${V.CustomerSupport}" .ticketNumber="${(t=i.selectedTicket)===null||t===void 0?void 0:t.id}" ?IsDisabled="${!this.hasPermissions||!this.canPerformActions()}"></attachments-section> `}renderComments(){var e;if(!i)return d;const{selectedTicket:t}=i||{};return t?s` <ticket-comments ticketNumber="${t.id}" ticketType="${V.CustomerSupport}" .comments="${t.comments}" ?IsDisabled="${!this.hasPermissions||ee((e=i.selectedTicket)===null||e===void 0?void 0:e.status)}"> </ticket-comments>`:d}canPerformActions(){var e;const t=[b.InProgress,b.New];return this.hasPermissions&&t.includes((e=i.selectedTicket)===null||e===void 0?void 0:e.status)}async handleCancellationDialogClosed(e){if(this.showCancellationDialog=!1,e)try{await i.cancelTicket(this.selectedCancellationReason)}catch(t){j(W)}else this.resetCancellationFields()}resetCancellationFields(){this.selectedCancellationReason="",this.showCancellationDialog=!1}handleCancellationSelection(e){this.selectedCancellationReason=e}render(){var e,t,o;return s` <loading-error-section .loadingsState="${{...c.loadings}}" .errorState="${{...c.error}}"> </loading-error-section> ${!(!((e=i.selectedTicket)===null||e===void 0)&&e.id)||c.loadings.serviceTicket?d:s` <div> <div> <ix-drawer ?isVisible="${this.showDrawer}" ?showConfirmationDialogOnClose="${c.ticketStep!==x}" .onClosed="${()=>this.toggleDrawer()}"> ${this.showDrawer?s` <customer-care-service-ticket-wizard .selectedSite="${{siteId:(t=i.selectedTicket)===null||t===void 0?void 0:t.site,accountNumber:(o=i.selectedTicket)===null||o===void 0?void 0:o.accountNumber}}" isEdit slot="content" .toggleDrawer="${()=>this.toggleDrawer()}"></customer-care-service-ticket-wizard>`:d} </ix-drawer> <div class="ticket-details-container"> <div class="ticket-details-container__body"> ${this.renderBody()} </div> <div class="ticket-details-container__comments"> ${this.renderComments()} </div> </div> </div> <cancellation-dialog .isDialogOpen="${this.showCancellationDialog}" .onAccept="${()=>this.handleCancellationDialogClosed(!0)}" .onReject="${()=>this.handleCancellationDialogClosed(!1)}" .onCancellationSelected="${a=>this.handleCancellationSelection(a)}" .selectedCancellationReason="${this.selectedCancellationReason}"></cancellation-dialog> </div>`}`}};r.styles=[R,h],l([D({type:String})],r.prototype,"ticketId",void 0),l([D({attribute:!1})],r.prototype,"hasPermissions",void 0),l([y()],r.prototype,"showDrawer",void 0),l([y()],r.prototype,"showCancellationDialog",void 0),l([y()],r.prototype,"selectedCancellationReason",void 0),r=l([p("customer-care-ticket-details-view")],r);export{r as CustomerCareTicketDetailsView};
|
|
1
|
+
import{__decorate as l}from"tslib";import{MobxLitElement as u}from"@adobe/lit-mobx";import"@digital-realty/ix-button/ix-button.js";import"@digital-realty/ix-divider/ix-divider.js";import"@digital-realty/ix-drawer/ix-drawer.js";import{html as s,nothing as d}from"lit";import{customElement as p,property as D,state as y}from"lit/decorators.js";import"./ui-service-management3.js";import{ifDefined as v}from"lit-html/directives/if-defined.js";import{T as R,y as i,F as b,n as L,E as A,S,O as F,e as c,x,J as z,aO as I,A as m,a1 as B,L as O,v as U,az as q,a as V,aP as j,aQ as W}from"./ui-service-management.js";import{S as h,N as M,i as J,j as Q,k as G,l as K,U as X,m as Y}from"./ui-service-management9.js";import{m as H,r as Z,i as ee}from"./ui-service-management16.js";import"@digital-realty/ix-chip/ix-custom-chip.js";import"@digital-realty/ix-date/ix-date.js";import"@digital-realty/ix-date-next/ix-date-next.js";import"./ui-service-management17.js";import{g as ie}from"./ui-service-management13.js";import"@digital-realty/ix-wizard/ix-wizard-step.js";import"@digital-realty/ix-wizard/ix-wizard.js";import"@digital-realty/ix-email-list/ix-email-list.js";import"@digital-realty/ix-file-uploader/ix-file-uploader.js";import"@digital-realty/ix-select/ix-select-option.js";import"@digital-realty/ix-select/ix-select.js";import"@digital-realty/ix-textbox/ix-textbox.js";import"lit/directives/class-map.js";import"@vaadin/router";import"@digital-realty/ix-progress/ix-progress.js";import"moment";import"@digital-realty/theme";import"moment-timezone";import"date-fns/format.js";import"mobx";import"mobx-persist-store";import"@digital-realty/ix-account-switcher";import"oidc-client-ts";import"lit/directives/if-defined.js";import"@digital-realty/ix-icon-button/ix-icon-button.js";import"lit-html/directives/until.js";import"libphonenumber-js";import"@digital-realty/ix-dialog/ix-dialog.js";import"./ui-service-management18.js";import"lit-html/directives/unsafe-html.js";import"@digital-realty/ix-toast/ix-toasters.js";import"@digital-realty/ix-toast/ix-message-toast.js";import"@material/web/icon/icon.js";let P=class extends u{render(){var e,t,o,a;const n=((e=i.selectedTicket)===null||e===void 0?void 0:e.status)===b.Cancelled;return s` <div class="ticket-details-body__section"> <span class="informations-section__title">Ticket Details</span> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field label="Subject" value="${v((t=i.selectedTicket)===null||t===void 0?void 0:t.subject)}" .hideIcon="${!0}"> </info-field> </div> <div class="informations-section__items-row"> <info-field label="Description" .hideIcon="${!0}" useHtmlValue> <div slot="htmlValue" class="break-normal"> <span class="whitespace-break-spaces">${(o=i.selectedTicket)===null||o===void 0?void 0:o.description}</span> </div> </info-field> </div> ${n?s` <div class="informations-section__items-row"> <info-field label="Reason for Cancellation" value="${v((a=i.selectedTicket)===null||a===void 0?void 0:a.cancellationReason)}" .hideIcon="${!0}"> </info-field> </div>`:d} </div> </div> `}};P.styles=[h,R],P=l([p("customer-care-ticket-details-section")],P);let N=class extends u{constructor(){super(),this.useNewDatePickerComponent=!1,this.useNewDatePickerComponent=L.showNewDatePickerComponent()}render(){var e,t,o,a,n,k,w,T,g,C,$,_;return s` <div class="ticket-details-body__section"> <span class="informations-section__title">Service Ticket Information</span> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="Ticket Number" value="${v((e=i.selectedTicket)===null||e===void 0?void 0:e.id)}"> <svg slot="icon">${M}</svg> </info-field> <info-field class="informations-section__items-col" label="Ticket Type" value="Customer Care"> <svg slot="icon">${J}</svg> </info-field> <info-field class="informations-section__items-col" label="Status" useHtmlValue> <svg slot="icon">${Q}</svg> <div slot="htmlValue"> ${H((t=i===null||i===void 0?void 0:i.selectedTicket)===null||t===void 0?void 0:t.status)!=="default"?s` <ix-custom-chip pill appearance="${H((o=i===null||i===void 0?void 0:i.selectedTicket)===null||o===void 0?void 0:o.status)}"></ix-custom-chip> `:s`<ix-custom-chip pill noIcon appearance="default">${(a=i===null||i===void 0?void 0:i.selectedTicket)===null||a===void 0?void 0:a.status}</ix-custom-chip>`} </div> </info-field> <info-field class="informations-section__items-col" label="Requester" .value="${(n=i.selectedTicket)===null||n===void 0?void 0:n.createdBy}"> <svg slot="icon">${G}</svg> </info-field> <info-field class="informations-section__items-col" label="Create Date" useHtmlValue> <svg slot="icon">${K}</svg> <div slot="htmlValue"> ${this.useNewDatePickerComponent?s`<ix-date-next type="static" .value="${(k=i.selectedTicket)===null||k===void 0?void 0:k.createdAt}"></ix-date-next>`:s`<ix-date type="static" .value="${(w=i.selectedTicket)===null||w===void 0?void 0:w.createdAt}"> </ix-date>`} </div> </info-field> <info-field class="informations-section__items-col" label="Updated On" useHtmlValue> <svg slot="icon">${X}</svg> <div slot="htmlValue"> ${this.useNewDatePickerComponent?s`<ix-date-next type="static" .value="${(T=i.selectedTicket)===null||T===void 0?void 0:T.updatedAt}"></ix-date-next>`:s`<ix-date type="static" .value="${(g=i.selectedTicket)===null||g===void 0?void 0:g.updatedAt}"> </ix-date>`} </div> </info-field> ${!((C=i.selectedTicket)===null||C===void 0)&&C.closedAt?s` <info-field class="informations-section__items-col" label="Closed On" useHtmlValue> <svg slot="icon">${Y}</svg> <div slot="htmlValue"> ${this.useNewDatePickerComponent?s`<ix-date-next type="static" .value="${($=i.selectedTicket)===null||$===void 0?void 0:$.closedAt}"> </ix-date-next>`:s`<ix-date type="static" .value="${(_=i.selectedTicket)===null||_===void 0?void 0:_.closedAt}"> </ix-date>`} </div> </info-field>`:d} </div> </div> </div>`}};N.styles=[h],N=l([p("customer-care-ticket-information-section")],N);let f=class extends u{async firstUpdated(){var e;this.siteName=await A((e=i.selectedTicket)===null||e===void 0?void 0:e.site)}render(){var e,t,o,a,n;return s`<div class="ticket-details-body__section"> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="Request Type" value="${v((e=i.selectedTicket)===null||e===void 0?void 0:e.requestType)}" .hideIcon="${!0}"> </info-field> <info-field class="informations-section__items-col" label="Category" value="${v((t=i.selectedTicket)===null||t===void 0?void 0:t.category)}" .hideIcon="${!0}"> </info-field> </div> ${((o=i.selectedTicket)===null||o===void 0?void 0:o.serviceBackend)!==S.TelxSFDC?s`<div class="informations-section__items-row"> <info-field label="Customer Reference Number" value="${v((a=i.selectedTicket)===null||a===void 0?void 0:a.customerReference)}" .hideIcon="${!0}"> </info-field> </div>`:d} <div class="informations-section__items-row"> <info-field label="Site" value="${v(this.siteName)}" .hideIcon="${!0}"> </info-field> </div> <div class="informations-section__items-row"> <info-field label="Location(s)" hideIcon useHtmlValue> <div slot="htmlValue"> <div>${((n=i.selectedTicket)===null||n===void 0?void 0:n.location)||"-"}</div> </div> </info-field> </div> </div> </div>`}};f.styles=[h],l([D({type:String})],f.prototype,"siteName",void 0),f=l([p("customer-care-ticket-other-information-section")],f);let E=class extends u{render(){var e;return s`<div class="ticket-details-body__section"> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field label="${F}" .hideIcon="${!0}" .useHtmlValue="${!0}"> <div slot="htmlValue"> ${Z((e=i.selectedTicket)===null||e===void 0?void 0:e.notificationRecipients)} </div> </info-field> </div> </div> </div>`}};E.styles=[h],E=l([p("customer-care-ticket-recipients-section")],E);let r=class extends u{constructor(){super(...arguments),this.ticketId="",this.hasPermissions=!1,this.showDrawer=!1,this.showCancellationDialog=!1,this.selectedCancellationReason="",this.handleEditTicket=()=>{this.toggleDrawerHandler(),i.ticket.attachments=[]},this.toggleDrawerHandler=this.toggleDrawer.bind(this),this.cancelTicketHandler=this.setShowCancellationDialog.bind(this)}get CustomerCareServiceTicketWizard(){var e;return(e=this.shadowRoot)===null||e===void 0?void 0:e.querySelector("customer-care-service-ticket-wizard")}async toggleDrawer(){var e;this.showDrawer=!this.showDrawer,(e=this.CustomerCareServiceTicketWizard)===null||e===void 0||e.handleWizardClose();try{!this.showDrawer&&(c.ticketStep!==x||c.ticketStep===x&&i.submissionResult.state===z.Error)&&await i.setTicket()}catch(t){await I(t,!1)}}setShowCancellationDialog(){this.showCancellationDialog=!0}connectedCallback(){super.connectedCallback(),window.addEventListener(m.DrawerClose,this.toggleDrawerHandler),window.addEventListener(m.CancelTicket,this.cancelTicketHandler),window.addEventListener(m.EditTicket,this.handleEditTicket)}async firstUpdated(){try{c.loadings.serviceTicket=!0,c.error.fetchingTicket=!1,this.ticketId||(this.ticketId=ie.pathname.split("/").pop()),await i.getSelectedTicket(this.ticketId);try{const e=this.getPermissionLocationId();e&&(this.hasPermissions=await B(O.Update,U.CustomerCare,e,i.selectedTicket.accountNumber))}catch(e){throw await I(e,!1),e}}catch(e){await I(e,!1),c.error.fetchingTicket=!0}finally{c.loadings.serviceTicket=!1}}getPermissionLocationId(){var e,t,o,a;return((e=i.selectedTicket)===null||e===void 0?void 0:e.serviceBackend)===S.TelxSFDC?q((t=i.selectedTicket)===null||t===void 0?void 0:t.location)?i.selectedTicket.location:(o=i.selectedTicket)===null||o===void 0?void 0:o.site:(a=i.selectedTicket)===null||a===void 0?void 0:a.location}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener(m.DrawerClose,this.toggleDrawerHandler),window.removeEventListener(m.CancelTicket,this.cancelTicketHandler),window.removeEventListener(m.EditTicket,this.toggleDrawerHandler),i.clear()}renderBody(){var e,t;return s` <customer-care-ticket-information-section></customer-care-ticket-information-section> <ix-divider></ix-divider> <customer-care-ticket-details-section></customer-care-ticket-details-section> <ix-divider></ix-divider> <customer-care-ticket-other-information-section class="w-full"></customer-care-ticket-other-information-section> ${((e=i.selectedTicket)===null||e===void 0?void 0:e.serviceBackend)!==S.TelxSFDC?s`<ix-divider></ix-divider> <customer-care-ticket-recipients-section></customer-care-ticket-recipients-section>`:d} <ix-divider></ix-divider> <attachments-section .ticketType="${V.CustomerSupport}" .ticketNumber="${(t=i.selectedTicket)===null||t===void 0?void 0:t.id}" ?IsDisabled="${!this.hasPermissions||!this.canPerformActions()}"></attachments-section> `}renderComments(){var e;if(!i)return d;const{selectedTicket:t}=i||{};return t?s` <ticket-comments ticketNumber="${t.id}" ticketType="${V.CustomerSupport}" .comments="${t.comments}" ?IsDisabled="${!this.hasPermissions||ee((e=i.selectedTicket)===null||e===void 0?void 0:e.status)}"> </ticket-comments>`:d}canPerformActions(){var e;const t=[b.InProgress,b.New];return this.hasPermissions&&t.includes((e=i.selectedTicket)===null||e===void 0?void 0:e.status)}async handleCancellationDialogClosed(e){if(this.showCancellationDialog=!1,e)try{await i.cancelTicket(this.selectedCancellationReason)}catch(t){j(W)}else this.resetCancellationFields()}resetCancellationFields(){this.selectedCancellationReason="",this.showCancellationDialog=!1}handleCancellationSelection(e){this.selectedCancellationReason=e}render(){var e,t,o;return s` <loading-error-section .loadingsState="${{...c.loadings}}" .errorState="${{...c.error}}"> </loading-error-section> ${!(!((e=i.selectedTicket)===null||e===void 0)&&e.id)||c.loadings.serviceTicket?d:s` <div> <div> <ix-drawer ?isVisible="${this.showDrawer}" ?showConfirmationDialogOnClose="${c.ticketStep!==x}" .onClosed="${()=>this.toggleDrawer()}"> ${this.showDrawer?s` <customer-care-service-ticket-wizard .selectedSite="${{siteId:(t=i.selectedTicket)===null||t===void 0?void 0:t.site,accountNumber:(o=i.selectedTicket)===null||o===void 0?void 0:o.accountNumber}}" isEdit slot="content" .toggleDrawer="${()=>this.toggleDrawer()}"></customer-care-service-ticket-wizard>`:d} </ix-drawer> <div class="ticket-details-container"> <div class="ticket-details-container__body"> ${this.renderBody()} </div> <div class="ticket-details-container__comments"> ${this.renderComments()} </div> </div> </div> <cancellation-dialog .isDialogOpen="${this.showCancellationDialog}" .onAccept="${()=>this.handleCancellationDialogClosed(!0)}" .onReject="${()=>this.handleCancellationDialogClosed(!1)}" .onCancellationSelected="${a=>this.handleCancellationSelection(a)}" .selectedCancellationReason="${this.selectedCancellationReason}"></cancellation-dialog> </div>`}`}};r.styles=[R,h],l([D({type:String})],r.prototype,"ticketId",void 0),l([D({attribute:!1})],r.prototype,"hasPermissions",void 0),l([y()],r.prototype,"showDrawer",void 0),l([y()],r.prototype,"showCancellationDialog",void 0),l([y()],r.prototype,"selectedCancellationReason",void 0),r=l([p("customer-care-ticket-details-view")],r);export{r as CustomerCareTicketDetailsView};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__decorate as r}from"tslib";import{LitElement as l,html as
|
|
2
|
-
</textarea> <span class="error">${this.commentErrorText}</span> <ix-button class="commentPostButton" @click="${this.postComment}" ?disabled="${this.isCommentAdding||!!this.commentErrorText||!this.comment.trim()||this.IsDisabled}"> <span class="create-service-ticket-btn">POST</span> </ix-button> </div> </div> </div> ${this.renderLoading()} ${this.renderComments()} </div>`}};r([a()],m.prototype,"ticketNumber",void 0),r([a()],m.prototype,"ticketType",void 0),r([a({type:Boolean})],m.prototype,"IsDisabled",void 0),r([a({type:Array})],m.prototype,"comments",void 0),r([
|
|
1
|
+
import{__decorate as r}from"tslib";import{LitElement as l,html as o,nothing as p}from"lit";import{property as a,state as c,customElement as v}from"lit/decorators.js";import u from"moment";import{classMap as h}from"lit/directives/class-map.js";import{unsafeHTML as g}from"lit-html/directives/unsafe-html.js";import{T as C,aZ as y,n as x,a_ as T,ah as $,a$ as d}from"./ui-service-management.js";import{S as f}from"./ui-service-management9.js";import"@digital-realty/ix-toast/ix-toasters.js";import"@digital-realty/ix-toast/ix-message-toast.js";import"@digital-realty/ix-button/ix-button.js";import"@digital-realty/ix-progress/ix-progress.js";import"@digital-realty/ix-date/ix-date.js";import"@digital-realty/ix-date-next/ix-date-next.js";let m=class extends l{static get styles(){return[C,y,f]}constructor(){super(),this.useNewDatePickerComponent=!1,this.ticketNumber=void 0,this.IsDisabled=!1,this.isCommentAdding=!1,this.commentErrorText=void 0,this.comment="",this.useNewDatePickerComponent=x.showNewDatePickerComponent()}handleCommentChange(t){this.setCommentsHeight(t);const e=t.value;this.commentErrorText=e&&(e.trim().length<3||e.length>4e3)?"Comment has to be between 3 and 4000 characters long":void 0,this.comment=e}setCommentsHeight(t){t.style.height="auto",t.style.height=`${t.scrollHeight/16}rem`,t.scrollTop=t.scrollHeight}resetCommentHeight(){this.textArea.style.height="auto"}renderErrorToast(t){window.dispatchEvent(new CustomEvent("add-toast",{detail:{id:"test",content:o`<ix-message-toast forceClose="false" toastId="test" type="error">${t}</ix-message-toast>`,vertical:"bottom",horizontal:"center",animated:!0,above:!1}}))}async postComment(){this.comment.trim()&&!this.commentErrorText&&!this.isCommentAdding&&(this.isCommentAdding=!0,await T(this.ticketType,this.comment,this.ticketNumber).then(t=>{t?(this.comment="",this.comments=t,this.resetCommentHeight()):this.renderErrorToast("An error has occurred, try again later"),this.isCommentAdding=!1}))}renderComments(){var t,e;if(!(!((t=this.comments)===null||t===void 0)&&t.length))return o`<p>No comments yet.</p>`;this.comments=this.comments.sort((s,n)=>new Date(n.commentedOn).getTime()-new Date(s.commentedOn).getTime());const i={};return(e=this.comments)===null||e===void 0||e.forEach(s=>{const n=u(s.commentedOn).format($);i[n]?i[n].push(s):i[n]=[s]}),o` ${Object.keys(i).map(s=>o`<div class="commentsGroup"> <p> ${this.useNewDatePickerComponent?o`<ix-date-next type="static" .value="${i[s][0].commentedOn}"></ix-date-next>`:o`<ix-date type="static" .value="${i[s][0].commentedOn}"></ix-date>`} </p> ${i[s].map(n=>o` <div class="commentContainer"> <div class="avatarContainer"> <div> <span class="material-symbols-outlined">person</span> </div> </div> <div class="content"> <span>${n.commentedBy} Said on ${this.useNewDatePickerComponent?o`<ix-date-next type="static" variant="date-time" dateTimeText="at" .value="${n.commentedOn}"></ix-date-next>`:o`<ix-date type="static" variant="date-time" dateTimeText="at" .value="${n.commentedOn}"></ix-date>`} </span> <p>${this.getCommentContent(n.comment)}</p> </div> </div>`)} </div>`)} `}getCommentContent(t){if(this.ticketType===d.INCIDENTS){const e=/(\[code\][\s\S]*?\[\/code\])/gi;return t.split(e).map(i=>{const s=i.match(/^\[code\]([\s\S]*?)\[\/code\]$/i);return s?g(s[1]):i})}return t}renderLoading(){return this.isCommentAdding?o`<div class="w-full flex justify-center"> <ix-progress .indeterminate="${!0}" .linear="${!1}"></ix-progress> </div>`:p}get textArea(){return this.shadowRoot.querySelector("textarea")}render(){const t={ticketComments:!0,"no-padding":this.ticketType===d.INCIDENTS},e={"form-wrapper__fields":!0,"no-padding":this.ticketType===d.INCIDENTS};return o` <ix-toasters> </ix-toasters> <div class="${h(t)}"> <div> ${this.ticketType===d.INCIDENTS?p:o`<h3 class="dlr-text-heading">Activity</h3>`} <div class="form-wrapper"> <div class="${h(e)}"> <textarea type="text" placeholder="Add Comment" id="commentInput" rows="1" .value="${this.comment}" ?error="${!!this.commentErrorText}" @input="${i=>this.handleCommentChange(i.target)}" ?disabled="${this.IsDisabled||this.isCommentAdding}">
|
|
2
|
+
</textarea> <span class="error">${this.commentErrorText}</span> <ix-button class="commentPostButton" @click="${this.postComment}" ?disabled="${this.isCommentAdding||!!this.commentErrorText||!this.comment.trim()||this.IsDisabled}"> <span class="create-service-ticket-btn">POST</span> </ix-button> </div> </div> </div> ${this.renderLoading()} ${this.renderComments()} </div>`}};r([a()],m.prototype,"ticketNumber",void 0),r([a()],m.prototype,"ticketType",void 0),r([a({type:Boolean})],m.prototype,"IsDisabled",void 0),r([a({type:Array})],m.prototype,"comments",void 0),r([c()],m.prototype,"isCommentAdding",void 0),r([c()],m.prototype,"commentErrorText",void 0),r([c()],m.prototype,"comment",void 0),m=r([v("ticket-comments")],m);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as n}from"tslib";import{html as o,nothing as c}from"lit";import{MobxLitElement as $}from"@adobe/lit-mobx";import{customElement as b,property as P,state as k}from"lit/decorators.js";import{ifDefined as H}from"lit/directives/if-defined.js";import{n as L,aN as i,T as x,F as O,S as I,O as B,e as r,x as _,J as z,aO as E,A as T,b1 as q,v as F,L as A,a as R,aP as U,aQ as j}from"./ui-service-management.js";import{S as w,N as M,i as W,j as J,k as Q,l as G,U as K}from"./ui-service-management9.js";import"@digital-realty/ix-divider/ix-divider.js";import"@digital-realty/ix-button/ix-button.js";import"@digital-realty/ix-drawer/ix-drawer.js";import"@digital-realty/ix-wizard/ix-wizard.js";import"@digital-realty/ix-wizard/ix-wizard-step.js";import{m as N,r as X,i as V}from"./ui-service-management16.js";import"./ui-service-management17.js";import"./ui-service-management8.js";import{ifDefined as f}from"lit-html/directives/if-defined.js";import"@digital-realty/ix-chip/ix-custom-chip.js";import"@digital-realty/ix-date/ix-date.js";import"@digital-realty/ix-date-next/ix-date-next.js";import{g as Y}from"./ui-service-management13.js";import"moment";import"@digital-realty/theme";import"moment-timezone";import"date-fns/format.js";import"mobx";import"mobx-persist-store";import"@digital-realty/ix-account-switcher";import"@vaadin/router";import"oidc-client-ts";import"@digital-realty/ix-select/ix-select.js";import"@digital-realty/ix-select/ix-select-option.js";import"@digital-realty/ix-icon-button/ix-icon-button.js";import"lit-html/directives/until.js";import"libphonenumber-js";import"@digital-realty/ix-file-uploader/ix-file-uploader.js";import"@digital-realty/ix-progress/ix-progress.js";import"@digital-realty/ix-dialog/ix-dialog.js";import"./ui-service-management18.js";import"lit/directives/class-map.js";import"@digital-realty/ix-toast/ix-toasters.js";import"@digital-realty/ix-toast/ix-message-toast.js";import"@digital-realty/ix-email-list/ix-email-list.js";import"@digital-realty/ix-multi-select/ix-multi-select.js";import"@digital-realty/ix-textbox/ix-textbox.js";import"@digital-realty/ix-time/ix-time.js";import"@digital-realty/ix-chip/ix-chip.js";import"./ui-service-management10.js";import"lit-html/directives/unsafe-html.js";import"@material/web/icon/icon.js";let S=class extends ${constructor(){super(),this.useNewDatePickerComponent=!1,this.useNewDatePickerComponent=L.showNewDatePickerComponent()}render(){var e,t,s,l,v,m,u,p,h;return o` <div class="ticket-details-body__section"> <span class="informations-section__title">Service Ticket Information</span> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="Ticket Number" value="${f((e=i.selectedTicket)===null||e===void 0?void 0:e.id)}"> <svg slot="icon">${M}</svg> </info-field> <info-field class="informations-section__items-col" label="Ticket Type" value="Trouble Ticket"> <svg slot="icon">${W}</svg> </info-field> <info-field class="informations-section__items-col" label="Status" useHtmlValue> <svg slot="icon">${J}</svg> <div slot="htmlValue"> ${N((t=i===null||i===void 0?void 0:i.selectedTicket)===null||t===void 0?void 0:t.state)!=="default"?o` <ix-custom-chip pill appearance="${N((s=i===null||i===void 0?void 0:i.selectedTicket)===null||s===void 0?void 0:s.state)}"></ix-custom-chip> `:o` <ix-custom-chip appearance="default" pill noIcon>${(l=i===null||i===void 0?void 0:i.selectedTicket)===null||l===void 0?void 0:l.state} </ix-custom-chip>`} </div> </info-field> <info-field class="informations-section__items-col" label="Requester" .value="${(v=i.selectedTicket)===null||v===void 0?void 0:v.requester}"> <svg slot="icon">${Q}</svg> </info-field> <info-field class="informations-section__items-col" label="Create Date" useHtmlValue> <svg slot="icon">${G}</svg> <div slot="htmlValue"> ${this.useNewDatePickerComponent?o`<ix-date-next type="static" .value="${(m=i.selectedTicket)===null||m===void 0?void 0:m.createdOn}"></ix-date-next>`:o`<ix-date type="static" .value="${(u=i.selectedTicket)===null||u===void 0?void 0:u.createdOn}"> </ix-date>`} </div> </info-field> <info-field class="informations-section__items-col" label="Updated On" useHtmlValue> <svg slot="icon">${K}</svg> <div slot="htmlValue"> ${this.useNewDatePickerComponent?o`<ix-date-next type="static" .value="${(p=i.selectedTicket)===null||p===void 0?void 0:p.updatedOn}"></ix-date-next>`:o`<ix-date type="static" .value="${(h=i.selectedTicket)===null||h===void 0?void 0:h.updatedOn}"> </ix-date>`} </div> </info-field> </div> </div> </div>`}};S.styles=[w],S=n([b("trouble-ticket-information-section")],S);let D=class extends ${render(){var e,t,s,l;return o` <div class="ticket-details-body__section"> <span class="informations-section__title">Ticket Details</span> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field label="Subject" value="${f((e=i.selectedTicket)===null||e===void 0?void 0:e.subject)}" .hideIcon="${!0}"> </info-field> </div> <div class="informations-section__items-row"> <info-field label="Description" useHtmlValue .hideIcon="${!0}"> <div slot="htmlValue" class="break-normal"> <span class="whitespace-break-spaces">${(t=i.selectedTicket)===null||t===void 0?void 0:t.description}</span> </div> </info-field> </div> ${((s=i.selectedTicket)===null||s===void 0?void 0:s.state)===O.Cancelled?o` <div class="informations-section__items-row"> <info-field label="Reason for Cancellation" .value="${(l=i.selectedTicket)===null||l===void 0?void 0:l.cancellationReason}" .hideIcon="${!0}"> </info-field> </div>`:c} </div> </div> `}};D.styles=[w,x],D=n([b("trouble-ticket-details-section")],D);let y=class extends ${get locations(){var e,t;return(t=(e=i.selectedTicket)===null||e===void 0?void 0:e.locations)!==null&&t!==void 0?t:[]}render(){var e,t,s,l,v,m,u,p,h,g,C;return o` <div class="ticket-details-body__section"> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="Request Type" value="${f((e=i.selectedTicket)===null||e===void 0?void 0:e.requestType)}" .hideIcon="${!0}"> </info-field> ${!((t=i.selectedTicket)===null||t===void 0)&&t.category?o` <info-field class="informations-section__items-col" label="Category" value="${f((s=i.selectedTicket)===null||s===void 0?void 0:s.category)}" .hideIcon="${!0}"> </info-field>`:c} ${!((l=i.selectedTicket)===null||l===void 0)&&l.circuitId?o`<info-field class="informations-section__items-col" label="Circuit ID" value="${f((v=i.selectedTicket)===null||v===void 0?void 0:v.circuitId)}" .hideIcon="${!0}"> </info-field>`:c} ${((m=i.selectedTicket)===null||m===void 0?void 0:m.serviceBackend)!==I.TelxSFDC?o` <info-field class="informations-section__items-col" label="Customer Reference Number" value="${f((u=i.selectedTicket)===null||u===void 0?void 0:u.referenceNumber)}" .hideIcon="${!0}"> </info-field> `:c} </div> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="Site" value="${f((h=(p=i.selectedTicket)===null||p===void 0?void 0:p.site)===null||h===void 0?void 0:h.id)}" .hideIcon="${!0}"> </info-field> <info-field class="informations-section__items-col" label="${this.locations.length===1?"Location":"Location(s)"}" .hideIcon="${!0}" .useHtmlValue="${!0}"> <div slot="htmlValue"> <div> ${this.locations.length>0?this.locations.join(","):"-"} </div> </div> </info-field> </div> </div> </div> ${((g=i.selectedTicket)===null||g===void 0?void 0:g.serviceBackend)!==I.TelxSFDC?o` <ix-divider></ix-divider> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="${B}" .hideIcon="${!0}" .useHtmlValue="${!0}"> <div slot="htmlValue"> ${X((C=i.selectedTicket)===null||C===void 0?void 0:C.contacts)} </div> </info-field> </div> `:c} `}};y.styles=[w],y=n([b("trouble-ticket-other-information-section")],y);const d={None:0,Edit:1,Result:2};let a=class extends ${constructor(){super(...arguments),this.ticketId="",this.currentStep=d.None,this.showDrawer=!1,this.editClicked=!1,this.showCancellationDialog=!1,this.selectedCancellationReason="",this.hasPermissions=!1,this.toggleDrawerHandler=this.toggleDrawer.bind(this),this.cancelTicketHandler=this.setShowCancellationDialog.bind(this),this.editTicketHandler=this.handleEditClick.bind(this)}get CreateEditTroubleTicketWizard(){var e;return(e=this.shadowRoot)===null||e===void 0?void 0:e.querySelector("create-edit-trouble-ticket-wizard")}async toggleDrawer(){this.showDrawer=!this.showDrawer;try{!this.showDrawer&&(r.ticketStep!==_||r.ticketStep===_&&i.submissionResult.state===z.Error)&&await i.setNewTicket()}catch(e){await E(e,!1)}}setShowCancellationDialog(){this.showCancellationDialog=!0}handleEditClick(){this.currentStep=d.Edit,this.toggleDrawer(),this.editClicked=!0,i.newTicket.attachments=[]}connectedCallback(){super.connectedCallback(),window.addEventListener(T.DrawerClose,this.toggleDrawerHandler),window.addEventListener(T.CancelTicket,this.cancelTicketHandler),window.addEventListener(T.EditTicket,this.editTicketHandler)}async firstUpdated(){var e;try{r.loadings.serviceTicket=!0,r.error.fetchingTicket=!1,this.ticketId||(this.ticketId=Y.pathname.split("/").pop()),await i.getTroubleTicketById(this.ticketId),this.hasPermissions=await q(((e=i.selectedTicket)===null||e===void 0?void 0:e.locations)||[],F.TroubleTickets,A.Update)}catch(t){await E(t,!1),r.error.fetchingTicket=!0}finally{r.loadings.serviceTicket=!1}}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener(T.DrawerClose,this.toggleDrawerHandler),window.removeEventListener(T.CancelTicket,this.cancelTicketHandler),window.removeEventListener(T.EditTicket,this.editTicketHandler),i.clear()}renderBody(){var e,t;return o` <trouble-ticket-information-section></trouble-ticket-information-section> <ix-divider></ix-divider> <trouble-ticket-details-section></trouble-ticket-details-section> <ix-divider></ix-divider> <trouble-ticket-other-information-section></trouble-ticket-other-information-section> <ix-divider></ix-divider> <attachments-section .ticketType="${R.TroubleTickets}" .ticketNumber="${(e=i.selectedTicket)===null||e===void 0?void 0:e.id}" ?IsDisabled="${!this.hasPermissions||V((t=i.selectedTicket)===null||t===void 0?void 0:t.state)}"></attachments-section> `}renderComments(){if(!i)return c;const{selectedTicket:e}=i||{};return e?o` <ticket-comments ticketNumber="${H(e.id)}" ticketType="${R.TroubleTickets}" .comments="${e.comments}" ?IsDisabled="${!this.hasPermissions||V(e.state)}"> </ticket-comments>`:c}renderEditStep(){return this.currentStep!==d.Edit?c:o` <ix-wizard-step .isVisible="${this.currentStep===d.Edit}" .isNextButtonVisible="${!1}"> <create-edit-trouble-ticket-form ?isEdit="${!0}" .onSubmitted="${()=>{this.currentStep=d.Result}}" .onCancelled="${()=>this.toggleDrawer()}"></create-edit-trouble-ticket-form> </ix-wizard-step> `}renderResultStep(){return this.currentStep!==d.Result?c:o` <ix-wizard-step .isVisible="${this.currentStep===d.Result}" .isNextButtonVisible="${!1}"> <create-edit-trouble-ticket-result ?isEdit="${!0}" .onClosed="${()=>this.toggleDrawer()}"></create-edit-trouble-ticket-result> </ix-wizard-step> `}async handleCancellationDialogClosed(e){if(this.showCancellationDialog=!1,e)try{await i.cancelTicket(this.selectedCancellationReason)}catch(t){U(j)}else this.resetCancellationFields()}handleCancellationSelection(e){this.selectedCancellationReason=e}resetCancellationFields(){this.selectedCancellationReason="",this.showCancellationDialog=!1}get CreateEditTroubleTicketForm(){var e;return(e=this.shadowRoot)===null||e===void 0?void 0:e.querySelector("create-edit-trouble-ticket-form")}render(){var e;return o` <loading-error-section .loadingsState="${{...r.loadings}}" .errorState="${{...r.error}}"> </loading-error-section> ${!(!((e=i.selectedTicket)===null||e===void 0)&&e.id)||r.loadings.serviceTicket?c:o` <div> <div> <ix-drawer ?isVisible="${this.showDrawer}" .onClosed="${()=>this.toggleDrawer()}" ?showConfirmationDialogOnClose="${r.ticketStep!==_}"> <ix-wizard slot="content" .isNextButtonVisible="${!1}" .totalSteps="${1}" .currentStep="${this.currentStep}" .hideStepCount="${!0}" .enableNextStepClick="${!0}"> ${this.renderEditStep()} ${this.renderResultStep()} </ix-wizard> </ix-drawer> <div class="ticket-details-container"> <div class="ticket-details-container__body"> ${this.renderBody()} </div> <div class="ticket-details-container__comments"> ${this.renderComments()} </div> </div> </div> <cancellation-dialog .isDialogOpen="${this.showCancellationDialog}" .onAccept="${()=>this.handleCancellationDialogClosed(!0)}" .onReject="${()=>this.handleCancellationDialogClosed(!1)}" .onCancellationSelected="${t=>this.handleCancellationSelection(t)}" .selectedCancellationReason="${this.selectedCancellationReason}"></cancellation-dialog> </div>`}`}};a.styles=[x,w],n([P({type:String})],a.prototype,"ticketId",void 0),n([k()],a.prototype,"currentStep",void 0),n([k()],a.prototype,"showDrawer",void 0),n([k()],a.prototype,"editClicked",void 0),n([k()],a.prototype,"showCancellationDialog",void 0),n([k()],a.prototype,"selectedCancellationReason",void 0),n([k()],a.prototype,"hasPermissions",void 0),a=n([b("trouble-ticket-details-view")],a);export{d as ServiceTicketSteps,a as TroubleTicketDetailsView};
|
|
1
|
+
import{__decorate as n}from"tslib";import{html as o,nothing as c}from"lit";import{MobxLitElement as $}from"@adobe/lit-mobx";import{customElement as b,property as P,state as k}from"lit/decorators.js";import{ifDefined as H}from"lit/directives/if-defined.js";import{n as L,aN as i,T as x,F as O,S as I,O as B,e as r,x as _,J as z,aO as E,A as T,b1 as q,v as F,L as A,a as R,aP as U,aQ as j}from"./ui-service-management.js";import{S as w,N as M,i as W,j as J,k as Q,l as G,U as K}from"./ui-service-management9.js";import"@digital-realty/ix-divider/ix-divider.js";import"@digital-realty/ix-button/ix-button.js";import"@digital-realty/ix-drawer/ix-drawer.js";import"@digital-realty/ix-wizard/ix-wizard.js";import"@digital-realty/ix-wizard/ix-wizard-step.js";import{m as N,r as X,i as V}from"./ui-service-management16.js";import"./ui-service-management17.js";import"./ui-service-management8.js";import{ifDefined as f}from"lit-html/directives/if-defined.js";import"@digital-realty/ix-chip/ix-custom-chip.js";import"@digital-realty/ix-date/ix-date.js";import"@digital-realty/ix-date-next/ix-date-next.js";import{g as Y}from"./ui-service-management13.js";import"moment";import"@digital-realty/theme";import"moment-timezone";import"date-fns/format.js";import"mobx";import"mobx-persist-store";import"@digital-realty/ix-account-switcher";import"@vaadin/router";import"oidc-client-ts";import"@digital-realty/ix-select/ix-select.js";import"@digital-realty/ix-select/ix-select-option.js";import"@digital-realty/ix-icon-button/ix-icon-button.js";import"lit-html/directives/until.js";import"libphonenumber-js";import"@digital-realty/ix-file-uploader/ix-file-uploader.js";import"@digital-realty/ix-progress/ix-progress.js";import"@digital-realty/ix-dialog/ix-dialog.js";import"./ui-service-management18.js";import"lit/directives/class-map.js";import"lit-html/directives/unsafe-html.js";import"@digital-realty/ix-toast/ix-toasters.js";import"@digital-realty/ix-toast/ix-message-toast.js";import"@digital-realty/ix-email-list/ix-email-list.js";import"@digital-realty/ix-multi-select/ix-multi-select.js";import"@digital-realty/ix-textbox/ix-textbox.js";import"@digital-realty/ix-time/ix-time.js";import"@digital-realty/ix-chip/ix-chip.js";import"./ui-service-management10.js";import"@material/web/icon/icon.js";let S=class extends ${constructor(){super(),this.useNewDatePickerComponent=!1,this.useNewDatePickerComponent=L.showNewDatePickerComponent()}render(){var e,t,s,l,v,m,u,p,h;return o` <div class="ticket-details-body__section"> <span class="informations-section__title">Service Ticket Information</span> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="Ticket Number" value="${f((e=i.selectedTicket)===null||e===void 0?void 0:e.id)}"> <svg slot="icon">${M}</svg> </info-field> <info-field class="informations-section__items-col" label="Ticket Type" value="Trouble Ticket"> <svg slot="icon">${W}</svg> </info-field> <info-field class="informations-section__items-col" label="Status" useHtmlValue> <svg slot="icon">${J}</svg> <div slot="htmlValue"> ${N((t=i===null||i===void 0?void 0:i.selectedTicket)===null||t===void 0?void 0:t.state)!=="default"?o` <ix-custom-chip pill appearance="${N((s=i===null||i===void 0?void 0:i.selectedTicket)===null||s===void 0?void 0:s.state)}"></ix-custom-chip> `:o` <ix-custom-chip appearance="default" pill noIcon>${(l=i===null||i===void 0?void 0:i.selectedTicket)===null||l===void 0?void 0:l.state} </ix-custom-chip>`} </div> </info-field> <info-field class="informations-section__items-col" label="Requester" .value="${(v=i.selectedTicket)===null||v===void 0?void 0:v.requester}"> <svg slot="icon">${Q}</svg> </info-field> <info-field class="informations-section__items-col" label="Create Date" useHtmlValue> <svg slot="icon">${G}</svg> <div slot="htmlValue"> ${this.useNewDatePickerComponent?o`<ix-date-next type="static" .value="${(m=i.selectedTicket)===null||m===void 0?void 0:m.createdOn}"></ix-date-next>`:o`<ix-date type="static" .value="${(u=i.selectedTicket)===null||u===void 0?void 0:u.createdOn}"> </ix-date>`} </div> </info-field> <info-field class="informations-section__items-col" label="Updated On" useHtmlValue> <svg slot="icon">${K}</svg> <div slot="htmlValue"> ${this.useNewDatePickerComponent?o`<ix-date-next type="static" .value="${(p=i.selectedTicket)===null||p===void 0?void 0:p.updatedOn}"></ix-date-next>`:o`<ix-date type="static" .value="${(h=i.selectedTicket)===null||h===void 0?void 0:h.updatedOn}"> </ix-date>`} </div> </info-field> </div> </div> </div>`}};S.styles=[w],S=n([b("trouble-ticket-information-section")],S);let D=class extends ${render(){var e,t,s,l;return o` <div class="ticket-details-body__section"> <span class="informations-section__title">Ticket Details</span> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field label="Subject" value="${f((e=i.selectedTicket)===null||e===void 0?void 0:e.subject)}" .hideIcon="${!0}"> </info-field> </div> <div class="informations-section__items-row"> <info-field label="Description" useHtmlValue .hideIcon="${!0}"> <div slot="htmlValue" class="break-normal"> <span class="whitespace-break-spaces">${(t=i.selectedTicket)===null||t===void 0?void 0:t.description}</span> </div> </info-field> </div> ${((s=i.selectedTicket)===null||s===void 0?void 0:s.state)===O.Cancelled?o` <div class="informations-section__items-row"> <info-field label="Reason for Cancellation" .value="${(l=i.selectedTicket)===null||l===void 0?void 0:l.cancellationReason}" .hideIcon="${!0}"> </info-field> </div>`:c} </div> </div> `}};D.styles=[w,x],D=n([b("trouble-ticket-details-section")],D);let y=class extends ${get locations(){var e,t;return(t=(e=i.selectedTicket)===null||e===void 0?void 0:e.locations)!==null&&t!==void 0?t:[]}render(){var e,t,s,l,v,m,u,p,h,g,C;return o` <div class="ticket-details-body__section"> <div class="informations-section__items"> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="Request Type" value="${f((e=i.selectedTicket)===null||e===void 0?void 0:e.requestType)}" .hideIcon="${!0}"> </info-field> ${!((t=i.selectedTicket)===null||t===void 0)&&t.category?o` <info-field class="informations-section__items-col" label="Category" value="${f((s=i.selectedTicket)===null||s===void 0?void 0:s.category)}" .hideIcon="${!0}"> </info-field>`:c} ${!((l=i.selectedTicket)===null||l===void 0)&&l.circuitId?o`<info-field class="informations-section__items-col" label="Circuit ID" value="${f((v=i.selectedTicket)===null||v===void 0?void 0:v.circuitId)}" .hideIcon="${!0}"> </info-field>`:c} ${((m=i.selectedTicket)===null||m===void 0?void 0:m.serviceBackend)!==I.TelxSFDC?o` <info-field class="informations-section__items-col" label="Customer Reference Number" value="${f((u=i.selectedTicket)===null||u===void 0?void 0:u.referenceNumber)}" .hideIcon="${!0}"> </info-field> `:c} </div> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="Site" value="${f((h=(p=i.selectedTicket)===null||p===void 0?void 0:p.site)===null||h===void 0?void 0:h.id)}" .hideIcon="${!0}"> </info-field> <info-field class="informations-section__items-col" label="${this.locations.length===1?"Location":"Location(s)"}" .hideIcon="${!0}" .useHtmlValue="${!0}"> <div slot="htmlValue"> <div> ${this.locations.length>0?this.locations.join(","):"-"} </div> </div> </info-field> </div> </div> </div> ${((g=i.selectedTicket)===null||g===void 0?void 0:g.serviceBackend)!==I.TelxSFDC?o` <ix-divider></ix-divider> <div class="informations-section__items-row"> <info-field class="informations-section__items-col" label="${B}" .hideIcon="${!0}" .useHtmlValue="${!0}"> <div slot="htmlValue"> ${X((C=i.selectedTicket)===null||C===void 0?void 0:C.contacts)} </div> </info-field> </div> `:c} `}};y.styles=[w],y=n([b("trouble-ticket-other-information-section")],y);const d={None:0,Edit:1,Result:2};let a=class extends ${constructor(){super(...arguments),this.ticketId="",this.currentStep=d.None,this.showDrawer=!1,this.editClicked=!1,this.showCancellationDialog=!1,this.selectedCancellationReason="",this.hasPermissions=!1,this.toggleDrawerHandler=this.toggleDrawer.bind(this),this.cancelTicketHandler=this.setShowCancellationDialog.bind(this),this.editTicketHandler=this.handleEditClick.bind(this)}get CreateEditTroubleTicketWizard(){var e;return(e=this.shadowRoot)===null||e===void 0?void 0:e.querySelector("create-edit-trouble-ticket-wizard")}async toggleDrawer(){this.showDrawer=!this.showDrawer;try{!this.showDrawer&&(r.ticketStep!==_||r.ticketStep===_&&i.submissionResult.state===z.Error)&&await i.setNewTicket()}catch(e){await E(e,!1)}}setShowCancellationDialog(){this.showCancellationDialog=!0}handleEditClick(){this.currentStep=d.Edit,this.toggleDrawer(),this.editClicked=!0,i.newTicket.attachments=[]}connectedCallback(){super.connectedCallback(),window.addEventListener(T.DrawerClose,this.toggleDrawerHandler),window.addEventListener(T.CancelTicket,this.cancelTicketHandler),window.addEventListener(T.EditTicket,this.editTicketHandler)}async firstUpdated(){var e;try{r.loadings.serviceTicket=!0,r.error.fetchingTicket=!1,this.ticketId||(this.ticketId=Y.pathname.split("/").pop()),await i.getTroubleTicketById(this.ticketId),this.hasPermissions=await q(((e=i.selectedTicket)===null||e===void 0?void 0:e.locations)||[],F.TroubleTickets,A.Update)}catch(t){await E(t,!1),r.error.fetchingTicket=!0}finally{r.loadings.serviceTicket=!1}}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener(T.DrawerClose,this.toggleDrawerHandler),window.removeEventListener(T.CancelTicket,this.cancelTicketHandler),window.removeEventListener(T.EditTicket,this.editTicketHandler),i.clear()}renderBody(){var e,t;return o` <trouble-ticket-information-section></trouble-ticket-information-section> <ix-divider></ix-divider> <trouble-ticket-details-section></trouble-ticket-details-section> <ix-divider></ix-divider> <trouble-ticket-other-information-section></trouble-ticket-other-information-section> <ix-divider></ix-divider> <attachments-section .ticketType="${R.TroubleTickets}" .ticketNumber="${(e=i.selectedTicket)===null||e===void 0?void 0:e.id}" ?IsDisabled="${!this.hasPermissions||V((t=i.selectedTicket)===null||t===void 0?void 0:t.state)}"></attachments-section> `}renderComments(){if(!i)return c;const{selectedTicket:e}=i||{};return e?o` <ticket-comments ticketNumber="${H(e.id)}" ticketType="${R.TroubleTickets}" .comments="${e.comments}" ?IsDisabled="${!this.hasPermissions||V(e.state)}"> </ticket-comments>`:c}renderEditStep(){return this.currentStep!==d.Edit?c:o` <ix-wizard-step .isVisible="${this.currentStep===d.Edit}" .isNextButtonVisible="${!1}"> <create-edit-trouble-ticket-form ?isEdit="${!0}" .onSubmitted="${()=>{this.currentStep=d.Result}}" .onCancelled="${()=>this.toggleDrawer()}"></create-edit-trouble-ticket-form> </ix-wizard-step> `}renderResultStep(){return this.currentStep!==d.Result?c:o` <ix-wizard-step .isVisible="${this.currentStep===d.Result}" .isNextButtonVisible="${!1}"> <create-edit-trouble-ticket-result ?isEdit="${!0}" .onClosed="${()=>this.toggleDrawer()}"></create-edit-trouble-ticket-result> </ix-wizard-step> `}async handleCancellationDialogClosed(e){if(this.showCancellationDialog=!1,e)try{await i.cancelTicket(this.selectedCancellationReason)}catch(t){U(j)}else this.resetCancellationFields()}handleCancellationSelection(e){this.selectedCancellationReason=e}resetCancellationFields(){this.selectedCancellationReason="",this.showCancellationDialog=!1}get CreateEditTroubleTicketForm(){var e;return(e=this.shadowRoot)===null||e===void 0?void 0:e.querySelector("create-edit-trouble-ticket-form")}render(){var e;return o` <loading-error-section .loadingsState="${{...r.loadings}}" .errorState="${{...r.error}}"> </loading-error-section> ${!(!((e=i.selectedTicket)===null||e===void 0)&&e.id)||r.loadings.serviceTicket?c:o` <div> <div> <ix-drawer ?isVisible="${this.showDrawer}" .onClosed="${()=>this.toggleDrawer()}" ?showConfirmationDialogOnClose="${r.ticketStep!==_}"> <ix-wizard slot="content" .isNextButtonVisible="${!1}" .totalSteps="${1}" .currentStep="${this.currentStep}" .hideStepCount="${!0}" .enableNextStepClick="${!0}"> ${this.renderEditStep()} ${this.renderResultStep()} </ix-wizard> </ix-drawer> <div class="ticket-details-container"> <div class="ticket-details-container__body"> ${this.renderBody()} </div> <div class="ticket-details-container__comments"> ${this.renderComments()} </div> </div> </div> <cancellation-dialog .isDialogOpen="${this.showCancellationDialog}" .onAccept="${()=>this.handleCancellationDialogClosed(!0)}" .onReject="${()=>this.handleCancellationDialogClosed(!1)}" .onCancellationSelected="${t=>this.handleCancellationSelection(t)}" .selectedCancellationReason="${this.selectedCancellationReason}"></cancellation-dialog> </div>`}`}};a.styles=[x,w],n([P({type:String})],a.prototype,"ticketId",void 0),n([k()],a.prototype,"currentStep",void 0),n([k()],a.prototype,"showDrawer",void 0),n([k()],a.prototype,"editClicked",void 0),n([k()],a.prototype,"showCancellationDialog",void 0),n([k()],a.prototype,"selectedCancellationReason",void 0),n([k()],a.prototype,"hasPermissions",void 0),a=n([b("trouble-ticket-details-view")],a);export{d as ServiceTicketSteps,a as TroubleTicketDetailsView};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as d}from"tslib";import{MobxLitElement as P}from"@adobe/lit-mobx";import"@digital-realty/ix-button/ix-button.js";import"@digital-realty/ix-chip/ix-chip.js";import"@digital-realty/ix-date-next/ix-date-next.js";import"@digital-realty/ix-date/ix-date.js";import"@digital-realty/ix-drawer/ix-drawer.js";import"@digital-realty/ix-grid/ix-grid-no-rows.js";import"@digital-realty/ix-grid/ix-grid.js";import"@digital-realty/ix-progress/ix-progress.js";import"@digital-realty/ix-tooltip/ix-tooltip.js";import{LitElement as A,html as n,nothing as w}from"lit";import{property as k,state as h,customElement as f}from"lit/decorators.js";import{b2 as C,aO as g,g as x,b8 as O,b9 as _,T,B as L,a1 as N,v as G,L as M,ba as R,aP as U,a$ as F,b5 as b,n as V}from"./ui-service-management.js";import{A as E,F as v,b as S,O as $}from"./ui-service-management11.js";import{d as z}from"./ui-service-management12.js";import{S as D}from"./ui-service-management9.js";import"./ui-service-management18.js";import{R as B}from"./ui-service-management28.js";import{makeAutoObservable as K,reaction as q}from"mobx";import"@digital-realty/ix-tabs/ix-tabs.js";import"@digital-realty/ix-tabs/ix-primary-tab.js";import"@digital-realty/ix-divider/ix-divider.js";import"./ui-service-management17.js";import"moment";import"@digital-realty/theme";import"moment-timezone";import"date-fns/format.js";import"mobx-persist-store";import"@digital-realty/ix-account-switcher";import"@vaadin/router";import"oidc-client-ts";import"lit/directives/if-defined.js";import"@digital-realty/ix-select/ix-select.js";import"@digital-realty/ix-select/ix-select-option.js";import"@digital-realty/ix-icon-button/ix-icon-button.js";import"lit-html/directives/until.js";import"libphonenumber-js";import"@digital-realty/ix-grid/ix-grid-nav.js";import"lit/directives/class-map.js";import"@digital-realty/ix-toast/ix-toasters.js";import"@digital-realty/ix-toast/ix-message-toast.js";const I={loadings:{incidentsList:!0,downloadIncidentsList:!1,downloadAttachment:{},getIncidentTicket:!1},errorIncidentsGrid:!1};class j{constructor(){this.loadings=I.loadings,this.errorIncidentsGrid=I.errorIncidentsGrid,K(this)}async GetIncident(t){let i;return t&&(this.loadings.getIncidentTicket=!0,i=await C.incidentsApi.getIncidentsTicketById({ticketId:t}).catch(s=>{g(s,!1)}).finally(()=>{this.loadings.getIncidentTicket=!1})),i}async GetIncidentsList(t,i,s,r,a){const{accountNumber:o}=x.getUserAccount();let l;return this.errorIncidentsGrid=!1,o&&(this.loadings.incidentsList=!0,l=await C.incidentsApi.getIncidentsTickets({$filter:t,$orderby:i,$skip:s,$top:r},a).catch(y=>{var u;!((u=a==null?void 0:a.signal)===null||u===void 0)&&u.aborted||(g(y,!1),this.errorIncidentsGrid=!0)}).finally(()=>{this.loadings.incidentsList=!1})),l}async downloadIncidentsList(t,i,s,r){this.loadings.downloadIncidentsList=!0,await O(t,i,s,r),this.loadings.downloadIncidentsList=!1}async downloadIncidentAttachment(t,i,s){const r=`${t}_${i}`;this.loadings.downloadAttachment[r]=!0,await _(t,i,s).catch(a=>{g(a,!1)}).finally(()=>{this.loadings.downloadAttachment[r]=!1})}}const c=new j,Z=[{id:"details",label:"Details"},{id:"activity",label:"Activity"}];let p=class extends A{constructor(){super(...arguments),this.useNewDatePickerComponent=!1,this.activeTab="details",this.hasUpdatePermissions=!1,this.statusAllowsUpdate=!1,this.toggleVisibilityReactionDisposers=new Map}async firstUpdated(){const e=L.sites.find(t=>t.name===this.incident.site);this.site=e?`${e==null?void 0:e.name} - ${e==null?void 0:e.streetAddress}`:this.incident.site,e!=null&&e.locationId&&this.incident.accountNumber&&(this.hasUpdatePermissions=await N(M.Update,G.PlannedMaintenance,e.locationId,this.incident.accountNumber)),this.statusAllowsUpdate=this.incident.status!==R.Closed&&this.incident.status!==R.Cancelled}disconnectedCallback(){super.disconnectedCallback(),this.toggleVisibilityReactionDisposers.forEach(e=>e()),this.toggleVisibilityReactionDisposers.clear()}toggleVisibility(e,t,i){const s=e.parentElement,r=s==null?void 0:s.querySelector(`#progress-${t}`);r.style.display=i?"inline-block":"none";const a=e;a.style.display=i?"none":"inline-block"}deleteToggleVisibilityReactionByKey(e){this.toggleVisibilityReactionDisposers.get(e)(),this.toggleVisibilityReactionDisposers.delete(e)}async handleAttachmentClick(e,t){const i=e.currentTarget,s=this.incident.id,r=i.getAttribute("attachment-id");if(!r){U("Unable to download the attachment");return}this.toggleVisibility(i,r,!0);const a=`${s}_${r}`;this.toggleVisibilityReactionDisposers.has(a)&&this.deleteToggleVisibilityReactionByKey(a);const o=q(()=>c.loadings.downloadAttachment[a],l=>{this.toggleVisibility(i,r,l),l||this.deleteToggleVisibilityReactionByKey(a)});this.toggleVisibilityReactionDisposers.set(a,o),await c.downloadIncidentAttachment(s,r,t.fileName||s)}renderActivityPanel(){var e;const t=((e=this.incident.comments)===null||e===void 0?void 0:e.map(i=>({comment:i.comment||"",commentedOn:i.createdAt||"",commentedBy:i.createdBy||""})))||[];return n`<ticket-comments .ticketNumber="${this.incident.id}" .ticketType="${F.INCIDENTS}" .comments="${t}" ?IsDisabled="${!this.hasUpdatePermissions||!this.statusAllowsUpdate}"> </ticket-comments>`}renderDetailsPanel(){var e;return n` <div class=""> <div class="summary-form"> <div class="summary-form__field" name="id"> <span>ID</span> <span>${this.incident.id}</span> </div> <div class="summary-form__field" name="description"> <span>Short Description</span> <span>${this.incident.subject}</span> </div> <div class="summary-form__field" name="account"> <span>Account</span> <span>${this.incident.accountName}</span> </div> <div class="summary-form__field" name="site"> <span>Site</span> <span>${this.site}</span> </div> <div class="summary-form__field" name="priority"> <span>Priority</span> <span>${this.incident.priority}</span> </div> <div class="summary-form__field" name="status"> <span>Status</span> <span>${this.incident.status}</span> </div> <div class="summary-form__field" name="opened"> <span>Opened</span> <span> ${this.useNewDatePickerComponent===!0?n`<ix-date-next type="static" .value="${this.incident.createdAt}" .noTimeZoneConversion="${!0}" variant="date-time"> </ix-date-next>`:n`<ix-date type="static" .value="${this.incident.createdAt}" .noTimeZoneConversion="${!0}" variant="date-time"> </ix-date>`} </span> </div> <div class="summary-form__field" name="updated"> <span>Updated</span> <span> ${this.useNewDatePickerComponent===!0?n`<ix-date-next type="static" .value="${this.incident.updatedAt}" .noTimeZoneConversion="${!0}" variant="date-time"> </ix-date-next>`:n`<ix-date type="static" .value="${this.incident.updatedAt}" .noTimeZoneConversion="${!0}" variant="date-time"> </ix-date>`} </span> </div> <ix-divider></ix-divider> <div class="summary-form__field" name="attachments"> <span>Attachments</span> <span> ${(e=this.incident.attachments)===null||e===void 0?void 0:e.map(t=>n` <ix-progress id="progress-${t.id}" .linear="${!1}" indeterminate="false" style="--md-circular-progress-size:2rem;display:none;padding:.0625rem"></ix-progress> <div @click="${i=>this.handleAttachmentClick(i,t)}" attachment-id="${t.id}" class="file-attachment cursor-pointer"> <span>${t.fileName}</span> </div>`)} </span> </div> </div> </div>`}renderActivePanel(){switch(this.activeTab){case"details":return this.renderDetailsPanel();case"activity":return this.renderActivityPanel();default:return w}}renderTabs(){return n` <ix-tabs inline> ${Z.map(e=>n` <ix-primary-tab ?active="${this.activeTab===e.id}" @click="${()=>{this.activeTab=e.id}}"> ${e.label} </ix-primary-tab>`)} </ix-tabs> <div class="tab-navigation"></div> `}renderHeader(){return n` <h2>Incident Work Order Case #${this.incident.id}</h2> `}render(){return n` <div class="mt-2 form-margin wizard-content"> <div class="incident-header">${this.renderHeader()}</div> <div>${this.renderTabs()}</div> <div class="overflow-auto">${this.renderActivePanel()}</div> </div> `}};p.styles=[D,T],d([k({type:Object})],p.prototype,"incident",void 0),d([k({type:Boolean})],p.prototype,"useNewDatePickerComponent",void 0),d([h()],p.prototype,"activeTab",void 0),d([h()],p.prototype,"site",void 0),d([h()],p.prototype,"hasUpdatePermissions",void 0),d([h()],p.prototype,"statusAllowsUpdate",void 0),p=d([f("incident-details")],p);let m=class extends P{constructor(){super(),this.incidentRecords=void 0,this.incidentRecord=void 0,this.showDrawer=!1,this.fetchTicketsController=new AbortController,this.listSort="updated_at desc",this.listSkip=0,this.listPageSize=b,this.useNewDatePickerComponent=!1,this.dateCellRenderer=e=>t=>{const i=t[e],s=this.useNewDatePickerComponent?n`<ix-date-next type="static" variant="date-time" .value="${i}" .noTimeZoneConversion="${!0}" @click="${()=>this.handleRowClick(t)}" @keypress="${r=>this.handleKeyPress(r,t)}"></ix-date-next>`:n`<ix-date type="static" variant="date-time" .value="${i}" .noTimeZoneConversion="${!0}" @click="${()=>this.handleRowClick(t)}" @keypress="${r=>this.handleKeyPress(r,t)}"></ix-date>`;return n`<span> ${s} </span>`},this.useNewDatePickerComponent=V.showNewDatePickerComponent()}async connectedCallback(){this.debouncedHandleTableChange=z(this.handleTableChange.bind(this),300);const e=await x.getHashedRootAccountNumberAndUserEmail();e&&(this.hashedLocalStorageID=`incidents-tickets-${e}`),super.connectedCallback()}toggleDrawer(){this.showDrawer=!this.showDrawer,this.showDrawer||window.history.replaceState({},document.title,`${E}/incidents`)}handleCellMouseOver(e,t){const i=e.target,s=i.closest("vaadin-grid-cell-content")||i;s.offsetWidth<s.scrollWidth&&document.dispatchEvent(new CustomEvent("show-tooltip",{detail:{target:e.composedPath()[0],placement:"bottom-start",tooltip:n`<div style="background-color:#092241;font-size:12px;color:#fff;text-align:left;padding:5px 8px;border-radius:3px;max-width:300px;word-wrap:break-word"> ${t} </div>`}}))}handleCellMouseOut(){document.dispatchEvent(new CustomEvent("hide-tooltip"))}getColumns(){return[{name:"id",header:"ID",bodyRenderer:e=>n`<span @mouseover="${t=>{var i;return this.handleCellMouseOver(t,(i=e.id)!==null&&i!==void 0?i:"")}}" @mouseout="${this.handleCellMouseOut}" @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}">${e.id}</span>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"subject",header:"Short Description",width:"360px",bodyRenderer:e=>n`<span @mouseover="${t=>{var i;return this.handleCellMouseOver(t,(i=e.subject)!==null&&i!==void 0?i:"")}}" @mouseout="${this.handleCellMouseOut}" @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}" style="text-wrap:auto">${e.subject}</span>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"account",header:"Account",width:"120px",bodyRenderer:e=>n`<span @mouseover="${t=>{var i;return this.handleCellMouseOver(t,(i=e.accountName)!==null&&i!==void 0?i:"")}}" @mouseout="${this.handleCellMouseOut}" @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}" style="text-wrap:auto">${e.accountName}</span>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"site",header:"Site",width:"247px",flexGrow:0,bodyRenderer:e=>n` <site-location-cell @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}" .items="${[e.site]}"> </site-location-cell>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"priority",header:"Priority",width:"127px",flexGrow:0,bodyRenderer:e=>n`<span @mouseover="${t=>{var i;return this.handleCellMouseOver(t,(i=e.priority)!==null&&i!==void 0?i:"")}}" @mouseout="${this.handleCellMouseOut}" @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}">${e.priority}</span>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"status",header:"Status",width:"119px",flexGrow:0,bodyRenderer:e=>n`<span @mouseover="${t=>{var i;return this.handleCellMouseOver(t,(i=e.status)!==null&&i!==void 0?i:"")}}" @mouseout="${this.handleCellMouseOut}" @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}">${e.status}</span>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"opened",header:"Opened",bodyRenderer:this.dateCellRenderer("createdAt"),sortable:!0,filterable:!0,filterOperators:["equals"],dataType:"dateTime"},{name:"updated",header:"Updated",bodyRenderer:this.dateCellRenderer("updatedAt"),sortable:!0,filterable:!0,filterOperators:["equals"],dataType:"dateTime"}]}get downloadMenuItems(){return[{label:"Download All Incidents",name:"download-all-tickets",onClick:e=>{this.handleDownloadCsv(e)}},{label:"Download Current View",name:"download-current-filter",onClick:e=>{this.handleDownloadCsv(e)}}]}handleKeyPress(e,t){(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),this.handleRowClick(t))}async handleRowClick(e){e!=null&&e.id&&(this.incidentRecord=await c.GetIncident(e.id),this.showDrawer=!0)}async handleTableChange(e){const{columnName:t,page:i,pageSize:s,sortOrder:r,filters:a,filtersOperators:o}=e.detail;this.listPageSize=s;const l={id:this.tryGetFilter(a,o,"id",v.Single,!0),subject:this.tryGetFilter(a,o,"subject",v.Single,!0),account_name:this.tryGetFilter(a,o,"account",v.Single,!0),site:this.tryGetFilter(a,o,"site",v.Single,!0),priority:this.tryGetFilter(a,o,"priority",v.Single,!0),status:this.tryGetFilter(a,o,"status",v.Single,!0),created_at:this.tryGetFilter(a,o,"opened",v.Single,!1,!0),updated_at:this.tryGetFilter(a,o,"updated",v.Single,!1,!0)};if(this.currentFilters=l,t&&r){const y={account:"account_name",opened:"created_at",updated:"updated_at"}[t]||t;this.listSort=`${y} ${r}`}this.listSkip=(i-1)*this.listPageSize,this.fetchTicketsController.abort(),this.fetchTicketsController=new AbortController,this.fetchTickets({signal:this.fetchTicketsController.signal})}async fetchTickets(e){const t=this.listPageSize||b,i=S(this.currentFilters,{orderBy:[this.listSort],top:t,skip:this.listSkip}),s=new URLSearchParams(i);this.incidentRecords=await c.GetIncidentsList(s.get("$filter")||void 0,s.get("$orderby")||void 0,this.listSkip,t,e)}async handleDownloadCsv(e){switch(e){case"download-all-tickets":await c.downloadIncidentsList(void 0,"updated_at desc");break;case"download-current-filter":{const t=this.listPageSize||b,i=S(this.currentFilters,{orderBy:[this.listSort],top:t,skip:this.listSkip}),s=new URLSearchParams(i);await c.downloadIncidentsList(s.get("$filter")||void 0,s.get("$orderby")||void 0,this.listSkip,t);break}}}tryGetFilter(e,t,i,s,r,a=!1){const o=t.find(u=>u.columnField===i);if(o===void 0)return[];const l=e[i];if(l===void 0)return[];const y=a||o.operator==="contains"?$.Contains:$.Equals;return(Array.isArray(l)?l:[l]).map(u=>({matchValue:u.value||u,equalityOperator:y,concatenationOperator:$.Or,fieldType:s,ignoreCase:r}))}renderGridNoRows(){const e=c.errorIncidentsGrid?"Sorry, an error has occurred":this.incidentRecords!==void 0?"No data to display":null;return e?n`<ix-grid-no-rows slot="no-rows" message="${e}"></ix-grid-no-rows>`:w}renderBody(){return c.loadings.getIncidentTicket?w:this.incidentRecord?n` <incident-details .incident="${this.incidentRecord}" .useNewDatePickerComponent="${this.useNewDatePickerComponent}"> </incident-details>`:n` <div class="report-drawer-error"> <sm-error> This Incident is currently not available. Check back later, or contact support. </sm-error> </div>`}render(){var e,t,i,s;return n`<div class="incidents-grid"> <ix-grid session-storage-key="sm-incidents" column-reordering-allowed .columns="${this.getColumns()}" .downloadMenuItems="${this.downloadMenuItems}" .rows="${(t=(e=this.incidentRecords)===null||e===void 0?void 0:e.items)!==null&&t!==void 0?t:[]}" .recordCount="${(s=(i=this.incidentRecords)===null||i===void 0?void 0:i.totalCount)!==null&&s!==void 0?s:0}" @change="${this.debouncedHandleTableChange}" .localStorageID="${this.hashedLocalStorageID}" .addParamsToURL="${!1}" .pageSize="${20}" .pageSizes="${[5,10,20,50,100]}" .isLoading="${c.loadings.incidentsList||c.loadings.getIncidentTicket}" .isDownloading="${c.loadings.downloadIncidentsList}" ?useNewDatePicker="${this.useNewDatePickerComponent}"> <reports-nav-bar slot="header" .selectedTab="${B.Incidents}"></reports-nav-bar> ${this.renderGridNoRows()} </ix-grid> </div> <ix-tooltip></ix-tooltip> <ix-drawer ?isVisible="${this.showDrawer}" .onClosed="${()=>this.toggleDrawer()}" .scrollable="${!1}"> <div slot="content">${this.renderBody()}</div> </ix-drawer>`}};m.styles=[D,T],d([h()],m.prototype,"hashedLocalStorageID",void 0),d([h()],m.prototype,"currentFilters",void 0),d([h()],m.prototype,"incidentRecords",void 0),d([h()],m.prototype,"incidentRecord",void 0),d([h()],m.prototype,"showDrawer",void 0),m=d([f("incidents-list")],m);export{m as IncidentsList};
|
|
1
|
+
import{__decorate as d}from"tslib";import{MobxLitElement as P}from"@adobe/lit-mobx";import"@digital-realty/ix-button/ix-button.js";import"@digital-realty/ix-chip/ix-chip.js";import"@digital-realty/ix-date-next/ix-date-next.js";import"@digital-realty/ix-date/ix-date.js";import"@digital-realty/ix-drawer/ix-drawer.js";import"@digital-realty/ix-grid/ix-grid-no-rows.js";import"@digital-realty/ix-grid/ix-grid.js";import"@digital-realty/ix-progress/ix-progress.js";import"@digital-realty/ix-tooltip/ix-tooltip.js";import{LitElement as A,html as n,nothing as w}from"lit";import{property as k,state as h,customElement as f}from"lit/decorators.js";import{b2 as C,aO as g,g as x,b8 as O,b9 as _,T,B as L,a1 as N,v as G,L as M,ba as R,aP as U,a$ as F,b5 as b,n as V}from"./ui-service-management.js";import{A as E,F as v,b as S,O as $}from"./ui-service-management11.js";import{d as z}from"./ui-service-management12.js";import{S as D}from"./ui-service-management9.js";import"./ui-service-management18.js";import{R as B}from"./ui-service-management28.js";import{makeAutoObservable as K,reaction as q}from"mobx";import"@digital-realty/ix-tabs/ix-tabs.js";import"@digital-realty/ix-tabs/ix-primary-tab.js";import"@digital-realty/ix-divider/ix-divider.js";import"./ui-service-management17.js";import"moment";import"@digital-realty/theme";import"moment-timezone";import"date-fns/format.js";import"mobx-persist-store";import"@digital-realty/ix-account-switcher";import"@vaadin/router";import"oidc-client-ts";import"lit/directives/if-defined.js";import"@digital-realty/ix-select/ix-select.js";import"@digital-realty/ix-select/ix-select-option.js";import"@digital-realty/ix-icon-button/ix-icon-button.js";import"lit-html/directives/until.js";import"libphonenumber-js";import"@digital-realty/ix-grid/ix-grid-nav.js";import"lit/directives/class-map.js";import"lit-html/directives/unsafe-html.js";import"@digital-realty/ix-toast/ix-toasters.js";import"@digital-realty/ix-toast/ix-message-toast.js";const I={loadings:{incidentsList:!0,downloadIncidentsList:!1,downloadAttachment:{},getIncidentTicket:!1},errorIncidentsGrid:!1};class j{constructor(){this.loadings=I.loadings,this.errorIncidentsGrid=I.errorIncidentsGrid,K(this)}async GetIncident(t){let i;return t&&(this.loadings.getIncidentTicket=!0,i=await C.incidentsApi.getIncidentsTicketById({ticketId:t}).catch(s=>{g(s,!1)}).finally(()=>{this.loadings.getIncidentTicket=!1})),i}async GetIncidentsList(t,i,s,r,a){const{accountNumber:o}=x.getUserAccount();let l;return this.errorIncidentsGrid=!1,o&&(this.loadings.incidentsList=!0,l=await C.incidentsApi.getIncidentsTickets({$filter:t,$orderby:i,$skip:s,$top:r},a).catch(y=>{var u;!((u=a==null?void 0:a.signal)===null||u===void 0)&&u.aborted||(g(y,!1),this.errorIncidentsGrid=!0)}).finally(()=>{this.loadings.incidentsList=!1})),l}async downloadIncidentsList(t,i,s,r){this.loadings.downloadIncidentsList=!0,await O(t,i,s,r),this.loadings.downloadIncidentsList=!1}async downloadIncidentAttachment(t,i,s){const r=`${t}_${i}`;this.loadings.downloadAttachment[r]=!0,await _(t,i,s).catch(a=>{g(a,!1)}).finally(()=>{this.loadings.downloadAttachment[r]=!1})}}const c=new j,Z=[{id:"details",label:"Details"},{id:"activity",label:"Activity"}];let p=class extends A{constructor(){super(...arguments),this.useNewDatePickerComponent=!1,this.activeTab="details",this.hasUpdatePermissions=!1,this.statusAllowsUpdate=!1,this.toggleVisibilityReactionDisposers=new Map}async firstUpdated(){const e=L.sites.find(t=>t.name===this.incident.site);this.site=e?`${e==null?void 0:e.name} - ${e==null?void 0:e.streetAddress}`:this.incident.site,e!=null&&e.locationId&&this.incident.accountNumber&&(this.hasUpdatePermissions=await N(M.Update,G.PlannedMaintenance,e.locationId,this.incident.accountNumber)),this.statusAllowsUpdate=this.incident.status!==R.Closed&&this.incident.status!==R.Cancelled}disconnectedCallback(){super.disconnectedCallback(),this.toggleVisibilityReactionDisposers.forEach(e=>e()),this.toggleVisibilityReactionDisposers.clear()}toggleVisibility(e,t,i){const s=e.parentElement,r=s==null?void 0:s.querySelector(`#progress-${t}`);r.style.display=i?"inline-block":"none";const a=e;a.style.display=i?"none":"inline-block"}deleteToggleVisibilityReactionByKey(e){this.toggleVisibilityReactionDisposers.get(e)(),this.toggleVisibilityReactionDisposers.delete(e)}async handleAttachmentClick(e,t){const i=e.currentTarget,s=this.incident.id,r=i.getAttribute("attachment-id");if(!r){U("Unable to download the attachment");return}this.toggleVisibility(i,r,!0);const a=`${s}_${r}`;this.toggleVisibilityReactionDisposers.has(a)&&this.deleteToggleVisibilityReactionByKey(a);const o=q(()=>c.loadings.downloadAttachment[a],l=>{this.toggleVisibility(i,r,l),l||this.deleteToggleVisibilityReactionByKey(a)});this.toggleVisibilityReactionDisposers.set(a,o),await c.downloadIncidentAttachment(s,r,t.fileName||s)}renderActivityPanel(){var e;const t=((e=this.incident.comments)===null||e===void 0?void 0:e.map(i=>({comment:i.comment||"",commentedOn:i.createdAt||"",commentedBy:i.createdBy||""})))||[];return n`<ticket-comments .ticketNumber="${this.incident.id}" .ticketType="${F.INCIDENTS}" .comments="${t}" ?IsDisabled="${!this.hasUpdatePermissions||!this.statusAllowsUpdate}"> </ticket-comments>`}renderDetailsPanel(){var e;return n` <div class=""> <div class="summary-form"> <div class="summary-form__field" name="id"> <span>ID</span> <span>${this.incident.id}</span> </div> <div class="summary-form__field" name="description"> <span>Short Description</span> <span>${this.incident.subject}</span> </div> <div class="summary-form__field" name="account"> <span>Account</span> <span>${this.incident.accountName}</span> </div> <div class="summary-form__field" name="site"> <span>Site</span> <span>${this.site}</span> </div> <div class="summary-form__field" name="priority"> <span>Priority</span> <span>${this.incident.priority}</span> </div> <div class="summary-form__field" name="status"> <span>Status</span> <span>${this.incident.status}</span> </div> <div class="summary-form__field" name="opened"> <span>Opened</span> <span> ${this.useNewDatePickerComponent===!0?n`<ix-date-next type="static" .value="${this.incident.createdAt}" .noTimeZoneConversion="${!0}" variant="date-time"> </ix-date-next>`:n`<ix-date type="static" .value="${this.incident.createdAt}" .noTimeZoneConversion="${!0}" variant="date-time"> </ix-date>`} </span> </div> <div class="summary-form__field" name="updated"> <span>Updated</span> <span> ${this.useNewDatePickerComponent===!0?n`<ix-date-next type="static" .value="${this.incident.updatedAt}" .noTimeZoneConversion="${!0}" variant="date-time"> </ix-date-next>`:n`<ix-date type="static" .value="${this.incident.updatedAt}" .noTimeZoneConversion="${!0}" variant="date-time"> </ix-date>`} </span> </div> <ix-divider></ix-divider> <div class="summary-form__field" name="attachments"> <span>Attachments</span> <span> ${(e=this.incident.attachments)===null||e===void 0?void 0:e.map(t=>n` <ix-progress id="progress-${t.id}" .linear="${!1}" indeterminate="false" style="--md-circular-progress-size:2rem;display:none;padding:.0625rem"></ix-progress> <div @click="${i=>this.handleAttachmentClick(i,t)}" attachment-id="${t.id}" class="file-attachment cursor-pointer"> <span>${t.fileName}</span> </div>`)} </span> </div> </div> </div>`}renderActivePanel(){switch(this.activeTab){case"details":return this.renderDetailsPanel();case"activity":return this.renderActivityPanel();default:return w}}renderTabs(){return n` <ix-tabs inline> ${Z.map(e=>n` <ix-primary-tab ?active="${this.activeTab===e.id}" @click="${()=>{this.activeTab=e.id}}"> ${e.label} </ix-primary-tab>`)} </ix-tabs> <div class="tab-navigation"></div> `}renderHeader(){return n` <h2>Incident Work Order Case #${this.incident.id}</h2> `}render(){return n` <div class="mt-2 form-margin wizard-content"> <div class="incident-header">${this.renderHeader()}</div> <div>${this.renderTabs()}</div> <div class="overflow-auto">${this.renderActivePanel()}</div> </div> `}};p.styles=[D,T],d([k({type:Object})],p.prototype,"incident",void 0),d([k({type:Boolean})],p.prototype,"useNewDatePickerComponent",void 0),d([h()],p.prototype,"activeTab",void 0),d([h()],p.prototype,"site",void 0),d([h()],p.prototype,"hasUpdatePermissions",void 0),d([h()],p.prototype,"statusAllowsUpdate",void 0),p=d([f("incident-details")],p);let m=class extends P{constructor(){super(),this.incidentRecords=void 0,this.incidentRecord=void 0,this.showDrawer=!1,this.fetchTicketsController=new AbortController,this.listSort="updated_at desc",this.listSkip=0,this.listPageSize=b,this.useNewDatePickerComponent=!1,this.dateCellRenderer=e=>t=>{const i=t[e],s=this.useNewDatePickerComponent?n`<ix-date-next type="static" variant="date-time" .value="${i}" .noTimeZoneConversion="${!0}" @click="${()=>this.handleRowClick(t)}" @keypress="${r=>this.handleKeyPress(r,t)}"></ix-date-next>`:n`<ix-date type="static" variant="date-time" .value="${i}" .noTimeZoneConversion="${!0}" @click="${()=>this.handleRowClick(t)}" @keypress="${r=>this.handleKeyPress(r,t)}"></ix-date>`;return n`<span> ${s} </span>`},this.useNewDatePickerComponent=V.showNewDatePickerComponent()}async connectedCallback(){this.debouncedHandleTableChange=z(this.handleTableChange.bind(this),300);const e=await x.getHashedRootAccountNumberAndUserEmail();e&&(this.hashedLocalStorageID=`incidents-tickets-${e}`),super.connectedCallback()}toggleDrawer(){this.showDrawer=!this.showDrawer,this.showDrawer||window.history.replaceState({},document.title,`${E}/incidents`)}handleCellMouseOver(e,t){const i=e.target,s=i.closest("vaadin-grid-cell-content")||i;s.offsetWidth<s.scrollWidth&&document.dispatchEvent(new CustomEvent("show-tooltip",{detail:{target:e.composedPath()[0],placement:"bottom-start",tooltip:n`<div style="background-color:#092241;font-size:12px;color:#fff;text-align:left;padding:5px 8px;border-radius:3px;max-width:300px;word-wrap:break-word"> ${t} </div>`}}))}handleCellMouseOut(){document.dispatchEvent(new CustomEvent("hide-tooltip"))}getColumns(){return[{name:"id",header:"ID",bodyRenderer:e=>n`<span @mouseover="${t=>{var i;return this.handleCellMouseOver(t,(i=e.id)!==null&&i!==void 0?i:"")}}" @mouseout="${this.handleCellMouseOut}" @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}">${e.id}</span>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"subject",header:"Short Description",width:"360px",bodyRenderer:e=>n`<span @mouseover="${t=>{var i;return this.handleCellMouseOver(t,(i=e.subject)!==null&&i!==void 0?i:"")}}" @mouseout="${this.handleCellMouseOut}" @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}" style="text-wrap:auto">${e.subject}</span>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"account",header:"Account",width:"120px",bodyRenderer:e=>n`<span @mouseover="${t=>{var i;return this.handleCellMouseOver(t,(i=e.accountName)!==null&&i!==void 0?i:"")}}" @mouseout="${this.handleCellMouseOut}" @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}" style="text-wrap:auto">${e.accountName}</span>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"site",header:"Site",width:"247px",flexGrow:0,bodyRenderer:e=>n` <site-location-cell @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}" .items="${[e.site]}"> </site-location-cell>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"priority",header:"Priority",width:"127px",flexGrow:0,bodyRenderer:e=>n`<span @mouseover="${t=>{var i;return this.handleCellMouseOver(t,(i=e.priority)!==null&&i!==void 0?i:"")}}" @mouseout="${this.handleCellMouseOut}" @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}">${e.priority}</span>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"status",header:"Status",width:"119px",flexGrow:0,bodyRenderer:e=>n`<span @mouseover="${t=>{var i;return this.handleCellMouseOver(t,(i=e.status)!==null&&i!==void 0?i:"")}}" @mouseout="${this.handleCellMouseOut}" @click="${()=>this.handleRowClick(e)}" @keypress="${t=>this.handleKeyPress(t,e)}">${e.status}</span>`,sortable:!0,filterable:!0,filterOperators:["contains","equals"]},{name:"opened",header:"Opened",bodyRenderer:this.dateCellRenderer("createdAt"),sortable:!0,filterable:!0,filterOperators:["equals"],dataType:"dateTime"},{name:"updated",header:"Updated",bodyRenderer:this.dateCellRenderer("updatedAt"),sortable:!0,filterable:!0,filterOperators:["equals"],dataType:"dateTime"}]}get downloadMenuItems(){return[{label:"Download All Incidents",name:"download-all-tickets",onClick:e=>{this.handleDownloadCsv(e)}},{label:"Download Current View",name:"download-current-filter",onClick:e=>{this.handleDownloadCsv(e)}}]}handleKeyPress(e,t){(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),this.handleRowClick(t))}async handleRowClick(e){e!=null&&e.id&&(this.incidentRecord=await c.GetIncident(e.id),this.showDrawer=!0)}async handleTableChange(e){const{columnName:t,page:i,pageSize:s,sortOrder:r,filters:a,filtersOperators:o}=e.detail;this.listPageSize=s;const l={id:this.tryGetFilter(a,o,"id",v.Single,!0),subject:this.tryGetFilter(a,o,"subject",v.Single,!0),account_name:this.tryGetFilter(a,o,"account",v.Single,!0),site:this.tryGetFilter(a,o,"site",v.Single,!0),priority:this.tryGetFilter(a,o,"priority",v.Single,!0),status:this.tryGetFilter(a,o,"status",v.Single,!0),created_at:this.tryGetFilter(a,o,"opened",v.Single,!1,!0),updated_at:this.tryGetFilter(a,o,"updated",v.Single,!1,!0)};if(this.currentFilters=l,t&&r){const y={account:"account_name",opened:"created_at",updated:"updated_at"}[t]||t;this.listSort=`${y} ${r}`}this.listSkip=(i-1)*this.listPageSize,this.fetchTicketsController.abort(),this.fetchTicketsController=new AbortController,this.fetchTickets({signal:this.fetchTicketsController.signal})}async fetchTickets(e){const t=this.listPageSize||b,i=S(this.currentFilters,{orderBy:[this.listSort],top:t,skip:this.listSkip}),s=new URLSearchParams(i);this.incidentRecords=await c.GetIncidentsList(s.get("$filter")||void 0,s.get("$orderby")||void 0,this.listSkip,t,e)}async handleDownloadCsv(e){switch(e){case"download-all-tickets":await c.downloadIncidentsList(void 0,"updated_at desc");break;case"download-current-filter":{const t=this.listPageSize||b,i=S(this.currentFilters,{orderBy:[this.listSort],top:t,skip:this.listSkip}),s=new URLSearchParams(i);await c.downloadIncidentsList(s.get("$filter")||void 0,s.get("$orderby")||void 0,this.listSkip,t);break}}}tryGetFilter(e,t,i,s,r,a=!1){const o=t.find(u=>u.columnField===i);if(o===void 0)return[];const l=e[i];if(l===void 0)return[];const y=a||o.operator==="contains"?$.Contains:$.Equals;return(Array.isArray(l)?l:[l]).map(u=>({matchValue:u.value||u,equalityOperator:y,concatenationOperator:$.Or,fieldType:s,ignoreCase:r}))}renderGridNoRows(){const e=c.errorIncidentsGrid?"Sorry, an error has occurred":this.incidentRecords!==void 0?"No data to display":null;return e?n`<ix-grid-no-rows slot="no-rows" message="${e}"></ix-grid-no-rows>`:w}renderBody(){return c.loadings.getIncidentTicket?w:this.incidentRecord?n` <incident-details .incident="${this.incidentRecord}" .useNewDatePickerComponent="${this.useNewDatePickerComponent}"> </incident-details>`:n` <div class="report-drawer-error"> <sm-error> This Incident is currently not available. Check back later, or contact support. </sm-error> </div>`}render(){var e,t,i,s;return n`<div class="incidents-grid"> <ix-grid session-storage-key="sm-incidents" column-reordering-allowed .columns="${this.getColumns()}" .downloadMenuItems="${this.downloadMenuItems}" .rows="${(t=(e=this.incidentRecords)===null||e===void 0?void 0:e.items)!==null&&t!==void 0?t:[]}" .recordCount="${(s=(i=this.incidentRecords)===null||i===void 0?void 0:i.totalCount)!==null&&s!==void 0?s:0}" @change="${this.debouncedHandleTableChange}" .localStorageID="${this.hashedLocalStorageID}" .addParamsToURL="${!1}" .pageSize="${20}" .pageSizes="${[5,10,20,50,100]}" .isLoading="${c.loadings.incidentsList||c.loadings.getIncidentTicket}" .isDownloading="${c.loadings.downloadIncidentsList}" ?useNewDatePicker="${this.useNewDatePickerComponent}"> <reports-nav-bar slot="header" .selectedTab="${B.Incidents}"></reports-nav-bar> ${this.renderGridNoRows()} </ix-grid> </div> <ix-tooltip></ix-tooltip> <ix-drawer ?isVisible="${this.showDrawer}" .onClosed="${()=>this.toggleDrawer()}" .scrollable="${!1}"> <div slot="content">${this.renderBody()}</div> </ix-drawer>`}};m.styles=[D,T],d([h()],m.prototype,"hashedLocalStorageID",void 0),d([h()],m.prototype,"currentFilters",void 0),d([h()],m.prototype,"incidentRecords",void 0),d([h()],m.prototype,"incidentRecord",void 0),d([h()],m.prototype,"showDrawer",void 0),m=d([f("incidents-list")],m);export{m as IncidentsList};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{css as t,svg as e}from"lit";const i=t`:host{--light-grey:rgba(9, 34, 65, 0.6);--tracking-number-warning-background:#f5f7ff;--md-dialog-container-color:white;--ix-file-uploader-label-font-size:12px;--ix-file-uploader-help-font-size:12px;--ix-grid-cell-height:auto;--ix-checkbox-radio-gap:1rem;--ix-drawer-padding:0px 40px 0px 16px;--wizard-custom-margin-left:24px;--ix-wizard-hideclose-header-custom-margin-left:var(--wizard-custom-margin-left)}.reports-grid-nav{--ix-button-font-family:var(--root-primary-font)}.flex_column{flex-direction:column}.sub-header{display:flex;justify-content:space-between;align-items:center;align-self:stretch;position:relative;z-index:2}.default-margin-top{margin-top:2rem}.sub-header__action-buttons{display:flex;margin-left:auto;gap:10px}.sub-header span{text-align:right;font-family:var(--root-primary-font);font-size:14px;font-weight:400;letter-spacing:.25px}.sub-header ix-button span{font-family:var(--root-secondary-font);font-weight:700;font-size:14px;line-height:100%;letter-spacing:1.25px;text-align:center;vertical-align:middle;text-transform:uppercase}.sub-header__row{display:flex;flex-direction:row;gap:50px;align-items:center;width:100%}.sub-header__row .sub-header__row_value{font-size:1rem}.sub-header__row div{width:25%}.sub-header__row div span{font-style:normal}.sub-header__row_caption{font-family:var(--root-secondary-font);font-size:20px;font-style:normal;font-weight:700;line-height:24px;letter-spacing:.15px;margin:0}.sub-header__row div:last-child{margin-left:auto;width:auto}.italic{font-style:italic}.visitors-grid__footer{display:flex;padding:10px;border-top:1px solid #e0e0e0}.form-wrapper__fields{display:flex;flex-direction:column;align-items:flex-start;gap:2rem;padding-right:1rem}.form-wrapper__fields ix-email-list,.form-wrapper__fields ix-select,.form-wrapper__fields ix-textbox{align-self:stretch}.form-wrapper__fields ix-divider{padding:0}.form-wrapper__fields .textfield{width:100%}.form-wrapper__fields packages-grid,.form-wrapper__fields requested-location-details-grid,.form-wrapper__fields visitors-grid{width:100%}.form-wrapper__fields .col-2{display:flex;align-items:flex-start;gap:24px;align-self:stretch}.form-wrapper__fields .col-2>*{width:50%}.form-wrapper__fields .col-1{align-items:flex-start;align-self:stretch;width:100%}.form-wrapper__fields ix-file-uploader{--ix-file-uploader-label-line-height:1rem;--ix-file-uploader-label-letter-spacing:1.25px;--ix-file-uploader-help-font-family:var(--root-primary-font);--ix-file-uploader-help-line-height:1rem;--ix-file-uploader-help-letter-spacing:0.4px;--ix-file-chip-font-size:1rem;--ix-file-chip-letter-spacing:0.15px}ix-file-uploader{width:100%;font-size:12px;align-self:stretch}.warning-text{padding:4px 16px 0 16px;font-size:12px;line-height:16px;margin:var(--warning-text-margin,inherit)}.package-dialog{min-width:500px}.contact-details-dialog{width:min(90vw,41.125rem);--ix-message-toast-error-bg:#db0028}.contact-details-dialog .col-2{flex-wrap:wrap}.contact-details-dialog .col-2>*{width:unset;flex-grow:1}.urgent-work-form{width:560px}.summary-form{display:inline-flex;padding:20px 0;flex-direction:column;align-items:flex-start;gap:16px;flex-shrink:0;width:100%}.summary-form ix-divider{padding:10px 0}.summary-form packages-grid,.summary-form requested-location-details-grid,.summary-form visitors-grid{width:100%}.summary-form__subheader{display:flex;justify-content:flex-end;align-items:center;gap:16px;width:100%}.summary-form__subheader span:nth-child(1){flex:1 0 0;font-family:var(--root-primary-font);font-size:16px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.15px}.summary-form__subheader span:nth-child(2){width:24px;height:24px;flex-shrink:0;color:#1456e0;cursor:pointer}.summary-form__field{display:flex;align-items:flex-start;gap:24px;width:100%;font-family:var(--root-primary-font);font-size:16px;font-style:normal;font-weight:400;line-height:28px;letter-spacing:.44px}.summary-form__field>span:nth-child(1){color:var(--Text-Dark-2nd,rgba(9,34,65,.6));width:192px}.summary-form__field>span:nth-child(2){color:var(--On-Surface,#092241);flex:1 0 0}.packages-grid{display:flex;width:100%;padding:4px 0;flex-direction:column;align-items:flex-start;gap:24px}.packages-grid ix-grid{width:100%}.packages-grid ix-button{width:50px}.packages-grid__title{display:flex;align-items:center;gap:10px;align-self:stretch;color:var(--Text-Dark,#092241);font-family:var(--root-primary-font);font-size:16px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.15px}.packages-grid_action-buttons{margin:0 -10px}.packages-wrapper{width:100%;display:flex;flex-direction:column;gap:10px}.result-form{display:flex;width:100%;flex-direction:column;justify-content:center;align-items:center;gap:1rem;max-width:696px;margin:auto;margin-top:1rem}.result-form__title{align-self:stretch;color:#000;text-align:center;font-family:var(--root-secondary-font);font-size:34px;font-style:normal;font-weight:700;line-height:40px;letter-spacing:.35px}.result-form__body{align-self:stretch;text-align:center;line-height:28px;letter-spacing:.44px}.result-form__ticket-numbers{display:flex;flex-direction:column;align-items:center;gap:8px;border-radius:4px}.result-form__ticket-numbers svg{width:25px;height:24px}.result-form__ticket-numbers div{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;justify-content:center}.ticket-numbers__label{color:#000;text-align:center;font-weight:700;line-height:24px;letter-spacing:.1px}.ticket-numbers__content{color:var(--Primary-Main,#1456e0);font-family:var(--root-primary-font);font-size:14px;font-style:normal;font-weight:400;line-height:24px;letter-spacing:.25px;text-decoration-line:underline;cursor:pointer}.warning-text_content{text-align:justify;font-family:var(--root-primary-font);font-size:12px;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.4px}.warning-text_link{color:var(--Primary-Main,#1456e0);text-decoration-line:underline;cursor:pointer}.result-form__notice{display:flex;padding:8px 12px;align-items:center;gap:8px;border-radius:4px;border:1px solid var(--Warning-Main,#ff9800);max-width:550px}.result-form__notice .svg-container{height:24px}.result-form__notice .svg-container svg{height:inherit}.result-form__notice span{color:#000;font-family:var(--root-primary-font);font-size:12px;font-style:normal;font-weight:700;line-height:16px;letter-spacing:.4px}.result-form__notice div{display:flex;flex-direction:column;gap:8px}.result-form__footer{display:flex;height:39px;align-items:flex-start;gap:24px;margin-top:.5rem}#account-selection-dialog div[slot=content],#site-selection-dialog div[slot=content]{min-width:min(80vw,560px)}ix-divider{padding:30px 0}.form-wrapper>ix-divider{padding-right:1rem}.terms-header h3{margin:10px 0}.terms-request-type{font-size:1rem;line-height:1.25rem;margin-top:.5rem}.terms-html-container{overflow-y:scroll;line-height:1.5rem;font-size:14px;letter-spacing:.25px}.terms-html-container ol{list-style-type:decimal}.terms-html-container ol[type='a']{list-style-type:lower-alpha}.terms-html-container ol,.terms-html-container ul{padding-left:22px}.terms-html-container::-webkit-scrollbar-thumb{background:#c4c4c4;border-radius:100px;background-clip:padding-box;border:4px solid transparent}.terms-html-container::-webkit-scrollbar{width:12px}.terms-content ix-divider{padding:1.5rem 0}ix-button[type=submit]{align-self:flex-end}span.error{color:#db0028;font-size:.75rem;margin-left:1rem}.tooltip{position:relative;padding:0 8px;background-color:#1456e0;border-radius:100px;font-size:12px;font-weight:600;color:#fff}.tooltip .tooltip-text{visibility:hidden;position:absolute;width:max-content;background-color:#092241;font-size:12px;color:#fff;text-align:center;padding:5px 8px 5px 8px;margin-top:-6px;margin-left:20px;border-radius:6px;z-index:1;opacity:0;transition:opacity .3s ease 0s}.tooltip:hover .tooltip-text{visibility:visible;opacity:1}ix-button[type=submit]{align-self:flex-end}.ticket-details-container{display:flex;flex-wrap:wrap;align-items:flex-start;gap:2rem}.ticket-details-container__body{display:flex;flex-direction:column;align-items:flex-start;padding-bottom:48px;flex:1 1 0}.ticket-details-container__body deliveries-other-information-section,.ticket-details-container__body deliveries-package-details-section,.ticket-details-container__body deliveries-ticket-details-section,.ticket-details-container__body deliveries-ticket-information-section,.ticket-details-container__body remote-hands-other-information-section,.ticket-details-container__body trouble-ticket-other-information-section{width:100%}.w-100{width:100%}.ticket-details-body__section{display:flex;flex-direction:column;align-items:flex-start;gap:24px;align-self:stretch}.ticket-details-body__section packages-grid,.ticket-details-body__section requested-location-details-grid,.ticket-details-body__section visitors-grid{width:100%}.ticket-details-body__section .informations-section__title{color:var(--Text-Dark,#092241);font-family:var(--root-secondary-font);font-size:20px;font-style:normal;font-weight:700;line-height:24px;letter-spacing:.15px}.ticket-details-body__section .informations-section__items{display:flex;flex-direction:column;align-items:flex-start;gap:16px;align-self:stretch}.ticket-details-body__section .informations-section__items-row{display:flex;align-items:flex-start;align-self:stretch;flex-wrap:wrap}.ticket-details-body__section .informations-section__items-col{padding-top:16px;width:25%}.ticket-details-body__section .informations-section__items-col-1_5{padding-top:16px;width:37.5%}.ticket-details-body__section .informations-section__items-col-3{padding-top:16px;width:75%}.ticket-details-body__section .informations-section__items-col-4{padding-top:16px;width:100%}ticket-comments{display:flex;align-self:stretch;flex:1 0 0px;width:100%}.ticketComments{background-color:#fff;border-radius:12px 12px 0 0;padding:24px;display:flexbox;align-self:stretch;flex-direction:column;width:100%;gap:24px;overflow-y:auto}.ticketComments::-webkit-scrollbar-thumb{background:#c4c4c4;border-radius:100px;background-clip:padding-box;border:4px solid transparent}.ticketComments::-webkit-scrollbar{width:12px}.ticketComments h3{margin:0}.ticketComments span:not(.material-symbols-outlined,.error){font-size:14px;font-weight:700;line-height:24px;letter-spacing:.1px;color:#092241b2}.ticketComments p{margin:0;font-size:16px;font-weight:400;line-height:28px;color:#092241;letter-spacing:.44px;word-break:break-word}.ticketComments .form-wrapper__fields{gap:6px}.ticketComments .form-wrapper__fields span{margin-left:20px}.ticketComments textarea{resize:none;max-height:9.125rem;padding:10px 18px;border-radius:1.875rem;align-self:stretch;font-size:1rem;box-shadow:0 0 0 1px #6f7979 inset;font-family:var(--root-secondary-font),var(--root-primary-font);border:none;background-color:#f5f7ffd9;height:3rem}.ticketComments textarea[error]{box-shadow:0 0 0 1px #db0028 inset}.ticketComments textarea:focus{box-shadow:0 0 0 3px #1456e0 inset;border-color:transparent;outline:0}.ticketComments textarea:focus[error]{box-shadow:0 0 0 3px #db0028 inset}.ticketComments .commentPostButton{align-self:flex-end;width:82px}.ticketComments .commentPostButton span{color:#fff;margin:0;letter-spacing:1.25px}.commentContainer{display:flex;gap:24px}.commentContainer .avatarContainer{background-color:#f5f7ff;border-radius:100px;min-width:40px;height:40px;justify-content:center;align-items:center;display:flex;color:#09224199}.commentContainer .content ix-date{display:inline}.commentContainer .content p{white-space:break-spaces}.commentsGroup{display:flex;flex-direction:column;gap:24px}.commentsGroup+.commentsGroup{margin-top:1.5rem}.ticket-details-container__comments{display:flex;align-items:flex-start;align-self:stretch}.commentContainer{display:flex;gap:24px}.commentContainer .avatarContainer{background-color:#f5f7ff;border-radius:100px;min-width:40px;height:40px;justify-content:center;align-items:center;display:flex;color:#09224199}.ticket-details-body__details-section{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.chip-container{gap:5px;display:flex;flex-wrap:wrap}.chip{border-radius:68px;background:var(--Primary-Main,#1456e0);color:var(--Text-Light,#fff);font-family:var(--root-primary-font);font-size:14px;font-style:normal;font-weight:400;line-height:24px;letter-spacing:.25px;padding:0 10px}.service-tickets__buttons-container{display:flex;gap:.625rem;justify-content:flex-end;width:100%;margin-bottom:20px}@media only screen and (max-width:669px){.ticket-details-container__body{width:100%}.ticket-details-container__comments{width:100%}.ticket-details-body__section packages-grid{max-width:300px}.ticket-details-body__section .informations-section__items-col{width:100%}}@media only screen and (min-width:670px){.ticket-details-container__body{max-height:calc(100vh - 160px);overflow-y:auto}.ticket-details-container__comments{width:309px;position:sticky;top:144px;height:calc(100vh - 160px);overflow-y:auto}}@media only screen and (min-width:1200px){.ticket-details-container__comments{width:464px}}@media only screen and (min-width:500px) and (max-width:1250px){.ticket-details-body__section packages-grid{max-width:580px}.ticket-details-body__section .informations-section__items-col{width:50%}}.service-tickets__header{width:fit-content}.dialog{max-width:658px}.dialog-input{line-height:2.75rem}.blank-focus-input-styles{height:0;width:0;outline:0;border:none}.required-text{color:var(--light-grey);font-size:.75rem;margin-left:.9375rem}.form-wrapper__fields.account-selection-dialog,.form-wrapper__fields.cancellation-dialog,.form-wrapper__fields.site-selection-dialog{gap:0;margin-left:0;padding-right:0}.account-dialog__short-desc,.site-dialog__short-desc{color:var(--light-grey);margin:0 2rem .625rem 0}.account-dialog__title,.cancellation__title,.site-dialog__title{display:flex;justify-content:space-between;margin-top:0;margin-bottom:.625rem;font-size:20px}.cancellation__title{gap:3.125rem}.account-dialog__title span,.cancellation__title span,.site-dialog__title span{cursor:pointer}.account-selection-dialog__button-container,.cancellation__button-container,.site-selection-dialog__button-container{padding:.9375rem 0 .625rem}.cancellation__button-text{margin-right:.75rem}.account-selection-dialog__button-container,.site-selection-dialog__button-container{display:flex;gap:8px;justify-content:flex-end}.dialog-input{line-height:2.75rem}.blank-focus-input-styles{height:0;width:0;outline:0;border:none}.required-text{color:var(--light-grey);font-size:.75rem;margin-left:.9375rem}.file-attachment{background:#f5f7ff;display:inline-block;padding:4px 8px;margin:8px 4px}.tracking-number__warning{align-items:center;background:var(--tracking-number-warning-background);display:flex;gap:.625rem;margin-top:2rem;padding:.5rem 1rem}.supporting-text{color:var(--md-sys-text-color-secondary);font-size:.75rem;padding-left:.75rem}.supporting-text.error{margin-left:unset}.planned-work__supporting-text{margin-top:-1.75rem}.attachment-container{height:100px;overflow:hidden}.attachment-file-container{display:flex}.attachment-file-container__items{display:flex;font-size:1rem;justify-content:space-between;width:100%;max-width:620px}.attachment-file__icons-container{align-items:flex-start;display:flex;gap:20px;margin-right:20px;margin-top:4px}.attachment-file__icons-container.isError{opacity:24%}.attachment-file__icons-container.isError svg{cursor:not-allowed}.attachment-file__icons-container svg{cursor:pointer}.attachment-file-container__sub-heading{color:var(--light-grey);font-size:14px}.attachment-file-component{width:100%}.error-icon-container{display:flex;align-items:center;margin-right:20px}.attachments-file-summary{display:inline-block;margin-bottom:10px;margin-right:10px;background-color:var(--tracking-number-warning-background);padding:8px 12px;border-radius:3px}.disabled{pointer-events:none;opacity:.5}.approve-deny__title{margin:24px 24px 0}.approve-deny__container{--ix-grid-cell-pointer:default;width:55vw;padding:0}.approve-deny__scroll-container{max-height:80vh;overflow-y:scroll}.approve-deny__divider{padding:24px 0}.approve-deny__progress-container{position:absolute;margin-top:-24px}.approve-deny-buttons__message{background-color:#fff;color:var(--lumo-body-text-color);padding:10px 20px;text-align:center;width:244px}.approve-deny-buttons__container{display:flex}.approve-deny-buttons__button{align-items:end;border:1px solid rgba(9,34,65,.12);cursor:pointer;display:inline-flex;font-weight:700;gap:5px;padding:10px 20px;width:100px}.approve-deny-buttons__approve{--approve-deny-buttons__icon-color:#4caf50;border-radius:5px 0 0 5px}.approve-deny-buttons__deny{--approve-deny-buttons__icon-color:#db0028;border-left:none;border-radius:0 5px 5px 0}.approve-deny-buttons svg{fill:var(--approve-deny-buttons__icon-color)}.approve-deny-buttons__selected{background-color:var(--approve-deny-buttons__icon-color);color:#fff}.approve-deny-buttons__selected svg{fill:#fff}.approve-deny-buttons__disabled{cursor:default}.maintenance-grid-header{display:flex;justify-content:space-between;align-items:center;gap:var(--grid-nav-button-group-gap,.5rem);--md-filled-button-container-color:var(--ix-text-dark, #000);--md-filled-button-label-text-color:white;--md-text-button-label-text-color:var(--ix-text-dark, #000);--md-text-button-hover-label-text-color:var(--ix-text-dark, #000)}.maintenance-grid-header .button-text{text-transform:none}.maintenance-grid-header .selected{pointer-events:none}.full-width{width:100%}.site-maintenance-details__header{height:50px;display:flex;align-items:center;margin-bottom:1rem}.site-maintenance-details__header span{font-family:var(--root-secondary-font);font-weight:700;font-size:14px;line-height:100%;letter-spacing:1.25px;vertical-align:middle;text-transform:uppercase;color:var(--Text-Dark,#092241)}.site-maintenance-details__subheader{white-space:normal;word-break:break-word;margin-bottom:1rem}.site-maintenance-details__subheader span{font-family:var(--root-secondary-font);font-weight:700;font-size:24px;line-height:32px;letter-spacing:0;vertical-align:middle;color:var(--Text-Dark,#092241)}.create-service-ticket-container{color:var(--Text-Dark,#092241)}.create-service-ticket-container.wizard-content{max-height:calc(100vh - 85px);padding-top:60px}.create-service-ticket-container.wizard-content h1{margin:4px 0 34px}.create-service-ticket-container-subheader{display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin:0 0 32px 0}.create-service-ticket-container-subheader *{margin:0}.create-service-ticket-container-subheader h3{font-family:var(--root-secondary-font);font-size:20px;font-style:normal;font-weight:700;letter-spacing:.15px}.create-service-ticket-container-subheader p{font-family:var(--root-primary-font);font-size:14px;font-style:italic}ticket-type-card-list{overflow-y:auto}.create-service-ticket-btn{font-size:14px;line-height:18.52px;letter-spacing:1.25px}.dialog__title{margin:0;padding:16px 0 24px;display:flex;justify-content:space-between}.wizard-content{display:flex;flex-direction:column;max-height:calc(100vh - 100px);height:calc(100vh - 100px)}.wizard-content h1{margin:0 0 1.5rem}.wizard-content .sub-header h3{margin:0;font-weight:700;line-height:24px;letter-spacing:.15px}.wizard-content .sub-header span.italic{margin:0;line-height:24px;letter-spacing:.25px;font-style:italic}.wizard-content .form-footer{display:flex;-webkit-box-pack:end;justify-content:flex-end;padding:32px 20px 46px}.form-wrapper{overflow-y:auto;padding-top:1rem;padding-bottom:1rem;height:100%}.form-wrapper.allow-overflow{overflow-y:visible}.form-wrapper.pt-0{padding-top:0}.form-wrapper.mt-0{margin-top:0}.terms-form-footer{justify-content:space-between}.contacts-helper-text{margin-left:1rem;margin-top:.125rem;font-size:.75rem;line-height:1rem;letter-spacing:.025rem;color:var(--ix-inactive-field-color,#092241b2);opacity:.7}.selection-dialog{z-index:20;position:relative}.selection-dialog-header{font-family:var(--root-secondary-font);font-weight:700;font-size:1.25rem;line-height:1.5rem;letter-spacing:.009rem;width:38.125rem}.error-text{color:#092241;font-size:1.5rem;font-weight:700;line-height:2rem;font-family:'Red Hat Display',sans-serif;margin-top:.5rem}.error-text a{color:#1456e0;text-decoration:underline}.report-drawer-error{display:flex;align-items:center;height:90%}.display-inline-block{display:inline-block}.site-location-cell{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-start;gap:14px}.site-location-cell__primary-text{white-space:nowrap;min-width:4rem;width:auto;overflow:hidden;text-overflow:ellipsis}.site-location-cell__additional-text{max-width:2rem;min-width:2rem;height:100%;margin-top:auto;color:#1456e0}.word-break-all{word-break:break-all}@media only screen and (max-width:639px){.summary-form__field{flex-direction:column;gap:0}.site-maintenance-details ix-divider,.site-maintenance-details ix-divider+div{margin-top:-1rem}}.visitor-hosts-selection{--ix-filter-select-max-height:270px;--md-outlined-field-supporting-text-color:#092241b3}.visitor-hosts-selection:hover{--md-outlined-field-hover-supporting-text-color:#092241b3}.attachment-upload-failed-message-container{width:34.375rem;height:3rem;opacity:1;gap:8px;border-radius:4px;border-width:1px;padding-top:8px;padding-right:12px;padding-bottom:8px;padding-left:12px;border:1px solid var(--clr-on-surface-critical,#db0028);display:flex;align-items:center}.attachment-upload-failed-message-container p{font-family:var(--root-primary-font, 'Open Sans', sans-serif);font-weight:700;font-size:12px;line-height:16px;letter-spacing:.4px;vertical-align:middle}.location-implication-info{align-items:center;background:#f5f7ff;display:flex;gap:.625rem;margin-top:1rem;margin-bottom:1rem;padding:.5rem 1rem}.form-margin{margin-left:var(--wizard-custom-margin-left)}.form-footer{padding:32px 0 46px}.unsupported-select-option{--md-menu-item-disabled-opacity:1;--md-menu-item-supporting-text-color:var(--clr-on-surface-critical)}.fade-label{--md-menu-item-label-text-color:rgba(0, 0, 0, 0.4)}.incidents-grid{--ix-grid-filter-column-width:160px}.tab-navigation{border-top:1.5px solid #bec9c8;position:relative;top:-1px}.incident-header{font-family:var(--root-secondary-font);font-weight:700;font-size:2.125rem;line-height:2.5rem;vertical-align:middle;margin-bottom:2rem;margin-top:1.5rem}.no-padding{padding:0}.commentContainer .content ix-date-next{display:inline}`,o={CustomerSupport:e`
|
|
1
|
+
import{css as t,svg as e}from"lit";const i=t`:host{--light-grey:rgba(9, 34, 65, 0.6);--tracking-number-warning-background:#f5f7ff;--md-dialog-container-color:white;--ix-file-uploader-label-font-size:12px;--ix-file-uploader-help-font-size:12px;--ix-grid-cell-height:auto;--ix-checkbox-radio-gap:1rem;--ix-drawer-padding:0px 40px 0px 16px;--wizard-custom-margin-left:24px;--ix-wizard-hideclose-header-custom-margin-left:var(--wizard-custom-margin-left)}.reports-grid-nav{--ix-button-font-family:var(--root-primary-font)}.flex_column{flex-direction:column}.sub-header{display:flex;justify-content:space-between;align-items:center;align-self:stretch;position:relative;z-index:2}.default-margin-top{margin-top:2rem}.sub-header__action-buttons{display:flex;margin-left:auto;gap:10px}.sub-header span{text-align:right;font-family:var(--root-primary-font);font-size:14px;font-weight:400;letter-spacing:.25px}.sub-header ix-button span{font-family:var(--root-secondary-font);font-weight:700;font-size:14px;line-height:100%;letter-spacing:1.25px;text-align:center;vertical-align:middle;text-transform:uppercase}.sub-header__row{display:flex;flex-direction:row;gap:50px;align-items:center;width:100%}.sub-header__row .sub-header__row_value{font-size:1rem}.sub-header__row div{width:25%}.sub-header__row div span{font-style:normal}.sub-header__row_caption{font-family:var(--root-secondary-font);font-size:20px;font-style:normal;font-weight:700;line-height:24px;letter-spacing:.15px;margin:0}.sub-header__row div:last-child{margin-left:auto;width:auto}.italic{font-style:italic}.visitors-grid__footer{display:flex;padding:10px;border-top:1px solid #e0e0e0}.form-wrapper__fields{display:flex;flex-direction:column;align-items:flex-start;gap:2rem;padding-right:1rem}.form-wrapper__fields ix-email-list,.form-wrapper__fields ix-select,.form-wrapper__fields ix-textbox{align-self:stretch}.form-wrapper__fields ix-divider{padding:0}.form-wrapper__fields .textfield{width:100%}.form-wrapper__fields packages-grid,.form-wrapper__fields requested-location-details-grid,.form-wrapper__fields visitors-grid{width:100%}.form-wrapper__fields .col-2{display:flex;align-items:flex-start;gap:24px;align-self:stretch}.form-wrapper__fields .col-2>*{width:50%}.form-wrapper__fields .col-1{align-items:flex-start;align-self:stretch;width:100%}.form-wrapper__fields ix-file-uploader{--ix-file-uploader-label-line-height:1rem;--ix-file-uploader-label-letter-spacing:1.25px;--ix-file-uploader-help-font-family:var(--root-primary-font);--ix-file-uploader-help-line-height:1rem;--ix-file-uploader-help-letter-spacing:0.4px;--ix-file-chip-font-size:1rem;--ix-file-chip-letter-spacing:0.15px}ix-file-uploader{width:100%;font-size:12px;align-self:stretch}.warning-text{padding:4px 16px 0 16px;font-size:12px;line-height:16px;margin:var(--warning-text-margin,inherit)}.package-dialog{min-width:500px}.contact-details-dialog{width:min(90vw,41.125rem);--ix-message-toast-error-bg:#db0028}.contact-details-dialog .col-2{flex-wrap:wrap}.contact-details-dialog .col-2>*{width:unset;flex-grow:1}.urgent-work-form{width:560px}.summary-form{display:inline-flex;padding:20px 0;flex-direction:column;align-items:flex-start;gap:16px;flex-shrink:0;width:100%}.summary-form ix-divider{padding:10px 0}.summary-form packages-grid,.summary-form requested-location-details-grid,.summary-form visitors-grid{width:100%}.summary-form__subheader{display:flex;justify-content:flex-end;align-items:center;gap:16px;width:100%}.summary-form__subheader span:nth-child(1){flex:1 0 0;font-family:var(--root-primary-font);font-size:16px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.15px}.summary-form__subheader span:nth-child(2){width:24px;height:24px;flex-shrink:0;color:#1456e0;cursor:pointer}.summary-form__field{display:flex;align-items:flex-start;gap:24px;width:100%;font-family:var(--root-primary-font);font-size:16px;font-style:normal;font-weight:400;line-height:28px;letter-spacing:.44px}.summary-form__field>span:nth-child(1){color:var(--Text-Dark-2nd,rgba(9,34,65,.6));width:192px}.summary-form__field>span:nth-child(2){color:var(--On-Surface,#092241);flex:1 0 0}.packages-grid{display:flex;width:100%;padding:4px 0;flex-direction:column;align-items:flex-start;gap:24px}.packages-grid ix-grid{width:100%}.packages-grid ix-button{width:50px}.packages-grid__title{display:flex;align-items:center;gap:10px;align-self:stretch;color:var(--Text-Dark,#092241);font-family:var(--root-primary-font);font-size:16px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.15px}.packages-grid_action-buttons{margin:0 -10px}.packages-wrapper{width:100%;display:flex;flex-direction:column;gap:10px}.result-form{display:flex;width:100%;flex-direction:column;justify-content:center;align-items:center;gap:1rem;max-width:696px;margin:auto;margin-top:1rem}.result-form__title{align-self:stretch;color:#000;text-align:center;font-family:var(--root-secondary-font);font-size:34px;font-style:normal;font-weight:700;line-height:40px;letter-spacing:.35px}.result-form__body{align-self:stretch;text-align:center;line-height:28px;letter-spacing:.44px}.result-form__ticket-numbers{display:flex;flex-direction:column;align-items:center;gap:8px;border-radius:4px}.result-form__ticket-numbers svg{width:25px;height:24px}.result-form__ticket-numbers div{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;justify-content:center}.ticket-numbers__label{color:#000;text-align:center;font-weight:700;line-height:24px;letter-spacing:.1px}.ticket-numbers__content{color:var(--Primary-Main,#1456e0);font-family:var(--root-primary-font);font-size:14px;font-style:normal;font-weight:400;line-height:24px;letter-spacing:.25px;text-decoration-line:underline;cursor:pointer}.warning-text_content{text-align:justify;font-family:var(--root-primary-font);font-size:12px;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.4px}.warning-text_link{color:var(--Primary-Main,#1456e0);text-decoration-line:underline;cursor:pointer}.result-form__notice{display:flex;padding:8px 12px;align-items:center;gap:8px;border-radius:4px;border:1px solid var(--Warning-Main,#ff9800);max-width:550px}.result-form__notice .svg-container{height:24px}.result-form__notice .svg-container svg{height:inherit}.result-form__notice span{color:#000;font-family:var(--root-primary-font);font-size:12px;font-style:normal;font-weight:700;line-height:16px;letter-spacing:.4px}.result-form__notice div{display:flex;flex-direction:column;gap:8px}.result-form__footer{display:flex;height:39px;align-items:flex-start;gap:24px;margin-top:.5rem}#account-selection-dialog div[slot=content],#site-selection-dialog div[slot=content]{min-width:min(80vw,560px)}ix-divider{padding:30px 0}.form-wrapper>ix-divider{padding-right:1rem}.terms-header h3{margin:10px 0}.terms-request-type{font-size:1rem;line-height:1.25rem;margin-top:.5rem}.terms-html-container{overflow-y:scroll;line-height:1.5rem;font-size:14px;letter-spacing:.25px}.terms-html-container ol{list-style-type:decimal}.terms-html-container ol[type='a']{list-style-type:lower-alpha}.terms-html-container ol,.terms-html-container ul{padding-left:22px}.terms-html-container::-webkit-scrollbar-thumb{background:#c4c4c4;border-radius:100px;background-clip:padding-box;border:4px solid transparent}.terms-html-container::-webkit-scrollbar{width:12px}.terms-content ix-divider{padding:1.5rem 0}ix-button[type=submit]{align-self:flex-end}span.error{color:#db0028;font-size:.75rem;margin-left:1rem}.tooltip{position:relative;padding:0 8px;background-color:#1456e0;border-radius:100px;font-size:12px;font-weight:600;color:#fff}.tooltip .tooltip-text{visibility:hidden;position:absolute;width:max-content;background-color:#092241;font-size:12px;color:#fff;text-align:center;padding:5px 8px 5px 8px;margin-top:-6px;margin-left:20px;border-radius:6px;z-index:1;opacity:0;transition:opacity .3s ease 0s}.tooltip:hover .tooltip-text{visibility:visible;opacity:1}ix-button[type=submit]{align-self:flex-end}.ticket-details-container{display:flex;flex-wrap:wrap;align-items:flex-start;gap:2rem}.ticket-details-container__body{display:flex;flex-direction:column;align-items:flex-start;padding-bottom:48px;flex:1 1 0}.ticket-details-container__body deliveries-other-information-section,.ticket-details-container__body deliveries-package-details-section,.ticket-details-container__body deliveries-ticket-details-section,.ticket-details-container__body deliveries-ticket-information-section,.ticket-details-container__body remote-hands-other-information-section,.ticket-details-container__body trouble-ticket-other-information-section{width:100%}.w-100{width:100%}.ticket-details-body__section{display:flex;flex-direction:column;align-items:flex-start;gap:24px;align-self:stretch}.ticket-details-body__section packages-grid,.ticket-details-body__section requested-location-details-grid,.ticket-details-body__section visitors-grid{width:100%}.ticket-details-body__section .informations-section__title{color:var(--Text-Dark,#092241);font-family:var(--root-secondary-font);font-size:20px;font-style:normal;font-weight:700;line-height:24px;letter-spacing:.15px}.ticket-details-body__section .informations-section__items{display:flex;flex-direction:column;align-items:flex-start;gap:16px;align-self:stretch}.ticket-details-body__section .informations-section__items-row{display:flex;align-items:flex-start;align-self:stretch;flex-wrap:wrap}.ticket-details-body__section .informations-section__items-col{padding-top:16px;width:25%}.ticket-details-body__section .informations-section__items-col-1_5{padding-top:16px;width:37.5%}.ticket-details-body__section .informations-section__items-col-3{padding-top:16px;width:75%}.ticket-details-body__section .informations-section__items-col-4{padding-top:16px;width:100%}ticket-comments{display:flex;align-self:stretch;flex:1 0 0px;width:100%}.ticketComments{background-color:#fff;border-radius:12px 12px 0 0;padding:24px;display:flexbox;align-self:stretch;flex-direction:column;width:100%;gap:24px;overflow-y:auto}.ticketComments::-webkit-scrollbar-thumb{background:#c4c4c4;border-radius:100px;background-clip:padding-box;border:4px solid transparent}.ticketComments::-webkit-scrollbar{width:12px}.ticketComments h3{margin:0}.ticketComments span:not(.material-symbols-outlined,.error){font-size:14px;font-weight:700;line-height:24px;letter-spacing:.1px;color:#092241b2}.ticketComments p{margin:0;font-size:16px;font-weight:400;line-height:28px;color:#092241;letter-spacing:.44px;word-break:break-word}.ticketComments .form-wrapper__fields{gap:6px}.ticketComments .form-wrapper__fields span{margin-left:20px}.ticketComments textarea{resize:none;max-height:9.125rem;padding:10px 18px;border-radius:1.875rem;align-self:stretch;font-size:1rem;box-shadow:0 0 0 1px #6f7979 inset;font-family:var(--root-secondary-font),var(--root-primary-font);border:none;background-color:#f5f7ffd9;height:3rem}.ticketComments textarea[error]{box-shadow:0 0 0 1px #db0028 inset}.ticketComments textarea:focus{box-shadow:0 0 0 3px #1456e0 inset;border-color:transparent;outline:0}.ticketComments textarea:focus[error]{box-shadow:0 0 0 3px #db0028 inset}.ticketComments .commentPostButton{align-self:flex-end;width:82px}.ticketComments .commentPostButton span{color:#fff;margin:0;letter-spacing:1.25px}.commentContainer{display:flex;gap:24px}.commentContainer .avatarContainer{background-color:#f5f7ff;border-radius:100px;min-width:40px;height:40px;justify-content:center;align-items:center;display:flex;color:#09224199}.commentContainer .content ix-date{display:inline}.commentContainer .content p{white-space:preserve-breaks}.commentsGroup{display:flex;flex-direction:column;gap:24px}.commentsGroup+.commentsGroup{margin-top:1.5rem}.ticket-details-container__comments{display:flex;align-items:flex-start;align-self:stretch}.commentContainer{display:flex;gap:24px}.commentContainer .avatarContainer{background-color:#f5f7ff;border-radius:100px;min-width:40px;height:40px;justify-content:center;align-items:center;display:flex;color:#09224199}.ticket-details-body__details-section{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.chip-container{gap:5px;display:flex;flex-wrap:wrap}.chip{border-radius:68px;background:var(--Primary-Main,#1456e0);color:var(--Text-Light,#fff);font-family:var(--root-primary-font);font-size:14px;font-style:normal;font-weight:400;line-height:24px;letter-spacing:.25px;padding:0 10px}.service-tickets__buttons-container{display:flex;gap:.625rem;justify-content:flex-end;width:100%;margin-bottom:20px}@media only screen and (max-width:669px){.ticket-details-container__body{width:100%}.ticket-details-container__comments{width:100%}.ticket-details-body__section packages-grid{max-width:300px}.ticket-details-body__section .informations-section__items-col{width:100%}}@media only screen and (min-width:670px){.ticket-details-container__body{max-height:calc(100vh - 160px);overflow-y:auto}.ticket-details-container__comments{width:309px;position:sticky;top:144px;height:calc(100vh - 160px);overflow-y:auto}}@media only screen and (min-width:1200px){.ticket-details-container__comments{width:464px}}@media only screen and (min-width:500px) and (max-width:1250px){.ticket-details-body__section packages-grid{max-width:580px}.ticket-details-body__section .informations-section__items-col{width:50%}}.service-tickets__header{width:fit-content}.dialog{max-width:658px}.dialog-input{line-height:2.75rem}.blank-focus-input-styles{height:0;width:0;outline:0;border:none}.required-text{color:var(--light-grey);font-size:.75rem;margin-left:.9375rem}.form-wrapper__fields.account-selection-dialog,.form-wrapper__fields.cancellation-dialog,.form-wrapper__fields.site-selection-dialog{gap:0;margin-left:0;padding-right:0}.account-dialog__short-desc,.site-dialog__short-desc{color:var(--light-grey);margin:0 2rem .625rem 0}.account-dialog__title,.cancellation__title,.site-dialog__title{display:flex;justify-content:space-between;margin-top:0;margin-bottom:.625rem;font-size:20px}.cancellation__title{gap:3.125rem}.account-dialog__title span,.cancellation__title span,.site-dialog__title span{cursor:pointer}.account-selection-dialog__button-container,.cancellation__button-container,.site-selection-dialog__button-container{padding:.9375rem 0 .625rem}.cancellation__button-text{margin-right:.75rem}.account-selection-dialog__button-container,.site-selection-dialog__button-container{display:flex;gap:8px;justify-content:flex-end}.dialog-input{line-height:2.75rem}.blank-focus-input-styles{height:0;width:0;outline:0;border:none}.required-text{color:var(--light-grey);font-size:.75rem;margin-left:.9375rem}.file-attachment{background:#f5f7ff;display:inline-block;padding:4px 8px;margin:8px 4px}.tracking-number__warning{align-items:center;background:var(--tracking-number-warning-background);display:flex;gap:.625rem;margin-top:2rem;padding:.5rem 1rem}.supporting-text{color:var(--md-sys-text-color-secondary);font-size:.75rem;padding-left:.75rem}.supporting-text.error{margin-left:unset}.planned-work__supporting-text{margin-top:-1.75rem}.attachment-container{height:100px;overflow:hidden}.attachment-file-container{display:flex}.attachment-file-container__items{display:flex;font-size:1rem;justify-content:space-between;width:100%;max-width:620px}.attachment-file__icons-container{align-items:flex-start;display:flex;gap:20px;margin-right:20px;margin-top:4px}.attachment-file__icons-container.isError{opacity:24%}.attachment-file__icons-container.isError svg{cursor:not-allowed}.attachment-file__icons-container svg{cursor:pointer}.attachment-file-container__sub-heading{color:var(--light-grey);font-size:14px}.attachment-file-component{width:100%}.error-icon-container{display:flex;align-items:center;margin-right:20px}.attachments-file-summary{display:inline-block;margin-bottom:10px;margin-right:10px;background-color:var(--tracking-number-warning-background);padding:8px 12px;border-radius:3px}.disabled{pointer-events:none;opacity:.5}.approve-deny__title{margin:24px 24px 0}.approve-deny__container{--ix-grid-cell-pointer:default;width:55vw;padding:0}.approve-deny__scroll-container{max-height:80vh;overflow-y:scroll}.approve-deny__divider{padding:24px 0}.approve-deny__progress-container{position:absolute;margin-top:-24px}.approve-deny-buttons__message{background-color:#fff;color:var(--lumo-body-text-color);padding:10px 20px;text-align:center;width:244px}.approve-deny-buttons__container{display:flex}.approve-deny-buttons__button{align-items:end;border:1px solid rgba(9,34,65,.12);cursor:pointer;display:inline-flex;font-weight:700;gap:5px;padding:10px 20px;width:100px}.approve-deny-buttons__approve{--approve-deny-buttons__icon-color:#4caf50;border-radius:5px 0 0 5px}.approve-deny-buttons__deny{--approve-deny-buttons__icon-color:#db0028;border-left:none;border-radius:0 5px 5px 0}.approve-deny-buttons svg{fill:var(--approve-deny-buttons__icon-color)}.approve-deny-buttons__selected{background-color:var(--approve-deny-buttons__icon-color);color:#fff}.approve-deny-buttons__selected svg{fill:#fff}.approve-deny-buttons__disabled{cursor:default}.maintenance-grid-header{display:flex;justify-content:space-between;align-items:center;gap:var(--grid-nav-button-group-gap,.5rem);--md-filled-button-container-color:var(--ix-text-dark, #000);--md-filled-button-label-text-color:white;--md-text-button-label-text-color:var(--ix-text-dark, #000);--md-text-button-hover-label-text-color:var(--ix-text-dark, #000)}.maintenance-grid-header .button-text{text-transform:none}.maintenance-grid-header .selected{pointer-events:none}.full-width{width:100%}.site-maintenance-details__header{height:50px;display:flex;align-items:center;margin-bottom:1rem}.site-maintenance-details__header span{font-family:var(--root-secondary-font);font-weight:700;font-size:14px;line-height:100%;letter-spacing:1.25px;vertical-align:middle;text-transform:uppercase;color:var(--Text-Dark,#092241)}.site-maintenance-details__subheader{white-space:normal;word-break:break-word;margin-bottom:1rem}.site-maintenance-details__subheader span{font-family:var(--root-secondary-font);font-weight:700;font-size:24px;line-height:32px;letter-spacing:0;vertical-align:middle;color:var(--Text-Dark,#092241)}.create-service-ticket-container{color:var(--Text-Dark,#092241)}.create-service-ticket-container.wizard-content{max-height:calc(100vh - 85px);padding-top:60px}.create-service-ticket-container.wizard-content h1{margin:4px 0 34px}.create-service-ticket-container-subheader{display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin:0 0 32px 0}.create-service-ticket-container-subheader *{margin:0}.create-service-ticket-container-subheader h3{font-family:var(--root-secondary-font);font-size:20px;font-style:normal;font-weight:700;letter-spacing:.15px}.create-service-ticket-container-subheader p{font-family:var(--root-primary-font);font-size:14px;font-style:italic}ticket-type-card-list{overflow-y:auto}.create-service-ticket-btn{font-size:14px;line-height:18.52px;letter-spacing:1.25px}.dialog__title{margin:0;padding:16px 0 24px;display:flex;justify-content:space-between}.wizard-content{display:flex;flex-direction:column;max-height:calc(100vh - 100px);height:calc(100vh - 100px)}.wizard-content h1{margin:0 0 1.5rem}.wizard-content .sub-header h3{margin:0;font-weight:700;line-height:24px;letter-spacing:.15px}.wizard-content .sub-header span.italic{margin:0;line-height:24px;letter-spacing:.25px;font-style:italic}.wizard-content .form-footer{display:flex;-webkit-box-pack:end;justify-content:flex-end;padding:32px 20px 46px}.form-wrapper{overflow-y:auto;padding-top:1rem;padding-bottom:1rem;height:100%}.form-wrapper.allow-overflow{overflow-y:visible}.form-wrapper.pt-0{padding-top:0}.form-wrapper.mt-0{margin-top:0}.terms-form-footer{justify-content:space-between}.contacts-helper-text{margin-left:1rem;margin-top:.125rem;font-size:.75rem;line-height:1rem;letter-spacing:.025rem;color:var(--ix-inactive-field-color,#092241b2);opacity:.7}.selection-dialog{z-index:20;position:relative}.selection-dialog-header{font-family:var(--root-secondary-font);font-weight:700;font-size:1.25rem;line-height:1.5rem;letter-spacing:.009rem;width:38.125rem}.error-text{color:#092241;font-size:1.5rem;font-weight:700;line-height:2rem;font-family:'Red Hat Display',sans-serif;margin-top:.5rem}.error-text a{color:#1456e0;text-decoration:underline}.report-drawer-error{display:flex;align-items:center;height:90%}.display-inline-block{display:inline-block}.site-location-cell{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-start;gap:14px}.site-location-cell__primary-text{white-space:nowrap;min-width:4rem;width:auto;overflow:hidden;text-overflow:ellipsis}.site-location-cell__additional-text{max-width:2rem;min-width:2rem;height:100%;margin-top:auto;color:#1456e0}.word-break-all{word-break:break-all}@media only screen and (max-width:639px){.summary-form__field{flex-direction:column;gap:0}.site-maintenance-details ix-divider,.site-maintenance-details ix-divider+div{margin-top:-1rem}}.visitor-hosts-selection{--ix-filter-select-max-height:270px;--md-outlined-field-supporting-text-color:#092241b3}.visitor-hosts-selection:hover{--md-outlined-field-hover-supporting-text-color:#092241b3}.attachment-upload-failed-message-container{width:34.375rem;height:3rem;opacity:1;gap:8px;border-radius:4px;border-width:1px;padding-top:8px;padding-right:12px;padding-bottom:8px;padding-left:12px;border:1px solid var(--clr-on-surface-critical,#db0028);display:flex;align-items:center}.attachment-upload-failed-message-container p{font-family:var(--root-primary-font, 'Open Sans', sans-serif);font-weight:700;font-size:12px;line-height:16px;letter-spacing:.4px;vertical-align:middle}.location-implication-info{align-items:center;background:#f5f7ff;display:flex;gap:.625rem;margin-top:1rem;margin-bottom:1rem;padding:.5rem 1rem}.form-margin{margin-left:var(--wizard-custom-margin-left)}.form-footer{padding:32px 0 46px}.unsupported-select-option{--md-menu-item-disabled-opacity:1;--md-menu-item-supporting-text-color:var(--clr-on-surface-critical)}.fade-label{--md-menu-item-label-text-color:rgba(0, 0, 0, 0.4)}.incidents-grid{--ix-grid-filter-column-width:160px}.tab-navigation{border-top:1.5px solid #bec9c8;position:relative;top:-1px}.incident-header{font-family:var(--root-secondary-font);font-weight:700;font-size:2.125rem;line-height:2.5rem;vertical-align:middle;margin-bottom:2rem;margin-top:1.5rem}.no-padding{padding:0}.commentContainer .content ix-date-next{display:inline}`,o={CustomerSupport:e`
|
|
2
2
|
<path d="M67.075 41.125L62.075 33.625C62.035 33.56 61.97 33.51 61.92 33.45C61.85 33.3625 61.7825 33.2775 61.7025 33.2025C61.49 33 61.2575 32.82 61 32.7L51.775 28.7C50.65 29.575 48.7 30.825 45.95 31.65L53.3175 34.835L40 39.83L26.735 34.855L34.175 31.7C31.425 30.875 29.45 29.65 28.3 28.75L19.025 32.7C19.0125 32.705 19.0025 32.715 18.99 32.72C18.9475 32.74 18.915 32.77 18.8725 32.7925C18.665 32.9025 18.475 33.0375 18.305 33.1975C18.22 33.275 18.1525 33.36 18.08 33.45C18.03 33.5125 17.97 33.5575 17.925 33.625L12.925 41.125C12.5 41.75 12.375 42.55 12.625 43.275C12.85 44 13.4 44.575 14.125 44.85L17.5 46.115V57.5C17.5 58.5425 18.1475 59.475 19.1225 59.8425L39.1225 67.3425C39.405 67.4475 39.7025 67.5 40 67.5C40.2975 67.5 40.595 67.4475 40.8775 67.3425L60.8775 59.8425C61.8525 59.475 62.5 58.5425 62.5 57.5V46.29L65.975 44.8C66.675 44.5 67.175 43.925 67.4 43.225C67.6 42.5 67.5 41.725 67.075 41.125ZM18.825 41.275L20.9825 38.04L36.1825 43.74L34.025 46.975L18.825 41.275ZM61.25 41.375L48.075 47.025L44.525 43.475L59.02 38.04L61.25 41.375ZM57.5 55.7675L40 62.33L22.5 55.7675V47.99L34.125 52.35C34.4 52.45 34.7 52.5 35 52.5C35.825 52.5 36.6 52.1 37.075 51.375L40.4 46.425L45.725 51.775C46.45 52.5 47.55 52.7 48.475 52.3L57.5 48.4325V55.7675ZM40 27.51C34.13 27.51 31.06 24.595 30.73 24.2625C29.755 23.2825 29.7575 21.7025 30.7375 20.7275C31.7075 19.7625 33.2725 19.755 34.2475 20.71C34.3725 20.825 36.2575 22.51 40 22.51C43.795 22.51 45.6775 20.78 45.7575 20.7075C46.75 19.7725 48.3275 19.795 49.2775 20.7725C50.2275 21.7525 50.235 23.2975 49.2725 24.2625C48.94 24.595 45.87 27.51 40 27.51ZM35 12.5C34.337 12.5 33.7011 12.7634 33.2322 13.2322C32.7634 13.7011 32.5 14.337 32.5 15C32.5 15.663 32.7634 16.2989 33.2322 16.7678C33.7011 17.2366 34.337 17.5 35 17.5C35.663 17.5 36.2989 17.2366 36.7678 16.7678C37.2366 16.2989 37.5 15.663 37.5 15C37.5 14.337 37.2366 13.7011 36.7678 13.2322C36.2989 12.7634 35.663 12.5 35 12.5ZM45 12.5C44.337 12.5 43.7011 12.7634 43.2322 13.2322C42.7634 13.7011 42.5 14.337 42.5 15C42.5 15.663 42.7634 16.2989 43.2322 16.7678C43.7011 17.2366 44.337 17.5 45 17.5C45.663 17.5 46.2989 17.2366 46.7678 16.7678C47.2366 16.2989 47.5 15.663 47.5 15C47.5 14.337 47.2366 13.7011 46.7678 13.2322C46.2989 12.7634 45.663 12.5 45 12.5Z"
|
|
3
3
|
fill="white"
|
|
4
4
|
/>`,FacilityAccess:e`
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "Webcomponent ui-service-management following open-wc recommendations",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"author": "ui-service-management",
|
|
6
|
-
"version": "11.0.
|
|
6
|
+
"version": "11.0.7",
|
|
7
7
|
"type": "module",
|
|
8
8
|
"exports": {
|
|
9
9
|
"./ui-service-management.js": "./dist/ui-service-management.js",
|