UNPKG

@ansible/ansible-ui-framework

Version:

A framework for building applications using PatternFly.

1,380 lines (1,378 loc) • 1.19 MB
import { u as He, j as M } from "./index-QIGmRSaU.js"; import { useContext as je, createContext as Oe, useState as Se, useEffect as Be, useRef as Ze } from "react"; import Ye from "react-dom"; import { O as Te } from "./ansible-chatbot-DULYdDND.js"; import { Spinner as De } from "@patternfly/react-core"; import "@patternfly/react-icons"; import "react-router-dom"; const se = Symbol.for("yaml.alias"), Le = Symbol.for("yaml.document"), R = Symbol.for("yaml.map"), Pe = Symbol.for("yaml.pair"), ge = Symbol.for("yaml.scalar"), V = Symbol.for("yaml.seq"), z = Symbol.for("yaml.node.type"), Z = (l) => !!l && typeof l == "object" && l[z] === se, oe = (l) => !!l && typeof l == "object" && l[z] === Le, Ie = (l) => !!l && typeof l == "object" && l[z] === R, y = (l) => !!l && typeof l == "object" && l[z] === Pe, B = (l) => !!l && typeof l == "object" && l[z] === ge, me = (l) => !!l && typeof l == "object" && l[z] === V; function S(l) { if (l && typeof l == "object") switch (l[z]) { case R: case V: return !0; } return !1; } function C(l) { if (l && typeof l == "object") switch (l[z]) { case se: case R: case ge: case V: return !0; } return !1; } const Ue = (l) => (B(l) || S(l)) && !!l.anchor, F = Symbol("break visit"), Ne = Symbol("skip children"), D = Symbol("remove node"); function U(l, t) { const e = Ve(t); oe(l) ? H(null, l.contents, e, Object.freeze([l])) === D && (l.contents = null) : H(null, l, e, Object.freeze([])); } U.BREAK = F; U.SKIP = Ne; U.REMOVE = D; function H(l, t, e, o) { const r = Xe(l, t, e, o); if (C(r) || y(r)) return Je(l, o, r), H(l, r, e, o); if (typeof r != "symbol") { if (S(t)) { o = Object.freeze(o.concat(t)); for (let a = 0; a < t.items.length; ++a) { const n = H(a, t.items[a], e, o); if (typeof n == "number") a = n - 1; else { if (n === F) return F; n === D && (t.items.splice(a, 1), a -= 1); } } } else if (y(t)) { o = Object.freeze(o.concat(t)); const a = H("key", t.key, e, o); if (a === F) return F; a === D && (t.key = null); const n = H("value", t.value, e, o); if (n === F) return F; n === D && (t.value = null); } } return r; } function Ve(l) { return typeof l == "object" && (l.Collection || l.Node || l.Value) ? Object.assign({ Alias: l.Node, Map: l.Node, Scalar: l.Node, Seq: l.Node }, l.Value && { Map: l.Value, Scalar: l.Value, Seq: l.Value }, l.Collection && { Map: l.Collection, Seq: l.Collection }, l) : l; } function Xe(l, t, e, o) { var r, a, n, p, c; if (typeof e == "function") return e(l, t, o); if (Ie(t)) return (r = e.Map) == null ? void 0 : r.call(e, l, t, o); if (me(t)) return (a = e.Seq) == null ? void 0 : a.call(e, l, t, o); if (y(t)) return (n = e.Pair) == null ? void 0 : n.call(e, l, t, o); if (B(t)) return (p = e.Scalar) == null ? void 0 : p.call(e, l, t, o); if (Z(t)) return (c = e.Alias) == null ? void 0 : c.call(e, l, t, o); } function Je(l, t, e) { const o = t[t.length - 1]; if (S(o)) o.items[l] = e; else if (y(o)) l === "key" ? o.key = e : o.value = e; else if (oe(o)) o.contents = e; else { const r = Z(o) ? "alias" : "scalar"; throw new Error(`Cannot replace node with ${r} parent`); } } function Ee(l) { if (/[\x00-\x19\s,[\]{}]/.test(l)) { const e = `Anchor must not contain whitespace or control characters: ${JSON.stringify(l)}`; throw new Error(e); } return !0; } function T(l, t, e, o) { if (o && typeof o == "object") if (Array.isArray(o)) for (let r = 0, a = o.length; r < a; ++r) { const n = o[r], p = T(l, o, String(r), n); p === void 0 ? delete o[r] : p !== n && (o[r] = p); } else if (o instanceof Map) for (const r of Array.from(o.keys())) { const a = o.get(r), n = T(l, o, r, a); n === void 0 ? o.delete(r) : n !== a && o.set(r, n); } else if (o instanceof Set) for (const r of Array.from(o)) { const a = T(l, o, r, r); a === void 0 ? o.delete(r) : a !== r && (o.delete(r), o.add(a)); } else for (const [r, a] of Object.entries(o)) { const n = T(l, o, r, a); n === void 0 ? delete o[r] : n !== a && (o[r] = n); } return l.call(t, e, o); } function I(l, t, e) { if (Array.isArray(l)) return l.map((o, r) => I(o, String(r), e)); if (l && typeof l.toJSON == "function") { if (!e || !Ue(l)) return l.toJSON(t, e); const o = { aliasCount: 0, count: 1, res: void 0 }; e.anchors.set(l, o), e.onCreate = (a) => { o.res = a, delete e.onCreate; }; const r = l.toJSON(t, e); return e.onCreate && e.onCreate(r), r; } return typeof l == "bigint" && !(e != null && e.keep) ? Number(l) : l; } class ue { constructor(t) { Object.defineProperty(this, z, { value: t }); } /** Create a copy of this node. */ clone() { const t = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this)); return this.range && (t.range = this.range.slice()), t; } /** A plain JavaScript representation of this node. */ toJS(t, { mapAsMap: e, maxAliasCount: o, onAnchor: r, reviver: a } = {}) { if (!oe(t)) throw new TypeError("A document argument is required"); const n = { anchors: /* @__PURE__ */ new Map(), doc: t, keep: !0, mapAsMap: e === !0, mapKeyWarned: !1, maxAliasCount: typeof o == "number" ? o : 100 }, p = I(this, "", n); if (typeof r == "function") for (const { count: c, res: f } of n.anchors.values()) r(f, c); return typeof a == "function" ? T(a, { "": p }, "", p) : p; } } class Qe extends ue { constructor(t) { super(se), this.source = t, Object.defineProperty(this, "tag", { set() { throw new Error("Alias nodes cannot have tags"); } }); } /** * Resolve the value of this alias within `doc`, finding the last * instance of the `source` anchor before this node. */ resolve(t) { let e; return U(t, { Node: (o, r) => { if (r === this) return U.BREAK; r.anchor === this.source && (e = r); } }), e; } toJSON(t, e) { if (!e) return { source: this.source }; const { anchors: o, doc: r, maxAliasCount: a } = e, n = this.resolve(r); if (!n) { const c = `Unresolved alias (the anchor must be set before the alias): ${this.source}`; throw new ReferenceError(c); } let p = o.get(n); if (p || (I(n, null, e), p = o.get(n)), !p || p.res === void 0) { const c = "This should not happen: Alias anchor was not resolved?"; throw new ReferenceError(c); } if (a >= 0 && (p.count += 1, p.aliasCount === 0 && (p.aliasCount = Q(r, n, o)), p.count * p.aliasCount > a)) { const c = "Excessive alias count indicates a resource exhaustion attack"; throw new ReferenceError(c); } return p.res; } toString(t, e, o) { const r = `*${this.source}`; if (t) { if (Ee(this.source), t.options.verifyAliasOrder && !t.anchors.has(this.source)) { const a = `Unresolved alias (the anchor must be set before the alias): ${this.source}`; throw new Error(a); } if (t.implicitKey) return `${r} `; } return r; } } function Q(l, t, e) { if (Z(t)) { const o = t.resolve(l), r = e && o && e.get(o); return r ? r.count * r.aliasCount : 0; } else if (S(t)) { let o = 0; for (const r of t.items) { const a = Q(l, r, e); a > o && (o = a); } return o; } else if (y(t)) { const o = Q(l, t.key, e), r = Q(l, t.value, e); return Math.max(o, r); } return 1; } const ze = (l) => !l || typeof l != "function" && typeof l != "object"; class x extends ue { constructor(t) { super(ge), this.value = t; } toJSON(t, e) { return e != null && e.keep ? this.value : I(this.value, t, e); } toString() { return String(this.value); } } x.BLOCK_FOLDED = "BLOCK_FOLDED"; x.BLOCK_LITERAL = "BLOCK_LITERAL"; x.PLAIN = "PLAIN"; x.QUOTE_DOUBLE = "QUOTE_DOUBLE"; x.QUOTE_SINGLE = "QUOTE_SINGLE"; function Ke(l, t, e) { return e.find((o) => { var r; return ((r = o.identify) == null ? void 0 : r.call(o, l)) && !o.format; }); } function ee(l, t, e) { var d, v, s; if (oe(l) && (l = l.contents), C(l)) return l; if (y(l)) { const g = (v = (d = e.schema[R]).createNode) == null ? void 0 : v.call(d, e.schema, null, e); return g.items.push(l), g; } (l instanceof String || l instanceof Number || l instanceof Boolean || typeof BigInt < "u" && l instanceof BigInt) && (l = l.valueOf()); const { aliasDuplicateObjects: o, onAnchor: r, onTagObj: a, schema: n, sourceObjects: p } = e; let c; if (o && l && typeof l == "object") { if (c = p.get(l), c) return c.anchor || (c.anchor = r(l)), new Qe(c.anchor); c = { anchor: null, node: null }, p.set(l, c); } let f = Ke(l, t, n.tags); if (!f) { if (l && typeof l.toJSON == "function" && (l = l.toJSON()), !l || typeof l != "object") { const g = new x(l); return c && (c.node = g), g; } f = l instanceof Map ? n[R] : Symbol.iterator in Object(l) ? n[V] : n[R]; } a && (a(f), delete e.onTagObj); const m = f != null && f.createNode ? f.createNode(e.schema, l, e) : typeof ((s = f == null ? void 0 : f.nodeClass) == null ? void 0 : s.from) == "function" ? f.nodeClass.from(e.schema, l, e) : new x(l); return f.default || (m.tag = f.tag), c && (c.node = m), m; } function ye(l, t, e) { let o = e; for (let r = t.length - 1; r >= 0; --r) { const a = t[r]; if (typeof a == "number" && Number.isInteger(a) && a >= 0) { const n = []; n[a] = o, o = n; } else o = /* @__PURE__ */ new Map([[a, o]]); } return ee(o, void 0, { aliasDuplicateObjects: !1, keepUndefined: !1, onAnchor: () => { throw new Error("This should not happen, please report a bug."); }, schema: l, sourceObjects: /* @__PURE__ */ new Map() }); } const $e = (l) => l == null || typeof l == "object" && !!l[Symbol.iterator]().next().done; class We extends ue { constructor(t, e) { super(t), Object.defineProperty(this, "schema", { value: e, configurable: !0, enumerable: !1, writable: !0 }); } /** * Create a copy of this collection. * * @param schema - If defined, overwrites the original's schema */ clone(t) { const e = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this)); return t && (e.schema = t), e.items = e.items.map((o) => C(o) || y(o) ? o.clone(t) : o), this.range && (e.range = this.range.slice()), e; } /** * Adds a value to the collection. For `!!map` and `!!omap` the value must * be a Pair instance or a `{ key, value }` object, which may not have a key * that already exists in the map. */ addIn(t, e) { if ($e(t)) this.add(e); else { const [o, ...r] = t, a = this.get(o, !0); if (S(a)) a.addIn(r, e); else if (a === void 0 && this.schema) this.set(o, ye(this.schema, r, e)); else throw new Error(`Expected YAML collection at ${o}. Remaining path: ${r}`); } } /** * Removes a value from the collection. * @returns `true` if the item was found and removed. */ deleteIn(t) { const [e, ...o] = t; if (o.length === 0) return this.delete(e); const r = this.get(e, !0); if (S(r)) return r.deleteIn(o); throw new Error(`Expected YAML collection at ${e}. Remaining path: ${o}`); } /** * Returns item at `key`, or `undefined` if not found. By default unwraps * scalar values from their surrounding node; to disable set `keepScalar` to * `true` (collections are always returned intact). */ getIn(t, e) { const [o, ...r] = t, a = this.get(o, !0); return r.length === 0 ? !e && B(a) ? a.value : a : S(a) ? a.getIn(r, e) : void 0; } hasAllNullValues(t) { return this.items.every((e) => { if (!y(e)) return !1; const o = e.value; return o == null || t && B(o) && o.value == null && !o.commentBefore && !o.comment && !o.tag; }); } /** * Checks if the collection includes a value with the key `key`. */ hasIn(t) { const [e, ...o] = t; if (o.length === 0) return this.has(e); const r = this.get(e, !0); return S(r) ? r.hasIn(o) : !1; } /** * Sets a value in this collection. For `!!set`, `value` needs to be a * boolean to add/remove the item from the set. */ setIn(t, e) { const [o, ...r] = t; if (r.length === 0) this.set(o, e); else { const a = this.get(o, !0); if (S(a)) a.setIn(r, e); else if (a === void 0 && this.schema) this.set(o, ye(this.schema, r, e)); else throw new Error(`Expected YAML collection at ${o}. Remaining path: ${r}`); } } } const et = (l) => l.replace(/^(?!$)(?: $)?/gm, "#"); function N(l, t) { return /^\n+$/.test(l) ? l.substring(1) : t ? l.replace(/^(?! *$)/gm, t) : l; } const j = (l, t, e) => l.endsWith(` `) ? N(e, t) : e.includes(` `) ? ` ` + N(e, t) : (l.endsWith(" ") ? "" : " ") + e, Me = "flow", de = "block", K = "quoted"; function ae(l, t, e = "flow", { indentAtStart: o, lineWidth: r = 80, minContentWidth: a = 20, onFold: n, onOverflow: p } = {}) { if (!r || r < 0) return l; r < a && (a = 0); const c = Math.max(1 + a, 1 + r - t.length); if (l.length <= c) return l; const f = [], m = {}; let d = r - t.length; typeof o == "number" && (o > r - Math.max(2, a) ? f.push(0) : d = r - o); let v, s, g = !1, i = -1, b = -1, w = -1; e === de && (i = Ce(l, i, t.length), i !== -1 && (d = i + c)); for (let _; _ = l[i += 1]; ) { if (e === K && _ === "\\") { switch (b = i, l[i + 1]) { case "x": i += 3; break; case "u": i += 5; break; case "U": i += 9; break; default: i += 1; } w = i; } if (_ === ` `) e === de && (i = Ce(l, i, t.length)), d = i + t.length + c, v = void 0; else { if (_ === " " && s && s !== " " && s !== ` ` && s !== " ") { const h = l[i + 1]; h && h !== " " && h !== ` ` && h !== " " && (v = i); } if (i >= d) if (v) f.push(v), d = v + c, v = void 0; else if (e === K) { for (; s === " " || s === " "; ) s = _, _ = l[i += 1], g = !0; const h = i > w + 1 ? i - 2 : b - 1; if (m[h]) return l; f.push(h), m[h] = !0, d = h + c, v = void 0; } else g = !0; } s = _; } if (g && p && p(), f.length === 0) return l; n && n(); let u = l.slice(0, f[0]); for (let _ = 0; _ < f.length; ++_) { const h = f[_], k = f[_ + 1] || l.length; h === 0 ? u = ` ${t}${l.slice(0, k)}` : (e === K && m[h] && (u += `${l[h]}\\`), u += ` ${t}${l.slice(h + 1, k)}`); } return u; } function Ce(l, t, e) { let o = t, r = t + 1, a = l[r]; for (; a === " " || a === " "; ) if (t < r + e) a = l[++t]; else { do a = l[++t]; while (a && a !== ` `); o = t, r = t + 1, a = l[r]; } return o; } const re = (l, t) => ({ indentAtStart: t ? l.indent.length : l.indentAtStart, lineWidth: l.options.lineWidth, minContentWidth: l.options.minContentWidth }), ne = (l) => /^(%|---|\.\.\.)/m.test(l); function tt(l, t, e) { if (!t || t < 0) return !1; const o = t - e, r = l.length; if (r <= o) return !1; for (let a = 0, n = 0; a < r; ++a) if (l[a] === ` `) { if (a - n > o) return !0; if (n = a + 1, r - n <= o) return !1; } return !0; } function L(l, t) { const e = JSON.stringify(l); if (t.options.doubleQuotedAsJSON) return e; const { implicitKey: o } = t, r = t.options.doubleQuotedMinMultiLineLength, a = t.indent || (ne(l) ? " " : ""); let n = "", p = 0; for (let c = 0, f = e[c]; f; f = e[++c]) if (f === " " && e[c + 1] === "\\" && e[c + 2] === "n" && (n += e.slice(p, c) + "\\ ", c += 1, p = c, f = "\\"), f === "\\") switch (e[c + 1]) { case "u": { n += e.slice(p, c); const m = e.substr(c + 2, 4); switch (m) { case "0000": n += "\\0"; break; case "0007": n += "\\a"; break; case "000b": n += "\\v"; break; case "001b": n += "\\e"; break; case "0085": n += "\\N"; break; case "00a0": n += "\\_"; break; case "2028": n += "\\L"; break; case "2029": n += "\\P"; break; default: m.substr(0, 2) === "00" ? n += "\\x" + m.substr(2) : n += e.substr(c, 6); } c += 5, p = c + 1; } break; case "n": if (o || e[c + 2] === '"' || e.length < r) c += 1; else { for (n += e.slice(p, c) + ` `; e[c + 2] === "\\" && e[c + 3] === "n" && e[c + 4] !== '"'; ) n += ` `, c += 2; n += a, e[c + 2] === " " && (n += "\\"), c += 1, p = c + 1; } break; default: c += 1; } return n = p ? n + e.slice(p) : e, o ? n : ae(n, a, K, re(t, !1)); } function ve(l, t) { if (t.options.singleQuote === !1 || t.implicitKey && l.includes(` `) || /[ \t]\n|\n[ \t]/.test(l)) return L(l, t); const e = t.indent || (ne(l) ? " " : ""), o = "'" + l.replace(/'/g, "''").replace(/\n+/g, `$& ${e}`) + "'"; return t.implicitKey ? o : ae(o, e, Me, re(t, !1)); } function O(l, t) { const { singleQuote: e } = t.options; let o; if (e === !1) o = L; else { const r = l.includes('"'), a = l.includes("'"); r && !a ? o = ve : a && !r ? o = L : o = e ? ve : L; } return o(l, t); } let be; try { be = new RegExp(`(^|(?<! )) +(?! |$)`, "g"); } catch { be = /\n+(?!\n|$)/g; } function $({ comment: l, type: t, value: e }, o, r, a) { const { blockQuote: n, commentString: p, lineWidth: c } = o.options; if (!n || /\n[\t ]+$/.test(e) || /^\s*$/.test(e)) return O(e, o); const f = o.indent || (o.forceBlockIndent || ne(e) ? " " : ""), m = n === "literal" ? !0 : n === "folded" || t === x.BLOCK_FOLDED ? !1 : t === x.BLOCK_LITERAL ? !0 : !tt(e, c, f.length); if (!e) return m ? `| ` : `> `; let d, v; for (v = e.length; v > 0; --v) { const k = e[v - 1]; if (k !== ` ` && k !== " " && k !== " ") break; } let s = e.substring(v); const g = s.indexOf(` `); g === -1 ? d = "-" : e === s || g !== s.length - 1 ? (d = "+", a && a()) : d = "", s && (e = e.slice(0, -s.length), s[s.length - 1] === ` ` && (s = s.slice(0, -1)), s = s.replace(be, `$&${f}`)); let i = !1, b, w = -1; for (b = 0; b < e.length; ++b) { const k = e[b]; if (k === " ") i = !0; else if (k === ` `) w = b; else break; } let u = e.substring(0, w < b ? w + 1 : b); u && (e = e.substring(u.length), u = u.replace(/\n+/g, `$&${f}`)); let h = (i ? f ? "2" : "1" : "") + d; if (l && (h += " " + p(l.replace(/ ?[\r\n]+/g, " ")), r && r()), !m) { const k = e.replace(/\n+/g, ` $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${f}`); let P = !1; const E = re(o, !0); n !== "folded" && t !== x.BLOCK_FOLDED && (E.onOverflow = () => { P = !0; }); const Y = ae(`${u}${k}${s}`, f, de, E); if (!P) return `>${h} ${f}${Y}`; } return e = e.replace(/\n+/g, `$&${f}`), `|${h} ${f}${u}${e}${s}`; } function lt(l, t, e, o) { const { type: r, value: a } = l, { actualString: n, implicitKey: p, indent: c, indentStep: f, inFlow: m } = t; if (p && a.includes(` `) || m && /[[\]{},]/.test(a)) return O(a, t); if (!a || /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(a)) return p || m || !a.includes(` `) ? O(a, t) : $(l, t, e, o); if (!p && !m && r !== x.PLAIN && a.includes(` `)) return $(l, t, e, o); if (ne(a)) { if (c === "") return t.forceBlockIndent = !0, $(l, t, e, o); if (p && c === f) return O(a, t); } const d = a.replace(/\n+/g, `$& ${c}`); if (n) { const v = (i) => { var b; return i.default && i.tag !== "tag:yaml.org,2002:str" && ((b = i.test) == null ? void 0 : b.test(d)); }, { compat: s, tags: g } = t.doc.schema; if (g.some(v) || s != null && s.some(v)) return O(a, t); } return p ? d : ae(d, c, Me, re(t, !1)); } function ot(l, t, e, o) { const { implicitKey: r, inFlow: a } = t, n = typeof l.value == "string" ? l : Object.assign({}, l, { value: String(l.value) }); let { type: p } = l; p !== x.QUOTE_DOUBLE && /[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(n.value) && (p = x.QUOTE_DOUBLE); const c = (m) => { switch (m) { case x.BLOCK_FOLDED: case x.BLOCK_LITERAL: return r || a ? O(n.value, t) : $(n, t, e, o); case x.QUOTE_DOUBLE: return L(n.value, t); case x.QUOTE_SINGLE: return ve(n.value, t); case x.PLAIN: return lt(n, t, e, o); default: return null; } }; let f = c(p); if (f === null) { const { defaultKeyType: m, defaultStringType: d } = t.options, v = r && m || d; if (f = c(v), f === null) throw new Error(`Unsupported default string type ${v}`); } return f; } function at(l, t) { const e = Object.assign({ blockQuote: !0, commentString: et, defaultKeyType: null, defaultStringType: "PLAIN", directives: null, doubleQuotedAsJSON: !1, doubleQuotedMinMultiLineLength: 40, falseStr: "false", flowCollectionPadding: !0, indentSeq: !0, lineWidth: 80, minContentWidth: 20, nullStr: "null", simpleKeys: !1, singleQuote: null, trueStr: "true", verifyAliasOrder: !0 }, l.schema.toStringOptions, t); let o; switch (e.collectionStyle) { case "block": o = !1; break; case "flow": o = !0; break; default: o = null; } return { anchors: /* @__PURE__ */ new Set(), doc: l, flowCollectionPadding: e.flowCollectionPadding ? " " : "", indent: "", indentStep: typeof e.indent == "number" ? " ".repeat(e.indent) : " ", inFlow: o, options: e }; } function rt(l, t) { var r; if (t.tag) { const a = l.filter((n) => n.tag === t.tag); if (a.length > 0) return a.find((n) => n.format === t.format) ?? a[0]; } let e, o; if (B(t)) { o = t.value; let a = l.filter((n) => { var p; return (p = n.identify) == null ? void 0 : p.call(n, o); }); if (a.length > 1) { const n = a.filter((p) => p.test); n.length > 0 && (a = n); } e = a.find((n) => n.format === t.format) ?? a.find((n) => !n.format); } else o = t, e = l.find((a) => a.nodeClass && o instanceof a.nodeClass); if (!e) { const a = ((r = o == null ? void 0 : o.constructor) == null ? void 0 : r.name) ?? typeof o; throw new Error(`Tag not resolved for ${a} value`); } return e; } function nt(l, t, { anchors: e, doc: o }) { if (!o.directives) return ""; const r = [], a = (B(l) || S(l)) && l.anchor; a && Ee(a) && (e.add(a), r.push(`&${a}`)); const n = l.tag ? l.tag : t.default ? null : t.tag; return n && r.push(o.directives.tagString(n)), r.join(" "); } function te(l, t, e, o) { var c; if (y(l)) return l.toString(t, e, o); if (Z(l)) { if (t.doc.directives) return l.toString(t); if ((c = t.resolvedAliases) != null && c.has(l)) throw new TypeError("Cannot stringify circular structure without alias nodes"); t.resolvedAliases ? t.resolvedAliases.add(l) : t.resolvedAliases = /* @__PURE__ */ new Set([l]), l = l.resolve(t.doc); } let r; const a = C(l) ? l : t.doc.createNode(l, { onTagObj: (f) => r = f }); r || (r = rt(t.doc.schema.tags, a)); const n = nt(a, r, t); n.length > 0 && (t.indentAtStart = (t.indentAtStart ?? 0) + n.length + 1); const p = typeof r.stringify == "function" ? r.stringify(a, t, e, o) : B(a) ? ot(a, t, e, o) : a.toString(t, e, o); return n ? B(a) || p[0] === "{" || p[0] === "[" ? `${n} ${p}` : `${n} ${t.indent}${p}` : p; } function ct({ key: l, value: t }, e, o, r) { const { allNullValues: a, doc: n, indent: p, indentStep: c, options: { commentString: f, indentSeq: m, simpleKeys: d } } = e; let v = C(l) && l.comment || null; if (d) { if (v) throw new Error("With simple keys, key nodes cannot have comments"); if (S(l) || !C(l) && typeof l == "object") { const E = "With simple keys, collection cannot be used as a key value"; throw new Error(E); } } let s = !d && (!l || v && t == null && !e.inFlow || S(l) || (B(l) ? l.type === x.BLOCK_FOLDED || l.type === x.BLOCK_LITERAL : typeof l == "object")); e = Object.assign({}, e, { allNullValues: !1, implicitKey: !s && (d || !a), indent: p + c }); let g = !1, i = !1, b = te(l, e, () => g = !0, () => i = !0); if (!s && !e.inFlow && b.length > 1024) { if (d) throw new Error("With simple keys, single line scalar must not span more than 1024 characters"); s = !0; } if (e.inFlow) { if (a || t == null) return g && o && o(), b === "" ? "?" : s ? `? ${b}` : b; } else if (a && !d || t == null && s) return b = `? ${b}`, v && !g ? b += j(b, e.indent, f(v)) : i && r && r(), b; g && (v = null), s ? (v && (b += j(b, e.indent, f(v))), b = `? ${b} ${p}:`) : (b = `${b}:`, v && (b += j(b, e.indent, f(v)))); let w, u, _; C(t) ? (w = !!t.spaceBefore, u = t.commentBefore, _ = t.comment) : (w = !1, u = null, _ = null, t && typeof t == "object" && (t = n.createNode(t))), e.implicitKey = !1, !s && !v && B(t) && (e.indentAtStart = b.length + 1), i = !1, !m && c.length >= 2 && !e.inFlow && !s && me(t) && !t.flow && !t.tag && !t.anchor && (e.indent = e.indent.substring(2)); let h = !1; const k = te(t, e, () => h = !0, () => i = !0); let P = " "; if (v || w || u) { if (P = w ? ` ` : "", u) { const E = f(u); P += ` ${N(E, e.indent)}`; } k === "" && !e.inFlow ? P === ` ` && (P = ` `) : P += ` ${e.indent}`; } else if (!s && S(t)) { const E = k[0], Y = k.indexOf(` `), we = Y !== -1, qe = e.inFlow ?? t.flow ?? t.items.length === 0; if (we || !qe) { let ke = !1; if (we && (E === "&" || E === "!")) { let A = k.indexOf(" "); E === "&" && A !== -1 && A < Y && k[A + 1] === "!" && (A = k.indexOf(" ", A + 1)), (A === -1 || Y < A) && (ke = !0); } ke || (P = ` ${e.indent}`); } } else (k === "" || k[0] === ` `) && (P = ""); return b += P + k, e.inFlow ? h && o && o() : _ && !h ? b += j(b, e.indent, f(_)) : i && r && r(), b; } function pt(l, t) { (l === "debug" || l === "warn") && console.warn(t); } const X = "<<", ce = { identify: (l) => l === X || typeof l == "symbol" && l.description === X, default: "key", tag: "tag:yaml.org,2002:merge", test: /^<<$/, resolve: () => Object.assign(new x(Symbol(X)), { addToJSMap: Ae }), stringify: () => X }, ft = (l, t) => (ce.identify(t) || B(t) && (!t.type || t.type === x.PLAIN) && ce.identify(t.value)) && (l == null ? void 0 : l.doc.schema.tags.some((e) => e.tag === ce.tag && e.default)); function Ae(l, t, e) { if (e = l && Z(e) ? e.resolve(l.doc) : e, me(e)) for (const o of e.items) pe(l, t, o); else if (Array.isArray(e)) for (const o of e) pe(l, t, o); else pe(l, t, e); } function pe(l, t, e) { const o = l && Z(e) ? e.resolve(l.doc) : e; if (!Ie(o)) throw new Error("Merge sources must be maps or map aliases"); const r = o.toJSON(null, l, Map); for (const [a, n] of r) t instanceof Map ? t.has(a) || t.set(a, n) : t instanceof Set ? t.add(a) : Object.prototype.hasOwnProperty.call(t, a) || Object.defineProperty(t, a, { value: n, writable: !0, enumerable: !0, configurable: !0 }); return t; } function Fe(l, t, { key: e, value: o }) { if (C(e) && e.addToJSMap) e.addToJSMap(l, t, o); else if (ft(l, e)) Ae(l, t, o); else { const r = I(e, "", l); if (t instanceof Map) t.set(r, I(o, r, l)); else if (t instanceof Set) t.add(r); else { const a = it(e, r, l), n = I(o, a, l); a in t ? Object.defineProperty(t, a, { value: n, writable: !0, enumerable: !0, configurable: !0 }) : t[a] = n; } } return t; } function it(l, t, e) { if (t === null) return ""; if (typeof t != "object") return String(t); if (C(l) && (e != null && e.doc)) { const o = at(e.doc, {}); o.anchors = /* @__PURE__ */ new Set(); for (const a of e.anchors.keys()) o.anchors.add(a.anchor); o.inFlow = !0, o.inStringifyKey = !0; const r = l.toString(o); if (!e.mapKeyWarned) { let a = JSON.stringify(r); a.length > 40 && (a = a.substring(0, 36) + '..."'), pt(e.doc.options.logLevel, `Keys with collection values will be stringified due to JS Object restrictions: ${a}. Set mapAsMap: true to use object keys.`), e.mapKeyWarned = !0; } return r; } return JSON.stringify(t); } function _e(l, t, e) { const o = ee(l, void 0, e), r = ee(t, void 0, e); return new W(o, r); } class W { constructor(t, e = null) { Object.defineProperty(this, z, { value: Pe }), this.key = t, this.value = e; } clone(t) { let { key: e, value: o } = this; return C(e) && (e = e.clone(t)), C(o) && (o = o.clone(t)), new W(e, o); } toJSON(t, e) { const o = e != null && e.mapAsMap ? /* @__PURE__ */ new Map() : {}; return Fe(e, o, this); } toString(t, e, o) { return t != null && t.doc ? ct(this, t, e, o) : JSON.stringify(this); } } function Ge(l, t, e) { return (t.inFlow ?? l.flow ? vt : dt)(l, t, e); } function dt({ comment: l, items: t }, e, { blockItemPrefix: o, flowChars: r, itemIndent: a, onChompKeep: n, onComment: p }) { const { indent: c, options: { commentString: f } } = e, m = Object.assign({}, e, { indent: a, type: null }); let d = !1; const v = []; for (let g = 0; g < t.length; ++g) { const i = t[g]; let b = null; if (C(i)) !d && i.spaceBefore && v.push(""), le(e, v, i.commentBefore, d), i.comment && (b = i.comment); else if (y(i)) { const u = C(i.key) ? i.key : null; u && (!d && u.spaceBefore && v.push(""), le(e, v, u.commentBefore, d)); } d = !1; let w = te(i, m, () => b = null, () => d = !0); b && (w += j(w, a, f(b))), d && b && (d = !1), v.push(o + w); } let s; if (v.length === 0) s = r.start + r.end; else { s = v[0]; for (let g = 1; g < v.length; ++g) { const i = v[g]; s += i ? ` ${c}${i}` : ` `; } } return l ? (s += ` ` + N(f(l), c), p && p()) : d && n && n(), s; } function vt({ items: l }, t, { flowChars: e, itemIndent: o }) { const { indent: r, indentStep: a, flowCollectionPadding: n, options: { commentString: p } } = t; o += a; const c = Object.assign({}, t, { indent: o, inFlow: !0, type: null }); let f = !1, m = 0; const d = []; for (let g = 0; g < l.length; ++g) { const i = l[g]; let b = null; if (C(i)) i.spaceBefore && d.push(""), le(t, d, i.commentBefore, !1), i.comment && (b = i.comment); else if (y(i)) { const u = C(i.key) ? i.key : null; u && (u.spaceBefore && d.push(""), le(t, d, u.commentBefore, !1), u.comment && (f = !0)); const _ = C(i.value) ? i.value : null; _ ? (_.comment && (b = _.comment), _.commentBefore && (f = !0)) : i.value == null && (u != null && u.comment) && (b = u.comment); } b && (f = !0); let w = te(i, c, () => b = null); g < l.length - 1 && (w += ","), b && (w += j(w, o, p(b))), !f && (d.length > m || w.includes(` `)) && (f = !0), d.push(w), m = d.length; } const { start: v, end: s } = e; if (d.length === 0) return v + s; if (!f) { const g = d.reduce((i, b) => i + b.length + 2, 2); f = t.options.lineWidth > 0 && g > t.options.lineWidth; } if (f) { let g = v; for (const i of d) g += i ? ` ${a}${r}${i}` : ` `; return `${g} ${r}${s}`; } else return `${v}${n}${d.join(" ")}${n}${s}`; } function le({ indent: l, options: { commentString: t } }, e, o, r) { if (o && r && (o = o.replace(/^\n+/, "")), o) { const a = N(t(o), l); e.push(a.trimStart()); } } function G(l, t) { const e = B(t) ? t.value : t; for (const o of l) if (y(o) && (o.key === t || o.key === e || B(o.key) && o.key.value === e)) return o; } class q extends We { static get tagName() { return "tag:yaml.org,2002:map"; } constructor(t) { super(R, t), this.items = []; } /** * A generic collection parsing method that can be extended * to other node classes that inherit from YAMLMap */ static from(t, e, o) { const { keepUndefined: r, replacer: a } = o, n = new this(t), p = (c, f) => { if (typeof a == "function") f = a.call(e, c, f); else if (Array.isArray(a) && !a.includes(c)) return; (f !== void 0 || r) && n.items.push(_e(c, f, o)); }; if (e instanceof Map) for (const [c, f] of e) p(c, f); else if (e && typeof e == "object") for (const c of Object.keys(e)) p(c, e[c]); return typeof t.sortMapEntries == "function" && n.items.sort(t.sortMapEntries), n; } /** * Adds a value to the collection. * * @param overwrite - If not set `true`, using a key that is already in the * collection will throw. Otherwise, overwrites the previous value. */ add(t, e) { var n; let o; y(t) ? o = t : !t || typeof t != "object" || !("key" in t) ? o = new W(t, t == null ? void 0 : t.value) : o = new W(t.key, t.value); const r = G(this.items, o.key), a = (n = this.schema) == null ? void 0 : n.sortMapEntries; if (r) { if (!e) throw new Error(`Key ${o.key} already set`); B(r.value) && ze(o.value) ? r.value.value = o.value : r.value = o.value; } else if (a) { const p = this.items.findIndex((c) => a(o, c) < 0); p === -1 ? this.items.push(o) : this.items.splice(p, 0, o); } else this.items.push(o); } delete(t) { const e = G(this.items, t); return e ? this.items.splice(this.items.indexOf(e), 1).length > 0 : !1; } get(t, e) { const o = G(this.items, t), r = o == null ? void 0 : o.value; return (!e && B(r) ? r.value : r) ?? void 0; } has(t) { return !!G(this.items, t); } set(t, e) { this.add(new W(t, e), !0); } /** * @param ctx - Conversion context, originally set in Document#toJS() * @param {Class} Type - If set, forces the returned collection type * @returns Instance of Type, Map, or Object */ toJSON(t, e, o) { const r = o ? new o() : e != null && e.mapAsMap ? /* @__PURE__ */ new Map() : {}; e != null && e.onCreate && e.onCreate(r); for (const a of this.items) Fe(e, r, a); return r; } toString(t, e, o) { if (!t) return JSON.stringify(this); for (const r of this.items) if (!y(r)) throw new Error(`Map items must all be pairs; found ${JSON.stringify(r)} instead`); return !t.allNullValues && this.hasAllNullValues(!1) && (t = Object.assign({}, t, { allNullValues: !0 })), Ge(this, t, { blockItemPrefix: "", flowChars: { start: "{", end: "}" }, itemIndent: t.indent || "", onChompKeep: o, onComment: e }); } } class Re extends We { static get tagName() { return "tag:yaml.org,2002:seq"; } constructor(t) { super(V, t), this.items = []; } add(t) { this.items.push(t); } /** * Removes a value from the collection. * * `key` must contain a representation of an integer for this to succeed. * It may be wrapped in a `Scalar`. * * @returns `true` if the item was found and removed. */ delete(t) { const e = J(t); return typeof e != "number" ? !1 : this.items.splice(e, 1).length > 0; } get(t, e) { const o = J(t); if (typeof o != "number") return; const r = this.items[o]; return !e && B(r) ? r.value : r; } /** * Checks if the collection includes a value with the key `key`. * * `key` must contain a representation of an integer for this to succeed. * It may be wrapped in a `Scalar`. */ has(t) { const e = J(t); return typeof e == "number" && e < this.items.length; } /** * Sets a value in this collection. For `!!set`, `value` needs to be a * boolean to add/remove the item from the set. * * If `key` does not contain a representation of an integer, this will throw. * It may be wrapped in a `Scalar`. */ set(t, e) { const o = J(t); if (typeof o != "number") throw new Error(`Expected a valid index, not ${t}.`); const r = this.items[o]; B(r) && ze(e) ? r.value = e : this.items[o] = e; } toJSON(t, e) { const o = []; e != null && e.onCreate && e.onCreate(o); let r = 0; for (const a of this.items) o.push(I(a, String(r++), e)); return o; } toString(t, e, o) { return t ? Ge(this, t, { blockItemPrefix: "- ", flowChars: { start: "[", end: "]" }, itemIndent: (t.indent || "") + " ", onChompKeep: o, onComment: e }) : JSON.stringify(this); } static from(t, e, o) { const { replacer: r } = o, a = new this(t); if (e && Symbol.iterator in Object(e)) { let n = 0; for (let p of e) { if (typeof r == "function") { const c = e instanceof Set ? p : String(n++); p = r.call(e, c, p); } a.items.push(ee(p, void 0, o)); } } return a; } } function J(l) { let t = B(l) ? l.value : l; return t && typeof t == "string" && (t = Number(t)), typeof t == "number" && Number.isInteger(t) && t >= 0 ? t : null; } function bt(l, t, e) { const { replacer: o } = e, r = new Re(l); r.tag = "tag:yaml.org,2002:pairs"; let a = 0; if (t && Symbol.iterator in Object(t)) for (let n of t) { typeof o == "function" && (n = o.call(t, String(a++), n)); let p, c; if (Array.isArray(n)) if (n.length === 2) p = n[0], c = n[1]; else throw new TypeError(`Expected [key, value] tuple: ${n}`); else if (n && n instanceof Object) { const f = Object.keys(n); if (f.length === 1) p = f[0], c = n[p]; else throw new TypeError(`Expected tuple with one key, not ${f.length} keys`); } else p = n; r.items.push(_e(p, c, e)); } return r; } class he extends Re { constructor() { super(), this.add = q.prototype.add.bind(this), this.delete = q.prototype.delete.bind(this), this.get = q.prototype.get.bind(this), this.has = q.prototype.has.bind(this), this.set = q.prototype.set.bind(this), this.tag = he.tag; } /** * If `ctx` is given, the return type is actually `Map<unknown, unknown>`, * but TypeScript won't allow widening the signature of a child method. */ toJSON(t, e) { if (!e) return super.toJSON(t); const o = /* @__PURE__ */ new Map(); e != null && e.onCreate && e.onCreate(o); for (const r of this.items) { let a, n; if (y(r) ? (a = I(r.key, "", e), n = I(r.value, a, e)) : a = I(r, "", e), o.has(a)) throw new Error("Ordered maps must not include duplicate keys"); o.set(a, n); } return o; } static from(t, e, o) { const r = bt(t, e, o), a = new this(); return a.items = r.items, a; } } he.tag = "tag:yaml.org,2002:omap"; class xe extends q { constructor(t) { super(t), this.tag = xe.tag; } add(t) { let e; y(t) ? e = t : t && typeof t == "object" && "key" in t && "value" in t && t.value === null ? e = new W(t.key, null) : e = new W(t, null), G(this.items, e.key) || this.items.push(e); } /** * If `keepPair` is `true`, returns the Pair matching `key`. * Otherwise, returns the value of that Pair's key. */ get(t, e) { const o = G(this.items, t); return !e && y(o) ? B(o.key) ? o.key.value : o.key : o; } set(t, e) { if (typeof e != "boolean") throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof e}`); const o = G(this.items, t); o && !e ? this.items.splice(this.items.indexOf(o), 1) : !o && e && this.items.push(new W(t)); } toJSON(t, e) { return super.toJSON(t, e, Set); } toString(t, e, o) { if (!t) return JSON.stringify(this); if (this.hasAllNullValues(!0)) return super.toString(Object.assign({}, t, { allNullValues: !0 }), e, o); throw new Error("Set items must all have null values"); } static from(t, e, o) { const { replacer: r } = o, a = new this(t); if (e && Symbol.iterator in Object(e)) for (let n of e) typeof r == "function" && (n = r.call(e, n, n)), a.items.push(_e(n, null, o)); return a; } } xe.tag = "tag:yaml.org,2002:set"; new Set("0123456789ABCDEFabcdef"); new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"); new Set(",[]{}"); new Set(` ,[]{} \r `); process.env.HUB_API_PREFIX; const st = Oe({}); function gt() { return je(st); } const fe = "pf-v6-theme-light", ie = "pf-v6-theme-dark", mt = () => { const [l, t] = Se(null), { activeTheme: e } = He(), o = () => window[0], r = (a) => { if (window.location.href.startsWith(a.origin) && window === a.source && a.data) try { const n = JSON.parse(a.data); t(n.context); } catch { t(null); } }; return Be(function() { const a = o(); return a.addEventListener("message", r), () => a.removeEventListener("message", r); }, []), Be( function() { if (e) { const a = o().document.getElementsByTagName("html")[0].classList; e === "dark" ? (a.remove(fe), a.add(ie)) : e === "light" ? (a.remove(ie), a.add(fe)) : a.remove(fe, ie); } }, [e] ), /* @__PURE__ */ M.jsx(Te, { username: l == null ? void 0 : l.username }); }, ut = '@charset "UTF-8";.ws-full-page-utils{position:fixed;right:0;bottom:0;padding:var(--pf-t--global--spacer--lg);z-index:var(--pf-t--global--z-index--2xl)}.ws-full-page-utils:before{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background-color:var(--pf-t--global--background--color--floating--default);opacity:0;box-shadow:var(--pf-t--global--box-shadow--sm)}.action-button-clicked{background-color:#80808040!important}:where(html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6){padding:0;margin:0}*,*:before,*:after{box-sizing:border-box;scrollbar-color:var(--pf-t--global--border--color--default) transparent}*::-webkit-scrollbar-thumb{background-color:var(--pf-t--global--border--color--default);border-radius:var(--pf-t--global--spacer--xs)}*::-webkit-scrollbar-track{background-color:transparent}*::-webkit-scrollbar{max-width:var(--pf-t--global--spacer--sm);max-height:var(--pf-t--global--spacer--sm)}:where(html,body){height:100%}:where(body){font-family:var(--pf-t--global--font--family--body);font-size:var(--pf-t--global--font--size--body--default);font-weight:var(--pf-t--global--font--weight--body--default);line-height:var(--pf-t--global--font--line-height--body);color:var(--pf-t--global--text--color--regular)}:where(h1,h2,h3,h4,h5,h6){font-size:100%;font-weight:var(--pf-t--global--font--weight--body--default)}:where(ul){list-style:none}:where(button,input,optgroup,select,textarea){margin:0;font-family:inherit;font-size:100%;line-height:var(--pf-t--global--font--line-height--body);color:var(--pf-t--global--text--color--regular)}:where(img,embed,iframe,object,audio,video){max-width:100%;height:auto}:where(iframe){border:0}:where(table){border-spacing:0;border-collapse:collapse}:where(td,th){padding:0;text-align:start}:where(code,pre){font-family:var(--pf-t--global--font--family--mono)}:where(a){color:var(--pf-t--global--text--color--link--default);text-decoration:var(--pf-t--global--text-decoration--link--line--default)}:where(a:hover,a:focus){color:var(--pf-t--global--text--color--link--hover);text-decoration:var(--pf-t--global--text-decoration--link--line--hover)}:where(a,button){cursor:pointer}:where(.pf-v6-theme-dark){color-scheme:dark}.pf-v6-screen-reader{position:fixed;inset-block-start:0;inset-inline-start:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pf-v6-screen-reader.pf-m-full-size{width:100%;height:100%}.pf-v6-screen-reader.pf-m-absolute{position:absolute}.pf-v6-m-tabular-nums{font-variant-numeric:tabular-nums}.pf-v6-m-legacy-font{--pf-t--global--font--family--body: var(--pf-t--global--font--family--body--legacy);--pf-t--global--font--family--heading: var(--pf-t--global--font--family--heading--legacy);--pf-t--global--font--family--mono: var(--pf-t--global--font--family--mono--legacy);--pf-t--global--font--weight--body: var(--pf-t--global--font--weight--body--legacy);--pf-t--global--font--weight--body--bold: var(--pf-t--global--font--weight--body--bold--legacy);--pf-t--global--font--weight--heading: var(--pf-t--global--font--weight--heading--legacy);--pf-t--global--font--weight--heading--bold: var(--pf-t--global--font--weight--heading--bold--legacy)}.pf-v6-m-dir-rtl{--pf-v6-global--inverse--multiplier: -1;direction:rtl}.pf-v6-m-dir-ltr{--pf-v6-global--inverse--multiplier: 1;direction:ltr}:where(.pf-v6-m-dir-rtl,[dir=rtl]) .pf-v6-m-mirror-inline-rtl{scale:-1 1}.pf-v6-m-no-motion{--pf-t--global--delay--400: 0ms !important;--pf-t--global--delay--300: 0ms !important;--pf-t--global--delay--200: 0ms !important;--pf-t--global--delay--100: 0ms !important;--pf-t--global--duration--600: 0ms !important;--pf-t--global--duration--500: 0ms !important;--pf-t--global--duration--400: 0ms !important;--pf-t--global--duration--300: 0ms !important;--pf-t--global--duration--200: 0ms !important;--pf-t--global--duration--100: 0ms !important;--pf-t--global--duration--50: 0ms !important}@font-face{font-family:Red Hat Text;font-style:normal;font-weight:400 500;src:url(data:font/woff2;base64,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