import { L, S as S2, m as m2, u } from "./chunk-PIGRDDRG.js"; import { r as r2 } from "./chunk-7ZIDBK7B.js"; import { b, g } from "./chunk-WZQZRKNH.js"; import { s as s4 } from "./chunk-7N4X6GF3.js"; import { j } from "./chunk-ALDCDSPV.js"; import { o as o2, s as s3 } from "./chunk-PDKDCAAD.js"; import { o } from "./chunk-ECW2QABR.js"; import { s as s2 } from "./chunk-GCDJLKH4.js"; import { r } from "./chunk-MRJEICT6.js"; import { d, e, l3 as l, n2 as n, y3 as y } from "./chunk-Y3WMVFTW.js"; import { N, S } from "./chunk-IHXECKQQ.js"; import { k } from "./chunk-ULGDPLM2.js"; import { s } from "./chunk-EMJ4ZSM2.js"; import { m } from "./chunk-IKP3YN53.js"; // node_modules/@arcgis/core/popup/ExpressionInfo.js var s5; var p = s5 = class extends l { constructor(r7) { super(r7), this.name = null, this.title = null, this.expression = null, this.returnType = null; } clone() { return new s5({ name: this.name, title: this.title, expression: this.expression, returnType: this.returnType }); } }; e([d({ type: String, json: { write: true } })], p.prototype, "name", void 0), e([d({ type: String, json: { write: true } })], p.prototype, "title", void 0), e([d({ type: String, json: { write: true } })], p.prototype, "expression", void 0), e([d({ type: ["string", "number"], json: { write: true } })], p.prototype, "returnType", void 0), p = s5 = e([n("esri.popup.ExpressionInfo")], p); var i = p; // node_modules/@arcgis/core/popup/content/Content.js var e2 = class extends l { constructor(r7) { super(r7), this.type = null; } }; e([d({ type: ["attachments", "custom", "fields", "media", "text", "expression"], readOnly: true, json: { read: false, write: true } })], e2.prototype, "type", void 0), e2 = e([n("esri.popup.content.Content")], e2); var p2 = e2; // node_modules/@arcgis/core/popup/content/AttachmentsContent.js var s6; var p3 = s6 = class extends p2 { constructor(t2) { super(t2), this.description = null, this.displayType = "auto", this.title = null, this.type = "attachments"; } clone() { return new s6({ description: this.description, displayType: this.displayType, title: this.title }); } }; e([d({ type: String, json: { write: true } })], p3.prototype, "description", void 0), e([d({ type: ["auto", "preview", "list"], json: { write: true } })], p3.prototype, "displayType", void 0), e([d({ type: String, json: { write: true } })], p3.prototype, "title", void 0), e([d({ type: ["attachments"], readOnly: true, json: { read: false, write: true } })], p3.prototype, "type", void 0), p3 = s6 = e([n("esri.popup.content.AttachmentsContent")], p3); var i2 = p3; // node_modules/@arcgis/core/popup/content/CustomContent.js var p4; var c = p4 = class extends p2 { constructor(o5) { super(o5), this.creator = null, this.destroyer = null, this.outFields = null, this.type = "custom"; } clone() { return new p4({ creator: this.creator, destroyer: this.destroyer, outFields: Array.isArray(this.outFields) ? m(this.outFields) : null }); } }; e([d()], c.prototype, "creator", void 0), e([d()], c.prototype, "destroyer", void 0), e([d()], c.prototype, "outFields", void 0), e([d({ type: ["custom"], readOnly: true })], c.prototype, "type", void 0), c = p4 = e([n("esri.popup.content.CustomContent")], c); var i3 = c; // node_modules/@arcgis/core/popup/ElementExpressionInfo.js var s7; var p5 = s7 = class extends l { constructor(r7) { super(r7), this.title = null, this.expression = null, this.returnType = "dictionary"; } clone() { return new s7({ title: this.title, expression: this.expression }); } }; e([d({ type: String, json: { write: true } })], p5.prototype, "title", void 0), e([d({ type: String, json: { write: true } })], p5.prototype, "expression", void 0), e([d({ type: ["dictionary"], readOnly: true, json: { read: false, write: true } })], p5.prototype, "returnType", void 0), p5 = s7 = e([n("esri.popup.ElementExpressionInfo")], p5); var i4 = p5; // node_modules/@arcgis/core/popup/content/ExpressionContent.js var p6; var n2 = p6 = class extends p2 { constructor(o5) { super(o5), this.expressionInfo = null, this.type = "expression"; } clone() { return new p6({ expressionInfo: this.expressionInfo?.clone() }); } }; e([d({ type: i4, json: { write: true } })], n2.prototype, "expressionInfo", void 0), e([d({ type: ["expression"], readOnly: true, json: { read: false, write: true } })], n2.prototype, "type", void 0), n2 = p6 = e([n("esri.popup.content.ExpressionContent")], n2); var i5 = n2; // node_modules/@arcgis/core/core/date.js var a = o2()({ shortDate: "short-date", shortDateShortTime: "short-date-short-time", shortDateShortTime24: "short-date-short-time-24", shortDateLongTime: "short-date-long-time", shortDateLongTime24: "short-date-long-time-24", shortDateLE: "short-date-le", shortDateLEShortTime: "short-date-le-short-time", shortDateLEShortTime24: "short-date-le-short-time-24", shortDateLELongTime: "short-date-le-long-time", shortDateLELongTime24: "short-date-le-long-time-24", longMonthDayYear: "long-month-day-year", longMonthDayYearShortTime: "long-month-day-year-short-time", longMonthDayYearShortTime24: "long-month-day-year-short-time-24", longMonthDayYearLongTime: "long-month-day-year-long-time", longMonthDayYearLongTime24: "long-month-day-year-long-time-24", dayShortMonthYear: "day-short-month-year", dayShortMonthYearShortTime: "day-short-month-year-short-time", dayShortMonthYearShortTime24: "day-short-month-year-short-time-24", dayShortMonthYearLongTime: "day-short-month-year-long-time", dayShortMonthYearLongTime24: "day-short-month-year-long-time-24", longDate: "long-date", longDateShortTime: "long-date-short-time", longDateShortTime24: "long-date-short-time-24", longDateLongTime: "long-date-long-time", longDateLongTime24: "long-date-long-time-24", longMonthYear: "long-month-year", shortMonthYear: "short-month-year", year: "year" }); var o3 = a.toJSON.bind(a); var r3 = a.fromJSON.bind(a); // node_modules/@arcgis/core/popup/support/FieldInfoFormat.js var d2; var l2 = d2 = class extends l { constructor(t2) { super(t2), this.dateFormat = null, this.dateTimeFormatOptions = null, this.digitSeparator = false, this.places = null; } clone() { return new d2({ dateFormat: this.dateFormat, digitSeparator: this.digitSeparator, places: this.places }); } format(t2) { return this.dateFormat ? L(t2, { ...S2(this.dateFormat), ...this.dateTimeFormatOptions }) : m2(t2, u(this)); } formatRasterPixelValue(t2) { let r7, o5; return t2.trim().includes(",") ? (r7 = ",", o5 = r7 + " ", this._formatDelimitedString(t2, r7, o5, this)) : t2.trim().includes(";") ? (r7 = ";", o5 = r7 + " ", this._formatDelimitedString(t2, r7, o5, this)) : t2.trim().includes(" ") ? (r7 = o5 = " ", this._formatDelimitedString(t2, r7, o5, this)) : this.format(Number(t2)); } _formatDelimitedString(t2, r7, o5, e6) { return t2 && r7 && o5 && e6 ? t2.trim().split(r7).map((t3) => this.format(Number(t3))).join(o5) : t2; } }; e([r2(a)], l2.prototype, "dateFormat", void 0), e([d({ type: Object, json: { read: false } })], l2.prototype, "dateTimeFormatOptions", void 0), e([d({ type: Boolean, json: { write: true } })], l2.prototype, "digitSeparator", void 0), e([d({ type: S, json: { write: true } })], l2.prototype, "places", void 0), l2 = d2 = e([n("esri.popup.support.FieldInfoFormat")], l2); var u2 = l2; // node_modules/@arcgis/core/popup/FieldInfo.js var a2; var n3 = a2 = class extends l { constructor(t2) { super(t2), this.fieldName = null, this.format = null, this.isEditable = false, this.label = null, this.stringFieldOption = "text-box", this.statisticType = null, this.tooltip = null, this.visible = true; } clone() { return new a2({ fieldName: this.fieldName, format: this.format ? m(this.format) : null, isEditable: this.isEditable, label: this.label, stringFieldOption: this.stringFieldOption, statisticType: this.statisticType, tooltip: this.tooltip, visible: this.visible }); } }; e([d({ type: String, json: { write: true } })], n3.prototype, "fieldName", void 0), e([d({ type: u2, json: { write: true } })], n3.prototype, "format", void 0), e([d({ type: Boolean, json: { write: true, default: false } })], n3.prototype, "isEditable", void 0), e([d({ type: String, json: { write: true } })], n3.prototype, "label", void 0), e([r2(new s3({ richtext: "rich-text", textarea: "text-area", textbox: "text-box" }), { default: "text-box" })], n3.prototype, "stringFieldOption", void 0), e([d({ type: ["count", "sum", "min", "max", "avg", "stddev", "var"], json: { write: true } })], n3.prototype, "statisticType", void 0), e([d({ type: String, json: { write: true } })], n3.prototype, "tooltip", void 0), e([d({ type: Boolean, json: { write: true } })], n3.prototype, "visible", void 0), n3 = a2 = e([n("esri.popup.FieldInfo")], n3); var c2 = n3; // node_modules/@arcgis/core/popup/content/FieldsContent.js var n4; var l3 = n4 = class extends p2 { constructor(t2) { super(t2), this.attributes = null, this.description = null, this.fieldInfos = null, this.title = null, this.type = "fields"; } writeFieldInfos(t2, o5) { o5.fieldInfos = t2 && t2.map((t3) => t3.toJSON()); } clone() { return new n4(m({ attributes: this.attributes, description: this.description, fieldInfos: this.fieldInfos, title: this.title })); } }; e([d({ type: Object, json: { write: true } })], l3.prototype, "attributes", void 0), e([d({ type: String, json: { write: true } })], l3.prototype, "description", void 0), e([d({ type: [c2] })], l3.prototype, "fieldInfos", void 0), e([r("fieldInfos")], l3.prototype, "writeFieldInfos", null), e([d({ type: String, json: { write: true } })], l3.prototype, "title", void 0), e([d({ type: ["fields"], readOnly: true, json: { read: false, write: true } })], l3.prototype, "type", void 0), l3 = n4 = e([n("esri.popup.content.FieldsContent")], l3); var c3 = l3; // node_modules/@arcgis/core/popup/content/mixins/MediaInfo.js var s8 = class extends l { constructor(t2) { super(t2), this.altText = null, this.caption = "", this.title = "", this.type = null; } }; e([d({ type: String, json: { write: true } })], s8.prototype, "altText", void 0), e([d({ type: String, json: { write: true } })], s8.prototype, "caption", void 0), e([d({ type: String, json: { write: true } })], s8.prototype, "title", void 0), e([d({ type: ["image", "bar-chart", "column-chart", "line-chart", "pie-chart"], readOnly: true, json: { read: false, write: true } })], s8.prototype, "type", void 0), s8 = e([n("esri.popup.content.mixins.MediaInfo")], s8); var p7 = s8; // node_modules/@arcgis/core/popup/content/support/ChartMediaInfoValueSeries.js var s9; var p8 = s9 = class extends y { constructor(o5) { super(o5), this.fieldName = null, this.tooltip = null, this.value = null; } clone() { return new s9({ fieldName: this.fieldName, tooltip: this.tooltip, value: this.value }); } }; e([d()], p8.prototype, "fieldName", void 0), e([d()], p8.prototype, "tooltip", void 0), e([d()], p8.prototype, "value", void 0), p8 = s9 = e([n("esri.popup.content.support.ChartMediaInfoValueSeries")], p8); var i6 = p8; // node_modules/@arcgis/core/popup/content/support/ChartMediaInfoValue.js var p9; var l4 = p9 = class extends l { constructor(o5) { super(o5), this.fields = [], this.normalizeField = null, this.series = [], this.tooltipField = null; } clone() { return new p9({ fields: m(this.fields), normalizeField: this.normalizeField, tooltipField: this.tooltipField }); } }; e([d({ type: [String], json: { write: true } })], l4.prototype, "fields", void 0), e([d({ type: String, json: { write: true } })], l4.prototype, "normalizeField", void 0), e([d({ type: [i6], json: { read: false } })], l4.prototype, "series", void 0), e([d({ type: String, json: { write: true } })], l4.prototype, "tooltipField", void 0), l4 = p9 = e([n("esri.popup.content.support.ChartMediaInfoValue")], l4); var n5 = l4; // node_modules/@arcgis/core/popup/content/mixins/ChartMediaInfo.js var p10 = class extends p7 { constructor(r7) { super(r7), this.type = null, this.value = null; } }; e([d({ type: ["bar-chart", "column-chart", "line-chart", "pie-chart"], readOnly: true, json: { read: false, write: true } })], p10.prototype, "type", void 0), e([d({ type: n5, json: { write: true } })], p10.prototype, "value", void 0), p10 = e([n("esri.popup.content.mixins.ChartMediaInfo")], p10); var a3 = p10; // node_modules/@arcgis/core/popup/content/support/chartMediaInfoUtils.js var c4 = o2()({ barchart: "bar-chart", columnchart: "column-chart", linechart: "line-chart", piechart: "pie-chart" }); // node_modules/@arcgis/core/popup/content/BarChartMediaInfo.js var a4; var p11 = a4 = class extends a3 { constructor(t2) { super(t2), this.type = "bar-chart"; } clone() { return new a4({ altText: this.altText, title: this.title, caption: this.caption, value: this.value ? this.value.clone() : null }); } }; e([d({ type: ["bar-chart"], readOnly: true, json: { type: ["barchart"], read: false, write: c4.write } })], p11.prototype, "type", void 0), p11 = a4 = e([n("esri.popup.content.BarChartMediaInfo")], p11); var i7 = p11; // node_modules/@arcgis/core/popup/content/ColumnChartMediaInfo.js var a5; var p12 = a5 = class extends a3 { constructor(t2) { super(t2), this.type = "column-chart"; } clone() { return new a5({ altText: this.altText, title: this.title, caption: this.caption, value: this.value ? this.value.clone() : null }); } }; e([d({ type: ["column-chart"], readOnly: true, json: { type: ["columnchart"], read: false, write: c4.write } })], p12.prototype, "type", void 0), p12 = a5 = e([n("esri.popup.content.ColumnChartMediaInfo")], p12); var c5 = p12; // node_modules/@arcgis/core/popup/content/support/ImageMediaInfoValue.js var e3; var p13 = e3 = class extends l { constructor(r7) { super(r7), this.linkURL = null, this.sourceURL = null; } clone() { return new e3({ linkURL: this.linkURL, sourceURL: this.sourceURL }); } }; e([d({ type: String, json: { write: true } })], p13.prototype, "linkURL", void 0), e([d({ type: String, json: { write: true } })], p13.prototype, "sourceURL", void 0), p13 = e3 = e([n("esri.popup.content.support.ImageMediaInfoValue")], p13); var c6 = p13; // node_modules/@arcgis/core/popup/content/ImageMediaInfo.js var a6; var i8 = a6 = class extends p7 { constructor(e6) { super(e6), this.refreshInterval = null, this.type = "image", this.value = null; } clone() { return new a6({ altText: this.altText, title: this.title, caption: this.caption, refreshInterval: this.refreshInterval, value: this.value ? this.value.clone() : null }); } }; e([d({ type: Number, json: { write: true } })], i8.prototype, "refreshInterval", void 0), e([d({ type: ["image"], readOnly: true, json: { read: false, write: true } })], i8.prototype, "type", void 0), e([d({ type: c6, json: { write: true } })], i8.prototype, "value", void 0), i8 = a6 = e([n("esri.popup.content.ImageMediaInfo")], i8); var p14 = i8; // node_modules/@arcgis/core/popup/content/LineChartMediaInfo.js var i9; var a7 = i9 = class extends a3 { constructor(t2) { super(t2), this.type = "line-chart"; } clone() { return new i9({ altText: this.altText, title: this.title, caption: this.caption, value: this.value ? this.value.clone() : null }); } }; e([d({ type: ["line-chart"], readOnly: true, json: { type: ["linechart"], read: false, write: c4.write } })], a7.prototype, "type", void 0), a7 = i9 = e([n("esri.popup.content.LineChartMediaInfo")], a7); var p15 = a7; // node_modules/@arcgis/core/popup/content/PieChartMediaInfo.js var p16; var i10 = p16 = class extends a3 { constructor(t2) { super(t2), this.type = "pie-chart"; } clone() { return new p16({ altText: this.altText, title: this.title, caption: this.caption, value: this.value ? this.value.clone() : null }); } }; e([d({ type: ["pie-chart"], readOnly: true, json: { type: ["piechart"], read: false, write: c4.write } })], i10.prototype, "type", void 0), i10 = p16 = e([n("esri.popup.content.PieChartMediaInfo")], i10); var a8 = i10; // node_modules/@arcgis/core/popup/content/support/mediaInfoTypes.js var m3 = { base: p7, key: "type", defaultKeyValue: "image", typeMap: { "bar-chart": i7, "column-chart": c5, "line-chart": p15, "pie-chart": a8, image: p14 } }; // node_modules/@arcgis/core/popup/content/MediaContent.js var l5; var u3 = l5 = class extends p2 { constructor(t2) { super(t2), this.activeMediaInfoIndex = null, this.attributes = null, this.description = null, this.mediaInfos = null, this.title = null, this.type = "media"; } readMediaInfos(t2) { return t2 && t2.map((t3) => t3.type === "image" ? p14.fromJSON(t3) : t3.type === "barchart" ? i7.fromJSON(t3) : t3.type === "columnchart" ? c5.fromJSON(t3) : t3.type === "linechart" ? p15.fromJSON(t3) : t3.type === "piechart" ? a8.fromJSON(t3) : void 0).filter(Boolean); } writeMediaInfos(t2, o5) { o5.mediaInfos = t2 && t2.map((t3) => t3.toJSON()); } clone() { return new l5(m({ activeMediaInfoIndex: this.activeMediaInfoIndex, attributes: this.attributes, description: this.description, mediaInfos: this.mediaInfos, title: this.title })); } }; e([d()], u3.prototype, "activeMediaInfoIndex", void 0), e([d({ type: Object, json: { write: true } })], u3.prototype, "attributes", void 0), e([d({ type: String, json: { write: true } })], u3.prototype, "description", void 0), e([d({ types: [m3] })], u3.prototype, "mediaInfos", void 0), e([o("mediaInfos")], u3.prototype, "readMediaInfos", null), e([r("mediaInfos")], u3.prototype, "writeMediaInfos", null), e([d({ type: String, json: { write: true } })], u3.prototype, "title", void 0), e([d({ type: ["media"], readOnly: true, json: { read: false, write: true } })], u3.prototype, "type", void 0), u3 = l5 = e([n("esri.popup.content.MediaContent")], u3); var I = u3; // node_modules/@arcgis/core/popup/content/TextContent.js var s10; var p17 = s10 = class extends p2 { constructor(t2) { super(t2), this.text = null, this.type = "text"; } clone() { return new s10({ text: this.text }); } }; e([d({ type: String, json: { write: true } })], p17.prototype, "text", void 0), e([d({ type: ["text"], readOnly: true, json: { read: false, write: true } })], p17.prototype, "type", void 0), p17 = s10 = e([n("esri.popup.content.TextContent")], p17); var c7 = p17; // node_modules/@arcgis/core/popup/content.js var m4 = { base: null, key: "type", typeMap: { attachment: i2, media: I, text: c7, expression: i5, field: c3 } }; // node_modules/@arcgis/core/popup/LayerOptions.js var e4; var p18 = e4 = class extends l { constructor(o5) { super(o5), this.returnTopmostRaster = null, this.showNoDataRecords = null; } clone() { return new e4({ showNoDataRecords: this.showNoDataRecords, returnTopmostRaster: this.returnTopmostRaster }); } }; e([d({ type: Boolean, json: { write: true } })], p18.prototype, "returnTopmostRaster", void 0), e([d({ type: Boolean, json: { write: true } })], p18.prototype, "showNoDataRecords", void 0), p18 = e4 = e([n("esri.popup.LayerOptions")], p18); var a9 = p18; // node_modules/@arcgis/core/popup/support/RelatedRecordsInfoFieldOrder.js var t; var p19 = t = class extends l { constructor(r7) { super(r7), this.field = null, this.order = null; } clone() { return new t({ field: this.field, order: this.order }); } }; e([d({ type: String, json: { write: true } })], p19.prototype, "field", void 0), e([d({ type: ["asc", "desc"], json: { write: true } })], p19.prototype, "order", void 0), p19 = t = e([n("esri.popup.support.RelatedRecordsInfoFieldOrder")], p19); var c8 = p19; // node_modules/@arcgis/core/popup/RelatedRecordsInfo.js var d3; var c9 = d3 = class extends l { constructor(o5) { super(o5), this.showRelatedRecords = null, this.orderByFields = null; } clone() { return new d3({ showRelatedRecords: this.showRelatedRecords, orderByFields: this.orderByFields ? m(this.orderByFields) : null }); } }; e([d({ type: Boolean, json: { write: true } })], c9.prototype, "showRelatedRecords", void 0), e([d({ type: [c8], json: { write: true } })], c9.prototype, "orderByFields", void 0), c9 = d3 = e([n("esri.popup.RelatedRecordsInfo")], c9); var l6 = c9; // node_modules/@arcgis/core/support/actions/ActionBase.js var r4; var p20 = r4 = class extends s4(y) { constructor(t2) { super(t2), this.active = false, this.className = null, this.disabled = false, this.id = null, this.indicator = false, this.title = null, this.type = null, this.visible = true; } clone() { return new r4({ active: this.active, className: this.className, disabled: this.disabled, id: this.id, indicator: this.indicator, title: this.title, visible: this.visible }); } }; e([d()], p20.prototype, "active", void 0), e([d()], p20.prototype, "className", void 0), e([d()], p20.prototype, "disabled", void 0), e([d()], p20.prototype, "id", void 0), e([d()], p20.prototype, "indicator", void 0), e([d()], p20.prototype, "title", void 0), e([d()], p20.prototype, "type", void 0), e([d()], p20.prototype, "visible", void 0), p20 = r4 = e([n("esri.support.actions.ActionBase")], p20); var c10 = p20; // node_modules/@arcgis/core/support/actions/ActionButton.js var r5; var e5 = r5 = class extends c10 { constructor(s11) { super(s11), this.image = null, this.type = "button"; } clone() { return new r5({ active: this.active, className: this.className, disabled: this.disabled, id: this.id, indicator: this.indicator, title: this.title, visible: this.visible, image: this.image }); } }; e([d()], e5.prototype, "image", void 0), e5 = r5 = e([n("esri.support.Action.ActionButton")], e5); var a10 = e5; // node_modules/@arcgis/core/support/actions/ActionToggle.js var o4; var r6 = o4 = class extends c10 { constructor(s11) { super(s11), this.image = null, this.type = "toggle", this.value = false; } clone() { return new o4({ active: this.active, className: this.className, disabled: this.disabled, id: this.id, indicator: this.indicator, title: this.title, visible: this.visible, image: this.image, value: this.value }); } }; e([d()], r6.prototype, "image", void 0), e([d()], r6.prototype, "value", void 0), r6 = o4 = e([n("esri.support.Action.ActionToggle")], r6); var a11 = r6; // node_modules/@arcgis/core/PopupTemplate.js var S3; var T = j.ofType({ key: "type", defaultKeyValue: "button", base: c10, typeMap: { button: a10, toggle: a11 } }); var b2 = { base: p2, key: "type", typeMap: { media: I, custom: i3, text: c7, attachments: i2, fields: c3, expression: i5 } }; var R = "esri.PopupTemplate"; var L2 = s.getLogger(R); var J = ["attachments", "fields", "media", "text", "expression"]; var M = S3 = class extends l { constructor() { super(...arguments), this.actions = null, this.content = "", this.expressionInfos = null, this.fieldInfos = null, this.layerOptions = null, this.lastEditInfoEnabled = true, this.outFields = null, this.overwriteActions = false, this.returnGeometry = false, this.title = "", this.relatedRecordsInfo = null; } castContent(t2) { return Array.isArray(t2) ? t2.map((t3) => N(b2, t3)) : typeof t2 == "string" || typeof t2 == "function" || t2 instanceof HTMLElement || k(t2) ? t2 : (L2.error("content error", "unsupported content value", { value: t2 }), null); } readContent(t2, e6) { const { popupElements: o5 } = e6; return Array.isArray(o5) && o5.length > 0 ? this._readPopupInfoElements(e6) : this._readPopupInfo(e6); } writeContent(t2, e6, o5, s11) { typeof t2 != "string" ? Array.isArray(t2) && (e6.popupElements = t2.filter((t3) => J.includes(t3.type)).map((t3) => t3 && t3.toJSON(s11)), e6.popupElements.forEach((t3) => { t3.type === "attachments" ? this._writeAttachmentContent(e6) : t3.type === "media" ? this._writeMediaContent(t3, e6) : t3.type === "text" && this._writeTextContent(t3, e6); })) : e6.description = t2; } writeFieldInfos(t2, e6, o5, s11) { const { content: i11 } = this, r7 = Array.isArray(i11) ? i11 : null; if (t2) { const o6 = r7 ? r7.filter((t3) => t3.type === "fields") : [], i12 = o6.length && o6.every((t3) => t3.fieldInfos?.length); e6.fieldInfos = t2.filter(Boolean).map((t3) => { const e7 = t3.toJSON(s11); return i12 && (e7.visible = false), e7; }); } if (r7) for (const n6 of r7) n6.type === "fields" && this._writeFieldsContent(n6, e6); } writeLayerOptions(t2, e6, o5, s11) { e6[o5] = !t2 || t2.showNoDataRecords === null && t2.returnTopmostRaster === null ? null : t2.toJSON(s11); } writeTitle(t2, e6) { e6.title = t2 || ""; } clone() { const { actions: t2 } = this, e6 = t2 ? m(t2.toArray()) : []; return new S3({ actions: e6, content: Array.isArray(this.content) ? m(this.content) : this.content, expressionInfos: Array.isArray(this.expressionInfos) ? m(this.expressionInfos) : null, fieldInfos: Array.isArray(this.fieldInfos) ? m(this.fieldInfos) : null, layerOptions: this.layerOptions ? m(this.layerOptions) : null, lastEditInfoEnabled: this.lastEditInfoEnabled, outFields: Array.isArray(this.outFields) ? m(this.outFields) : null, overwriteActions: this.overwriteActions, returnGeometry: this.returnGeometry, title: this.title, relatedRecordsInfo: this.relatedRecordsInfo ? m(this.relatedRecordsInfo) : null }); } async collectRequiredFields(t2, e6) { const o5 = this.expressionInfos || []; await this._collectExpressionInfoFields(t2, e6, [...o5, ...this._getContentExpressionInfos(this.content, o5)]), g(t2, e6, [...this.outFields || [], ...this._getActionsFields(this.actions), ...this._getTitleFields(this.title), ...this._getContentFields(this.content)]); } async getRequiredFields(t2) { const e6 = new Set(); return await this.collectRequiredFields(e6, t2), [...e6].sort(); } _writeFieldsContent(t2, e6) { if (!Array.isArray(t2.fieldInfos) || !t2.fieldInfos.length) return; const o5 = m(t2.fieldInfos); Array.isArray(e6.fieldInfos) ? o5.forEach((t3) => { const o6 = e6.fieldInfos.find((e7) => e7.fieldName.toLowerCase() === t3.fieldName.toLowerCase()); o6 ? o6.visible = true : e6.fieldInfos.push(t3); }) : e6.fieldInfos = o5; } _writeAttachmentContent(t2) { t2.showAttachments || (t2.showAttachments = true); } _writeTextContent(t2, e6) { !e6.description && t2.text && (e6.description = t2.text); } _writeMediaContent(t2, e6) { if (!Array.isArray(t2.mediaInfos) || !t2.mediaInfos.length) return; const o5 = m(t2.mediaInfos); Array.isArray(e6.mediaInfos) ? e6.mediaInfos = [...e6.mediaInfos, ...o5] : e6.mediaInfos = o5; } _readPopupInfoElements({ description: t2, mediaInfos: e6, popupElements: o5 }) { const s11 = { description: false, mediaInfos: false }; return o5.map((o6) => o6.type === "media" ? (o6.mediaInfos || !e6 || s11.mediaInfos || (o6.mediaInfos = e6, s11.mediaInfos = true), I.fromJSON(o6)) : o6.type === "text" ? (o6.text || !t2 || s11.description || (o6.text = t2, s11.description = true), c7.fromJSON(o6)) : o6.type === "attachments" ? i2.fromJSON(o6) : o6.type === "fields" ? c3.fromJSON(o6) : o6.type === "expression" ? i5.fromJSON(o6) : void 0).filter(Boolean); } _readPopupInfo({ description: t2, mediaInfos: e6, showAttachments: o5 }) { const s11 = []; return t2 ? s11.push(new c7({ text: t2 })) : s11.push(new c3()), Array.isArray(e6) && e6.length && s11.push(I.fromJSON({ mediaInfos: e6 })), o5 && s11.push(i2.fromJSON({ displayType: "auto" })), s11.length ? s11 : t2; } _getContentElementFields(t2) { const e6 = t2?.type; if (e6 === "attachments") return [...this._extractFieldNames(t2.title), ...this._extractFieldNames(t2.description)]; if (e6 === "custom") return t2.outFields || []; if (e6 === "fields") return [...this._extractFieldNames(t2.title), ...this._extractFieldNames(t2.description), ...this._getFieldInfoFields(t2.fieldInfos || this.fieldInfos)]; if (e6 === "media") { const e7 = t2.mediaInfos || []; return [...this._extractFieldNames(t2.title), ...this._extractFieldNames(t2.description), ...e7.reduce((t3, e8) => [...t3, ...this._getMediaInfoFields(e8)], [])]; } return e6 === "text" ? this._extractFieldNames(t2.text) : []; } _getMediaInfoFields(t2) { const { caption: e6, title: o5, value: s11 } = t2, i11 = s11 || {}, { fields: r7 = [], normalizeField: n6, tooltipField: p21, sourceURL: l7, linkURL: a12 } = i11, d4 = [...this._extractFieldNames(o5), ...this._extractFieldNames(e6), ...this._extractFieldNames(l7), ...this._extractFieldNames(a12), ...r7]; return n6 && d4.push(n6), p21 && d4.push(p21), d4; } _getContentExpressionInfos(t2, e6) { return Array.isArray(t2) ? t2.reduce((t3, e7) => [...t3, ...e7.type === "expression" && e7.expressionInfo ? [e7.expressionInfo] : []], e6) : []; } _getContentFields(t2) { return typeof t2 == "string" ? this._extractFieldNames(t2) : Array.isArray(t2) ? t2.reduce((t3, e6) => [...t3, ...this._getContentElementFields(e6)], []) : []; } async _collectExpressionInfoFields(t2, e6, o5) { o5 && await Promise.all(o5.map((o6) => b(t2, e6, o6.expression))); } _getFieldInfoFields(t2) { return t2 ? t2.filter((t3) => t3.visible === void 0 || !!t3.visible).map((t3) => t3.fieldName).filter((t3) => !t3.includes("relationships/") && !t3.includes("expression/")) : []; } _getActionsFields(t2) { return t2 ? t2.toArray().reduce((t3, e6) => [...t3, ...this._getActionFields(e6)], []) : []; } _getActionFields(t2) { const { className: e6, title: o5, type: s11 } = t2, i11 = s11 === "button" || s11 === "toggle" ? t2.image : ""; return [...this._extractFieldNames(o5), ...this._extractFieldNames(e6), ...this._extractFieldNames(i11)]; } _getTitleFields(t2) { return typeof t2 == "string" ? this._extractFieldNames(t2) : []; } _extractFieldNames(t2) { if (!t2 || typeof t2 != "string") return []; const e6 = /{[^}]*}/g, o5 = t2.match(e6); if (!o5) return []; const s11 = /\{(\w+):.+\}/, i11 = o5.filter((t3) => !(t3.indexOf("{relationships/") === 0 || t3.indexOf("{expression/") === 0)).map((t3) => t3.replace(s11, "{$1}")); return i11 ? i11.map((t3) => t3.slice(1, -1)) : []; } }; e([d({ type: T })], M.prototype, "actions", void 0), e([d()], M.prototype, "content", void 0), e([s2("content")], M.prototype, "castContent", null), e([o("content", ["description", "fieldInfos", "popupElements", "mediaInfos", "showAttachments"])], M.prototype, "readContent", null), e([r("content", { popupElements: { type: j.ofType(m4) }, showAttachments: { type: Boolean }, mediaInfos: { type: j.ofType(m3) }, description: { type: String } })], M.prototype, "writeContent", null), e([d({ type: [i], json: { write: true } })], M.prototype, "expressionInfos", void 0), e([d({ type: [c2] })], M.prototype, "fieldInfos", void 0), e([r("fieldInfos")], M.prototype, "writeFieldInfos", null), e([d({ type: a9 })], M.prototype, "layerOptions", void 0), e([r("layerOptions")], M.prototype, "writeLayerOptions", null), e([d({ type: Boolean, json: { read: { source: "showLastEditInfo" }, write: { target: "showLastEditInfo" }, default: true } })], M.prototype, "lastEditInfoEnabled", void 0), e([d()], M.prototype, "outFields", void 0), e([d()], M.prototype, "overwriteActions", void 0), e([d()], M.prototype, "returnGeometry", void 0), e([d({ json: { type: String } })], M.prototype, "title", void 0), e([r("title")], M.prototype, "writeTitle", null), e([d({ type: l6, json: { write: true } })], M.prototype, "relatedRecordsInfo", void 0), M = S3 = e([n(R)], M); var B = M; export { c8 as c, i2 as i, i4 as i2, u2 as u, c2, c3, i6 as i3, I, c7 as c4, i as i4, c10 as c5, a10 as a, a11 as a2, B }; //# sourceMappingURL=chunk-PUSPZYFZ.js.map