deepsource-autofix-76c6eb20
Dan Gowans 2023-01-12 14:16:08 -05:00
parent 18e05f6c88
commit cbe2735151
16 changed files with 221 additions and 230 deletions

View File

@ -7,10 +7,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
let feeCategories = exports.feeCategories; let feeCategories = exports.feeCategories;
delete exports.feeCategories; delete exports.feeCategories;
function renderFeeCategories() { function renderFeeCategories() {
var _a, _b, _c, _d, _e, _f;
if (feeCategories.length === 0) { if (feeCategories.length === 0) {
feeCategoriesContainerElement.innerHTML = `<div class="message is-warning"> feeCategoriesContainerElement.innerHTML = `<div class="message is-warning">
<p class="message-body">There are no available fees.</p> <p class="message-body">There are no available fees.</p>
</div>`; </div>`;
return; return;
} }
feeCategoriesContainerElement.innerHTML = ''; feeCategoriesContainerElement.innerHTML = '';
@ -24,7 +25,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
'<div class="columns">' + '<div class="columns">' +
('<div class="column">' + ('<div class="column">' +
'<h2 class="title is-4">' + '<h2 class="title is-4">' +
cityssm.escapeHTML(feeCategory.feeCategory || '') + cityssm.escapeHTML((_a = feeCategory.feeCategory) !== null && _a !== void 0 ? _a : '') +
'</h2>' + '</h2>' +
'</div>') + '</div>') +
('<div class="column is-narrow">' + ('<div class="column is-narrow">' +
@ -57,14 +58,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
'</div>'; '</div>';
if (feeCategory.fees.length === 0) { if (feeCategory.fees.length === 0) {
feeCategoryContainerElement.insertAdjacentHTML('beforeend', `<div class="panel-block is-block"> feeCategoryContainerElement.insertAdjacentHTML('beforeend', `<div class="panel-block is-block">
<div class="message is-info"> <div class="message is-info">
<p class="message-body"> <p class="message-body">
There are no fees in the There are no fees in the
"${cityssm.escapeHTML(feeCategory.feeCategory || '')}" "${cityssm.escapeHTML(feeCategory.feeCategory || '')}"
category. category.
</p> </p>
</div> </div>
</div>`); </div>`);
feeCategoryContainerElement feeCategoryContainerElement
.querySelector('.button--deleteFeeCategory') .querySelector('.button--deleteFeeCategory')
.addEventListener('click', confirmDeleteFeeCategory); .addEventListener('click', confirmDeleteFeeCategory);
@ -80,11 +81,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
('<div class="column is-half">' + ('<div class="column is-half">' +
'<p>' + '<p>' +
'<a class="has-text-weight-bold" href="#">' + '<a class="has-text-weight-bold" href="#">' +
cityssm.escapeHTML(fee.feeName || '') + cityssm.escapeHTML((_b = fee.feeName) !== null && _b !== void 0 ? _b : '') +
'</a><br />' + '</a><br />' +
'<small>' + '<small>' +
cityssm cityssm
.escapeHTML(fee.feeDescription || '') .escapeHTML((_c = fee.feeDescription) !== null && _c !== void 0 ? _c : '')
.replace(/\n/g, '<br />') + .replace(/\n/g, '<br />') +
'</small>' + '</small>' +
'</p>' + '</p>' +
@ -97,14 +98,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
? ' <span class="tag has-tooltip-bottom" data-tooltip="' + ? ' <span class="tag has-tooltip-bottom" data-tooltip="' +
los.escapedAliases.Occupancy + los.escapedAliases.Occupancy +
' Type Filter">' + ' Type Filter">' +
cityssm.escapeHTML(fee.occupancyType || '') + cityssm.escapeHTML((_d = fee.occupancyType) !== null && _d !== void 0 ? _d : '') +
'</span>' '</span>'
: '') + : '') +
(fee.lotTypeId (fee.lotTypeId
? ' <span class="tag has-tooltip-bottom" data-tooltip="' + ? ' <span class="tag has-tooltip-bottom" data-tooltip="' +
los.escapedAliases.Lot + los.escapedAliases.Lot +
' Type Filter">' + ' Type Filter">' +
cityssm.escapeHTML(fee.lotType || '') + cityssm.escapeHTML((_e = fee.lotType) !== null && _e !== void 0 ? _e : '') +
'</span>' '</span>'
: '') + : '') +
'</p>' '</p>'
@ -130,7 +131,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
'</div>') + '</div>') +
('<div class="column has-text-centered">' + ('<div class="column has-text-centered">' +
(fee.includeQuantity (fee.includeQuantity
? cityssm.escapeHTML(fee.quantityUnit || '') + ? cityssm.escapeHTML((_f = fee.quantityUnit) !== null && _f !== void 0 ? _f : '') +
'<br />' + '<br />' +
'<small>Quantity</small>' '<small>Quantity</small>'
: '') + : '') +
@ -168,9 +169,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
.querySelector('#button--addFeeCategory') .querySelector('#button--addFeeCategory')
.addEventListener('click', () => { .addEventListener('click', () => {
let addCloseModalFunction; let addCloseModalFunction;
const doAddFeeCategory = (submitEvent) => { function doAddFeeCategory(submitEvent) {
submitEvent.preventDefault(); submitEvent.preventDefault();
cityssm.postJSON(los.urlPrefix + '/admin/doAddFeeCategory', submitEvent.currentTarget, (responseJSON) => { cityssm.postJSON(los.urlPrefix + '/admin/doAddFeeCategory', submitEvent.currentTarget, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
feeCategories = responseJSON.feeCategories; feeCategories = responseJSON.feeCategories;
addCloseModalFunction(); addCloseModalFunction();
@ -179,12 +181,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Creating Fee Category', title: 'Error Creating Fee Category',
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }
}); });
}; }
cityssm.openHtmlModal('adminFees-addFeeCategory', { cityssm.openHtmlModal('adminFees-addFeeCategory', {
onshown(modalElement, closeModalFunction) { onshown(modalElement, closeModalFunction) {
bulmaJS.toggleHtmlClipped(); bulmaJS.toggleHtmlClipped();
@ -209,6 +211,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
function doUpdateFeeCategory(submitEvent) { function doUpdateFeeCategory(submitEvent) {
submitEvent.preventDefault(); submitEvent.preventDefault();
cityssm.postJSON(los.urlPrefix + '/admin/doUpdateFeeCategory', submitEvent.currentTarget, (responseJSON) => { cityssm.postJSON(los.urlPrefix + '/admin/doUpdateFeeCategory', submitEvent.currentTarget, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
feeCategories = responseJSON.feeCategories; feeCategories = responseJSON.feeCategories;
editCloseModalFunction(); editCloseModalFunction();
@ -217,7 +220,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Updating Fee Category', title: 'Error Updating Fee Category',
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }
@ -248,6 +251,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
cityssm.postJSON(los.urlPrefix + '/admin/doDeleteFeeCategory', { cityssm.postJSON(los.urlPrefix + '/admin/doDeleteFeeCategory', {
feeCategoryId feeCategoryId
}, (responseJSON) => { }, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
feeCategories = responseJSON.feeCategories; feeCategories = responseJSON.feeCategories;
renderFeeCategories(); renderFeeCategories();
@ -255,7 +259,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Updating Fee Category', title: 'Error Updating Fee Category',
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }
@ -282,6 +286,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
feeCategoryId, feeCategoryId,
moveToEnd: clickEvent.shiftKey ? '1' : '0' moveToEnd: clickEvent.shiftKey ? '1' : '0'
}, (responseJSON) => { }, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
feeCategories = responseJSON.feeCategories; feeCategories = responseJSON.feeCategories;
renderFeeCategories(); renderFeeCategories();
@ -289,7 +294,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Moving Fee Category', title: 'Error Moving Fee Category',
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }
@ -304,6 +309,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
function doAddFee(submitEvent) { function doAddFee(submitEvent) {
submitEvent.preventDefault(); submitEvent.preventDefault();
cityssm.postJSON(los.urlPrefix + '/admin/doAddFee', submitEvent.currentTarget, (responseJSON) => { cityssm.postJSON(los.urlPrefix + '/admin/doAddFee', submitEvent.currentTarget, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
feeCategories = responseJSON.feeCategories; feeCategories = responseJSON.feeCategories;
addCloseModalFunction(); addCloseModalFunction();
@ -312,7 +318,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Adding Fee', title: 'Error Adding Fee',
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }
@ -415,6 +421,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
function doUpdateFee(submitEvent) { function doUpdateFee(submitEvent) {
submitEvent.preventDefault(); submitEvent.preventDefault();
cityssm.postJSON(los.urlPrefix + '/admin/doUpdateFee', submitEvent.currentTarget, (responseJSON) => { cityssm.postJSON(los.urlPrefix + '/admin/doUpdateFee', submitEvent.currentTarget, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
feeCategories = responseJSON.feeCategories; feeCategories = responseJSON.feeCategories;
editCloseModalFunction(); editCloseModalFunction();
@ -423,7 +430,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Updating Fee', title: 'Error Updating Fee',
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }
@ -431,10 +438,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
} }
function confirmDeleteFee(clickEvent) { function confirmDeleteFee(clickEvent) {
clickEvent.preventDefault(); clickEvent.preventDefault();
const doDelete = () => { function doDelete() {
cityssm.postJSON(los.urlPrefix + '/admin/doDeleteFee', { cityssm.postJSON(los.urlPrefix + '/admin/doDeleteFee', {
feeId feeId
}, (responseJSON) => { }, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
feeCategories = responseJSON.feeCategories; feeCategories = responseJSON.feeCategories;
editCloseModalFunction(); editCloseModalFunction();
@ -443,12 +451,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Deleting Fee', title: 'Error Deleting Fee',
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }
}); });
}; }
bulmaJS.confirm({ bulmaJS.confirm({
title: 'Delete Fee?', title: 'Delete Fee?',
message: 'Are you sure you want to delete this fee?', message: 'Are you sure you want to delete this fee?',
@ -493,6 +501,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
} }
cityssm.openHtmlModal('adminFees-editFee', { cityssm.openHtmlModal('adminFees-editFee', {
onshow(modalElement) { onshow(modalElement) {
var _a;
editModalElement = modalElement; editModalElement = modalElement;
modalElement.querySelector('#feeEdit--feeId').value = fee.feeId.toString(); modalElement.querySelector('#feeEdit--feeId').value = fee.feeId.toString();
const feeCategoryElement = modalElement.querySelector('#feeEdit--feeCategoryId'); const feeCategoryElement = modalElement.querySelector('#feeEdit--feeCategoryId');
@ -546,7 +555,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
includeQuantityElement.value = '1'; includeQuantityElement.value = '1';
} }
includeQuantityElement.addEventListener('change', toggleQuantityFields); includeQuantityElement.addEventListener('change', toggleQuantityFields);
modalElement.querySelector('#feeEdit--quantityUnit').value = fee.quantityUnit || ''; modalElement.querySelector('#feeEdit--quantityUnit').value = (_a = fee.quantityUnit) !== null && _a !== void 0 ? _a : '';
toggleQuantityFields(); toggleQuantityFields();
if (fee.isRequired) { if (fee.isRequired) {
; ;
@ -582,6 +591,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
feeId, feeId,
moveToEnd: clickEvent.shiftKey ? '1' : '0' moveToEnd: clickEvent.shiftKey ? '1' : '0'
}, (responseJSON) => { }, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
feeCategories = responseJSON.feeCategories; feeCategories = responseJSON.feeCategories;
renderFeeCategories(); renderFeeCategories();
@ -589,7 +599,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Moving Fee', title: 'Error Moving Fee',
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }

View File

@ -9,7 +9,6 @@ import type { BulmaJS } from '@cityssm/bulma-js/types'
declare const cityssm: cityssmGlobal declare const cityssm: cityssmGlobal
declare const bulmaJS: BulmaJS declare const bulmaJS: BulmaJS
;(() => { ;(() => {
const los = exports.los as globalTypes.LOS const los = exports.los as globalTypes.LOS
@ -23,8 +22,8 @@ declare const bulmaJS: BulmaJS
function renderFeeCategories(): void { function renderFeeCategories(): void {
if (feeCategories.length === 0) { if (feeCategories.length === 0) {
feeCategoriesContainerElement.innerHTML = `<div class="message is-warning"> feeCategoriesContainerElement.innerHTML = `<div class="message is-warning">
<p class="message-body">There are no available fees.</p> <p class="message-body">There are no available fees.</p>
</div>` </div>`
return return
} }
@ -37,19 +36,19 @@ declare const bulmaJS: BulmaJS
feeCategoryContainerElement.className = 'panel container--feeCategory' feeCategoryContainerElement.className = 'panel container--feeCategory'
feeCategoryContainerElement.dataset.feeCategoryId = feeCategoryContainerElement.dataset.feeCategoryId =
feeCategory.feeCategoryId!.toString() feeCategory.feeCategoryId.toString()
feeCategoryContainerElement.innerHTML = feeCategoryContainerElement.innerHTML =
'<div class="panel-heading">' + '<div class="panel-heading">' +
'<div class="columns">' + '<div class="columns">' +
('<div class="column">' + ('<div class="column">' +
'<h2 class="title is-4">' + '<h2 class="title is-4">' +
cityssm.escapeHTML(feeCategory.feeCategory || '') + cityssm.escapeHTML(feeCategory.feeCategory ?? '') +
'</h2>' + '</h2>' +
'</div>') + '</div>') +
('<div class="column is-narrow">' + ('<div class="column is-narrow">' +
'<div class="field is-grouped is-justify-content-end">' + '<div class="field is-grouped is-justify-content-end">' +
(feeCategory.fees!.length === 0 (feeCategory.fees.length === 0
? '<div class="control">' + ? '<div class="control">' +
'<button class="button is-small is-danger button--deleteFeeCategory" type="button">' + '<button class="button is-small is-danger button--deleteFeeCategory" type="button">' +
'<span class="icon is-small"><i class="fas fa-trash" aria-hidden="true"></i></span>' + '<span class="icon is-small"><i class="fas fa-trash" aria-hidden="true"></i></span>' +
@ -83,16 +82,16 @@ declare const bulmaJS: BulmaJS
feeCategoryContainerElement.insertAdjacentHTML( feeCategoryContainerElement.insertAdjacentHTML(
'beforeend', 'beforeend',
`<div class="panel-block is-block"> `<div class="panel-block is-block">
<div class="message is-info"> <div class="message is-info">
<p class="message-body"> <p class="message-body">
There are no fees in the There are no fees in the
"${cityssm.escapeHTML( "${cityssm.escapeHTML(
feeCategory.feeCategory || '' feeCategory.feeCategory || ''
)}" )}"
category. category.
</p> </p>
</div> </div>
</div>` </div>`
) )
feeCategoryContainerElement feeCategoryContainerElement
@ -103,7 +102,7 @@ declare const bulmaJS: BulmaJS
const panelBlockElement = document.createElement('div') const panelBlockElement = document.createElement('div')
panelBlockElement.className = 'panel-block is-block container--fee' panelBlockElement.className = 'panel-block is-block container--fee'
panelBlockElement.dataset.feeId = fee.feeId!.toString() panelBlockElement.dataset.feeId = fee.feeId.toString()
const hasTagsBlock = const hasTagsBlock =
fee.isRequired || fee.occupancyTypeId || fee.lotTypeId fee.isRequired || fee.occupancyTypeId || fee.lotTypeId
@ -113,11 +112,11 @@ declare const bulmaJS: BulmaJS
('<div class="column is-half">' + ('<div class="column is-half">' +
'<p>' + '<p>' +
'<a class="has-text-weight-bold" href="#">' + '<a class="has-text-weight-bold" href="#">' +
cityssm.escapeHTML(fee.feeName || '') + cityssm.escapeHTML(fee.feeName ?? '') +
'</a><br />' + '</a><br />' +
'<small>' + '<small>' +
cityssm cityssm
.escapeHTML(fee.feeDescription || '') .escapeHTML(fee.feeDescription ?? '')
.replace(/\n/g, '<br />') + .replace(/\n/g, '<br />') +
'</small>' + '</small>' +
'</p>' + '</p>' +
@ -130,14 +129,14 @@ declare const bulmaJS: BulmaJS
? ' <span class="tag has-tooltip-bottom" data-tooltip="' + ? ' <span class="tag has-tooltip-bottom" data-tooltip="' +
los.escapedAliases.Occupancy + los.escapedAliases.Occupancy +
' Type Filter">' + ' Type Filter">' +
cityssm.escapeHTML(fee.occupancyType || '') + cityssm.escapeHTML(fee.occupancyType ?? '') +
'</span>' '</span>'
: '') + : '') +
(fee.lotTypeId (fee.lotTypeId
? ' <span class="tag has-tooltip-bottom" data-tooltip="' + ? ' <span class="tag has-tooltip-bottom" data-tooltip="' +
los.escapedAliases.Lot + los.escapedAliases.Lot +
' Type Filter">' + ' Type Filter">' +
cityssm.escapeHTML(fee.lotType || '') + cityssm.escapeHTML(fee.lotType ?? '') +
'</span>' '</span>'
: '') + : '') +
'</p>' '</p>'
@ -163,7 +162,7 @@ declare const bulmaJS: BulmaJS
'</div>') + '</div>') +
('<div class="column has-text-centered">' + ('<div class="column has-text-centered">' +
(fee.includeQuantity (fee.includeQuantity
? cityssm.escapeHTML(fee.quantityUnit || '') + ? cityssm.escapeHTML(fee.quantityUnit ?? '') +
'<br />' + '<br />' +
'<small>Quantity</small>' '<small>Quantity</small>'
: '') + : '') +
@ -182,13 +181,11 @@ declare const bulmaJS: BulmaJS
panelBlockElement panelBlockElement
.querySelector('a')! .querySelector('a')!
.addEventListener('click', openEditFee) .addEventListener('click', openEditFee)
;( ;(
panelBlockElement.querySelector( panelBlockElement.querySelector(
'.button--moveFeeUp' '.button--moveFeeUp'
) as HTMLButtonElement ) as HTMLButtonElement
).addEventListener('click', moveFee) ).addEventListener('click', moveFee)
;( ;(
panelBlockElement.querySelector( panelBlockElement.querySelector(
'.button--moveFeeDown' '.button--moveFeeDown'
@ -206,13 +203,11 @@ declare const bulmaJS: BulmaJS
feeCategoryContainerElement feeCategoryContainerElement
.querySelector('.button--addFee')! .querySelector('.button--addFee')!
.addEventListener('click', openAddFee) .addEventListener('click', openAddFee)
;( ;(
feeCategoryContainerElement.querySelector( feeCategoryContainerElement.querySelector(
'.button--moveFeeCategoryUp' '.button--moveFeeCategoryUp'
) as HTMLButtonElement ) as HTMLButtonElement
).addEventListener('click', moveFeeCategory) ).addEventListener('click', moveFeeCategory)
;( ;(
feeCategoryContainerElement.querySelector( feeCategoryContainerElement.querySelector(
'.button--moveFeeCategoryDown' '.button--moveFeeCategoryDown'
@ -232,7 +227,7 @@ declare const bulmaJS: BulmaJS
.addEventListener('click', () => { .addEventListener('click', () => {
let addCloseModalFunction: () => void let addCloseModalFunction: () => void
const doAddFeeCategory = (submitEvent: SubmitEvent) => { function doAddFeeCategory(submitEvent: SubmitEvent): void {
submitEvent.preventDefault() submitEvent.preventDefault()
cityssm.postJSON( cityssm.postJSON(
@ -250,7 +245,7 @@ declare const bulmaJS: BulmaJS
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Creating Fee Category', title: 'Error Creating Fee Category',
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
@ -299,7 +294,7 @@ declare const bulmaJS: BulmaJS
let editCloseModalFunction: () => void let editCloseModalFunction: () => void
function doUpdateFeeCategory(submitEvent: SubmitEvent) { function doUpdateFeeCategory(submitEvent: SubmitEvent): void {
submitEvent.preventDefault() submitEvent.preventDefault()
cityssm.postJSON( cityssm.postJSON(
@ -317,7 +312,7 @@ declare const bulmaJS: BulmaJS
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Updating Fee Category', title: 'Error Updating Fee Category',
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
@ -331,7 +326,7 @@ declare const bulmaJS: BulmaJS
modalElement.querySelector( modalElement.querySelector(
'#feeCategoryEdit--feeCategoryId' '#feeCategoryEdit--feeCategoryId'
) as HTMLInputElement ) as HTMLInputElement
).value = feeCategory.feeCategoryId!.toString() ).value = feeCategory.feeCategoryId.toString()
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#feeCategoryEdit--feeCategory' '#feeCategoryEdit--feeCategory'
@ -346,7 +341,6 @@ declare const bulmaJS: BulmaJS
modalElement modalElement
.querySelector('form')! .querySelector('form')!
.addEventListener('submit', doUpdateFeeCategory) .addEventListener('submit', doUpdateFeeCategory)
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#feeCategoryEdit--feeCategory' '#feeCategoryEdit--feeCategory'
@ -369,7 +363,7 @@ declare const bulmaJS: BulmaJS
10 10
) )
function doDelete() { function doDelete(): void {
cityssm.postJSON( cityssm.postJSON(
los.urlPrefix + '/admin/doDeleteFeeCategory', los.urlPrefix + '/admin/doDeleteFeeCategory',
{ {
@ -386,7 +380,7 @@ declare const bulmaJS: BulmaJS
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Updating Fee Category', title: 'Error Updating Fee Category',
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
@ -433,7 +427,7 @@ declare const bulmaJS: BulmaJS
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Moving Fee Category', title: 'Error Moving Fee Category',
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
@ -457,7 +451,7 @@ declare const bulmaJS: BulmaJS
let addCloseModalFunction: () => void let addCloseModalFunction: () => void
function doAddFee(submitEvent: SubmitEvent) { function doAddFee(submitEvent: SubmitEvent): void {
submitEvent.preventDefault() submitEvent.preventDefault()
cityssm.postJSON( cityssm.postJSON(
@ -475,7 +469,7 @@ declare const bulmaJS: BulmaJS
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Adding Fee', title: 'Error Adding Fee',
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
@ -537,11 +531,9 @@ declare const bulmaJS: BulmaJS
addCloseModalFunction = closeModalFunction addCloseModalFunction = closeModalFunction
modalElement.querySelector('form')!.addEventListener('submit', doAddFee) modalElement.querySelector('form')!.addEventListener('submit', doAddFee)
;( ;(
modalElement.querySelector('#feeAdd--feeName') as HTMLInputElement modalElement.querySelector('#feeAdd--feeName') as HTMLInputElement
).focus() ).focus()
;( ;(
modalElement.querySelector('#feeAdd--feeFunction') as HTMLInputElement modalElement.querySelector('#feeAdd--feeFunction') as HTMLInputElement
).addEventListener('change', () => { ).addEventListener('change', () => {
@ -637,7 +629,7 @@ declare const bulmaJS: BulmaJS
let editCloseModalFunction: () => void let editCloseModalFunction: () => void
let editModalElement: HTMLElement let editModalElement: HTMLElement
function doUpdateFee(submitEvent: SubmitEvent) { function doUpdateFee(submitEvent: SubmitEvent): void {
submitEvent.preventDefault() submitEvent.preventDefault()
cityssm.postJSON( cityssm.postJSON(
@ -655,7 +647,7 @@ declare const bulmaJS: BulmaJS
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Updating Fee', title: 'Error Updating Fee',
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
@ -663,10 +655,10 @@ declare const bulmaJS: BulmaJS
) )
} }
function confirmDeleteFee(clickEvent: Event) { function confirmDeleteFee(clickEvent: Event): void {
clickEvent.preventDefault() clickEvent.preventDefault()
const doDelete = () => { function doDelete(): void {
cityssm.postJSON( cityssm.postJSON(
los.urlPrefix + '/admin/doDeleteFee', los.urlPrefix + '/admin/doDeleteFee',
{ {
@ -684,7 +676,7 @@ declare const bulmaJS: BulmaJS
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Deleting Fee', title: 'Error Deleting Fee',
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
@ -703,7 +695,7 @@ declare const bulmaJS: BulmaJS
}) })
} }
function toggleFeeFields() { function toggleFeeFields(): void {
const feeAmountElement = editModalElement.querySelector( const feeAmountElement = editModalElement.querySelector(
'#feeEdit--feeAmount' '#feeEdit--feeAmount'
) as HTMLInputElement ) as HTMLInputElement
@ -725,7 +717,7 @@ declare const bulmaJS: BulmaJS
} }
} }
function toggleTaxFields() { function toggleTaxFields(): void {
const taxAmountElement = editModalElement.querySelector( const taxAmountElement = editModalElement.querySelector(
'#feeEdit--taxAmount' '#feeEdit--taxAmount'
) as HTMLInputElement ) as HTMLInputElement
@ -747,7 +739,7 @@ declare const bulmaJS: BulmaJS
} }
} }
function toggleQuantityFields() { function toggleQuantityFields(): void {
const includeQuanitityValue = ( const includeQuanitityValue = (
editModalElement.querySelector( editModalElement.querySelector(
'#feeEdit--includeQuantity' '#feeEdit--includeQuantity'
@ -764,7 +756,6 @@ declare const bulmaJS: BulmaJS
cityssm.openHtmlModal('adminFees-editFee', { cityssm.openHtmlModal('adminFees-editFee', {
onshow(modalElement) { onshow(modalElement) {
editModalElement = modalElement editModalElement = modalElement
;( ;(
modalElement.querySelector('#feeEdit--feeId') as HTMLInputElement modalElement.querySelector('#feeEdit--feeId') as HTMLInputElement
).value = fee.feeId.toString() ).value = fee.feeId.toString()
@ -835,7 +826,6 @@ declare const bulmaJS: BulmaJS
.addEventListener('change', toggleFeeFields) .addEventListener('change', toggleFeeFields)
toggleFeeFields() toggleFeeFields()
;( ;(
modalElement.querySelector('#feeEdit--taxAmount') as HTMLInputElement modalElement.querySelector('#feeEdit--taxAmount') as HTMLInputElement
).value = fee.taxAmount ? fee.taxAmount.toFixed(2) : '' ).value = fee.taxAmount ? fee.taxAmount.toFixed(2) : ''
@ -859,12 +849,11 @@ declare const bulmaJS: BulmaJS
} }
includeQuantityElement.addEventListener('change', toggleQuantityFields) includeQuantityElement.addEventListener('change', toggleQuantityFields)
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#feeEdit--quantityUnit' '#feeEdit--quantityUnit'
) as HTMLInputElement ) as HTMLInputElement
).value = fee.quantityUnit || '' ).value = fee.quantityUnit ?? ''
toggleQuantityFields() toggleQuantityFields()
@ -929,7 +918,7 @@ declare const bulmaJS: BulmaJS
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Moving Fee', title: 'Error Moving Fee',
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }

View File

@ -26,14 +26,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
} }
} }
function lotTypeResponseHandler(responseJSON) { function lotTypeResponseHandler(responseJSON) {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
lotTypes = responseJSON.lotTypes; lotTypes = responseJSON.lotTypes;
renderLotTypes(); renderLotTypes();
} }
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: `Error Updating ${exports.aliases.lot} Type`, title: `Error Updating ${los.escapedAliases.Lot} Type`,
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }
@ -46,11 +47,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
}, lotTypeResponseHandler); }, lotTypeResponseHandler);
} }
bulmaJS.confirm({ bulmaJS.confirm({
title: `Delete ${exports.aliases.lot} Type`, title: `Delete ${los.escapedAliases.Lot} Type`,
message: `Are you sure you want to delete this ${exports.aliases.lot.toLowerCase()} type?`, message: `Are you sure you want to delete this ${los.escapedAliases.lot} type?`,
contextualColorName: 'warning', contextualColorName: 'warning',
okButton: { okButton: {
text: `Yes, Delete ${exports.aliases.lot} Type`, text: `Yes, Delete ${los.escapedAliases.Lot} Type`,
callbackFunction: doDelete callbackFunction: doDelete
} }
}); });
@ -61,7 +62,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
return lotTypeId === currentLotType.lotTypeId; return lotTypeId === currentLotType.lotTypeId;
}); });
let editCloseModalFunction; let editCloseModalFunction;
const doEdit = (submitEvent) => { function doEdit(submitEvent) {
submitEvent.preventDefault(); submitEvent.preventDefault();
cityssm.postJSON(los.urlPrefix + '/admin/doUpdateLotType', submitEvent.currentTarget, (responseJSON) => { cityssm.postJSON(los.urlPrefix + '/admin/doUpdateLotType', submitEvent.currentTarget, (responseJSON) => {
lotTypeResponseHandler(responseJSON); lotTypeResponseHandler(responseJSON);
@ -69,7 +70,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
editCloseModalFunction(); editCloseModalFunction();
} }
}); });
}; }
cityssm.openHtmlModal('adminLotTypes-editLotType', { cityssm.openHtmlModal('adminLotTypes-editLotType', {
onshow(modalElement) { onshow(modalElement) {
los.populateAliases(modalElement); los.populateAliases(modalElement);
@ -90,7 +91,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
function openAddLotTypeField(clickEvent) { function openAddLotTypeField(clickEvent) {
const lotTypeId = Number.parseInt(clickEvent.currentTarget.closest('.container--lotType').dataset.lotTypeId, 10); const lotTypeId = Number.parseInt(clickEvent.currentTarget.closest('.container--lotType').dataset.lotTypeId, 10);
let addCloseModalFunction; let addCloseModalFunction;
const doAdd = (submitEvent) => { function doAdd(submitEvent) {
submitEvent.preventDefault(); submitEvent.preventDefault();
cityssm.postJSON(los.urlPrefix + '/admin/doAddLotTypeField', submitEvent.currentTarget, (responseJSON) => { cityssm.postJSON(los.urlPrefix + '/admin/doAddLotTypeField', submitEvent.currentTarget, (responseJSON) => {
expandedLotTypes.add(lotTypeId); expandedLotTypes.add(lotTypeId);
@ -100,7 +101,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
openEditLotTypeField(lotTypeId, responseJSON.lotTypeFieldId); openEditLotTypeField(lotTypeId, responseJSON.lotTypeFieldId);
} }
}); });
}; }
cityssm.openHtmlModal('adminLotTypes-addLotTypeField', { cityssm.openHtmlModal('adminLotTypes-addLotTypeField', {
onshow(modalElement) { onshow(modalElement) {
los.populateAliases(modalElement); los.populateAliases(modalElement);
@ -243,6 +244,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
}, lotTypeResponseHandler); }, lotTypeResponseHandler);
} }
function renderLotTypeFields(panelElement, lotTypeId, lotTypeFields) { function renderLotTypeFields(panelElement, lotTypeId, lotTypeFields) {
var _a;
if (lotTypeFields.length === 0) { if (lotTypeFields.length === 0) {
panelElement.insertAdjacentHTML('beforeend', '<div class="panel-block is-block' + panelElement.insertAdjacentHTML('beforeend', '<div class="panel-block is-block' +
(expandedLotTypes.has(lotTypeId) ? '' : ' is-hidden') + (expandedLotTypes.has(lotTypeId) ? '' : ' is-hidden') +
@ -267,7 +269,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
'<div class="level-left">' + '<div class="level-left">' +
('<div class="level-item">' + ('<div class="level-item">' +
'<a class="has-text-weight-bold button--editLotTypeField" href="#">' + '<a class="has-text-weight-bold button--editLotTypeField" href="#">' +
cityssm.escapeHTML(lotTypeField.lotTypeField || '') + cityssm.escapeHTML((_a = lotTypeField.lotTypeField) !== null && _a !== void 0 ? _a : '') +
'</a>' + '</a>' +
'</div>') + '</div>') +
'</div>' + '</div>' +
@ -326,7 +328,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
'<button class="button is-primary is-small button--editLotType" type="button">' + '<button class="button is-primary is-small button--editLotType" type="button">' +
'<span class="icon is-small"><i class="fas fa-pencil-alt" aria-hidden="true"></i></span>' + '<span class="icon is-small"><i class="fas fa-pencil-alt" aria-hidden="true"></i></span>' +
'<span>Edit ' + '<span>Edit ' +
exports.aliases.lot + los.escapedAliases.Lot +
' Type</span>' + ' Type</span>' +
'</button>' + '</button>' +
'</div>') + '</div>') +
@ -367,6 +369,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
function doAdd(submitEvent) { function doAdd(submitEvent) {
submitEvent.preventDefault(); submitEvent.preventDefault();
cityssm.postJSON(los.urlPrefix + '/admin/doAddLotType', submitEvent.currentTarget, (responseJSON) => { cityssm.postJSON(los.urlPrefix + '/admin/doAddLotType', submitEvent.currentTarget, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
addCloseModalFunction(); addCloseModalFunction();
lotTypes = responseJSON.lotTypes; lotTypes = responseJSON.lotTypes;
@ -375,7 +378,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: `Error Adding ${los.escapedAliases.Lot} Type`, title: `Error Adding ${los.escapedAliases.Lot} Type`,
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }

View File

@ -9,7 +9,6 @@ import type { BulmaJS } from '@cityssm/bulma-js/types'
declare const cityssm: cityssmGlobal declare const cityssm: cityssmGlobal
declare const bulmaJS: BulmaJS declare const bulmaJS: BulmaJS
;(() => { ;(() => {
const los = exports.los as globalTypes.LOS const los = exports.los as globalTypes.LOS
@ -22,7 +21,7 @@ declare const bulmaJS: BulmaJS
const expandedLotTypes = new Set<number>() const expandedLotTypes = new Set<number>()
function toggleLotTypeFields(clickEvent: Event) { function toggleLotTypeFields(clickEvent: Event): void {
const toggleButtonElement = clickEvent.currentTarget as HTMLButtonElement const toggleButtonElement = clickEvent.currentTarget as HTMLButtonElement
const lotTypeElement = toggleButtonElement.closest( const lotTypeElement = toggleButtonElement.closest(
@ -52,20 +51,20 @@ declare const bulmaJS: BulmaJS
success: boolean success: boolean
errorMessage?: string errorMessage?: string
lotTypes?: recordTypes.LotType[] lotTypes?: recordTypes.LotType[]
}) { }): void {
if (responseJSON.success) { if (responseJSON.success) {
lotTypes = responseJSON.lotTypes! lotTypes = responseJSON.lotTypes!
renderLotTypes() renderLotTypes()
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: `Error Updating ${exports.aliases.lot} Type`, title: `Error Updating ${los.escapedAliases.Lot} Type`,
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
} }
function deleteLotType(clickEvent: Event) { function deleteLotType(clickEvent: Event): void {
const lotTypeId = Number.parseInt( const lotTypeId = Number.parseInt(
( (
(clickEvent.currentTarget as HTMLElement).closest( (clickEvent.currentTarget as HTMLElement).closest(
@ -75,7 +74,7 @@ declare const bulmaJS: BulmaJS
10 10
) )
function doDelete() { function doDelete(): void {
cityssm.postJSON( cityssm.postJSON(
los.urlPrefix + '/admin/doDeleteLotType', los.urlPrefix + '/admin/doDeleteLotType',
{ {
@ -86,17 +85,17 @@ declare const bulmaJS: BulmaJS
} }
bulmaJS.confirm({ bulmaJS.confirm({
title: `Delete ${exports.aliases.lot} Type`, title: `Delete ${los.escapedAliases.Lot} Type`,
message: `Are you sure you want to delete this ${exports.aliases.lot.toLowerCase()} type?`, message: `Are you sure you want to delete this ${los.escapedAliases.lot} type?`,
contextualColorName: 'warning', contextualColorName: 'warning',
okButton: { okButton: {
text: `Yes, Delete ${exports.aliases.lot} Type`, text: `Yes, Delete ${los.escapedAliases.Lot} Type`,
callbackFunction: doDelete callbackFunction: doDelete
} }
}) })
} }
function openEditLotType(clickEvent: Event) { function openEditLotType(clickEvent: Event): void {
const lotTypeId = Number.parseInt( const lotTypeId = Number.parseInt(
( (
(clickEvent.currentTarget as HTMLElement).closest( (clickEvent.currentTarget as HTMLElement).closest(
@ -112,7 +111,7 @@ declare const bulmaJS: BulmaJS
let editCloseModalFunction: () => void let editCloseModalFunction: () => void
const doEdit = (submitEvent: SubmitEvent) => { function doEdit(submitEvent: SubmitEvent): void {
submitEvent.preventDefault() submitEvent.preventDefault()
cityssm.postJSON( cityssm.postJSON(
@ -134,13 +133,11 @@ declare const bulmaJS: BulmaJS
cityssm.openHtmlModal('adminLotTypes-editLotType', { cityssm.openHtmlModal('adminLotTypes-editLotType', {
onshow(modalElement) { onshow(modalElement) {
los.populateAliases(modalElement) los.populateAliases(modalElement)
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#lotTypeEdit--lotTypeId' '#lotTypeEdit--lotTypeId'
) as HTMLInputElement ) as HTMLInputElement
).value = lotTypeId.toString() ).value = lotTypeId.toString()
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#lotTypeEdit--lotType' '#lotTypeEdit--lotType'
@ -149,7 +146,6 @@ declare const bulmaJS: BulmaJS
}, },
onshown(modalElement, closeModalFunction) { onshown(modalElement, closeModalFunction) {
editCloseModalFunction = closeModalFunction editCloseModalFunction = closeModalFunction
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#lotTypeEdit--lotType' '#lotTypeEdit--lotType'
@ -166,7 +162,7 @@ declare const bulmaJS: BulmaJS
}) })
} }
function openAddLotTypeField(clickEvent: Event) { function openAddLotTypeField(clickEvent: Event): void {
const lotTypeId = Number.parseInt( const lotTypeId = Number.parseInt(
( (
(clickEvent.currentTarget as HTMLElement).closest( (clickEvent.currentTarget as HTMLElement).closest(
@ -178,7 +174,7 @@ declare const bulmaJS: BulmaJS
let addCloseModalFunction: () => void let addCloseModalFunction: () => void
const doAdd = (submitEvent: SubmitEvent) => { function doAdd(submitEvent: SubmitEvent): void {
submitEvent.preventDefault() submitEvent.preventDefault()
cityssm.postJSON( cityssm.postJSON(
@ -215,7 +211,6 @@ declare const bulmaJS: BulmaJS
}, },
onshown(modalElement, closeModalFunction) { onshown(modalElement, closeModalFunction) {
addCloseModalFunction = closeModalFunction addCloseModalFunction = closeModalFunction
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#lotTypeFieldAdd--lotTypeField' '#lotTypeFieldAdd--lotTypeField'
@ -232,7 +227,7 @@ declare const bulmaJS: BulmaJS
}) })
} }
function moveLotType(clickEvent: MouseEvent) { function moveLotType(clickEvent: MouseEvent): void {
const buttonElement = clickEvent.currentTarget as HTMLButtonElement const buttonElement = clickEvent.currentTarget as HTMLButtonElement
const lotTypeId = ( const lotTypeId = (
@ -253,7 +248,10 @@ declare const bulmaJS: BulmaJS
) )
} }
function openEditLotTypeField(lotTypeId: number, lotTypeFieldId: number) { function openEditLotTypeField(
lotTypeId: number,
lotTypeFieldId: number
): void {
const lotType = lotTypes.find((currentLotType) => { const lotType = lotTypes.find((currentLotType) => {
return currentLotType.lotTypeId === lotTypeId return currentLotType.lotTypeId === lotTypeId
})! })!
@ -269,11 +267,11 @@ declare const bulmaJS: BulmaJS
let editCloseModalFunction: () => void let editCloseModalFunction: () => void
function updateMaximumLengthMin() { function updateMaximumLengthMin(): void {
maximumLengthElement.min = minimumLengthElement.value maximumLengthElement.min = minimumLengthElement.value
} }
function toggleInputFields() { function toggleInputFields(): void {
if (lotTypeFieldValuesElement.value === '') { if (lotTypeFieldValuesElement.value === '') {
minimumLengthElement.disabled = false minimumLengthElement.disabled = false
maximumLengthElement.disabled = false maximumLengthElement.disabled = false
@ -285,7 +283,7 @@ declare const bulmaJS: BulmaJS
} }
} }
function doUpdate(submitEvent: SubmitEvent) { function doUpdate(submitEvent: SubmitEvent): void {
submitEvent.preventDefault() submitEvent.preventDefault()
cityssm.postJSON( cityssm.postJSON(
@ -304,7 +302,7 @@ declare const bulmaJS: BulmaJS
) )
} }
function doDelete() { function doDelete(): void {
cityssm.postJSON( cityssm.postJSON(
los.urlPrefix + '/admin/doDeleteLotTypeField', los.urlPrefix + '/admin/doDeleteLotTypeField',
{ {
@ -323,7 +321,7 @@ declare const bulmaJS: BulmaJS
) )
} }
function confirmDoDelete() { function confirmDoDelete(): void {
bulmaJS.confirm({ bulmaJS.confirm({
title: 'Delete Field', title: 'Delete Field',
message: message:
@ -339,19 +337,16 @@ declare const bulmaJS: BulmaJS
cityssm.openHtmlModal('adminLotTypes-editLotTypeField', { cityssm.openHtmlModal('adminLotTypes-editLotTypeField', {
onshow(modalElement) { onshow(modalElement) {
los.populateAliases(modalElement) los.populateAliases(modalElement)
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#lotTypeFieldEdit--lotTypeFieldId' '#lotTypeFieldEdit--lotTypeFieldId'
) as HTMLInputElement ) as HTMLInputElement
).value = lotTypeField.lotTypeFieldId.toString() ).value = lotTypeField.lotTypeFieldId.toString()
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#lotTypeFieldEdit--lotTypeField' '#lotTypeFieldEdit--lotTypeField'
) as HTMLInputElement ) as HTMLInputElement
).value = lotTypeField.lotTypeField! ).value = lotTypeField.lotTypeField!
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#lotTypeFieldEdit--isRequired' '#lotTypeFieldEdit--isRequired'
@ -409,7 +404,7 @@ declare const bulmaJS: BulmaJS
}) })
} }
function openEditLotTypeFieldByClick(clickEvent: Event) { function openEditLotTypeFieldByClick(clickEvent: Event): void {
clickEvent.preventDefault() clickEvent.preventDefault()
const lotTypeFieldId = Number.parseInt( const lotTypeFieldId = Number.parseInt(
@ -433,7 +428,7 @@ declare const bulmaJS: BulmaJS
openEditLotTypeField(lotTypeId, lotTypeFieldId) openEditLotTypeField(lotTypeId, lotTypeFieldId)
} }
function moveLotTypeField(clickEvent: MouseEvent) { function moveLotTypeField(clickEvent: MouseEvent): void {
const buttonElement = clickEvent.currentTarget as HTMLButtonElement const buttonElement = clickEvent.currentTarget as HTMLButtonElement
const lotTypeFieldId = ( const lotTypeFieldId = (
@ -458,7 +453,7 @@ declare const bulmaJS: BulmaJS
panelElement: HTMLElement, panelElement: HTMLElement,
lotTypeId: number, lotTypeId: number,
lotTypeFields: recordTypes.LotTypeField[] lotTypeFields: recordTypes.LotTypeField[]
) { ): void {
if (lotTypeFields.length === 0) { if (lotTypeFields.length === 0) {
panelElement.insertAdjacentHTML( panelElement.insertAdjacentHTML(
'beforeend', 'beforeend',
@ -488,7 +483,7 @@ declare const bulmaJS: BulmaJS
'<div class="level-left">' + '<div class="level-left">' +
('<div class="level-item">' + ('<div class="level-item">' +
'<a class="has-text-weight-bold button--editLotTypeField" href="#">' + '<a class="has-text-weight-bold button--editLotTypeField" href="#">' +
cityssm.escapeHTML(lotTypeField.lotTypeField || '') + cityssm.escapeHTML(lotTypeField.lotTypeField ?? '') +
'</a>' + '</a>' +
'</div>') + '</div>') +
'</div>' + '</div>' +
@ -505,13 +500,11 @@ declare const bulmaJS: BulmaJS
panelBlockElement panelBlockElement
.querySelector('.button--editLotTypeField')! .querySelector('.button--editLotTypeField')!
.addEventListener('click', openEditLotTypeFieldByClick) .addEventListener('click', openEditLotTypeFieldByClick)
;( ;(
panelBlockElement.querySelector( panelBlockElement.querySelector(
'.button--moveLotTypeFieldUp' '.button--moveLotTypeFieldUp'
) as HTMLButtonElement ) as HTMLButtonElement
).addEventListener('click', moveLotTypeField) ).addEventListener('click', moveLotTypeField)
;( ;(
panelBlockElement.querySelector( panelBlockElement.querySelector(
'.button--moveLotTypeFieldDown' '.button--moveLotTypeFieldDown'
@ -523,7 +516,7 @@ declare const bulmaJS: BulmaJS
} }
} }
function renderLotTypes() { function renderLotTypes(): void {
containerElement.innerHTML = '' containerElement.innerHTML = ''
if (lotTypes.length === 0) { if (lotTypes.length === 0) {
@ -572,7 +565,7 @@ declare const bulmaJS: BulmaJS
'<button class="button is-primary is-small button--editLotType" type="button">' + '<button class="button is-primary is-small button--editLotType" type="button">' +
'<span class="icon is-small"><i class="fas fa-pencil-alt" aria-hidden="true"></i></span>' + '<span class="icon is-small"><i class="fas fa-pencil-alt" aria-hidden="true"></i></span>' +
'<span>Edit ' + '<span>Edit ' +
exports.aliases.lot + los.escapedAliases.Lot +
' Type</span>' + ' Type</span>' +
'</button>' + '</button>' +
'</div>') + '</div>') +
@ -613,13 +606,11 @@ declare const bulmaJS: BulmaJS
lotTypeContainer lotTypeContainer
.querySelector('.button--addLotTypeField')! .querySelector('.button--addLotTypeField')!
.addEventListener('click', openAddLotTypeField) .addEventListener('click', openAddLotTypeField)
;( ;(
lotTypeContainer.querySelector( lotTypeContainer.querySelector(
'.button--moveLotTypeUp' '.button--moveLotTypeUp'
) as HTMLButtonElement ) as HTMLButtonElement
).addEventListener('click', moveLotType) ).addEventListener('click', moveLotType)
;( ;(
lotTypeContainer.querySelector( lotTypeContainer.querySelector(
'.button--moveLotTypeDown' '.button--moveLotTypeDown'
@ -653,7 +644,7 @@ declare const bulmaJS: BulmaJS
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: `Error Adding ${los.escapedAliases.Lot} Type`, title: `Error Adding ${los.escapedAliases.Lot} Type`,
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
@ -667,7 +658,6 @@ declare const bulmaJS: BulmaJS
}, },
onshown(modalElement, closeModalFunction) { onshown(modalElement, closeModalFunction) {
addCloseModalFunction = closeModalFunction addCloseModalFunction = closeModalFunction
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#lotTypeAdd--lotType' '#lotTypeAdd--lotType'

View File

@ -29,6 +29,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
} }
} }
function occupancyTypeResponseHandler(responseJSON) { function occupancyTypeResponseHandler(responseJSON) {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
occupancyTypes = responseJSON.occupancyTypes; occupancyTypes = responseJSON.occupancyTypes;
allOccupancyTypeFields = responseJSON.allOccupancyTypeFields; allOccupancyTypeFields = responseJSON.allOccupancyTypeFields;
@ -36,8 +37,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
} }
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Updating ' + exports.aliases.occupancy + ' Type', title: 'Error Updating ' + los.escapedAliases.Occupancy + ' Type',
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }
@ -50,11 +51,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
}, occupancyTypeResponseHandler); }, occupancyTypeResponseHandler);
} }
bulmaJS.confirm({ bulmaJS.confirm({
title: `Delete ${exports.aliases.occupancy} Type`, title: `Delete ${los.escapedAliases.Occupancy} Type`,
message: `Are you sure you want to delete this ${exports.aliases.occupancy.toLowerCase()} type?`, message: `Are you sure you want to delete this ${los.escapedAliases.occupancy} type?`,
contextualColorName: 'warning', contextualColorName: 'warning',
okButton: { okButton: {
text: `Yes, Delete ${exports.aliases.occupancy} Type`, text: `Yes, Delete ${los.escapedAliases.Occupancy} Type`,
callbackFunction: doDelete callbackFunction: doDelete
} }
}); });
@ -255,6 +256,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
}, occupancyTypeResponseHandler); }, occupancyTypeResponseHandler);
} }
function renderOccupancyTypeFields(panelElement, occupancyTypeId, occupancyTypeFields) { function renderOccupancyTypeFields(panelElement, occupancyTypeId, occupancyTypeFields) {
var _a;
if (occupancyTypeFields.length === 0) { if (occupancyTypeFields.length === 0) {
panelElement.insertAdjacentHTML('beforeend', '<div class="panel-block is-block' + panelElement.insertAdjacentHTML('beforeend', '<div class="panel-block is-block' +
(!occupancyTypeId || expandedOccupancyTypes.has(occupancyTypeId) (!occupancyTypeId || expandedOccupancyTypes.has(occupancyTypeId)
@ -281,7 +283,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
'<div class="level-left">' + '<div class="level-left">' +
('<div class="level-item">' + ('<div class="level-item">' +
'<a class="has-text-weight-bold button--editOccupancyTypeField" href="#">' + '<a class="has-text-weight-bold button--editOccupancyTypeField" href="#">' +
cityssm.escapeHTML(occupancyTypeField.occupancyTypeField || '') + cityssm.escapeHTML((_a = occupancyTypeField.occupancyTypeField) !== null && _a !== void 0 ? _a : '') +
'</a>' + '</a>' +
'</div>') + '</div>') +
'</div>' + '</div>' +
@ -494,7 +496,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
'<button class="button is-primary is-small button--editOccupancyType" type="button">' + '<button class="button is-primary is-small button--editOccupancyType" type="button">' +
'<span class="icon is-small"><i class="fas fa-pencil-alt" aria-hidden="true"></i></span>' + '<span class="icon is-small"><i class="fas fa-pencil-alt" aria-hidden="true"></i></span>' +
'<span>Edit ' + '<span>Edit ' +
exports.aliases.occupancy + los.escapedAliases.Occupancy +
' Type</span>' + ' Type</span>' +
'</button>' + '</button>' +
'</div>') + '</div>') +
@ -566,9 +568,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
.querySelector('#button--addOccupancyType') .querySelector('#button--addOccupancyType')
.addEventListener('click', () => { .addEventListener('click', () => {
let addCloseModalFunction; let addCloseModalFunction;
const doAdd = (submitEvent) => { function doAdd(submitEvent) {
submitEvent.preventDefault(); submitEvent.preventDefault();
cityssm.postJSON(los.urlPrefix + '/admin/doAddOccupancyType', submitEvent.currentTarget, (responseJSON) => { cityssm.postJSON(los.urlPrefix + '/admin/doAddOccupancyType', submitEvent.currentTarget, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
addCloseModalFunction(); addCloseModalFunction();
occupancyTypes = responseJSON.occupancyTypes; occupancyTypes = responseJSON.occupancyTypes;
@ -576,13 +579,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
} }
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Adding ' + exports.aliases.occupancy + ' Type', title: `Error Adding ${los.escapedAliases.Occupancy} Type`,
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }
}); });
}; }
cityssm.openHtmlModal('adminOccupancyTypes-addOccupancyType', { cityssm.openHtmlModal('adminOccupancyTypes-addOccupancyType', {
onshow: (modalElement) => { onshow: (modalElement) => {
los.populateAliases(modalElement); los.populateAliases(modalElement);

View File

@ -9,7 +9,6 @@ import type { BulmaJS } from '@cityssm/bulma-js/types'
declare const cityssm: cityssmGlobal declare const cityssm: cityssmGlobal
declare const bulmaJS: BulmaJS declare const bulmaJS: BulmaJS
;(() => { ;(() => {
const los = exports.los as globalTypes.LOS const los = exports.los as globalTypes.LOS
@ -65,21 +64,21 @@ declare const bulmaJS: BulmaJS
errorMessage?: string errorMessage?: string
occupancyTypes?: recordTypes.OccupancyType[] occupancyTypes?: recordTypes.OccupancyType[]
allOccupancyTypeFields?: recordTypes.OccupancyTypeField[] allOccupancyTypeFields?: recordTypes.OccupancyTypeField[]
}) { }): void {
if (responseJSON.success) { if (responseJSON.success) {
occupancyTypes = responseJSON.occupancyTypes! occupancyTypes = responseJSON.occupancyTypes!
allOccupancyTypeFields = responseJSON.allOccupancyTypeFields! allOccupancyTypeFields = responseJSON.allOccupancyTypeFields!
renderOccupancyTypes() renderOccupancyTypes()
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Updating ' + exports.aliases.occupancy + ' Type', title: 'Error Updating ' + los.escapedAliases.Occupancy + ' Type',
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
} }
function deleteOccupancyType(clickEvent: Event) { function deleteOccupancyType(clickEvent: Event): void {
const occupancyTypeId = Number.parseInt( const occupancyTypeId = Number.parseInt(
( (
(clickEvent.currentTarget as HTMLElement).closest( (clickEvent.currentTarget as HTMLElement).closest(
@ -100,11 +99,11 @@ declare const bulmaJS: BulmaJS
} }
bulmaJS.confirm({ bulmaJS.confirm({
title: `Delete ${exports.aliases.occupancy} Type`, title: `Delete ${los.escapedAliases.Occupancy} Type`,
message: `Are you sure you want to delete this ${exports.aliases.occupancy.toLowerCase()} type?`, message: `Are you sure you want to delete this ${los.escapedAliases.occupancy} type?`,
contextualColorName: 'warning', contextualColorName: 'warning',
okButton: { okButton: {
text: `Yes, Delete ${exports.aliases.occupancy} Type`, text: `Yes, Delete ${los.escapedAliases.Occupancy} Type`,
callbackFunction: doDelete callbackFunction: doDelete
} }
}) })
@ -149,13 +148,11 @@ declare const bulmaJS: BulmaJS
cityssm.openHtmlModal('adminOccupancyTypes-editOccupancyType', { cityssm.openHtmlModal('adminOccupancyTypes-editOccupancyType', {
onshow(modalElement): void { onshow(modalElement): void {
los.populateAliases(modalElement) los.populateAliases(modalElement)
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#occupancyTypeEdit--occupancyTypeId' '#occupancyTypeEdit--occupancyTypeId'
) as HTMLInputElement ) as HTMLInputElement
).value = occupancyTypeId.toString() ).value = occupancyTypeId.toString()
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#occupancyTypeEdit--occupancyType' '#occupancyTypeEdit--occupancyType'
@ -164,7 +161,6 @@ declare const bulmaJS: BulmaJS
}, },
onshown(modalElement, closeModalFunction) { onshown(modalElement, closeModalFunction) {
editCloseModalFunction = closeModalFunction editCloseModalFunction = closeModalFunction
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#occupancyTypeEdit--occupancyType' '#occupancyTypeEdit--occupancyType'
@ -181,7 +177,7 @@ declare const bulmaJS: BulmaJS
}) })
} }
function openAddOccupancyTypeField(clickEvent: Event) { function openAddOccupancyTypeField(clickEvent: Event): void {
const occupancyTypeId = Number.parseInt( const occupancyTypeId = Number.parseInt(
( (
(clickEvent.currentTarget as HTMLElement).closest( (clickEvent.currentTarget as HTMLElement).closest(
@ -193,7 +189,7 @@ declare const bulmaJS: BulmaJS
let addCloseModalFunction: () => void let addCloseModalFunction: () => void
function doAdd(submitEvent: SubmitEvent) { function doAdd(submitEvent: SubmitEvent): void {
submitEvent.preventDefault() submitEvent.preventDefault()
cityssm.postJSON( cityssm.postJSON(
@ -234,7 +230,6 @@ declare const bulmaJS: BulmaJS
}, },
onshown(modalElement, closeModalFunction) { onshown(modalElement, closeModalFunction) {
addCloseModalFunction = closeModalFunction addCloseModalFunction = closeModalFunction
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#occupancyTypeFieldAdd--occupancyTypeField' '#occupancyTypeFieldAdd--occupancyTypeField'
@ -251,7 +246,7 @@ declare const bulmaJS: BulmaJS
}) })
} }
function moveOccupancyType(clickEvent: MouseEvent) { function moveOccupancyType(clickEvent: MouseEvent): void {
const buttonElement = clickEvent.currentTarget as HTMLButtonElement const buttonElement = clickEvent.currentTarget as HTMLButtonElement
const occupancyTypeId = ( const occupancyTypeId = (
@ -277,7 +272,7 @@ declare const bulmaJS: BulmaJS
function openEditOccupancyTypeField( function openEditOccupancyTypeField(
occupancyTypeId: number, occupancyTypeId: number,
occupancyTypeFieldId: number occupancyTypeFieldId: number
) { ): void {
let occupancyType: recordTypes.OccupancyType | undefined let occupancyType: recordTypes.OccupancyType | undefined
if (occupancyTypeId) { if (occupancyTypeId) {
@ -338,7 +333,7 @@ declare const bulmaJS: BulmaJS
) )
} }
function doDelete() { function doDelete(): void {
cityssm.postJSON( cityssm.postJSON(
los.urlPrefix + '/admin/doDeleteOccupancyTypeField', los.urlPrefix + '/admin/doDeleteOccupancyTypeField',
{ {
@ -357,7 +352,7 @@ declare const bulmaJS: BulmaJS
) )
} }
function confirmDoDelete() { function confirmDoDelete(): void {
bulmaJS.confirm({ bulmaJS.confirm({
title: 'Delete Field', title: 'Delete Field',
message: message:
@ -373,19 +368,16 @@ declare const bulmaJS: BulmaJS
cityssm.openHtmlModal('adminOccupancyTypes-editOccupancyTypeField', { cityssm.openHtmlModal('adminOccupancyTypes-editOccupancyTypeField', {
onshow: (modalElement) => { onshow: (modalElement) => {
los.populateAliases(modalElement) los.populateAliases(modalElement)
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#occupancyTypeFieldEdit--occupancyTypeFieldId' '#occupancyTypeFieldEdit--occupancyTypeFieldId'
) as HTMLInputElement ) as HTMLInputElement
).value = occupancyTypeField.occupancyTypeFieldId!.toString() ).value = occupancyTypeField.occupancyTypeFieldId!.toString()
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#occupancyTypeFieldEdit--occupancyTypeField' '#occupancyTypeFieldEdit--occupancyTypeField'
) as HTMLInputElement ) as HTMLInputElement
).value = occupancyTypeField.occupancyTypeField! ).value = occupancyTypeField.occupancyTypeField!
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#occupancyTypeFieldEdit--isRequired' '#occupancyTypeFieldEdit--isRequired'
@ -449,7 +441,7 @@ declare const bulmaJS: BulmaJS
}) })
} }
function openEditOccupancyTypeFieldByClick(clickEvent: Event) { function openEditOccupancyTypeFieldByClick(clickEvent: Event): void {
clickEvent.preventDefault() clickEvent.preventDefault()
const occupancyTypeFieldId = Number.parseInt( const occupancyTypeFieldId = Number.parseInt(
@ -473,7 +465,7 @@ declare const bulmaJS: BulmaJS
openEditOccupancyTypeField(occupancyTypeId, occupancyTypeFieldId) openEditOccupancyTypeField(occupancyTypeId, occupancyTypeFieldId)
} }
function moveOccupancyTypeField(clickEvent: MouseEvent) { function moveOccupancyTypeField(clickEvent: MouseEvent): void {
const buttonElement = clickEvent.currentTarget as HTMLButtonElement const buttonElement = clickEvent.currentTarget as HTMLButtonElement
const occupancyTypeFieldId = ( const occupancyTypeFieldId = (
@ -500,7 +492,7 @@ declare const bulmaJS: BulmaJS
panelElement: HTMLElement, panelElement: HTMLElement,
occupancyTypeId: number | undefined, occupancyTypeId: number | undefined,
occupancyTypeFields: recordTypes.OccupancyTypeField[] occupancyTypeFields: recordTypes.OccupancyTypeField[]
) { ): void {
if (occupancyTypeFields.length === 0) { if (occupancyTypeFields.length === 0) {
panelElement.insertAdjacentHTML( panelElement.insertAdjacentHTML(
'beforeend', 'beforeend',
@ -532,7 +524,7 @@ declare const bulmaJS: BulmaJS
'<div class="level-left">' + '<div class="level-left">' +
('<div class="level-item">' + ('<div class="level-item">' +
'<a class="has-text-weight-bold button--editOccupancyTypeField" href="#">' + '<a class="has-text-weight-bold button--editOccupancyTypeField" href="#">' +
cityssm.escapeHTML(occupancyTypeField.occupancyTypeField || '') + cityssm.escapeHTML(occupancyTypeField.occupancyTypeField ?? '') +
'</a>' + '</a>' +
'</div>') + '</div>') +
'</div>' + '</div>' +
@ -549,13 +541,11 @@ declare const bulmaJS: BulmaJS
panelBlockElement panelBlockElement
.querySelector('.button--editOccupancyTypeField')! .querySelector('.button--editOccupancyTypeField')!
.addEventListener('click', openEditOccupancyTypeFieldByClick) .addEventListener('click', openEditOccupancyTypeFieldByClick)
;( ;(
panelBlockElement.querySelector( panelBlockElement.querySelector(
'.button--moveOccupancyTypeFieldUp' '.button--moveOccupancyTypeFieldUp'
) as HTMLButtonElement ) as HTMLButtonElement
).addEventListener('click', moveOccupancyTypeField) ).addEventListener('click', moveOccupancyTypeField)
;( ;(
panelBlockElement.querySelector( panelBlockElement.querySelector(
'.button--moveOccupancyTypeFieldDown' '.button--moveOccupancyTypeFieldDown'
@ -576,7 +566,7 @@ declare const bulmaJS: BulmaJS
let closeAddModalFunction: () => void let closeAddModalFunction: () => void
function doAdd(formEvent: SubmitEvent) { function doAdd(formEvent: SubmitEvent): void {
formEvent.preventDefault() formEvent.preventDefault()
cityssm.postJSON( cityssm.postJSON(
@ -600,7 +590,6 @@ declare const bulmaJS: BulmaJS
cityssm.openHtmlModal('adminOccupancyTypes-addOccupancyTypePrint', { cityssm.openHtmlModal('adminOccupancyTypes-addOccupancyTypePrint', {
onshow(modalElement) { onshow(modalElement) {
los.populateAliases(modalElement) los.populateAliases(modalElement)
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#occupancyTypePrintAdd--occupancyTypeId' '#occupancyTypePrintAdd--occupancyTypeId'
@ -669,7 +658,7 @@ declare const bulmaJS: BulmaJS
) as HTMLElement ) as HTMLElement
).dataset.occupancyTypeId ).dataset.occupancyTypeId
function doDelete() { function doDelete(): void {
cityssm.postJSON( cityssm.postJSON(
los.urlPrefix + '/admin/doDeleteOccupancyTypePrint', los.urlPrefix + '/admin/doDeleteOccupancyTypePrint',
{ {
@ -753,13 +742,11 @@ declare const bulmaJS: BulmaJS
'</div>') + '</div>') +
'</div>' + '</div>' +
'</div>' '</div>'
;( ;(
panelBlockElement.querySelector( panelBlockElement.querySelector(
'.button--moveOccupancyTypePrintUp' '.button--moveOccupancyTypePrintUp'
) as HTMLButtonElement ) as HTMLButtonElement
).addEventListener('click', moveOccupancyTypePrint) ).addEventListener('click', moveOccupancyTypePrint)
;( ;(
panelBlockElement.querySelector( panelBlockElement.querySelector(
'.button--moveOccupancyTypePrintDown' '.button--moveOccupancyTypePrintDown'
@ -869,7 +856,7 @@ declare const bulmaJS: BulmaJS
'<button class="button is-primary is-small button--editOccupancyType" type="button">' + '<button class="button is-primary is-small button--editOccupancyType" type="button">' +
'<span class="icon is-small"><i class="fas fa-pencil-alt" aria-hidden="true"></i></span>' + '<span class="icon is-small"><i class="fas fa-pencil-alt" aria-hidden="true"></i></span>' +
'<span>Edit ' + '<span>Edit ' +
exports.aliases.occupancy + los.escapedAliases.Occupancy +
' Type</span>' + ' Type</span>' +
'</button>' + '</button>' +
'</div>') + '</div>') +
@ -910,13 +897,11 @@ declare const bulmaJS: BulmaJS
occupancyTypeContainer occupancyTypeContainer
.querySelector('.button--addOccupancyTypeField')! .querySelector('.button--addOccupancyTypeField')!
.addEventListener('click', openAddOccupancyTypeField) .addEventListener('click', openAddOccupancyTypeField)
;( ;(
occupancyTypeContainer.querySelector( occupancyTypeContainer.querySelector(
'.button--moveOccupancyTypeUp' '.button--moveOccupancyTypeUp'
) as HTMLButtonElement ) as HTMLButtonElement
).addEventListener('click', moveOccupancyType) ).addEventListener('click', moveOccupancyType)
;( ;(
occupancyTypeContainer.querySelector( occupancyTypeContainer.querySelector(
'.button--moveOccupancyTypeDown' '.button--moveOccupancyTypeDown'
@ -977,7 +962,7 @@ declare const bulmaJS: BulmaJS
.addEventListener('click', () => { .addEventListener('click', () => {
let addCloseModalFunction: () => void let addCloseModalFunction: () => void
const doAdd = (submitEvent: SubmitEvent) => { function doAdd(submitEvent: SubmitEvent): void {
submitEvent.preventDefault() submitEvent.preventDefault()
cityssm.postJSON( cityssm.postJSON(
@ -994,8 +979,8 @@ declare const bulmaJS: BulmaJS
renderOccupancyTypes() renderOccupancyTypes()
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Adding ' + exports.aliases.occupancy + ' Type', title: `Error Adding ${los.escapedAliases.Occupancy} Type`,
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }
@ -1009,7 +994,6 @@ declare const bulmaJS: BulmaJS
}, },
onshown: (modalElement, closeModalFunction) => { onshown: (modalElement, closeModalFunction) => {
addCloseModalFunction = closeModalFunction addCloseModalFunction = closeModalFunction
;( ;(
modalElement.querySelector( modalElement.querySelector(
'#occupancyTypeAdd--occupancyType' '#occupancyTypeAdd--occupancyType'

View File

@ -1,15 +1,13 @@
/* eslint-disable unicorn/prefer-module */ /* eslint-disable unicorn/prefer-module */
;(() => { ;(() => {
const menuTabElements = document.querySelectorAll( const menuTabElements: NodeListOf<HTMLAnchorElement> =
'.menu a' document.querySelectorAll('.menu a')
) as NodeListOf<HTMLAnchorElement>
const tabContainerElements = document.querySelectorAll( const tabContainerElements: NodeListOf<HTMLElement> =
'.tabs-container > div' document.querySelectorAll('.tabs-container > div')
) as NodeListOf<HTMLElement>
function selectTab(clickEvent: Event) { function selectTab(clickEvent: Event): void {
clickEvent.preventDefault() clickEvent.preventDefault()
// Remove .is-active from all tabs // Remove .is-active from all tabs

View File

@ -10,7 +10,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
const limit = Number.parseInt(document.querySelector('#searchFilter--limit').value, 10); const limit = Number.parseInt(document.querySelector('#searchFilter--limit').value, 10);
const offsetElement = document.querySelector('#searchFilter--offset'); const offsetElement = document.querySelector('#searchFilter--offset');
function renderWorkOrders(responseJSON) { function renderWorkOrders(responseJSON) {
var _a, _b; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
if (responseJSON.workOrders.length === 0) { if (responseJSON.workOrders.length === 0) {
searchResultsContainerElement.innerHTML = searchResultsContainerElement.innerHTML =
'<div class="message is-info">' + '<div class="message is-info">' +
@ -24,26 +24,32 @@ Object.defineProperty(exports, "__esModule", { value: true });
for (const lot of workOrder.workOrderLots) { for (const lot of workOrder.workOrderLots) {
relatedHTML += relatedHTML +=
'<span class="has-tooltip-left" data-tooltip="' + '<span class="has-tooltip-left" data-tooltip="' +
cityssm.escapeHTML(lot.mapName || '') + cityssm.escapeHTML((_a = lot.mapName) !== null && _a !== void 0 ? _a : '') +
'">' + '">' +
'<i class="fas fa-fw fa-vector-square" aria-label="' + '<i class="fas fa-fw fa-vector-square" aria-label="' +
los.escapedAliases.Lot + los.escapedAliases.Lot +
'"></i> ' + '"></i> ' +
cityssm.escapeHTML(lot.lotName || '(No ' + exports.aliases.Lot + ' Name)') + cityssm.escapeHTML(((_b = lot.lotName) !== null && _b !== void 0 ? _b : '') === ''
? '(No ' + los.escapedAliases.Lot + ' Name)'
: lot.lotName) +
'</span><br />'; '</span><br />';
} }
for (const occupancy of workOrder.workOrderLotOccupancies) { for (const occupancy of workOrder.workOrderLotOccupancies) {
for (const occupant of occupancy.lotOccupancyOccupants) { for (const occupant of occupancy.lotOccupancyOccupants) {
relatedHTML += relatedHTML +=
'<span class="has-tooltip-left" data-tooltip="' + '<span class="has-tooltip-left" data-tooltip="' +
cityssm.escapeHTML(occupant.lotOccupantType || '') + cityssm.escapeHTML((_c = occupant.lotOccupantType) !== null && _c !== void 0 ? _c : '') +
'">' + '">' +
'<i class="fas fa-fw fa-' + '<i class="fas fa-fw fa-' +
cityssm.escapeHTML(occupant.fontAwesomeIconClass || 'user') + cityssm.escapeHTML(((_d = occupant.fontAwesomeIconClass) !== null && _d !== void 0 ? _d : '') === ''
? 'user'
: occupant.fontAwesomeIconClass) +
'" aria-label="' + '" aria-label="' +
los.escapedAliases.occupant + los.escapedAliases.occupant +
'"></i> ' + '"></i> ' +
cityssm.escapeHTML(occupant.occupantName || '(No Name)') + cityssm.escapeHTML(((_e = occupant.occupantName) !== null && _e !== void 0 ? _e : '') === ''
? '(No Name)'
: occupant.occupantName) +
'</span><br />'; '</span><br />';
} }
} }
@ -53,15 +59,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
los.getWorkOrderURL(workOrder.workOrderId) + los.getWorkOrderURL(workOrder.workOrderId) +
'">' + '">' +
(workOrder.workOrderNumber.trim() (workOrder.workOrderNumber.trim()
? cityssm.escapeHTML(workOrder.workOrderNumber || '') ? cityssm.escapeHTML((_f = workOrder.workOrderNumber) !== null && _f !== void 0 ? _f : '')
: '(No Number)') + : '(No Number)') +
'</a>' + '</a>' +
'</td>') + '</td>') +
('<td>' + ('<td>' +
cityssm.escapeHTML(workOrder.workOrderType || '') + cityssm.escapeHTML((_g = workOrder.workOrderType) !== null && _g !== void 0 ? _g : '') +
'<br />' + '<br />' +
'<span class="is-size-7">' + '<span class="is-size-7">' +
cityssm.escapeHTML(workOrder.workOrderDescription || '') + cityssm.escapeHTML((_h = workOrder.workOrderDescription) !== null && _h !== void 0 ? _h : '') +
'</span>' + '</span>' +
'</td>') + '</td>') +
('<td class="is-nowrap"><span class="is-size-7">' + ('<td class="is-nowrap"><span class="is-size-7">' +
@ -126,10 +132,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
searchResultsContainerElement searchResultsContainerElement
.querySelector('table') .querySelector('table')
.append(resultsTbodyElement); .append(resultsTbodyElement);
(_a = searchResultsContainerElement (_j = searchResultsContainerElement
.querySelector("button[data-page='previous']")) === null || _a === void 0 ? void 0 : _a.addEventListener('click', previousAndGetWorkOrders); .querySelector("button[data-page='previous']")) === null || _j === void 0 ? void 0 : _j.addEventListener('click', previousAndGetWorkOrders);
(_b = searchResultsContainerElement (_k = searchResultsContainerElement
.querySelector("button[data-page='next']")) === null || _b === void 0 ? void 0 : _b.addEventListener('click', nextAndGetWorkOrders); .querySelector("button[data-page='next']")) === null || _k === void 0 ? void 0 : _k.addEventListener('click', nextAndGetWorkOrders);
} }
function getWorkOrders() { function getWorkOrders() {
searchResultsContainerElement.innerHTML = los.getLoadingParagraphHTML('Loading Work Orders...'); searchResultsContainerElement.innerHTML = los.getLoadingParagraphHTML('Loading Work Orders...');

View File

@ -5,7 +5,6 @@ import type * as globalTypes from '../types/globalTypes'
import type { cityssmGlobal } from '@cityssm/bulma-webapp-js/src/types' import type { cityssmGlobal } from '@cityssm/bulma-webapp-js/src/types'
declare const cityssm: cityssmGlobal declare const cityssm: cityssmGlobal
;(() => { ;(() => {
const los = exports.los as globalTypes.LOS const los = exports.los as globalTypes.LOS
@ -34,7 +33,7 @@ declare const cityssm: cityssmGlobal
count: number count: number
offset: number offset: number
workOrders: recordTypes.WorkOrder[] workOrders: recordTypes.WorkOrder[]
}) { }): void {
if (responseJSON.workOrders.length === 0) { if (responseJSON.workOrders.length === 0) {
searchResultsContainerElement.innerHTML = searchResultsContainerElement.innerHTML =
'<div class="message is-info">' + '<div class="message is-info">' +
@ -52,13 +51,15 @@ declare const cityssm: cityssmGlobal
for (const lot of workOrder.workOrderLots!) { for (const lot of workOrder.workOrderLots!) {
relatedHTML += relatedHTML +=
'<span class="has-tooltip-left" data-tooltip="' + '<span class="has-tooltip-left" data-tooltip="' +
cityssm.escapeHTML(lot.mapName || '') + cityssm.escapeHTML(lot.mapName ?? '') +
'">' + '">' +
'<i class="fas fa-fw fa-vector-square" aria-label="' + '<i class="fas fa-fw fa-vector-square" aria-label="' +
los.escapedAliases.Lot + los.escapedAliases.Lot +
'"></i> ' + '"></i> ' +
cityssm.escapeHTML( cityssm.escapeHTML(
lot.lotName || '(No ' + exports.aliases.Lot + ' Name)' (lot.lotName ?? '') === ''
? '(No ' + los.escapedAliases.Lot + ' Name)'
: lot.lotName!
) + ) +
'</span><br />' '</span><br />'
} }
@ -67,14 +68,22 @@ declare const cityssm: cityssmGlobal
for (const occupant of occupancy.lotOccupancyOccupants!) { for (const occupant of occupancy.lotOccupancyOccupants!) {
relatedHTML += relatedHTML +=
'<span class="has-tooltip-left" data-tooltip="' + '<span class="has-tooltip-left" data-tooltip="' +
cityssm.escapeHTML(occupant.lotOccupantType || '') + cityssm.escapeHTML(occupant.lotOccupantType ?? '') +
'">' + '">' +
'<i class="fas fa-fw fa-' + '<i class="fas fa-fw fa-' +
cityssm.escapeHTML(occupant.fontAwesomeIconClass || 'user') + cityssm.escapeHTML(
(occupant.fontAwesomeIconClass ?? '') === ''
? 'user'
: occupant.fontAwesomeIconClass!
) +
'" aria-label="' + '" aria-label="' +
los.escapedAliases.occupant + los.escapedAliases.occupant +
'"></i> ' + '"></i> ' +
cityssm.escapeHTML(occupant.occupantName || '(No Name)') + cityssm.escapeHTML(
(occupant.occupantName ?? '') === ''
? '(No Name)'
: occupant.occupantName!
) +
'</span><br />' '</span><br />'
} }
} }
@ -84,18 +93,18 @@ declare const cityssm: cityssmGlobal
'<tr>' + '<tr>' +
('<td>' + ('<td>' +
'<a class="has-text-weight-bold" href="' + '<a class="has-text-weight-bold" href="' +
los.getWorkOrderURL(workOrder.workOrderId!) + los.getWorkOrderURL(workOrder.workOrderId) +
'">' + '">' +
(workOrder.workOrderNumber!.trim() (workOrder.workOrderNumber!.trim()
? cityssm.escapeHTML(workOrder.workOrderNumber || '') ? cityssm.escapeHTML(workOrder.workOrderNumber ?? '')
: '(No Number)') + : '(No Number)') +
'</a>' + '</a>' +
'</td>') + '</td>') +
('<td>' + ('<td>' +
cityssm.escapeHTML(workOrder.workOrderType || '') + cityssm.escapeHTML(workOrder.workOrderType ?? '') +
'<br />' + '<br />' +
'<span class="is-size-7">' + '<span class="is-size-7">' +
cityssm.escapeHTML(workOrder.workOrderDescription || '') + cityssm.escapeHTML(workOrder.workOrderDescription ?? '') +
'</span>' + '</span>' +
'</td>') + '</td>') +
('<td class="is-nowrap"><span class="is-size-7">' + ('<td class="is-nowrap"><span class="is-size-7">' +
@ -181,7 +190,7 @@ declare const cityssm: cityssmGlobal
?.addEventListener('click', nextAndGetWorkOrders) ?.addEventListener('click', nextAndGetWorkOrders)
} }
function getWorkOrders() { function getWorkOrders(): void {
searchResultsContainerElement.innerHTML = los.getLoadingParagraphHTML( searchResultsContainerElement.innerHTML = los.getLoadingParagraphHTML(
'Loading Work Orders...' 'Loading Work Orders...'
) )
@ -193,12 +202,12 @@ declare const cityssm: cityssmGlobal
) )
} }
function resetOffsetAndGetWorkOrders() { function resetOffsetAndGetWorkOrders(): void {
offsetElement.value = '0' offsetElement.value = '0'
getWorkOrders() getWorkOrders()
} }
function previousAndGetWorkOrders() { function previousAndGetWorkOrders(): void {
offsetElement.value = Math.max( offsetElement.value = Math.max(
Number.parseInt(offsetElement.value, 10) - limit, Number.parseInt(offsetElement.value, 10) - limit,
0 0
@ -206,16 +215,15 @@ declare const cityssm: cityssmGlobal
getWorkOrders() getWorkOrders()
} }
function nextAndGetWorkOrders() { function nextAndGetWorkOrders(): void {
offsetElement.value = ( offsetElement.value = (
Number.parseInt(offsetElement.value, 10) + limit Number.parseInt(offsetElement.value, 10) + limit
).toString() ).toString()
getWorkOrders() getWorkOrders()
} }
const filterElements = searchFilterFormElement.querySelectorAll( const filterElements =
'input, select' searchFilterFormElement.querySelectorAll('input, select')
) as NodeListOf<HTMLInputElement | HTMLSelectElement>
for (const filterElement of filterElements) { for (const filterElement of filterElements) {
filterElement.addEventListener('change', resetOffsetAndGetWorkOrders) filterElement.addEventListener('change', resetOffsetAndGetWorkOrders)

View File

@ -11,13 +11,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
cityssm.postJSON(los.urlPrefix + '/workOrders/doReopenWorkOrder', { cityssm.postJSON(los.urlPrefix + '/workOrders/doReopenWorkOrder', {
workOrderId workOrderId
}, (responseJSON) => { }, (responseJSON) => {
var _a;
if (responseJSON.success) { if (responseJSON.success) {
window.location.href = los.getWorkOrderURL(workOrderId, true, true); window.location.href = los.getWorkOrderURL(workOrderId, true, true);
} }
else { else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Reopening Work Order', title: 'Error Reopening Work Order',
message: responseJSON.errorMessage || '', message: (_a = responseJSON.errorMessage) !== null && _a !== void 0 ? _a : '',
contextualColorName: 'danger' contextualColorName: 'danger'
}); });
} }

View File

@ -8,7 +8,6 @@ import type { BulmaJS } from '@cityssm/bulma-js/types'
declare const cityssm: cityssmGlobal declare const cityssm: cityssmGlobal
declare const bulmaJS: BulmaJS declare const bulmaJS: BulmaJS
;(() => { ;(() => {
const los = exports.los as globalTypes.LOS const los = exports.los as globalTypes.LOS
@ -20,7 +19,7 @@ declare const bulmaJS: BulmaJS
const workOrderId = reopenWorkOrderButtonElement.dataset.workOrderId! const workOrderId = reopenWorkOrderButtonElement.dataset.workOrderId!
reopenWorkOrderButtonElement.addEventListener('click', () => { reopenWorkOrderButtonElement.addEventListener('click', () => {
function doReopen() { function doReopen(): void {
cityssm.postJSON( cityssm.postJSON(
los.urlPrefix + '/workOrders/doReopenWorkOrder', los.urlPrefix + '/workOrders/doReopenWorkOrder',
{ {
@ -36,7 +35,7 @@ declare const bulmaJS: BulmaJS
} else { } else {
bulmaJS.alert({ bulmaJS.alert({
title: 'Error Reopening Work Order', title: 'Error Reopening Work Order',
message: responseJSON.errorMessage || '', message: responseJSON.errorMessage ?? '',
contextualColorName: 'danger' contextualColorName: 'danger'
}) })
} }

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=exports.workOrderPrints,s=document.querySelector("#form--searchFilters");e.initializeDatePickers(s);const r=document.querySelector("#container--searchResults"),a=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),o=document.querySelector("#searchFilter--offset");function i(s){var o,i;if(0===s.workOrders.length)return void(r.innerHTML='<div class="message is-info"><p class="message-body">There are no work orders that meet the search criteria.</p></div>');const l=document.createElement("tbody");for(const r of s.workOrders){let s="";for(const t of r.workOrderLots)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(t.mapName||"")+'"><i class="fas fa-fw fa-vector-square" aria-label="'+e.escapedAliases.Lot+'"></i> '+cityssm.escapeHTML(t.lotName||"(No "+exports.aliases.Lot+" Name)")+"</span><br />";for(const t of r.workOrderLotOccupancies)for(const r of t.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(r.lotOccupantType||"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(r.fontAwesomeIconClass||"user")+'" aria-label="'+e.escapedAliases.occupant+'"></i> '+cityssm.escapeHTML(r.occupantName||"(No Name)")+"</span><br />";l.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getWorkOrderURL(r.workOrderId)+'">'+(r.workOrderNumber.trim()?cityssm.escapeHTML(r.workOrderNumber||""):"(No Number)")+"</a></td><td>"+cityssm.escapeHTML(r.workOrderType||"")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(r.workOrderDescription||"")+'</span></td><td class="is-nowrap"><span class="is-size-7">'+s+'</span></td><td class="is-nowrap"><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderOpenDate+'"><i class="fas fa-fw fa-play" aria-label="'+e.escapedAliases.WorkOrderOpenDate+'"></i> '+r.workOrderOpenDateString+'</span><br /><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderCloseDate+'"><i class="fas fa-fw fa-stop" aria-label="'+e.escapedAliases.WorkOrderCloseDate+'"></i> '+(r.workOrderCloseDate?r.workOrderCloseDateString:'<span class="has-text-grey">(No '+e.escapedAliases.WorkOrderCloseDate+")</span>")+"</span></td><td>"+(0===r.workOrderMilestoneCount?"-":r.workOrderMilestoneCompletionCount+" / "+r.workOrderMilestoneCount)+"</td>"+(t.length>0?'<td><a class="button is-small" data-tooltip="Print" href="'+e.urlPrefix+"/print/"+t[0]+"/?workOrderId="+r.workOrderId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a></td>':"")+"</tr>")}r.innerHTML='<table class="table is-fullwidth is-striped is-hoverable has-sticky-header"><thead><tr><th>Work Order Number</th><th>Description</th><th>Related</th><th>Date</th><th class="has-tooltip-bottom" data-tooltip="Completed / Total Milestones">Progress</th>'+(t.length>0?'<th class="has-width-1"></th>':"")+"</tr></thead><table>",r.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(a,s.offset,s.count)),r.querySelector("table").append(l),null===(o=r.querySelector("button[data-page='previous']"))||void 0===o||o.addEventListener("click",c),null===(i=r.querySelector("button[data-page='next']"))||void 0===i||i.addEventListener("click",d)}function l(){r.innerHTML=e.getLoadingParagraphHTML("Loading Work Orders..."),cityssm.postJSON(e.urlPrefix+"/workOrders/doSearchWorkOrders",s,i)}function n(){o.value="0",l()}function c(){o.value=Math.max(Number.parseInt(o.value,10)-a,0).toString(),l()}function d(){o.value=(Number.parseInt(o.value,10)+a).toString(),l()}const p=s.querySelectorAll("input, select");for(const e of p)e.addEventListener("change",n);s.addEventListener("submit",e=>{e.preventDefault(),n()}),l()})(); "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,t=exports.workOrderPrints,s=document.querySelector("#form--searchFilters");e.initializeDatePickers(s);const a=document.querySelector("#container--searchResults"),r=Number.parseInt(document.querySelector("#searchFilter--limit").value,10),o=document.querySelector("#searchFilter--offset");function l(s){var o,l,i,n,p,u,f,h,m,O;if(0===s.workOrders.length)return void(a.innerHTML='<div class="message is-info"><p class="message-body">There are no work orders that meet the search criteria.</p></div>');const k=document.createElement("tbody");for(const a of s.workOrders){let s="";for(const t of a.workOrderLots)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(o=t.mapName)&&void 0!==o?o:"")+'"><i class="fas fa-fw fa-vector-square" aria-label="'+e.escapedAliases.Lot+'"></i> '+cityssm.escapeHTML(""===(null!==(l=t.lotName)&&void 0!==l?l:"")?"(No "+e.escapedAliases.Lot+" Name)":t.lotName)+"</span><br />";for(const t of a.workOrderLotOccupancies)for(const a of t.lotOccupancyOccupants)s+='<span class="has-tooltip-left" data-tooltip="'+cityssm.escapeHTML(null!==(i=a.lotOccupantType)&&void 0!==i?i:"")+'"><i class="fas fa-fw fa-'+cityssm.escapeHTML(""===(null!==(n=a.fontAwesomeIconClass)&&void 0!==n?n:"")?"user":a.fontAwesomeIconClass)+'" aria-label="'+e.escapedAliases.occupant+'"></i> '+cityssm.escapeHTML(""===(null!==(p=a.occupantName)&&void 0!==p?p:"")?"(No Name)":a.occupantName)+"</span><br />";k.insertAdjacentHTML("beforeend",'<tr><td><a class="has-text-weight-bold" href="'+e.getWorkOrderURL(a.workOrderId)+'">'+(a.workOrderNumber.trim()?cityssm.escapeHTML(null!==(u=a.workOrderNumber)&&void 0!==u?u:""):"(No Number)")+"</a></td><td>"+cityssm.escapeHTML(null!==(f=a.workOrderType)&&void 0!==f?f:"")+'<br /><span class="is-size-7">'+cityssm.escapeHTML(null!==(h=a.workOrderDescription)&&void 0!==h?h:"")+'</span></td><td class="is-nowrap"><span class="is-size-7">'+s+'</span></td><td class="is-nowrap"><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderOpenDate+'"><i class="fas fa-fw fa-play" aria-label="'+e.escapedAliases.WorkOrderOpenDate+'"></i> '+a.workOrderOpenDateString+'</span><br /><span class="has-tooltip-left" data-tooltip="'+e.escapedAliases.WorkOrderCloseDate+'"><i class="fas fa-fw fa-stop" aria-label="'+e.escapedAliases.WorkOrderCloseDate+'"></i> '+(a.workOrderCloseDate?a.workOrderCloseDateString:'<span class="has-text-grey">(No '+e.escapedAliases.WorkOrderCloseDate+")</span>")+"</span></td><td>"+(0===a.workOrderMilestoneCount?"-":a.workOrderMilestoneCompletionCount+" / "+a.workOrderMilestoneCount)+"</td>"+(t.length>0?'<td><a class="button is-small" data-tooltip="Print" href="'+e.urlPrefix+"/print/"+t[0]+"/?workOrderId="+a.workOrderId+'" target="_blank"><i class="fas fa-print" aria-label="Print"></i></a></td>':"")+"</tr>")}a.innerHTML='<table class="table is-fullwidth is-striped is-hoverable has-sticky-header"><thead><tr><th>Work Order Number</th><th>Description</th><th>Related</th><th>Date</th><th class="has-tooltip-bottom" data-tooltip="Completed / Total Milestones">Progress</th>'+(t.length>0?'<th class="has-width-1"></th>':"")+"</tr></thead><table>",a.insertAdjacentHTML("beforeend",e.getSearchResultsPagerHTML(r,s.offset,s.count)),a.querySelector("table").append(k),null===(m=a.querySelector("button[data-page='previous']"))||void 0===m||m.addEventListener("click",c),null===(O=a.querySelector("button[data-page='next']"))||void 0===O||O.addEventListener("click",d)}function i(){a.innerHTML=e.getLoadingParagraphHTML("Loading Work Orders..."),cityssm.postJSON(e.urlPrefix+"/workOrders/doSearchWorkOrders",s,l)}function n(){o.value="0",i()}function c(){o.value=Math.max(Number.parseInt(o.value,10)-r,0).toString(),i()}function d(){o.value=(Number.parseInt(o.value,10)+r).toString(),i()}const p=s.querySelectorAll("input, select");for(const e of p)e.addEventListener("change",n);s.addEventListener("submit",e=>{e.preventDefault(),n()}),i()})();

View File

@ -1 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,r=document.querySelector("#button--reopenWorkOrder");if(r){const o=r.dataset.workOrderId;r.addEventListener("click",()=>{bulmaJS.confirm({title:"Reopen Work Order",message:"Are you sure you want to remove the close date from this work order and reopen it?",contextualColorName:"warning",okButton:{text:"Yes, Reopen Work Order",callbackFunction:function(){cityssm.postJSON(e.urlPrefix+"/workOrders/doReopenWorkOrder",{workOrderId:o},r=>{r.success?window.location.href=e.getWorkOrderURL(o,!0,!0):bulmaJS.alert({title:"Error Reopening Work Order",message:r.errorMessage||"",contextualColorName:"danger"})})}}})})}})(); "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),(()=>{const e=exports.los,r=document.querySelector("#button--reopenWorkOrder");if(r){const o=r.dataset.workOrderId;r.addEventListener("click",()=>{bulmaJS.confirm({title:"Reopen Work Order",message:"Are you sure you want to remove the close date from this work order and reopen it?",contextualColorName:"warning",okButton:{text:"Yes, Reopen Work Order",callbackFunction:function(){cityssm.postJSON(e.urlPrefix+"/workOrders/doReopenWorkOrder",{workOrderId:o},r=>{var t;r.success?window.location.href=e.getWorkOrderURL(o,!0,!0):bulmaJS.alert({title:"Error Reopening Work Order",message:null!==(t=r.errorMessage)&&void 0!==t?t:"",contextualColorName:"danger"})})}}})})}})();