Files
Web-Printing-Toolkit/node_modules/@digasystems/ipp-browser/dist/ipp-browser.js
TheGreydiamond 7b45a854fe inital commit
2025-08-18 20:02:43 +02:00

5024 lines
143 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var xt = Object.defineProperty;
var wt = (u, d, f) => d in u ? xt(u, d, { enumerable: !0, configurable: !0, writable: !0, value: f }) : u[d] = f;
var _e = (u, d, f) => (wt(u, typeof d != "symbol" ? d + "" : d, f), f);
var be = {}, Ue = {};
Ue.byteLength = jt;
Ue.toByteArray = Bt;
Ue.fromByteArray = Tt;
var le = [], re = [], vt = typeof Uint8Array < "u" ? Uint8Array : Array, qe = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
for (var je = 0, _t = qe.length; je < _t; ++je)
le[je] = qe[je], re[qe.charCodeAt(je)] = je;
re["-".charCodeAt(0)] = 62;
re["_".charCodeAt(0)] = 63;
function et(u) {
var d = u.length;
if (d % 4 > 0)
throw new Error("Invalid string. Length must be a multiple of 4");
var f = u.indexOf("=");
f === -1 && (f = d);
var x = f === d ? 0 : 4 - f % 4;
return [f, x];
}
function jt(u) {
var d = et(u), f = d[0], x = d[1];
return (f + x) * 3 / 4 - x;
}
function kt(u, d, f) {
return (d + f) * 3 / 4 - f;
}
function Bt(u) {
var d, f = et(u), x = f[0], w = f[1], j = new vt(kt(u, x, w)), _ = 0, c = w > 0 ? x - 4 : x, C;
for (C = 0; C < c; C += 4)
d = re[u.charCodeAt(C)] << 18 | re[u.charCodeAt(C + 1)] << 12 | re[u.charCodeAt(C + 2)] << 6 | re[u.charCodeAt(C + 3)], j[_++] = d >> 16 & 255, j[_++] = d >> 8 & 255, j[_++] = d & 255;
return w === 2 && (d = re[u.charCodeAt(C)] << 2 | re[u.charCodeAt(C + 1)] >> 4, j[_++] = d & 255), w === 1 && (d = re[u.charCodeAt(C)] << 10 | re[u.charCodeAt(C + 1)] << 4 | re[u.charCodeAt(C + 2)] >> 2, j[_++] = d >> 8 & 255, j[_++] = d & 255), j;
}
function Et(u) {
return le[u >> 18 & 63] + le[u >> 12 & 63] + le[u >> 6 & 63] + le[u & 63];
}
function It(u, d, f) {
for (var x, w = [], j = d; j < f; j += 3)
x = (u[j] << 16 & 16711680) + (u[j + 1] << 8 & 65280) + (u[j + 2] & 255), w.push(Et(x));
return w.join("");
}
function Tt(u) {
for (var d, f = u.length, x = f % 3, w = [], j = 16383, _ = 0, c = f - x; _ < c; _ += j)
w.push(It(u, _, _ + j > c ? c : _ + j));
return x === 1 ? (d = u[f - 1], w.push(
le[d >> 2] + le[d << 4 & 63] + "=="
)) : x === 2 && (d = (u[f - 2] << 8) + u[f - 1], w.push(
le[d >> 10] + le[d >> 4 & 63] + le[d << 2 & 63] + "="
)), w.join("");
}
var Ne = {};
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
Ne.read = function(u, d, f, x, w) {
var j, _, c = w * 8 - x - 1, C = (1 << c) - 1, Z = C >> 1, G = -7, N = f ? w - 1 : 0, te = f ? -1 : 1, W = u[d + N];
for (N += te, j = W & (1 << -G) - 1, W >>= -G, G += c; G > 0; j = j * 256 + u[d + N], N += te, G -= 8)
;
for (_ = j & (1 << -G) - 1, j >>= -G, G += x; G > 0; _ = _ * 256 + u[d + N], N += te, G -= 8)
;
if (j === 0)
j = 1 - Z;
else {
if (j === C)
return _ ? NaN : (W ? -1 : 1) * (1 / 0);
_ = _ + Math.pow(2, x), j = j - Z;
}
return (W ? -1 : 1) * _ * Math.pow(2, j - x);
};
Ne.write = function(u, d, f, x, w, j) {
var _, c, C, Z = j * 8 - w - 1, G = (1 << Z) - 1, N = G >> 1, te = w === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0, W = x ? 0 : j - 1, ue = x ? 1 : -1, oe = d < 0 || d === 0 && 1 / d < 0 ? 1 : 0;
for (d = Math.abs(d), isNaN(d) || d === 1 / 0 ? (c = isNaN(d) ? 1 : 0, _ = G) : (_ = Math.floor(Math.log(d) / Math.LN2), d * (C = Math.pow(2, -_)) < 1 && (_--, C *= 2), _ + N >= 1 ? d += te / C : d += te * Math.pow(2, 1 - N), d * C >= 2 && (_++, C /= 2), _ + N >= G ? (c = 0, _ = G) : _ + N >= 1 ? (c = (d * C - 1) * Math.pow(2, w), _ = _ + N) : (c = d * Math.pow(2, N - 1) * Math.pow(2, w), _ = 0)); w >= 8; u[f + W] = c & 255, W += ue, c /= 256, w -= 8)
;
for (_ = _ << w | c, Z += w; Z > 0; u[f + W] = _ & 255, W += ue, _ /= 256, Z -= 8)
;
u[f + W - ue] |= oe * 128;
};
/*!
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <https://feross.org>
* @license MIT
*/
(function(u) {
const d = Ue, f = Ne, x = typeof Symbol == "function" && typeof Symbol.for == "function" ? Symbol.for("nodejs.util.inspect.custom") : null;
u.Buffer = c, u.SlowBuffer = y, u.INSPECT_MAX_BYTES = 50;
const w = 2147483647;
u.kMaxLength = w, c.TYPED_ARRAY_SUPPORT = j(), !c.TYPED_ARRAY_SUPPORT && typeof console < "u" && typeof console.error == "function" && console.error(
"This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."
);
function j() {
try {
const r = new Uint8Array(1), e = { foo: function() {
return 42;
} };
return Object.setPrototypeOf(e, Uint8Array.prototype), Object.setPrototypeOf(r, e), r.foo() === 42;
} catch {
return !1;
}
}
Object.defineProperty(c.prototype, "parent", {
enumerable: !0,
get: function() {
if (c.isBuffer(this))
return this.buffer;
}
}), Object.defineProperty(c.prototype, "offset", {
enumerable: !0,
get: function() {
if (c.isBuffer(this))
return this.byteOffset;
}
});
function _(r) {
if (r > w)
throw new RangeError('The value "' + r + '" is invalid for option "size"');
const e = new Uint8Array(r);
return Object.setPrototypeOf(e, c.prototype), e;
}
function c(r, e, t) {
if (typeof r == "number") {
if (typeof e == "string")
throw new TypeError(
'The "string" argument must be of type string. Received type number'
);
return N(r);
}
return C(r, e, t);
}
c.poolSize = 8192;
function C(r, e, t) {
if (typeof r == "string")
return te(r, e);
if (ArrayBuffer.isView(r))
return ue(r);
if (r == null)
throw new TypeError(
"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof r
);
if (pe(r, ArrayBuffer) || r && pe(r.buffer, ArrayBuffer) || typeof SharedArrayBuffer < "u" && (pe(r, SharedArrayBuffer) || r && pe(r.buffer, SharedArrayBuffer)))
return oe(r, e, t);
if (typeof r == "number")
throw new TypeError(
'The "value" argument must not be of type number. Received type number'
);
const i = r.valueOf && r.valueOf();
if (i != null && i !== r)
return c.from(i, e, t);
const s = ce(r);
if (s)
return s;
if (typeof Symbol < "u" && Symbol.toPrimitive != null && typeof r[Symbol.toPrimitive] == "function")
return c.from(r[Symbol.toPrimitive]("string"), e, t);
throw new TypeError(
"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof r
);
}
c.from = function(r, e, t) {
return C(r, e, t);
}, Object.setPrototypeOf(c.prototype, Uint8Array.prototype), Object.setPrototypeOf(c, Uint8Array);
function Z(r) {
if (typeof r != "number")
throw new TypeError('"size" argument must be of type number');
if (r < 0)
throw new RangeError('The value "' + r + '" is invalid for option "size"');
}
function G(r, e, t) {
return Z(r), r <= 0 ? _(r) : e !== void 0 ? typeof t == "string" ? _(r).fill(e, t) : _(r).fill(e) : _(r);
}
c.alloc = function(r, e, t) {
return G(r, e, t);
};
function N(r) {
return Z(r), _(r < 0 ? 0 : F(r) | 0);
}
c.allocUnsafe = function(r) {
return N(r);
}, c.allocUnsafeSlow = function(r) {
return N(r);
};
function te(r, e) {
if ((typeof e != "string" || e === "") && (e = "utf8"), !c.isEncoding(e))
throw new TypeError("Unknown encoding: " + e);
const t = k(r, e) | 0;
let i = _(t);
const s = i.write(r, e);
return s !== t && (i = i.slice(0, s)), i;
}
function W(r) {
const e = r.length < 0 ? 0 : F(r.length) | 0, t = _(e);
for (let i = 0; i < e; i += 1)
t[i] = r[i] & 255;
return t;
}
function ue(r) {
if (pe(r, Uint8Array)) {
const e = new Uint8Array(r);
return oe(e.buffer, e.byteOffset, e.byteLength);
}
return W(r);
}
function oe(r, e, t) {
if (e < 0 || r.byteLength < e)
throw new RangeError('"offset" is outside of buffer bounds');
if (r.byteLength < e + (t || 0))
throw new RangeError('"length" is outside of buffer bounds');
let i;
return e === void 0 && t === void 0 ? i = new Uint8Array(r) : t === void 0 ? i = new Uint8Array(r, e) : i = new Uint8Array(r, e, t), Object.setPrototypeOf(i, c.prototype), i;
}
function ce(r) {
if (c.isBuffer(r)) {
const e = F(r.length) | 0, t = _(e);
return t.length === 0 || r.copy(t, 0, 0, e), t;
}
if (r.length !== void 0)
return typeof r.length != "number" || Re(r.length) ? _(0) : W(r);
if (r.type === "Buffer" && Array.isArray(r.data))
return W(r.data);
}
function F(r) {
if (r >= w)
throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + w.toString(16) + " bytes");
return r | 0;
}
function y(r) {
return +r != r && (r = 0), c.alloc(+r);
}
c.isBuffer = function(e) {
return e != null && e._isBuffer === !0 && e !== c.prototype;
}, c.compare = function(e, t) {
if (pe(e, Uint8Array) && (e = c.from(e, e.offset, e.byteLength)), pe(t, Uint8Array) && (t = c.from(t, t.offset, t.byteLength)), !c.isBuffer(e) || !c.isBuffer(t))
throw new TypeError(
'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array'
);
if (e === t)
return 0;
let i = e.length, s = t.length;
for (let l = 0, h = Math.min(i, s); l < h; ++l)
if (e[l] !== t[l]) {
i = e[l], s = t[l];
break;
}
return i < s ? -1 : s < i ? 1 : 0;
}, c.isEncoding = function(e) {
switch (String(e).toLowerCase()) {
case "hex":
case "utf8":
case "utf-8":
case "ascii":
case "latin1":
case "binary":
case "base64":
case "ucs2":
case "ucs-2":
case "utf16le":
case "utf-16le":
return !0;
default:
return !1;
}
}, c.concat = function(e, t) {
if (!Array.isArray(e))
throw new TypeError('"list" argument must be an Array of Buffers');
if (e.length === 0)
return c.alloc(0);
let i;
if (t === void 0)
for (t = 0, i = 0; i < e.length; ++i)
t += e[i].length;
const s = c.allocUnsafe(t);
let l = 0;
for (i = 0; i < e.length; ++i) {
let h = e[i];
if (pe(h, Uint8Array))
l + h.length > s.length ? (c.isBuffer(h) || (h = c.from(h)), h.copy(s, l)) : Uint8Array.prototype.set.call(
s,
h,
l
);
else if (c.isBuffer(h))
h.copy(s, l);
else
throw new TypeError('"list" argument must be an Array of Buffers');
l += h.length;
}
return s;
};
function k(r, e) {
if (c.isBuffer(r))
return r.length;
if (ArrayBuffer.isView(r) || pe(r, ArrayBuffer))
return r.byteLength;
if (typeof r != "string")
throw new TypeError(
'The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof r
);
const t = r.length, i = arguments.length > 2 && arguments[2] === !0;
if (!i && t === 0)
return 0;
let s = !1;
for (; ; )
switch (e) {
case "ascii":
case "latin1":
case "binary":
return t;
case "utf8":
case "utf-8":
return Ce(r).length;
case "ucs2":
case "ucs-2":
case "utf16le":
case "utf-16le":
return t * 2;
case "hex":
return t >>> 1;
case "base64":
return Qe(r).length;
default:
if (s)
return i ? -1 : Ce(r).length;
e = ("" + e).toLowerCase(), s = !0;
}
}
c.byteLength = k;
function T(r, e, t) {
let i = !1;
if ((e === void 0 || e < 0) && (e = 0), e > this.length || ((t === void 0 || t > this.length) && (t = this.length), t <= 0) || (t >>>= 0, e >>>= 0, t <= e))
return "";
for (r || (r = "utf8"); ; )
switch (r) {
case "hex":
return pt(this, e, t);
case "utf8":
case "utf-8":
return $e(this, e, t);
case "ascii":
return ut(this, e, t);
case "latin1":
case "binary":
return ct(this, e, t);
case "base64":
return at(this, e, t);
case "ucs2":
case "ucs-2":
case "utf16le":
case "utf-16le":
return lt(this, e, t);
default:
if (i)
throw new TypeError("Unknown encoding: " + r);
r = (r + "").toLowerCase(), i = !0;
}
}
c.prototype._isBuffer = !0;
function q(r, e, t) {
const i = r[e];
r[e] = r[t], r[t] = i;
}
c.prototype.swap16 = function() {
const e = this.length;
if (e % 2 !== 0)
throw new RangeError("Buffer size must be a multiple of 16-bits");
for (let t = 0; t < e; t += 2)
q(this, t, t + 1);
return this;
}, c.prototype.swap32 = function() {
const e = this.length;
if (e % 4 !== 0)
throw new RangeError("Buffer size must be a multiple of 32-bits");
for (let t = 0; t < e; t += 4)
q(this, t, t + 3), q(this, t + 1, t + 2);
return this;
}, c.prototype.swap64 = function() {
const e = this.length;
if (e % 8 !== 0)
throw new RangeError("Buffer size must be a multiple of 64-bits");
for (let t = 0; t < e; t += 8)
q(this, t, t + 7), q(this, t + 1, t + 6), q(this, t + 2, t + 5), q(this, t + 3, t + 4);
return this;
}, c.prototype.toString = function() {
const e = this.length;
return e === 0 ? "" : arguments.length === 0 ? $e(this, 0, e) : T.apply(this, arguments);
}, c.prototype.toLocaleString = c.prototype.toString, c.prototype.equals = function(e) {
if (!c.isBuffer(e))
throw new TypeError("Argument must be a Buffer");
return this === e ? !0 : c.compare(this, e) === 0;
}, c.prototype.inspect = function() {
let e = "";
const t = u.INSPECT_MAX_BYTES;
return e = this.toString("hex", 0, t).replace(/(.{2})/g, "$1 ").trim(), this.length > t && (e += " ... "), "<Buffer " + e + ">";
}, x && (c.prototype[x] = c.prototype.inspect), c.prototype.compare = function(e, t, i, s, l) {
if (pe(e, Uint8Array) && (e = c.from(e, e.offset, e.byteLength)), !c.isBuffer(e))
throw new TypeError(
'The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof e
);
if (t === void 0 && (t = 0), i === void 0 && (i = e ? e.length : 0), s === void 0 && (s = 0), l === void 0 && (l = this.length), t < 0 || i > e.length || s < 0 || l > this.length)
throw new RangeError("out of range index");
if (s >= l && t >= i)
return 0;
if (s >= l)
return -1;
if (t >= i)
return 1;
if (t >>>= 0, i >>>= 0, s >>>= 0, l >>>= 0, this === e)
return 0;
let h = l - s, S = i - t;
const z = Math.min(h, S), M = this.slice(s, l), $ = e.slice(t, i);
for (let D = 0; D < z; ++D)
if (M[D] !== $[D]) {
h = M[D], S = $[D];
break;
}
return h < S ? -1 : S < h ? 1 : 0;
};
function V(r, e, t, i, s) {
if (r.length === 0)
return -1;
if (typeof t == "string" ? (i = t, t = 0) : t > 2147483647 ? t = 2147483647 : t < -2147483648 && (t = -2147483648), t = +t, Re(t) && (t = s ? 0 : r.length - 1), t < 0 && (t = r.length + t), t >= r.length) {
if (s)
return -1;
t = r.length - 1;
} else if (t < 0)
if (s)
t = 0;
else
return -1;
if (typeof e == "string" && (e = c.from(e, i)), c.isBuffer(e))
return e.length === 0 ? -1 : Q(r, e, t, i, s);
if (typeof e == "number")
return e = e & 255, typeof Uint8Array.prototype.indexOf == "function" ? s ? Uint8Array.prototype.indexOf.call(r, e, t) : Uint8Array.prototype.lastIndexOf.call(r, e, t) : Q(r, [e], t, i, s);
throw new TypeError("val must be string, number or Buffer");
}
function Q(r, e, t, i, s) {
let l = 1, h = r.length, S = e.length;
if (i !== void 0 && (i = String(i).toLowerCase(), i === "ucs2" || i === "ucs-2" || i === "utf16le" || i === "utf-16le")) {
if (r.length < 2 || e.length < 2)
return -1;
l = 2, h /= 2, S /= 2, t /= 2;
}
function z($, D) {
return l === 1 ? $[D] : $.readUInt16BE(D * l);
}
let M;
if (s) {
let $ = -1;
for (M = t; M < h; M++)
if (z(r, M) === z(e, $ === -1 ? 0 : M - $)) {
if ($ === -1 && ($ = M), M - $ + 1 === S)
return $ * l;
} else
$ !== -1 && (M -= M - $), $ = -1;
} else
for (t + S > h && (t = h - S), M = t; M >= 0; M--) {
let $ = !0;
for (let D = 0; D < S; D++)
if (z(r, M + D) !== z(e, D)) {
$ = !1;
break;
}
if ($)
return M;
}
return -1;
}
c.prototype.includes = function(e, t, i) {
return this.indexOf(e, t, i) !== -1;
}, c.prototype.indexOf = function(e, t, i) {
return V(this, e, t, i, !0);
}, c.prototype.lastIndexOf = function(e, t, i) {
return V(this, e, t, i, !1);
};
function fe(r, e, t, i) {
t = Number(t) || 0;
const s = r.length - t;
i ? (i = Number(i), i > s && (i = s)) : i = s;
const l = e.length;
i > l / 2 && (i = l / 2);
let h;
for (h = 0; h < i; ++h) {
const S = parseInt(e.substr(h * 2, 2), 16);
if (Re(S))
return h;
r[t + h] = S;
}
return h;
}
function Se(r, e, t, i) {
return Te(Ce(e, r.length - t), r, t, i);
}
function Ie(r, e, t, i) {
return Te(ht(e), r, t, i);
}
function ke(r, e, t, i) {
return Te(Qe(e), r, t, i);
}
function nt(r, e, t, i) {
return Te(bt(e, r.length - t), r, t, i);
}
c.prototype.write = function(e, t, i, s) {
if (t === void 0)
s = "utf8", i = this.length, t = 0;
else if (i === void 0 && typeof t == "string")
s = t, i = this.length, t = 0;
else if (isFinite(t))
t = t >>> 0, isFinite(i) ? (i = i >>> 0, s === void 0 && (s = "utf8")) : (s = i, i = void 0);
else
throw new Error(
"Buffer.write(string, encoding, offset[, length]) is no longer supported"
);
const l = this.length - t;
if ((i === void 0 || i > l) && (i = l), e.length > 0 && (i < 0 || t < 0) || t > this.length)
throw new RangeError("Attempt to write outside buffer bounds");
s || (s = "utf8");
let h = !1;
for (; ; )
switch (s) {
case "hex":
return fe(this, e, t, i);
case "utf8":
case "utf-8":
return Se(this, e, t, i);
case "ascii":
case "latin1":
case "binary":
return Ie(this, e, t, i);
case "base64":
return ke(this, e, t, i);
case "ucs2":
case "ucs-2":
case "utf16le":
case "utf-16le":
return nt(this, e, t, i);
default:
if (h)
throw new TypeError("Unknown encoding: " + s);
s = ("" + s).toLowerCase(), h = !0;
}
}, c.prototype.toJSON = function() {
return {
type: "Buffer",
data: Array.prototype.slice.call(this._arr || this, 0)
};
};
function at(r, e, t) {
return e === 0 && t === r.length ? d.fromByteArray(r) : d.fromByteArray(r.slice(e, t));
}
function $e(r, e, t) {
t = Math.min(r.length, t);
const i = [];
let s = e;
for (; s < t; ) {
const l = r[s];
let h = null, S = l > 239 ? 4 : l > 223 ? 3 : l > 191 ? 2 : 1;
if (s + S <= t) {
let z, M, $, D;
switch (S) {
case 1:
l < 128 && (h = l);
break;
case 2:
z = r[s + 1], (z & 192) === 128 && (D = (l & 31) << 6 | z & 63, D > 127 && (h = D));
break;
case 3:
z = r[s + 1], M = r[s + 2], (z & 192) === 128 && (M & 192) === 128 && (D = (l & 15) << 12 | (z & 63) << 6 | M & 63, D > 2047 && (D < 55296 || D > 57343) && (h = D));
break;
case 4:
z = r[s + 1], M = r[s + 2], $ = r[s + 3], (z & 192) === 128 && (M & 192) === 128 && ($ & 192) === 128 && (D = (l & 15) << 18 | (z & 63) << 12 | (M & 63) << 6 | $ & 63, D > 65535 && D < 1114112 && (h = D));
}
}
h === null ? (h = 65533, S = 1) : h > 65535 && (h -= 65536, i.push(h >>> 10 & 1023 | 55296), h = 56320 | h & 1023), i.push(h), s += S;
}
return st(i);
}
const Ge = 4096;
function st(r) {
const e = r.length;
if (e <= Ge)
return String.fromCharCode.apply(String, r);
let t = "", i = 0;
for (; i < e; )
t += String.fromCharCode.apply(
String,
r.slice(i, i += Ge)
);
return t;
}
function ut(r, e, t) {
let i = "";
t = Math.min(r.length, t);
for (let s = e; s < t; ++s)
i += String.fromCharCode(r[s] & 127);
return i;
}
function ct(r, e, t) {
let i = "";
t = Math.min(r.length, t);
for (let s = e; s < t; ++s)
i += String.fromCharCode(r[s]);
return i;
}
function pt(r, e, t) {
const i = r.length;
(!e || e < 0) && (e = 0), (!t || t < 0 || t > i) && (t = i);
let s = "";
for (let l = e; l < t; ++l)
s += gt[r[l]];
return s;
}
function lt(r, e, t) {
const i = r.slice(e, t);
let s = "";
for (let l = 0; l < i.length - 1; l += 2)
s += String.fromCharCode(i[l] + i[l + 1] * 256);
return s;
}
c.prototype.slice = function(e, t) {
const i = this.length;
e = ~~e, t = t === void 0 ? i : ~~t, e < 0 ? (e += i, e < 0 && (e = 0)) : e > i && (e = i), t < 0 ? (t += i, t < 0 && (t = 0)) : t > i && (t = i), t < e && (t = e);
const s = this.subarray(e, t);
return Object.setPrototypeOf(s, c.prototype), s;
};
function Y(r, e, t) {
if (r % 1 !== 0 || r < 0)
throw new RangeError("offset is not uint");
if (r + e > t)
throw new RangeError("Trying to access beyond buffer length");
}
c.prototype.readUintLE = c.prototype.readUIntLE = function(e, t, i) {
e = e >>> 0, t = t >>> 0, i || Y(e, t, this.length);
let s = this[e], l = 1, h = 0;
for (; ++h < t && (l *= 256); )
s += this[e + h] * l;
return s;
}, c.prototype.readUintBE = c.prototype.readUIntBE = function(e, t, i) {
e = e >>> 0, t = t >>> 0, i || Y(e, t, this.length);
let s = this[e + --t], l = 1;
for (; t > 0 && (l *= 256); )
s += this[e + --t] * l;
return s;
}, c.prototype.readUint8 = c.prototype.readUInt8 = function(e, t) {
return e = e >>> 0, t || Y(e, 1, this.length), this[e];
}, c.prototype.readUint16LE = c.prototype.readUInt16LE = function(e, t) {
return e = e >>> 0, t || Y(e, 2, this.length), this[e] | this[e + 1] << 8;
}, c.prototype.readUint16BE = c.prototype.readUInt16BE = function(e, t) {
return e = e >>> 0, t || Y(e, 2, this.length), this[e] << 8 | this[e + 1];
}, c.prototype.readUint32LE = c.prototype.readUInt32LE = function(e, t) {
return e = e >>> 0, t || Y(e, 4, this.length), (this[e] | this[e + 1] << 8 | this[e + 2] << 16) + this[e + 3] * 16777216;
}, c.prototype.readUint32BE = c.prototype.readUInt32BE = function(e, t) {
return e = e >>> 0, t || Y(e, 4, this.length), this[e] * 16777216 + (this[e + 1] << 16 | this[e + 2] << 8 | this[e + 3]);
}, c.prototype.readBigUInt64LE = he(function(e) {
e = e >>> 0, ve(e, "offset");
const t = this[e], i = this[e + 7];
(t === void 0 || i === void 0) && Be(e, this.length - 8);
const s = t + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + this[++e] * 2 ** 24, l = this[++e] + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + i * 2 ** 24;
return BigInt(s) + (BigInt(l) << BigInt(32));
}), c.prototype.readBigUInt64BE = he(function(e) {
e = e >>> 0, ve(e, "offset");
const t = this[e], i = this[e + 7];
(t === void 0 || i === void 0) && Be(e, this.length - 8);
const s = t * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + this[++e], l = this[++e] * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + i;
return (BigInt(s) << BigInt(32)) + BigInt(l);
}), c.prototype.readIntLE = function(e, t, i) {
e = e >>> 0, t = t >>> 0, i || Y(e, t, this.length);
let s = this[e], l = 1, h = 0;
for (; ++h < t && (l *= 256); )
s += this[e + h] * l;
return l *= 128, s >= l && (s -= Math.pow(2, 8 * t)), s;
}, c.prototype.readIntBE = function(e, t, i) {
e = e >>> 0, t = t >>> 0, i || Y(e, t, this.length);
let s = t, l = 1, h = this[e + --s];
for (; s > 0 && (l *= 256); )
h += this[e + --s] * l;
return l *= 128, h >= l && (h -= Math.pow(2, 8 * t)), h;
}, c.prototype.readInt8 = function(e, t) {
return e = e >>> 0, t || Y(e, 1, this.length), this[e] & 128 ? (255 - this[e] + 1) * -1 : this[e];
}, c.prototype.readInt16LE = function(e, t) {
e = e >>> 0, t || Y(e, 2, this.length);
const i = this[e] | this[e + 1] << 8;
return i & 32768 ? i | 4294901760 : i;
}, c.prototype.readInt16BE = function(e, t) {
e = e >>> 0, t || Y(e, 2, this.length);
const i = this[e + 1] | this[e] << 8;
return i & 32768 ? i | 4294901760 : i;
}, c.prototype.readInt32LE = function(e, t) {
return e = e >>> 0, t || Y(e, 4, this.length), this[e] | this[e + 1] << 8 | this[e + 2] << 16 | this[e + 3] << 24;
}, c.prototype.readInt32BE = function(e, t) {
return e = e >>> 0, t || Y(e, 4, this.length), this[e] << 24 | this[e + 1] << 16 | this[e + 2] << 8 | this[e + 3];
}, c.prototype.readBigInt64LE = he(function(e) {
e = e >>> 0, ve(e, "offset");
const t = this[e], i = this[e + 7];
(t === void 0 || i === void 0) && Be(e, this.length - 8);
const s = this[e + 4] + this[e + 5] * 2 ** 8 + this[e + 6] * 2 ** 16 + (i << 24);
return (BigInt(s) << BigInt(32)) + BigInt(t + this[++e] * 2 ** 8 + this[++e] * 2 ** 16 + this[++e] * 2 ** 24);
}), c.prototype.readBigInt64BE = he(function(e) {
e = e >>> 0, ve(e, "offset");
const t = this[e], i = this[e + 7];
(t === void 0 || i === void 0) && Be(e, this.length - 8);
const s = (t << 24) + // Overflow
this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + this[++e];
return (BigInt(s) << BigInt(32)) + BigInt(this[++e] * 2 ** 24 + this[++e] * 2 ** 16 + this[++e] * 2 ** 8 + i);
}), c.prototype.readFloatLE = function(e, t) {
return e = e >>> 0, t || Y(e, 4, this.length), f.read(this, e, !0, 23, 4);
}, c.prototype.readFloatBE = function(e, t) {
return e = e >>> 0, t || Y(e, 4, this.length), f.read(this, e, !1, 23, 4);
}, c.prototype.readDoubleLE = function(e, t) {
return e = e >>> 0, t || Y(e, 8, this.length), f.read(this, e, !0, 52, 8);
}, c.prototype.readDoubleBE = function(e, t) {
return e = e >>> 0, t || Y(e, 8, this.length), f.read(this, e, !1, 52, 8);
};
function ee(r, e, t, i, s, l) {
if (!c.isBuffer(r))
throw new TypeError('"buffer" argument must be a Buffer instance');
if (e > s || e < l)
throw new RangeError('"value" argument is out of bounds');
if (t + i > r.length)
throw new RangeError("Index out of range");
}
c.prototype.writeUintLE = c.prototype.writeUIntLE = function(e, t, i, s) {
if (e = +e, t = t >>> 0, i = i >>> 0, !s) {
const S = Math.pow(2, 8 * i) - 1;
ee(this, e, t, i, S, 0);
}
let l = 1, h = 0;
for (this[t] = e & 255; ++h < i && (l *= 256); )
this[t + h] = e / l & 255;
return t + i;
}, c.prototype.writeUintBE = c.prototype.writeUIntBE = function(e, t, i, s) {
if (e = +e, t = t >>> 0, i = i >>> 0, !s) {
const S = Math.pow(2, 8 * i) - 1;
ee(this, e, t, i, S, 0);
}
let l = i - 1, h = 1;
for (this[t + l] = e & 255; --l >= 0 && (h *= 256); )
this[t + l] = e / h & 255;
return t + i;
}, c.prototype.writeUint8 = c.prototype.writeUInt8 = function(e, t, i) {
return e = +e, t = t >>> 0, i || ee(this, e, t, 1, 255, 0), this[t] = e & 255, t + 1;
}, c.prototype.writeUint16LE = c.prototype.writeUInt16LE = function(e, t, i) {
return e = +e, t = t >>> 0, i || ee(this, e, t, 2, 65535, 0), this[t] = e & 255, this[t + 1] = e >>> 8, t + 2;
}, c.prototype.writeUint16BE = c.prototype.writeUInt16BE = function(e, t, i) {
return e = +e, t = t >>> 0, i || ee(this, e, t, 2, 65535, 0), this[t] = e >>> 8, this[t + 1] = e & 255, t + 2;
}, c.prototype.writeUint32LE = c.prototype.writeUInt32LE = function(e, t, i) {
return e = +e, t = t >>> 0, i || ee(this, e, t, 4, 4294967295, 0), this[t + 3] = e >>> 24, this[t + 2] = e >>> 16, this[t + 1] = e >>> 8, this[t] = e & 255, t + 4;
}, c.prototype.writeUint32BE = c.prototype.writeUInt32BE = function(e, t, i) {
return e = +e, t = t >>> 0, i || ee(this, e, t, 4, 4294967295, 0), this[t] = e >>> 24, this[t + 1] = e >>> 16, this[t + 2] = e >>> 8, this[t + 3] = e & 255, t + 4;
};
function We(r, e, t, i, s) {
Ze(e, i, s, r, t, 7);
let l = Number(e & BigInt(4294967295));
r[t++] = l, l = l >> 8, r[t++] = l, l = l >> 8, r[t++] = l, l = l >> 8, r[t++] = l;
let h = Number(e >> BigInt(32) & BigInt(4294967295));
return r[t++] = h, h = h >> 8, r[t++] = h, h = h >> 8, r[t++] = h, h = h >> 8, r[t++] = h, t;
}
function Ve(r, e, t, i, s) {
Ze(e, i, s, r, t, 7);
let l = Number(e & BigInt(4294967295));
r[t + 7] = l, l = l >> 8, r[t + 6] = l, l = l >> 8, r[t + 5] = l, l = l >> 8, r[t + 4] = l;
let h = Number(e >> BigInt(32) & BigInt(4294967295));
return r[t + 3] = h, h = h >> 8, r[t + 2] = h, h = h >> 8, r[t + 1] = h, h = h >> 8, r[t] = h, t + 8;
}
c.prototype.writeBigUInt64LE = he(function(e, t = 0) {
return We(this, e, t, BigInt(0), BigInt("0xffffffffffffffff"));
}), c.prototype.writeBigUInt64BE = he(function(e, t = 0) {
return Ve(this, e, t, BigInt(0), BigInt("0xffffffffffffffff"));
}), c.prototype.writeIntLE = function(e, t, i, s) {
if (e = +e, t = t >>> 0, !s) {
const z = Math.pow(2, 8 * i - 1);
ee(this, e, t, i, z - 1, -z);
}
let l = 0, h = 1, S = 0;
for (this[t] = e & 255; ++l < i && (h *= 256); )
e < 0 && S === 0 && this[t + l - 1] !== 0 && (S = 1), this[t + l] = (e / h >> 0) - S & 255;
return t + i;
}, c.prototype.writeIntBE = function(e, t, i, s) {
if (e = +e, t = t >>> 0, !s) {
const z = Math.pow(2, 8 * i - 1);
ee(this, e, t, i, z - 1, -z);
}
let l = i - 1, h = 1, S = 0;
for (this[t + l] = e & 255; --l >= 0 && (h *= 256); )
e < 0 && S === 0 && this[t + l + 1] !== 0 && (S = 1), this[t + l] = (e / h >> 0) - S & 255;
return t + i;
}, c.prototype.writeInt8 = function(e, t, i) {
return e = +e, t = t >>> 0, i || ee(this, e, t, 1, 127, -128), e < 0 && (e = 255 + e + 1), this[t] = e & 255, t + 1;
}, c.prototype.writeInt16LE = function(e, t, i) {
return e = +e, t = t >>> 0, i || ee(this, e, t, 2, 32767, -32768), this[t] = e & 255, this[t + 1] = e >>> 8, t + 2;
}, c.prototype.writeInt16BE = function(e, t, i) {
return e = +e, t = t >>> 0, i || ee(this, e, t, 2, 32767, -32768), this[t] = e >>> 8, this[t + 1] = e & 255, t + 2;
}, c.prototype.writeInt32LE = function(e, t, i) {
return e = +e, t = t >>> 0, i || ee(this, e, t, 4, 2147483647, -2147483648), this[t] = e & 255, this[t + 1] = e >>> 8, this[t + 2] = e >>> 16, this[t + 3] = e >>> 24, t + 4;
}, c.prototype.writeInt32BE = function(e, t, i) {
return e = +e, t = t >>> 0, i || ee(this, e, t, 4, 2147483647, -2147483648), e < 0 && (e = 4294967295 + e + 1), this[t] = e >>> 24, this[t + 1] = e >>> 16, this[t + 2] = e >>> 8, this[t + 3] = e & 255, t + 4;
}, c.prototype.writeBigInt64LE = he(function(e, t = 0) {
return We(this, e, t, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff"));
}), c.prototype.writeBigInt64BE = he(function(e, t = 0) {
return Ve(this, e, t, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff"));
});
function He(r, e, t, i, s, l) {
if (t + i > r.length)
throw new RangeError("Index out of range");
if (t < 0)
throw new RangeError("Index out of range");
}
function Ye(r, e, t, i, s) {
return e = +e, t = t >>> 0, s || He(r, e, t, 4), f.write(r, e, t, i, 23, 4), t + 4;
}
c.prototype.writeFloatLE = function(e, t, i) {
return Ye(this, e, t, !0, i);
}, c.prototype.writeFloatBE = function(e, t, i) {
return Ye(this, e, t, !1, i);
};
function Xe(r, e, t, i, s) {
return e = +e, t = t >>> 0, s || He(r, e, t, 8), f.write(r, e, t, i, 52, 8), t + 8;
}
c.prototype.writeDoubleLE = function(e, t, i) {
return Xe(this, e, t, !0, i);
}, c.prototype.writeDoubleBE = function(e, t, i) {
return Xe(this, e, t, !1, i);
}, c.prototype.copy = function(e, t, i, s) {
if (!c.isBuffer(e))
throw new TypeError("argument should be a Buffer");
if (i || (i = 0), !s && s !== 0 && (s = this.length), t >= e.length && (t = e.length), t || (t = 0), s > 0 && s < i && (s = i), s === i || e.length === 0 || this.length === 0)
return 0;
if (t < 0)
throw new RangeError("targetStart out of bounds");
if (i < 0 || i >= this.length)
throw new RangeError("Index out of range");
if (s < 0)
throw new RangeError("sourceEnd out of bounds");
s > this.length && (s = this.length), e.length - t < s - i && (s = e.length - t + i);
const l = s - i;
return this === e && typeof Uint8Array.prototype.copyWithin == "function" ? this.copyWithin(t, i, s) : Uint8Array.prototype.set.call(
e,
this.subarray(i, s),
t
), l;
}, c.prototype.fill = function(e, t, i, s) {
if (typeof e == "string") {
if (typeof t == "string" ? (s = t, t = 0, i = this.length) : typeof i == "string" && (s = i, i = this.length), s !== void 0 && typeof s != "string")
throw new TypeError("encoding must be a string");
if (typeof s == "string" && !c.isEncoding(s))
throw new TypeError("Unknown encoding: " + s);
if (e.length === 1) {
const h = e.charCodeAt(0);
(s === "utf8" && h < 128 || s === "latin1") && (e = h);
}
} else
typeof e == "number" ? e = e & 255 : typeof e == "boolean" && (e = Number(e));
if (t < 0 || this.length < t || this.length < i)
throw new RangeError("Out of range index");
if (i <= t)
return this;
t = t >>> 0, i = i === void 0 ? this.length : i >>> 0, e || (e = 0);
let l;
if (typeof e == "number")
for (l = t; l < i; ++l)
this[l] = e;
else {
const h = c.isBuffer(e) ? e : c.from(e, s), S = h.length;
if (S === 0)
throw new TypeError('The value "' + e + '" is invalid for argument "value"');
for (l = 0; l < i - t; ++l)
this[l + t] = h[l % S];
}
return this;
};
const we = {};
function Je(r, e, t) {
we[r] = class extends t {
constructor() {
super(), Object.defineProperty(this, "message", {
value: e.apply(this, arguments),
writable: !0,
configurable: !0
}), this.name = `${this.name} [${r}]`, this.stack, delete this.name;
}
get code() {
return r;
}
set code(s) {
Object.defineProperty(this, "code", {
configurable: !0,
enumerable: !0,
value: s,
writable: !0
});
}
toString() {
return `${this.name} [${r}]: ${this.message}`;
}
};
}
Je(
"ERR_BUFFER_OUT_OF_BOUNDS",
function(r) {
return r ? `${r} is outside of buffer bounds` : "Attempt to access memory outside buffer bounds";
},
RangeError
), Je(
"ERR_INVALID_ARG_TYPE",
function(r, e) {
return `The "${r}" argument must be of type number. Received type ${typeof e}`;
},
TypeError
), Je(
"ERR_OUT_OF_RANGE",
function(r, e, t) {
let i = `The value of "${r}" is out of range.`, s = t;
return Number.isInteger(t) && Math.abs(t) > 2 ** 32 ? s = Ke(String(t)) : typeof t == "bigint" && (s = String(t), (t > BigInt(2) ** BigInt(32) || t < -(BigInt(2) ** BigInt(32))) && (s = Ke(s)), s += "n"), i += ` It must be ${e}. Received ${s}`, i;
},
RangeError
);
function Ke(r) {
let e = "", t = r.length;
const i = r[0] === "-" ? 1 : 0;
for (; t >= i + 4; t -= 3)
e = `_${r.slice(t - 3, t)}${e}`;
return `${r.slice(0, t)}${e}`;
}
function dt(r, e, t) {
ve(e, "offset"), (r[e] === void 0 || r[e + t] === void 0) && Be(e, r.length - (t + 1));
}
function Ze(r, e, t, i, s, l) {
if (r > t || r < e) {
const h = typeof e == "bigint" ? "n" : "";
let S;
throw l > 3 ? e === 0 || e === BigInt(0) ? S = `>= 0${h} and < 2${h} ** ${(l + 1) * 8}${h}` : S = `>= -(2${h} ** ${(l + 1) * 8 - 1}${h}) and < 2 ** ${(l + 1) * 8 - 1}${h}` : S = `>= ${e}${h} and <= ${t}${h}`, new we.ERR_OUT_OF_RANGE("value", S, r);
}
dt(i, s, l);
}
function ve(r, e) {
if (typeof r != "number")
throw new we.ERR_INVALID_ARG_TYPE(e, "number", r);
}
function Be(r, e, t) {
throw Math.floor(r) !== r ? (ve(r, t), new we.ERR_OUT_OF_RANGE(t || "offset", "an integer", r)) : e < 0 ? new we.ERR_BUFFER_OUT_OF_BOUNDS() : new we.ERR_OUT_OF_RANGE(
t || "offset",
`>= ${t ? 1 : 0} and <= ${e}`,
r
);
}
const mt = /[^+/0-9A-Za-z-_]/g;
function ft(r) {
if (r = r.split("=")[0], r = r.trim().replace(mt, ""), r.length < 2)
return "";
for (; r.length % 4 !== 0; )
r = r + "=";
return r;
}
function Ce(r, e) {
e = e || 1 / 0;
let t;
const i = r.length;
let s = null;
const l = [];
for (let h = 0; h < i; ++h) {
if (t = r.charCodeAt(h), t > 55295 && t < 57344) {
if (!s) {
if (t > 56319) {
(e -= 3) > -1 && l.push(239, 191, 189);
continue;
} else if (h + 1 === i) {
(e -= 3) > -1 && l.push(239, 191, 189);
continue;
}
s = t;
continue;
}
if (t < 56320) {
(e -= 3) > -1 && l.push(239, 191, 189), s = t;
continue;
}
t = (s - 55296 << 10 | t - 56320) + 65536;
} else
s && (e -= 3) > -1 && l.push(239, 191, 189);
if (s = null, t < 128) {
if ((e -= 1) < 0)
break;
l.push(t);
} else if (t < 2048) {
if ((e -= 2) < 0)
break;
l.push(
t >> 6 | 192,
t & 63 | 128
);
} else if (t < 65536) {
if ((e -= 3) < 0)
break;
l.push(
t >> 12 | 224,
t >> 6 & 63 | 128,
t & 63 | 128
);
} else if (t < 1114112) {
if ((e -= 4) < 0)
break;
l.push(
t >> 18 | 240,
t >> 12 & 63 | 128,
t >> 6 & 63 | 128,
t & 63 | 128
);
} else
throw new Error("Invalid code point");
}
return l;
}
function ht(r) {
const e = [];
for (let t = 0; t < r.length; ++t)
e.push(r.charCodeAt(t) & 255);
return e;
}
function bt(r, e) {
let t, i, s;
const l = [];
for (let h = 0; h < r.length && !((e -= 2) < 0); ++h)
t = r.charCodeAt(h), i = t >> 8, s = t % 256, l.push(s), l.push(i);
return l;
}
function Qe(r) {
return d.toByteArray(ft(r));
}
function Te(r, e, t, i) {
let s;
for (s = 0; s < i && !(s + t >= e.length || s >= r.length); ++s)
e[s + t] = r[s];
return s;
}
function pe(r, e) {
return r instanceof e || r != null && r.constructor != null && r.constructor.name != null && r.constructor.name === e.name;
}
function Re(r) {
return r !== r;
}
const gt = function() {
const r = "0123456789abcdef", e = new Array(256);
for (let t = 0; t < 16; ++t) {
const i = t * 16;
for (let s = 0; s < 16; ++s)
e[i + s] = r[t] + r[s];
}
return e;
}();
function he(r) {
return typeof BigInt > "u" ? yt : r;
}
function yt() {
throw new Error("BigInt not supported");
}
})(be);
function ne(u) {
let d = {};
return u.forEach(function(f, x) {
d[f] = x;
}), d.lookup = u, d;
}
function tt(u, d) {
for (let f in d)
d[f] && d[f].constructor === Object ? (u[f] = u[f] || {}, tt(u[f], d[f])) : u[f] = d[f];
return u;
}
let O = {
"document-state": ne([
,
,
,
// 0x00-0x02
"pending",
,
// 0x04
"processing",
,
// 0x06
"canceled",
// 0x07
"aborted",
// 0x08
"completed"
// 0x09
]),
finishings: ne([
,
,
,
// 0x00 - 0x02
"none",
// 0x03 http://tools.ietf.org/html/rfc2911#section-4.2.6
"staple",
// 0x04 http://tools.ietf.org/html/rfc2911#section-4.2.6
"punch",
// 0x05 http://tools.ietf.org/html/rfc2911#section-4.2.6
"cover",
// 0x06 http://tools.ietf.org/html/rfc2911#section-4.2.6
"bind",
// 0x07 http://tools.ietf.org/html/rfc2911#section-4.2.6
"saddle-stitch",
// 0x08 http://tools.ietf.org/html/rfc2911#section-4.2.6
"edge-stitch",
// 0x09 http://tools.ietf.org/html/rfc2911#section-4.2.6
"fold",
// 0x0A http://tools.ietf.org/html/rfc2911#section-4.2.6
"trim",
// 0x0B ftp://ftp.pwg.org/pub/pwg/ipp/new_VAL/pwg5100.1.pdf
"bale",
// 0x0C ftp://ftp.pwg.org/pub/pwg/ipp/new_VAL/pwg5100.1.pdf
"booklet-maker",
// 0x0D ftp://ftp.pwg.org/pub/pwg/ipp/new_VAL/pwg5100.1.pdf
"jog-offset",
,
,
,
,
,
// 0x0F - 0x13 reserved for future generic finishing enum values.
"staple-top-left",
// 0x14 http://tools.ietf.org/html/rfc2911#section-4.2.6
"staple-bottom-left",
// 0x15 http://tools.ietf.org/html/rfc2911#section-4.2.6
"staple-top-right",
// 0x16 http://tools.ietf.org/html/rfc2911#section-4.2.6
"staple-bottom-right",
// 0x17 http://tools.ietf.org/html/rfc2911#section-4.2.6
"edge-stitch-left",
// 0x18 http://tools.ietf.org/html/rfc2911#section-4.2.6
"edge-stitch-top",
// 0x19 http://tools.ietf.org/html/rfc2911#section-4.2.6
"edge-stitch-right",
// 0x1A http://tools.ietf.org/html/rfc2911#section-4.2.6
"edge-stitch-bottom",
// 0x1B http://tools.ietf.org/html/rfc2911#section-4.2.6
"staple-dual-left",
// 0x1C http://tools.ietf.org/html/rfc2911#section-4.2.6
"staple-dual-top",
// 0x1D http://tools.ietf.org/html/rfc2911#section-4.2.6
"staple-dual-right",
// 0x1E http://tools.ietf.org/html/rfc2911#section-4.2.6
"staple-dual-bottom",
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
// 0x20 - 0x31 reserved for future specific stapling and stitching enum values.
"bind-left",
// 0x32 ftp://ftp.pwg.org/pub/pwg/ipp/new_VAL/pwg5100.1.pdf
"bind-top",
// 0x33 ftp://ftp.pwg.org/pub/pwg/ipp/new_VAL/pwg5100.1.pdf
"bind-right",
// 0x34 ftp://ftp.pwg.org/pub/pwg/ipp/new_VAL/pwg5100.1.pdf
"bind-bottom",
,
,
,
,
,
,
// 0x36 - 0x3B
"trim-after-pages",
// 0x3C ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10-20120727-5100.13.pdf (IPP Everywhere)
"trim-after-documents",
// 0x3D ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10-20120727-5100.13.pdf (IPP Everywhere)
"trim-after-copies",
// 0x3E ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10-20120727-5100.13.pdf (IPP Everywhere)
"trim-after-job"
// 0x3F ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10-20120727-5100.13.pdf (IPP Everywhere)
]),
"operations-supported": ne([
,
,
// 0x01
"Print-Job",
// 0x02 http://tools.ietf.org/html/rfc2911#section-3.2.1
"Print-URI",
// 0x03 http://tools.ietf.org/html/rfc2911#section-3.2.2
"Validate-Job",
// 0x04 http://tools.ietf.org/html/rfc2911#section-3.2.3
"Create-Job",
// 0x05 http://tools.ietf.org/html/rfc2911#section-3.2.4
"Send-Document",
// 0x06 http://tools.ietf.org/html/rfc2911#section-3.3.1
"Send-URI",
// 0x07 http://tools.ietf.org/html/rfc2911#section-3.3.2
"Cancel-Job",
// 0x08 http://tools.ietf.org/html/rfc2911#section-3.3.3
"Get-Job-Attributes",
// 0x09 http://tools.ietf.org/html/rfc2911#section-3.3.4
"Get-Jobs",
// 0x0A http://tools.ietf.org/html/rfc2911#section-3.2.6
"Get-Printer-Attributes",
// 0x0B http://tools.ietf.org/html/rfc2911#section-3.2.5
"Hold-Job",
// 0x0C http://tools.ietf.org/html/rfc2911#section-3.3.5
"Release-Job",
// 0x0D http://tools.ietf.org/html/rfc2911#section-3.3.6
"Restart-Job",
,
// 0x0F
"Pause-Printer",
// 0x10 http://tools.ietf.org/html/rfc2911#section-3.2.7
"Resume-Printer",
// 0x11 http://tools.ietf.org/html/rfc2911#section-3.2.8
"Purge-Jobs",
// 0x12 http://tools.ietf.org/html/rfc2911#section-3.2.9
"Set-Printer-Attributes",
// 0x13 IPP2.1 http://tools.ietf.org/html/rfc3380#section-4.1
"Set-Job-Attributes",
// 0x14 IPP2.1 http://tools.ietf.org/html/rfc3380#section-4.2
"Get-Printer-Supported-Values",
// 0x15 IPP2.1 http://tools.ietf.org/html/rfc3380#section-4.3
"Create-Printer-Subscriptions",
// 0x16 IPP2.1 http://tools.ietf.org/html/rfc3995#section-7.1 && http://tools.ietf.org/html/rfc3995#section-11.1.2
"Create-Job-Subscription",
// 0x17 IPP2.1 http://tools.ietf.org/html/rfc3995#section-7.1 && http://tools.ietf.org/html/rfc3995#section-11.1.1
"Get-Subscription-Attributes",
// 0x18 IPP2.1 http://tools.ietf.org/html/rfc3995#section-7.1 && http://tools.ietf.org/html/rfc3995#section-11.2.4
"Get-Subscriptions",
// 0x19 IPP2.1 http://tools.ietf.org/html/rfc3995#section-7.1 && http://tools.ietf.org/html/rfc3995#section-11.2.5
"Renew-Subscription",
// 0x1A IPP2.1 http://tools.ietf.org/html/rfc3995#section-7.1 && http://tools.ietf.org/html/rfc3995#section-11.2.6
"Cancel-Subscription",
// 0x1B IPP2.1 http://tools.ietf.org/html/rfc3995#section-7.1 && http://tools.ietf.org/html/rfc3995#section-11.2.7
"Get-Notifications",
// 0x1C IPP2.1 IPP2.1 http://tools.ietf.org/html/rfc3996#section-9.2 && http://tools.ietf.org/html/rfc3996#section-5
"ipp-indp-method",
// 0x1D did not get standardized
"Get-Resource-Attributes",
// 0x1E http://tools.ietf.org/html/draft-ietf-ipp-get-resource-00#section-4.1 did not get standardized
"Get-Resource-Data",
// 0x1F http://tools.ietf.org/html/draft-ietf-ipp-get-resource-00#section-4.2 did not get standardized
"Get-Resources",
// 0x20 http://tools.ietf.org/html/draft-ietf-ipp-get-resource-00#section-4.3 did not get standardized
"ipp-install",
// 0x21 did not get standardized
"Enable-Printer",
// 0x22 http://tools.ietf.org/html/rfc3998#section-3.1.1
"Disable-Printer",
// 0x23 http://tools.ietf.org/html/rfc3998#section-3.1.2
"Pause-Printer-After-Current-Job",
// 0x24 http://tools.ietf.org/html/rfc3998#section-3.2.1
"Hold-New-Jobs",
// 0x25 http://tools.ietf.org/html/rfc3998#section-3.3.1
"Release-Held-New-Jobs",
// 0x26 http://tools.ietf.org/html/rfc3998#section-3.3.2
"Deactivate-Printer",
// 0x27 http://tools.ietf.org/html/rfc3998#section-3.4.1
"Activate-Printer",
// 0x28 http://tools.ietf.org/html/rfc3998#section-3.4.2
"Restart-Printer",
// 0x29 http://tools.ietf.org/html/rfc3998#section-3.5.1
"Shutdown-Printer",
// 0x2A http://tools.ietf.org/html/rfc3998#section-3.5.2
"Startup-Printer",
// 0x2B http://tools.ietf.org/html/rfc3998#section-3.5.3
"Reprocess-Job",
// 0x2C http://tools.ietf.org/html/rfc3998#section-4.1
"Cancel-Current-Job",
// 0x2D http://tools.ietf.org/html/rfc3998#section-4.2
"Suspend-Current-Job",
// 0x2E http://tools.ietf.org/html/rfc3998#section-4.3.1
"Resume-Job",
// 0x2F http://tools.ietf.org/html/rfc3998#section-4.3.2
"Promote-Job",
// 0x30 http://tools.ietf.org/html/rfc3998#section-4.4.1
"Schedule-Job-After",
,
// 0x32
"Cancel-Document",
// 0x33 ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippdocobject10-20031031-5100.5.pdf
"Get-Document-Attributes",
// 0x34 ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippdocobject10-20031031-5100.5.pdf
"Get-Documents",
// 0x35 ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippdocobject10-20031031-5100.5.pdf
"Delete-Document",
// 0x36 ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippdocobject10-20031031-5100.5.pdf
"Set-Document-Attributes",
// 0x37 ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippdocobject10-20031031-5100.5.pdf
"Cancel-Jobs",
// 0x38 ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext10-20101030-5100.11.pdf
"Cancel-My-Jobs",
// 0x39 ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext10-20101030-5100.11.pdf
"Resubmit-Job",
// 0x3A ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext10-20101030-5100.11.pdf
"Close-Job",
// 0x3B ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext10-20101030-5100.11.pdf
"Identify-Printer",
// 0x3C ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10-20120727-5100.13.pdf
"Validate-Document"
// 0x3D ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10-20120727-5100.13.pdf
]),
"job-collation-type": ne([
// IPP2.1 http://tools.ietf.org/html/rfc3381#section-6.3
"other",
// 0x01
"unknown",
// 0x02
"uncollated-documents",
// 0x03
"collated-documents",
// 0x04
"uncollated-documents"
// 0x05
]),
"job-state": ne([
,
,
,
// 0x00-0x02
"pending",
// 0x03
"pending-held",
// 0x04
"processing",
// 0x05
"processing-stopped",
// 0x06
"canceled",
// 0x07
"aborted",
// 0x08
"completed"
// 0x09
]),
"orientation-requested": ne([
,
,
,
// 0x00-0x02
"portrait",
// 0x03
"landscape",
// 0x04
"reverse-landscape",
// 0x05
"reverse-portrait",
// 0x06
"none"
// 0x07 ftp://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10-20120727-5100.13.pdf
]),
"print-quality": ne([
,
,
,
// 0x00-0x02
"draft",
// 0x03
"normal",
// 0x04
"high"
// 0x05
]),
"printer-state": ne([
,
,
,
// 0x00-0x02
"idle",
// 0x03
"processing",
// 0x04
"stopped"
// 0x05
])
};
O["finishings-default"] = O.finishings;
O["finishings-ready"] = O.finishings;
O["finishings-supported"] = O.finishings;
O["media-source-feed-orientation"] = O["orientation-requested"];
O["orientation-requested-default"] = O["orientation-requested"];
O["orientation-requested-supported"] = O["orientation-requested"];
O["print-quality-default"] = O["print-quality"];
O["print-quality-supported"] = O["print-quality"];
let E = [];
E[0] = "successful-ok";
E[1] = "successful-ok-ignored-or-substituted-attributes";
E[2] = "successful-ok-conflicting-attributes";
E[3] = "successful-ok-ignored-subscriptions";
E[4] = "successful-ok-ignored-notifications";
E[5] = "successful-ok-too-many-events";
E[6] = "successful-ok-but-cancel-subscription";
E[7] = "successful-ok-events-complete";
E[1024] = "client-error-bad-request";
E[1025] = "client-error-forbidden";
E[1026] = "client-error-not-authenticated";
E[1027] = "client-error-not-authorized";
E[1028] = "client-error-not-possible";
E[1029] = "client-error-timeout";
E[1030] = "client-error-not-found";
E[1031] = "client-error-gone";
E[1032] = "client-error-request-entity-too-large";
E[1033] = "client-error-request-value-too-long";
E[1034] = "client-error-document-format-not-supported";
E[1035] = "client-error-attributes-or-values-not-supported";
E[1036] = "client-error-uri-scheme-not-supported";
E[1037] = "client-error-charset-not-supported";
E[1038] = "client-error-conflicting-attributes";
E[1039] = "client-error-compression-not-supported";
E[1040] = "client-error-compression-error";
E[1041] = "client-error-document-format-error";
E[1042] = "client-error-document-access-error";
E[1043] = "client-error-attributes-not-settable";
E[1044] = "client-error-ignored-all-subscriptions";
E[1045] = "client-error-too-many-subscriptions";
E[1046] = "client-error-ignored-all-notifications";
E[1047] = "client-error-client-print-support-file-not-found";
E[1048] = "client-error-document-password-error";
E[1049] = "client-error-document-permission-error";
E[1050] = "client-error-document-security-error";
E[1051] = "client-error-document-unprintable-error";
E[1280] = "server-error-internal-error";
E[1281] = "server-error-operation-not-supported";
E[1282] = "server-error-service-unavailable";
E[1283] = "server-error-version-not-supported";
E[1284] = "server-error-device-error";
E[1285] = "server-error-temporary-error";
E[1286] = "server-error-not-accepting-jobs";
E[1287] = "server-error-busy";
E[1288] = "server-error-job-canceled";
E[1289] = "server-error-multiple-document-jobs-not-supported";
E[1290] = "server-error-printer-is-deactivated";
E[1291] = "server-error-too-many-jobs";
E[1292] = "server-error-too-many-documents";
const rt = ne(E);
let it = [
,
// 0x00 http://tools.ietf.org/html/rfc2910#section-3.5.1
"operation-attributes-tag",
// 0x01 http://tools.ietf.org/html/rfc2910#section-3.5.1
"job-attributes-tag",
// 0x02 http://tools.ietf.org/html/rfc2910#section-3.5.1
"end-of-attributes-tag",
// 0x03 http://tools.ietf.org/html/rfc2910#section-3.5.1
"printer-attributes-tag",
// 0x04 http://tools.ietf.org/html/rfc2910#section-3.5.1
"unsupported-attributes-tag",
// 0x05 http://tools.ietf.org/html/rfc2910#section-3.5.1
"subscription-attributes-tag",
// 0x06 http://tools.ietf.org/html/rfc3995#section-14
"event-notification-attributes-tag",
// 0x07 http://tools.ietf.org/html/rfc3995#section-14
"resource-attributes-tag",
// 0x08 http://tools.ietf.org/html/draft-ietf-ipp-get-resource-00#section-11 did not get standardized
"document-attributes-tag",
,
,
,
,
,
,
"unsupported",
// 0x10 http://tools.ietf.org/html/rfc2910#section-3.5.2
"default",
// 0x11 http://tools.ietf.org/html/rfc2910#section-3.5.2
"unknown",
// 0x12 http://tools.ietf.org/html/rfc2910#section-3.5.2
"no-value",
,
"not-settable",
// 0x15 http://tools.ietf.org/html/rfc3380#section-8.1
"delete-attribute",
// 0x16 http://tools.ietf.org/html/rfc3380#section-8.2
"admin-define",
,
,
,
,
,
,
,
,
,
"integer",
// 0x21 http://tools.ietf.org/html/rfc2910#section-3.5.2
"boolean",
// 0x22 http://tools.ietf.org/html/rfc2910#section-3.5.2
"enum",
,
,
,
,
,
,
,
,
,
,
,
,
"octetString",
// 0x30 http://tools.ietf.org/html/rfc2910#section-3.5.2
"dateTime",
// 0x31 http://tools.ietf.org/html/rfc2910#section-3.5.2
"resolution",
// 0x32 http://tools.ietf.org/html/rfc2910#section-3.5.2
"rangeOfInteger",
// 0x33 http://tools.ietf.org/html/rfc2910#section-3.5.2
"begCollection",
// 0x34 http://tools.ietf.org/html/rfc3382#section-7.1
"textWithLanguage",
// 0x35 http://tools.ietf.org/html/rfc2910#section-3.5.2
"nameWithLanguage",
// 0x36 http://tools.ietf.org/html/rfc2910#section-3.5.2
"endCollection",
,
,
,
,
,
,
,
,
,
"textWithoutLanguage",
// 0x41 http://tools.ietf.org/html/rfc2910#section-3.5.2
"nameWithoutLanguage",
,
"keyword",
// 0x44 http://tools.ietf.org/html/rfc2910#section-3.5.2
"uri",
// 0x45 http://tools.ietf.org/html/rfc2910#section-3.5.2
"uriScheme",
// 0x46 http://tools.ietf.org/html/rfc2910#section-3.5.2
"charset",
// 0x47 http://tools.ietf.org/html/rfc2910#section-3.5.2
"naturalLanguage",
// 0x48 http://tools.ietf.org/html/rfc2910#section-3.5.2
"mimeMediaType",
// 0x49 http://tools.ietf.org/html/rfc2910#section-3.5.2
"memberAttrName"
// 0x4A http://tools.ietf.org/html/rfc3382#section-7.1
];
it[127] = "extension";
const v = ne(it);
let At = O["operations-supported"], Ft = "";
function Ut(u) {
let d = {}, f = 0, x = "utf8";
function w() {
return u[f++];
}
function j() {
let F = u.readInt16BE(f, !0);
return f += 2, F;
}
function _() {
let F = u.readInt32BE(f, !0);
return f += 4, F;
}
function c(F, y) {
return F == 0 ? "" : u.toString(y || x, f, f += F);
}
function C() {
let F;
for (; f < u.length && (F = w()) !== 3; )
Z(F);
}
function Z(F) {
let y = v.lookup[F];
for (F = {}, d[y] ? (Array.isArray(d[y]) || (d[y] = [d[y]]), d[y].push(F)) : d[y] = F; u[f] >= 15; )
G(F);
}
function G(F) {
let y = w();
y === 127 && (y = _());
let k = c(j());
F[k] = te(y, k);
}
function N() {
let F = u[f];
return F !== 74 && //tags.memberAttrName
F !== 55 && //tags.endCollection
F !== 3 && //tags.end-of-attributes-tag
u[f + 1] === 0 && u[f + 2] === 0;
}
function te(F, y) {
let k = W(F, y);
if (N()) {
k = [k];
do
F = w(), j(), k.push(W(F, y));
while (N());
}
return k;
}
function W(F, y) {
let k = j();
switch (F) {
case v.enum:
let T = _();
return O[y] && O[y].lookup[T] || T;
case v.integer:
return _();
case v.boolean:
return !!w();
case v.rangeOfInteger:
return [_(), _()];
case v.resolution:
return [_(), _(), w() === 3 ? "dpi" : "dpcm"];
case v.dateTime:
let q = new Date(
j(),
w(),
w(),
w(),
w(),
w(),
w()
);
return /* @__PURE__ */ new Date(
q.toISOString().substr(0, 23).replace("T", ",") + "," + String.fromCharCode(c(1)) + c(1) + ":" + c(1)
);
case v.textWithLanguage:
case v.nameWithLanguage:
let V = c(j()), Q = c(j());
return V + Ft + Q;
case v.nameWithoutLanguage:
case v.textWithoutLanguage:
case v.octetString:
case v.memberAttrName:
return c(k);
case v.keyword:
case v.uri:
case v.uriScheme:
case v.charset:
case v.naturalLanguage:
case v.mimeMediaType:
return c(k, "ascii");
case v.begCollection:
return c(k), ue();
case v["no-value"]:
}
}
function ue() {
let F, y = {};
for (; (F = w()) !== 55; ) {
if (F !== 74) {
console.log("unexpected:", v.lookup[F]);
return;
}
c(j());
let k = W(74), T = oe();
y[k] = T;
}
return c(j()), c(j()), y;
}
function oe(F) {
let y = w();
return y === 127 && (y = _()), c(j()), te(y, F);
}
d.version = w() + "." + w();
let ce = j();
return (ce >= 2 || ce <= 61) && (d.operation = At.lookup[ce]), (ce <= 7 || ce >= 1024) && (d.statusCode = rt.lookup[ce]), d.id = _(), C(), f < u.length && (d.data = u.toString(x, f)), d;
}
function Ot(u) {
const d = Ut(be.Buffer.from(u.data));
return delete d.operation, d;
}
function I(u) {
return u || (u = 1023), { type: "text", max: u };
}
function p(u, d) {
return (d == m || d === void 0) && (d = 2147483647), u === void 0 && (u = -2147483648), { type: "integer", tag: v.integer, min: u, max: d };
}
function J(u, d) {
return (d == m || d === void 0) && (d = 2147483647), u === void 0 && (u = -2147483648), {
type: "rangeOfInteger",
tag: v.rangeOfInteger,
min: u,
max: d
};
}
function P() {
return { type: "boolean", tag: v.boolean };
}
function ae() {
return { type: "charset", tag: v.charset, max: 63 };
}
function n() {
return { type: "keyword", tag: v.keyword, min: 1, max: 1023 };
}
function ie() {
return { type: "naturalLanguage", tag: v.naturalLanguage, max: 63 };
}
function se() {
return { type: "dateTime", tag: v.dateTime };
}
function me() {
return { type: "mimeMediaType", tag: v.mimeMediaType, max: 255 };
}
function U(u) {
return { type: "uri", tag: v.uri, max: u || 1023 };
}
function De() {
return { type: "uriScheme", tag: v.uriScheme, max: 63 };
}
function R() {
return { type: "enumeration", tag: v.enum };
}
function ye() {
return { type: "resolution", tag: v.resolution };
}
function St() {
return { type: "unknown", tag: v.unknown };
}
function xe(u) {
return { type: "name", max: u || 1023 };
}
function H() {
return { type: "novalue", tag: v["no-value"] };
}
function ge(u) {
return { type: "octetString", tag: v.octetString, max: u || 1023 };
}
function b(u, d, f) {
let x = Array.prototype.slice.call(arguments);
x.lookup = {};
const w = Ae(function() {
return x.forEach(function(j, _) {
var c;
typeof j == "function" && (x[_] = j()), x.lookup[(c = x[_]) == null ? void 0 : c.type] = x[_];
}), x.alts = Object.keys(x.lookup).sort().join(), x;
});
return x.some(function(j) {
return Fe(j);
}) ? w : w();
}
const Ae = function(u) {
return u.isDeferred = !0, u;
}, Fe = function(u) {
return typeof u == "function" && u.isDeferred;
};
function o(u) {
return Fe(u) ? Ae(function() {
return u = u(), u.setof = !0, u;
}) : (typeof u == "function" && !Fe(u) && (u = u()), u);
}
function g(u, d) {
if (!arguments.length)
return { type: "collection", tag: v.begCollection };
if (typeof u == "string")
return Ae(function() {
return {
type: "collection",
tag: v.begCollection,
members: X[u][d].members
};
});
let f = Object.keys(u).some(function(w) {
return Fe(u[w]);
});
const x = Ae(function() {
return {
type: "collection",
tag: v.begCollection,
members: Me(u)
};
});
return f ? x : x();
}
let m = {}, X = {};
X["Document Description"] = {
"attributes-charset": ae,
"attributes-natural-language": ie,
compression: n,
"copies-actual": o(p(1, m)),
"cover-back-actual": o(g("Job Template", "cover-back")),
"cover-front-actual": o(g("Job Template", "cover-front")),
"current-page-order": n,
"date-time-at-completed": b(se, H, null),
"date-time-at-creation": se,
"date-time-at-processing": b(se, H, null),
"detailed-status-messages": o(I),
"document-access-errors": o(I),
"document-charset": ae,
"document-digital-signature": n,
"document-format": me,
"document-format-details": o(
g("Operation", "document-format-details")
),
"document-format-details-detected": o(
g("Operation", "document-format-details")
),
"document-format-detected": me,
"document-format-version": I(127),
"document-format-version-detected": I(127),
"document-job-id": p(1, m),
"document-job-uri": U,
"document-message": I,
"document-metadata": o(ge),
"document-name": name,
"document-natural-language": ie,
"document-number": p(1, m),
"document-printer-uri": U,
"document-state": R,
"document-state-message": I,
"document-state-reasons": o(n),
"document-uri": U,
"document-uuid": U(45),
"errors-count": p(0, m),
"finishings-actual": o(R),
"finishings-col-actual": o(g("Job Template", "finishings-col")),
"force-front-side-actual": o(p(1, m)),
"imposition-template-actual": o(b(n, name, null)),
impressions: p(0, m),
"impressions-completed": p(0, m),
"impressions-completed-current-copy": p(0, m),
"insert-sheet-actual": o(g("Job Template", "insert-sheet")),
"k-octets": p(0, m),
"k-octets-processed": p(0, m),
"last-document": P,
"media-actual": o(b(n, name, null)),
"media-col-actual": o(g("Job Template", "media-col")),
"media-input-tray-check-actual": o(b(n, name, null)),
"media-sheets": p(0, m),
"media-sheets-completed": p(0, m),
"more-info": U,
"number-up-actual": o(p),
"orientation-requested-actual": o(R),
"output-bin-actual": o(name),
"output-device-assigned": xe(127),
"overrides-actual": o(g("Document Template", "overrides")),
"page-delivery-actual": o(n),
"page-order-received-actual": o(n),
"page-ranges-actual": o(J(1, m)),
pages: p(0, m),
"pages-completed": p(0, m),
"pages-completed-current-copy": p(0, m),
"presentation-direction-number-up-actual": o(n),
"print-content-optimize-actual": o(n),
"print-quality-actual": o(R),
"printer-resolution-actual": o(ye),
"printer-up-time": p(1, m),
"separator-sheets-actual": o(
g("Job Template", "separator-sheets")
),
"sheet-completed-copy-number": p(0, m),
"sides-actual": o(n),
"time-at-completed": b(p, H, null),
"time-at-creation": p,
"time-at-processing": b(p, H, null),
"x-image-position-actual": o(n),
"x-image-shift-actual": o(p),
"x-side1-image-shift-actual": o(p),
"x-side2-image-shift-actual": o(p),
"y-image-position-actual": o(n),
"y-image-shift-actual": o(p),
"y-side1-image-shift-actual": o(p),
"y-side2-image-shift-actual": o(p)
};
X["Document Template"] = {
copies: p(1, m),
"cover-back": g("Job Template", "cover-back"),
"cover-front": g("Job Template", "cover-front"),
"feed-orientation": n,
finishings: o(R),
"finishings-col": g("Job Template", "finishings-col"),
"font-name-requested": name,
"font-size-requested": p(1, m),
"force-front-side": o(p(1, m)),
"imposition-template": b(n, name, null),
"insert-sheet": o(g("Job Template", "insert-sheet")),
media: b(n, name, null),
"media-col": g("Job Template", "media-col"),
"media-input-tray-check": b(n, name, null),
"number-up": p(1, m),
"orientation-requested": R,
overrides: o(
g(
{
//Any Document Template attribute (TODO)
"document-copies": o(J),
"document-numbers": o(J),
pages: o(J)
},
null
)
),
"page-delivery": n,
"page-order-received": n,
"page-ranges": o(J(1, m)),
"pdl-init-file": o(g("Job Template", "pdl-init-file")),
"presentation-direction-number-up": n,
"print-color-mode": n,
"print-content-optimize": n,
"print-quality": R,
"print-rendering-intent": n,
"printer-resolution": ye,
"separator-sheets": g("Job Template", "separator-sheets"),
"sheet-collate": n,
sides: n,
"x-image-position": n,
"x-image-shift": p,
"x-side1-image-shift": p,
"x-side2-image-shift": p,
"y-image-position": n,
"y-image-shift": p,
"y-side1-image-shift": p,
"y-side2-image-shift": p
};
X["Event Notifications"] = {
"notify-subscribed-event": n,
"notify-text": I
};
X["Job Description"] = {
"attributes-charset": ae,
"attributes-natural-language": ie,
"compression-supplied": n,
"copies-actual": o(p(1, m)),
"cover-back-actual": o(g("Job Template", "cover-back")),
"cover-front-actual": o(g("Job Template", "cover-front")),
"current-page-order": n,
"date-time-at-completed": b(se, H),
"date-time-at-creation": se,
"date-time-at-processing": b(se, H),
"document-charset-supplied": ae,
"document-digital-signature-supplied": n,
"document-format-details-supplied": o(
g("Operation", "document-format-details")
),
"document-format-supplied": me,
"document-format-version-supplied": I(127),
"document-message-supplied": I,
"document-metadata": o(ge),
"document-name-supplied": name,
"document-natural-language-supplied": ie,
"document-overrides-actual": o(g),
"errors-count": p(0, m),
"finishings-actual": o(R),
"finishings-col-actual": o(g("Job Template", "finishings-col")),
"force-front-side-actual": o(o(p(1, m))),
"imposition-template-actual": o(b(n, name)),
"impressions-completed-current-copy": p(0, m),
"insert-sheet-actual": o(g("Job Template", "insert-sheet")),
"job-account-id-actual": o(name),
"job-accounting-sheets-actual": o(
g("Job Template", "job-accounting-sheets")
),
"job-accounting-user-id-actual": o(name),
"job-attribute-fidelity": P,
"job-collation-type": R,
"job-collation-type-actual": o(n),
"job-copies-actual": o(p(1, m)),
"job-cover-back-actual": o(g("Job Template", "cover-back")),
"job-cover-front-actual": o(g("Job Template", "cover-front")),
"job-detailed-status-messages": o(I),
"job-document-access-errors": o(I),
"job-error-sheet-actual": o(
g("Job Template", "job-error-sheet")
),
"job-finishings-actual": o(R),
"job-finishings-col-actual": o(g("Job Template", "media-col")),
"job-hold-until-actual": o(b(n, name)),
"job-id": p(1, m),
"job-impressions": p(0, m),
"job-impressions-completed": p(0, m),
"job-k-octets": p(0, m),
"job-k-octets-processed": p(0, m),
"job-mandatory-attributes": o(n),
"job-media-sheets": p(0, m),
"job-media-sheets-completed": p(0, m),
"job-message-from-operator": I(127),
"job-message-to-operator-actual": o(I),
"job-more-info": U,
"job-name": name,
"job-originating-user-name": name,
"job-originating-user-uri": U,
"job-pages": p(0, m),
"job-pages-completed": p(0, m),
"job-pages-completed-current-copy": p(0, m),
"job-printer-up-time": p(1, m),
"job-printer-uri": U,
"job-priority-actual": o(p(1, 100)),
"job-save-printer-make-and-model": I(127),
"job-sheet-message-actual": o(I),
"job-sheets-actual": o(b(n, name)),
"job-sheets-col-actual": o(g("Job Template", "job-sheets-col")),
"job-state": b(R, St),
"job-state-message": I,
"job-state-reasons": o(n),
"job-uri": U,
"job-uuid": U(45),
"media-actual": o(b(n, name)),
"media-col-actual": o(g("Job Template", "media-col")),
"media-input-tray-check-actual": o(b(n, name)),
"multiple-document-handling-actual": o(n),
"number-of-documents": p(0, m),
"number-of-intervening-jobs": p(0, m),
"number-up-actual": o(p(1, m)),
"orientation-requested-actual": o(R),
"original-requesting-user-name": name,
"output-bin-actual": o(b(n, name)),
"output-device-actual": o(xe(127)),
"output-device-assigned": xe(127),
"overrides-actual": o(g("Job Template", "overrides")),
"page-delivery-actual": o(n),
"page-order-received-actual": o(n),
"page-ranges-actual": o(J(1, m)),
"presentation-direction-number-up-actual": o(n),
"print-content-optimize-actual": o(n),
"print-quality-actual": o(R),
"printer-resolution-actual": o(ye),
"separator-sheets-actual": o(
g("Job Template", "separator-sheets")
),
"sheet-collate-actual": o(n),
"sheet-completed-copy-number": p(0, m),
"sheet-completed-document-number": p(0, m),
"sides-actual": o(n),
"time-at-completed": b(p, H),
"time-at-creation": p,
"time-at-processing": b(p, H),
"warnings-count": p(0, m),
"x-image-position-actual": o(n),
"x-image-shift-actual": o(p),
"x-side1-image-shift-actual": o(p),
"x-side2-image-shift-actual": o(p),
"y-image-position-actual": o(n),
"y-image-shift-actual": o(p),
"y-side1-image-shift-actual": o(p),
"y-side2-image-shift-actual": o(p)
};
X["Job Template"] = {
copies: p(1, m),
"cover-back": g({
"cover-type": n,
media: b(n, name),
"media-col": g("Job Template", "media-col")
}),
"cover-front": g({
"cover-type": n,
media: b(n, name),
"media-col": g("Job Template", "media-col")
}),
"feed-orientation": n,
finishings: o(R),
"finishings-col": g({
"finishing-template": name,
stitching: g({
"stitching-locations": o(p(0, m)),
"stitching-offset": p(0, m),
"stitching-reference-edge": n
})
}),
"font-name-requested": name,
"font-size-requested": p(1, m),
"force-front-side": o(p(1, m)),
"imposition-template": b(n, name),
"insert-sheet": o(
g({
"insert-after-page-number": p(0, m),
"insert-count": p(0, m),
media: b(n, name),
"media-col": g("Job Template", "media-col")
})
),
"job-account-id": name,
"job-accounting-sheets": g({
"job-accounting-output-bin": b(n, name),
"job-accounting-sheets-type": b(n, name),
media: b(n, name),
"media-col": g("Job Template", "media-col")
}),
"job-accounting-user-id": name,
"job-copies": p(1, m),
"job-cover-back": g("Job Template", "cover-back"),
"job-cover-front": g("Job Template", "cover-front"),
"job-delay-output-until": b(n, name),
"job-delay-output-until-time": se,
"job-error-action": n,
"job-error-sheet": g({
"job-error-sheet-type": b(n, name),
"job-error-sheet-when": n,
media: b(n, name),
"media-col": g("Job Template", "media-col")
}),
"job-finishings": o(R),
"job-finishings-col": g("Job Template", "finishings-col"),
"job-hold-until": b(n, name),
"job-hold-until-time": se,
"job-message-to-operator": I,
"job-phone-number": U,
"job-priority": p(1, 100),
"job-recipient-name": name,
"job-save-disposition": g({
"save-disposition": n,
"save-info": o(
g({
"save-document-format": me,
"save-location": U,
"save-name": name
})
)
}),
"job-sheet-message": I,
"job-sheets": b(n, name),
"job-sheets-col": g({
"job-sheets": b(n, name),
media: b(n, name),
"media-col": g("Job Template", "media-col")
}),
media: b(n, name),
"media-col": g({
"media-back-coating": b(n, name),
"media-bottom-margin": p(0, m),
"media-color": b(n, name),
"media-front-coating": b(n, name),
"media-grain": b(n, name),
"media-hole-count": p(0, m),
"media-info": I(255),
"media-key": b(n, name),
"media-left-margin": p(0, m),
"media-order-count": p(1, m),
"media-pre-printed": b(n, name),
"media-recycled": b(n, name),
"media-right-margin": p(0, m),
"media-size": g({
"x-dimension": p(0, m),
"y-dimension": p(0, m)
}),
"media-size-name": b(n, name),
"media-source": b(n, name),
"media-thickness": p(1, m),
"media-tooth": b(n, name),
"media-top-margin": p(0, m),
"media-type": b(n, name),
"media-weight-metric": p(0, m)
}),
"media-input-tray-check": b(n, name),
"multiple-document-handling": n,
"number-up": p(1, m),
"orientation-requested": R,
"output-bin": b(n, name),
"output-device": xe(127),
overrides: o(
g({
//Any Job Template attribute (TODO)
"document-copies": o(J),
"document-numbers": o(J),
pages: o(J)
})
),
"page-delivery": n,
"page-order-received": n,
"page-ranges": o(J(1, m)),
"pages-per-subset": o(p(1, m)),
"pdl-init-file": g({
"pdl-init-file-entry": name,
"pdl-init-file-location": U,
"pdl-init-file-name": name
}),
"presentation-direction-number-up": n,
"print-color-mode": n,
"print-content-optimize": n,
"print-quality": R,
"print-rendering-intent": n,
"printer-resolution": ye,
"print-scaling": n,
"proof-print": g({
media: b(n, name),
"media-col": g("Job Template", "media-col"),
"proof-print-copies": p(0, m)
}),
"separator-sheets": g({
media: b(n, name),
"media-col": g("Job Template", "media-col"),
"separator-sheets-type": o(n)
}),
"sheet-collate": n,
sides: n,
"x-image-position": n,
"x-image-shift": p,
"x-side1-image-shift": p,
"x-side2-image-shift": p,
"y-image-position": n,
"y-image-shift": p,
"y-side1-image-shift": p,
"y-side2-image-shift": p
};
X.Operation = {
"attributes-charset": ae,
"attributes-natural-language": ie,
compression: n,
"detailed-status-message": I,
"document-access-error": I,
"document-charset": ae,
"document-digital-signature": n,
"document-format": me,
"document-format-details": o(
g({
"document-format": me,
"document-format-device-id": I(127),
"document-format-version": I(127),
"document-natural-language": o(ie),
"document-source-application-name": name,
"document-source-application-version": I(127),
"document-source-os-name": xe(40),
"document-source-os-version": I(40)
})
),
"document-message": I,
"document-metadata": o(ge),
"document-name": name,
"document-natural-language": ie,
"document-password": ge,
"document-uri": U,
"first-index": p(1, m),
"identify-actions": o(n),
"ipp-attribute-fidelity": P,
"job-hold-until": b(n, name),
"job-id": p(1, m),
"job-ids": o(p(1, m)),
"job-impressions": p(0, m),
"job-k-octets": p(0, m),
"job-mandatory-attributes": o(n),
"job-media-sheets": p(0, m),
"job-message-from-operator": I(127),
"job-name": name,
"job-password": ge(255),
"job-password-encryption": b(n, name),
"job-state": R,
"job-state-message": I,
"job-state-reasons": o(n),
"job-uri": U,
"last-document": P,
limit: p(1, m),
message: I(127),
"my-jobs": P,
"original-requesting-user-name": name,
"preferred-attributes": g,
"printer-message-from-operator": I(127),
"printer-uri": U,
"requested-attributes": o(n),
"requesting-user-name": name,
"requesting-user-uri": U,
"status-message": I(255),
"which-jobs": n
};
X["Printer Description"] = {
"charset-configured": ae,
"charset-supported": o(ae),
"color-supported": P,
"compression-supported": o(n),
"copies-default": p(1, m),
"copies-supported": J(1, m),
"cover-back-default": g("Job Template", "cover-back"),
"cover-back-supported": o(n),
"cover-front-default": g("Job Template", "cover-front"),
"cover-front-supported": o(n),
"device-service-count": p(1, m),
"device-uuid": U(45),
"document-charset-default": ae,
"document-charset-supported": o(ae),
"document-creation-attributes-supported": o(n),
"document-digital-signature-default": n,
"document-digital-signature-supported": o(n),
"document-format-default": me,
"document-format-details-default": g(
"Operation",
"document-format-details"
),
"document-format-details-supported": o(n),
"document-format-supported": o(me),
"document-format-letying-attributes": o(n),
"document-format-version-default": I(127),
"document-format-version-supported": o(I(127)),
"document-natural-language-default": ie,
"document-natural-language-supported": o(ie),
"document-password-supported": p(0, 1023),
"feed-orientation-default": n,
"feed-orientation-supported": n,
"finishings-col-default": g("Job Template", "finishings-col"),
"finishings-col-ready": o(g("Job Template", "finishings-col")),
"finishings-col-supported": o(n),
"finishings-default": o(R),
"finishings-ready": o(R),
"finishings-supported": o(R),
"font-name-requested-default": name,
"font-name-requested-supported": o(name),
"font-size-requested-default": p(1, m),
"font-size-requested-supported": o(J(1, m)),
"force-front-side-default (under review)": o(p(1, m)),
"force-front-side-supported (under review)": J(1, m),
"generated-natural-language-supported": o(ie),
"identify-actions-default": o(n),
"identify-actions-supported": o(n),
"imposition-template-default": b(n, name),
"imposition-template-supported": o(b(n, name)),
"insert-after-page-number-supported": J(0, m),
"insert-count-supported": J(0, m),
"insert-sheet-default": o(g("Job Template", "insert-sheet")),
"insert-sheet-supported": o(n),
"ipp-features-supported": o(n),
"ipp-versions-supported": o(n),
"ippget-event-life": p(15, m),
"job-account-id-default": b(name, H),
"job-account-id-supported": P,
"job-accounting-sheets-default": b(
g("Job Template", "job-accounting-sheets"),
H
),
"job-accounting-sheets-supported": o(n),
"job-accounting-user-id-default": b(name, H),
"job-accounting-user-id-supported": P,
"job-constraints-supported": o(g),
"job-copies-default": p(1, m),
"job-copies-supported": J(1, m),
"job-cover-back-default": g("Job Template", "cover-back"),
"job-cover-back-supported": o(n),
"job-cover-front-default": g("Job Template", "cover-front"),
"job-cover-front-supported": o(n),
"job-creation-attributes-supported": o(n),
"job-delay-output-until-default": b(n, name),
"job-delay-output-until-supported": o(b(n, name)),
"job-delay-output-until-time-supported": J(0, m),
"job-error-action-default": n,
"job-error-action-supported": o(n),
"job-error-sheet-default": b(
g("Job Template", "job-error-sheet"),
H
),
"job-error-sheet-supported": o(n),
"job-finishings-col-default": g("Job Template", "finishings-col"),
"job-finishings-col-ready": o(
g("Job Template", "finishings-col")
),
"job-finishings-col-supported": o(n),
"job-finishings-default": o(R),
"job-finishings-ready": o(R),
"job-finishings-supported": o(R),
"job-hold-until-default": b(n, name),
"job-hold-until-supported": o(b(n, name)),
"job-hold-until-time-supported": J(0, m),
"job-ids-supported": P,
"job-impressions-supported": J(0, m),
"job-k-octets-supported": J(0, m),
"job-media-sheets-supported": J(0, m),
"job-message-to-operator-default": I,
"job-message-to-operator-supported": P,
"job-password-encryption-supported": o(b(n, name)),
"job-password-supported": p(0, 255),
"job-phone-number-default": b(U, H),
"job-phone-number-supported": P,
"job-priority-default": p(1, 100),
"job-priority-supported": p(1, 100),
"job-recipient-name-default": b(name, H),
"job-recipient-name-supported": P,
"job-resolvers-supported": o(
g({
"resolver-name": name
})
),
"job-settable-attributes-supported": o(n),
"job-sheet-message-default": I,
"job-sheet-message-supported": P,
"job-sheets-col-default": g("Job Template", "job-sheets-col"),
"job-sheets-col-supported": o(n),
"job-sheets-default": b(n, name),
"job-sheets-supported": o(b(n, name)),
"job-spooling-supported": n,
"max-save-info-supported": p(1, m),
"max-stitching-locations-supported": p(1, m),
"media-back-coating-supported": o(b(n, name)),
"media-bottom-margin-supported": o(p(0, m)),
"media-col-database": o(
g({
//TODO: Member attributes are the same as the
// "media-col" Job Template attribute
"media-source-properties": g({
"media-source-feed-direction": n,
"media-source-feed-orientation": R
})
})
),
"media-col-default": g("Job Template", "media-col"),
"media-col-ready": o(
g({
//TODO: Member attributes are the same as the
// "media-col" Job Template attribute
"media-source-properties": g({
"media-source-feed-direction": n,
"media-source-feed-orientation": R
})
})
),
"media-col-supported": o(n),
"media-color-supported": o(b(n, name)),
"media-default": b(n, name, H),
"media-front-coating-supported": o(b(n, name)),
"media-grain-supported": o(b(n, name)),
"media-hole-count-supported": o(J(0, m)),
"media-info-supported": P,
"media-input-tray-check-default": b(n, name, H),
"media-input-tray-check-supported": o(b(n, name)),
"media-key-supported": o(b(n, name)),
"media-left-margin-supported": o(p(0, m)),
"media-order-count-supported": o(J(1, m)),
"media-pre-printed-supported": o(b(n, name)),
"media-ready": o(b(n, name)),
"media-recycled-supported": o(b(n, name)),
"media-right-margin-supported": o(p(0, m)),
"media-size-supported": o(
g({
"x-dimension": b(p(1, m), J(1, m)),
"y-dimension": b(p(1, m), J(1, m))
})
),
"media-source-supported": o(b(n, name)),
"media-supported": o(b(n, name)),
"media-thickness-supported": J(1, m),
"media-tooth-supported": o(b(n, name)),
"media-top-margin-supported": o(p(0, m)),
"media-type-supported": o(b(n, name)),
"media-weight-metric-supported": o(J(0, m)),
"multiple-document-handling-default": n,
"multiple-document-handling-supported": o(n),
"multiple-document-jobs-supported": P,
"multiple-operation-time-out": p(1, m),
"multiple-operation-timeout-action": n,
"natural-language-configured": ie,
"number-up-default": p(1, m),
"number-up-supported": b(p(1, m), J(1, m)),
"operations-supported": o(R),
"orientation-requested-default": b(H, R),
"orientation-requested-supported": o(R),
"output-bin-default": b(n, name),
"output-bin-supported": o(b(n, name, null)),
"output-device-supported": o(xe(127)),
"overrides-supported": o(n),
"page-delivery-default": n,
"page-delivery-supported": o(n),
"page-order-received-default": n,
"page-order-received-supported": o(n),
"page-ranges-supported": P,
"pages-per-minute": p(0, m),
"pages-per-minute-color": p(0, m),
"pages-per-subset-supported": P,
"parent-printers-supported": o(U),
"pdl-init-file-default": b(
g("Job Template", "pdl-init-file"),
H,
null
),
"pdl-init-file-entry-supported": o(name),
"pdl-init-file-location-supported": o(U),
"pdl-init-file-name-subdirectory-supported": P,
"pdl-init-file-name-supported": o(name),
"pdl-init-file-supported": o(n),
"pdl-override-supported": n,
"preferred-attributes-supported": P,
"presentation-direction-number-up-default": n,
"presentation-direction-number-up-supported": o(n),
"print-color-mode-default": n,
"print-color-mode-supported": o(n),
"print-content-optimize-default": n,
"print-content-optimize-supported": o(n),
"print-quality-default": R,
"print-quality-supported": o(R),
"print-rendering-intent-default": n,
"print-rendering-intent-supported": o(n),
"printer-alert": o(ge),
"printer-alert-description": o(I),
"printer-charge-info": I,
"printer-charge-info-uri": U,
"printer-current-time": se,
"printer-detailed-status-messages": o(I),
"printer-device-id": I(1023),
"printer-driver-installer": U,
"printer-geo-location": U,
"printer-get-attributes-supported": o(n),
"printer-icc-profiles": o(
g({
"xri-authentication": name,
"profile-url": U
}, null)
),
"printer-icons": o(U),
"printer-info": I(127),
"printer-is-accepting-jobs": P,
"printer-location": I(127),
"printer-make-and-model": I(127),
"printer-mandatory-job-attributes": o(n),
"printer-message-date-time": se,
"printer-message-from-operator": I(127),
"printer-message-time": p,
"printer-more-info": U,
"printer-more-info-manufacturer": U,
"printer-name": xe(127),
"printer-organization": o(I),
"printer-organizational-unit": o(I),
"printer-resolution-default": ye,
"printer-resolution-supported": ye,
"printer-settable-attributes-supported": o(n),
"printer-state": R,
"printer-state-change-date-time": se,
"printer-state-change-time": p(1, m),
"printer-state-message": I,
"printer-state-reasons": o(n),
"printer-supply": o(ge),
"printer-supply-description": o(I),
"printer-supply-info-uri": U,
"printer-up-time": p(1, m),
"printer-uri-supported": o(U),
"printer-uuid": U(45),
"printer-xri-supported": o(
g({
"xri-authentication": n,
"xri-security": n,
"xri-uri": U
}, null)
),
"proof-print-default": b(g("Job Template", "proof-print"), H, null),
"proof-print-supported": o(n),
"pwg-raster-document-resolution-supported": o(ye),
"pwg-raster-document-sheet-back": n,
"pwg-raster-document-type-supported": o(n),
"queued-job-count": p(0, m),
"reference-uri-schemes-supported": o(De),
"repertoire-supported": o(b(n, name, null)),
"requesting-user-uri-supported": P,
"save-disposition-supported": o(n),
"save-document-format-default": me,
"save-document-format-supported": o(me),
"save-location-default": U,
"save-location-supported": o(U),
"save-name-subdirectory-supported": P,
"save-name-supported": P,
"separator-sheets-default": g("Job Template", "separator-sheets"),
"separator-sheets-supported": o(n),
"sheet-collate-default": n,
"sheet-collate-supported": o(n),
"sides-default": n,
"sides-supported": o(n),
"stitching-locations-supported": o(
b(p(0, m), J(0, m), null)
),
"stitching-offset-supported": o(
b(p(0, m), J(0, m), null)
),
"subordinate-printers-supported": o(U),
"uri-authentication-supported": o(n),
"uri-security-supported": o(n),
"user-defined-values-supported": o(n),
"which-jobs-supported": o(n),
"x-image-position-default": n,
"x-image-position-supported": o(n),
"x-image-shift-default": p,
"x-image-shift-supported": J,
"x-side1-image-shift-default": p,
"x-side1-image-shift-supported": J,
"x-side2-image-shift-default": p,
"x-side2-image-shift-supported": J,
"xri-authentication-supported": o(n),
"xri-security-supported": o(n),
"xri-uri-scheme-supported": o(De),
"y-image-position-default": n,
"y-image-position-supported": o(n),
"y-image-shift-default": p,
"y-image-shift-supported": J,
"y-side1-image-shift-default": p,
"y-side1-image-shift-supported": J,
"y-side2-image-shift-default": p,
"y-side2-image-shift-supported": J
};
X["Subscription Description"] = {
"notify-job-id": p(1, m),
"notify-lease-expiration-time": p(0, m),
"notify-printer-up-time": p(1, m),
"notify-printer-uri": U,
"notify-sequence-number": p(0, m),
"notify-subscriber-user-name": name,
"notify-subscriber-user-uri": U,
"notify-subscription-id": p(1, m),
"subscription-uuid": U
};
X["Subscription Template"] = {
"notify-attributes": o(n),
"notify-attributes-supported": o(n),
"notify-charset": ae,
"notify-events": o(n),
"notify-events-default": o(n),
"notify-events-supported": o(n),
"notify-lease-duration": p(0, 67108863),
"notify-lease-duration-default": p(0, 67108863),
"notify-lease-duration-supported": o(
b(p(0, 67108863), J(0, 67108863), null)
),
"notify-max-events-supported": p(2, m),
"notify-natural-language": ie,
"notify-pull-method": n,
"notify-pull-method-supported": o(n),
"notify-recipient-uri": U,
"notify-schemes-supported": o(De),
"notify-time-interval": p(0, m),
"notify-user-data": ge(63)
};
function Me(u) {
return u != null && u.type || Object.keys(u || {}).forEach(function(d) {
let f = u[d];
typeof f == "function" ? u[d] = f() : typeof f == "object" && !(f != null && f.type) && (u[d] = Me(f));
}), u;
}
Me(X);
function A(u) {
return u = u.slice(0), u.type = "keyword", u;
}
function L(u) {
return u = u.slice(0), u.type = "keyword | name", u;
}
function Jt(u) {
return u = u.slice(0), u.type = "keyword | name | no-value", u;
}
function B(u) {
return u = u.slice(0), u.type = "1setOf keyword", u;
}
function K(u) {
return u = u.slice(0), u.type = "1setOf keyword | name", u;
}
let de = {
"size name": [
"a",
"arch-a",
"arch-b",
"arch-c",
"arch-d",
"arch-e",
"asme_f_28x40in",
"b",
"c",
"choice_iso_a4_210x297mm_na_letter_8.5x11in",
"d",
"e",
"executive",
"f",
"folio",
"invoice",
"iso-a0",
"iso-a1",
"iso-a2",
"iso-a3",
"iso-a4",
"iso-a5",
"iso-a6",
"iso-a7",
"iso-a8",
"iso-a9",
"iso-a10",
"iso-b0",
"iso-b1",
"iso-b2",
"iso-b3",
"iso-b4",
"iso-b5",
"iso-b6",
"iso-b7",
"iso-b8",
"iso-b9",
"iso-b10",
"iso-c3",
"iso-c4",
"iso-c5",
"iso-c6",
"iso-designated-long",
"iso_2a0_1189x1682mm",
"iso_a0_841x1189mm",
"iso_a1_594x841mm",
"iso_a1x3_841x1783mm",
"iso_a1x4_841x2378mm",
"iso_a2_420x594mm",
"iso_a2x3_594x1261mm",
"iso_a2x4_594x1682mm",
"iso_a2x5_594x2102mm",
"iso_a3-extra_322x445mm",
"iso_a3_297x420mm",
"iso_a0x3_1189x2523mm",
"iso_a3x3_420x891mm",
"iso_a3x4_420x1189mm",
"iso_a3x5_420x1486mm",
"iso_a3x6_420x1783mm",
"iso_a3x7_420x2080mm",
"iso_a4-extra_235.5x322.3mm",
"iso_a4-tab_225x297mm",
"iso_a4_210x297mm",
"iso_a4x3_297x630mm",
"iso_a4x4_297x841mm",
"iso_a4x5_297x1051mm",
"iso_a4x6_297x1261mm",
"iso_a4x7_297x1471mm",
"iso_a4x8_297x1682mm",
"iso_a4x9_297x1892mm",
"iso_a5-extra_174x235mm",
"iso_a5_148x210mm",
"iso_a6_105x148mm",
"iso_a7_74x105mm",
"iso_a8_52x74mm",
"iso_a9_37x52mm",
"iso_a10_26x37mm",
"iso_b0_1000x1414mm",
"iso_b1_707x1000mm",
"iso_b2_500x707mm",
"iso_b3_353x500mm",
"iso_b4_250x353mm",
"iso_b5-extra_201x276mm",
"iso_b5_176x250mm",
"iso_b6_125x176mm",
"iso_b6c4_125x324mm",
"iso_b7_88x125mm",
"iso_b8_62x88mm",
"iso_b9_44x62mm",
"iso_b10_31x44mm",
"iso_c0_917x1297mm",
"iso_c1_648x917mm",
"iso_c2_458x648mm",
"iso_c3_324x458mm",
"iso_c4_229x324mm",
"iso_c5_162x229mm",
"iso_c6_114x162mm",
"iso_c6c5_114x229mm",
"iso_c7_81x114mm",
"iso_c7c6_81x162mm",
"iso_c8_57x81mm",
"iso_c9_40x57mm",
"iso_c10_28x40mm",
"iso_dl_110x220mm",
"iso_ra0_860x1220mm",
"iso_ra1_610x860mm",
"iso_ra2_430x610mm",
"iso_sra0_900x1280mm",
"iso_sra1_640x900mm",
"iso_sra2_450x640mm",
"jis-b0",
"jis-b1",
"jis-b2",
"jis-b3",
"jis-b4",
"jis-b5",
"jis-b6",
"jis-b7",
"jis-b8",
"jis-b9",
"jis-b10",
"jis_b0_1030x1456mm",
"jis_b1_728x1030mm",
"jis_b2_515x728mm",
"jis_b3_364x515mm",
"jis_b4_257x364mm",
"jis_b5_182x257mm",
"jis_b6_128x182mm",
"jis_b7_91x128mm",
"jis_b8_64x91mm",
"jis_b9_45x64mm",
"jis_b10_32x45mm",
"jis_exec_216x330mm",
"jpn_chou2_111.1x146mm",
"jpn_chou3_120x235mm",
"jpn_chou4_90x205mm",
"jpn_hagaki_100x148mm",
"jpn_kahu_240x322.1mm",
"jpn_kaku2_240x332mm",
"jpn_oufuku_148x200mm",
"jpn_you4_105x235mm",
"ledger",
"monarch",
"na-5x7",
"na-6x9",
"na-7x9",
"na-8x10",
"na-9x11",
"na-9x12",
"na-10x13",
"na-10x14",
"na-10x15",
"na-legal",
"na-letter",
"na-number-9",
"na-number-10",
"na_5x7_5x7in",
"na_6x9_6x9in",
"na_7x9_7x9in",
"na_9x11_9x11in",
"na_10x11_10x11in",
"na_10x13_10x13in",
"na_10x14_10x14in",
"na_10x15_10x15in",
"na_11x12_11x12in",
"na_11x15_11x15in",
"na_12x19_12x19in",
"na_a2_4.375x5.75in",
"na_arch-a_9x12in",
"na_arch-b_12x18in",
"na_arch-c_18x24in",
"na_arch-d_24x36in",
"na_arch-e_36x48in",
"na_b-plus_12x19.17in",
"na_c5_6.5x9.5in",
"na_c_17x22in",
"na_d_22x34in",
"na_e_34x44in",
"na_edp_11x14in",
"na_eur-edp_12x14in",
"na_executive_7.25x10.5in",
"na_f_44x68in",
"na_fanfold-eur_8.5x12in",
"na_fanfold-us_11x14.875in",
"na_foolscap_8.5x13in",
"na_govt-legal_8x13in",
"na_govt-letter_8x10in",
"na_index-3x5_3x5in",
"na_index-4x6-ext_6x8in",
"na_index-4x6_4x6in",
"na_index-5x8_5x8in",
"na_invoice_5.5x8.5in",
"na_ledger_11x17in",
"na_legal-extra_9.5x15in",
"na_legal_8.5x14in",
"na_letter-extra_9.5x12in",
"na_letter-plus_8.5x12.69in",
"na_letter_8.5x11in",
"na_monarch_3.875x7.5in",
"na_number-9_3.875x8.875in",
"na_number-10_4.125x9.5in",
"na_number-11_4.5x10.375in",
"na_number-12_4.75x11in",
"na_number-14_5x11.5in",
"na_personal_3.625x6.5in",
"na_quarto_8.5x10.83in",
"na_super-a_8.94x14in",
"na_super-b_13x19in",
"na_wide-format_30x42in",
"om_dai-pa-kai_275x395mm",
"om_folio-sp_215x315mm",
"om_folio_210x330mm",
"om_invite_220x220mm",
"om_italian_110x230mm",
"om_juuro-ku-kai_198x275mm",
"om_large-photo_200x300",
"om_pa-kai_267x389mm",
"om_postfix_114x229mm",
"om_small-photo_100x150mm",
"prc_1_102x165mm",
"prc_2_102x176mm",
"prc_3_125x176mm",
"prc_4_110x208mm",
"prc_5_110x220mm",
"prc_6_120x320mm",
"prc_7_160x230mm",
"prc_8_120x309mm",
"prc_10_324x458mm",
"prc_16k_146x215mm",
"prc_32k_97x151mm",
"quarto",
"roc_8k_10.75x15.5in",
"roc_16k_7.75x10.75in",
"super-b",
"tabloid"
],
"media name": [
"a-translucent",
"a-transparent",
"a-white",
"arch-a-translucent",
"arch-a-transparent",
"arch-a-white",
"arch-axsynchro-translucent",
"arch-axsynchro-transparent",
"arch-axsynchro-white",
"arch-b-translucent",
"arch-b-transparent",
"arch-b-white",
"arch-bxsynchro-translucent",
"arch-bxsynchro-transparent",
"arch-bxsynchro-white",
"arch-c-translucent",
"arch-c-transparent",
"arch-c-white",
"arch-cxsynchro-translucent",
"arch-cxsynchro-transparent",
"arch-cxsynchro-white",
"arch-d-translucent",
"arch-d-transparent",
"arch-d-white",
"arch-dxsynchro-translucent",
"arch-dxsynchro-transparent",
"arch-dxsynchro-white",
"arch-e-translucent",
"arch-e-transparent",
"arch-e-white",
"arch-exsynchro-translucent",
"arch-exsynchro-transparent",
"arch-exsynchro-white",
"auto-fixed-size-translucent",
"auto-fixed-size-transparent",
"auto-fixed-size-white",
"auto-synchro-translucent",
"auto-synchro-transparent",
"auto-synchro-white",
"auto-translucent",
"auto-transparent",
"auto-white",
"axsynchro-translucent",
"axsynchro-transparent",
"axsynchro-white",
"b-translucent",
"b-transparent",
"b-white",
"bxsynchro-translucent",
"bxsynchro-transparent",
"bxsynchro-white",
"c-translucent",
"c-transparent",
"c-white",
"custom1",
"custom2",
"custom3",
"custom4",
"custom5",
"custom6",
"custom7",
"custom8",
"custom9",
"custom10",
"cxsynchro-translucent",
"cxsynchro-transparent",
"cxsynchro-white",
"d-translucent",
"d-transparent",
"d-white",
"default",
"dxsynchro-translucent",
"dxsynchro-transparent",
"dxsynchro-white",
"e-translucent",
"e-transparent",
"e-white",
"executive-white",
"exsynchro-translucent",
"exsynchro-transparent",
"exsynchro-white",
"folio-white",
"invoice-white",
"iso-a0-translucent",
"iso-a0-transparent",
"iso-a0-white",
"iso-a0xsynchro-translucent",
"iso-a0xsynchro-transparent",
"iso-a0xsynchro-white",
"iso-a1-translucent",
"iso-a1-transparent",
"iso-a1-white",
"iso-a1x3-translucent",
"iso-a1x3-transparent",
"iso-a1x3-white",
"iso-a1x4- translucent",
"iso-a1x4-transparent",
"iso-a1x4-white",
"iso-a1xsynchro-translucent",
"iso-a1xsynchro-transparent",
"iso-a1xsynchro-white",
"iso-a2-translucent",
"iso-a2-transparent",
"iso-a2-white",
"iso-a2x3-translucent",
"iso-a2x3-transparent",
"iso-a2x3-white",
"iso-a2x4-translucent",
"iso-a2x4-transparent",
"iso-a2x4-white",
"iso-a2x5-translucent",
"iso-a2x5-transparent",
"iso-a2x5-white",
"iso-a2xsynchro-translucent",
"iso-a2xsynchro-transparent",
"iso-a2xsynchro-white",
"iso-a3-colored",
"iso-a3-translucent",
"iso-a3-transparent",
"iso-a3-white",
"iso-a3x3-translucent",
"iso-a3x3-transparent",
"iso-a3x3-white",
"iso-a3x4-translucent",
"iso-a3x4-transparent",
"iso-a3x4-white",
"iso-a3x5-translucent",
"iso-a3x5-transparent",
"iso-a3x5-white",
"iso-a3x6-translucent",
"iso-a3x6-transparent",
"iso-a3x6-white",
"iso-a3x7-translucent",
"iso-a3x7-transparent",
"iso-a3x7-white",
"iso-a3xsynchro-translucent",
"iso-a3xsynchro-transparent",
"iso-a3xsynchro-white",
"iso-a4-colored",
"iso-a4-translucent",
"iso-a4-transparent",
"iso-a4-white",
"iso-a4x3-translucent",
"iso-a4x3-transparent",
"iso-a4x3-white",
"iso-a4x4-translucent",
"iso-a4x4-transparent",
"iso-a4x4-white",
"iso-a4x5-translucent",
"iso-a4x5-transparent",
"iso-a4x5-white",
"iso-a4x6-translucent",
"iso-a4x6-transparent",
"iso-a4x6-white",
"iso-a4x7-translucent",
"iso-a4x7-transparent",
"iso-a4x7-white",
"iso-a4x8-translucent",
"iso-a4x8-transparent",
"iso-a4x8-white",
"iso-a4x9-translucent",
"iso-a4x9-transparent",
"iso-a4x9-white",
"iso-a4xsynchro-translucent",
"iso-a4xsynchro-transparent",
"iso-a4xsynchro-white",
"iso-a5-colored",
"iso-a5-translucent",
"iso-a5-transparent",
"iso-a5-white",
"iso-a6-white",
"iso-a7-white",
"iso-a8-white",
"iso-a9-white",
"iso-a10-white",
"iso-b0-white",
"iso-b1-white",
"iso-b2-white",
"iso-b3-white",
"iso-b4-colored",
"iso-b4-white",
"iso-b5-colored",
"iso-b5-white",
"iso-b6-white",
"iso-b7-white",
"iso-b8-white",
"iso-b9-white",
"iso-b10-white",
"jis-b0-translucent",
"jis-b0-transparent",
"jis-b0-white",
"jis-b1-translucent",
"jis-b1-transparent",
"jis-b1-white",
"jis-b2-translucent",
"jis-b2-transparent",
"jis-b2-white",
"jis-b3-translucent",
"jis-b3-transparent",
"jis-b3-white",
"jis-b4-colored",
"jis-b4-translucent",
"jis-b4-transparent",
"jis-b4-white",
"jis-b5-colored",
"jis-b5-translucent",
"jis-b5-transparent",
"jis-b5-white",
"jis-b6-white",
"jis-b7-white",
"jis-b8-white",
"jis-b9-white",
"jis-b10-white",
"ledger-white",
"na-legal-colored",
"na-legal-white",
"na-letter-colored",
"na-letter-transparent",
"na-letter-white",
"quarto-white"
],
"media type": [
"bond",
"heavyweight",
"labels",
"letterhead",
"plain",
"pre-printed",
"pre-punched",
"recycled",
"transparency"
],
"input tray": [
"bottom",
"by-pass-tray",
"envelope",
"large-capacity",
"main",
"manual",
"middle",
"side",
"top",
"tray-1",
"tray-2",
"tray-3",
"tray-4",
"tray-5",
"tray-6",
"tray-7",
"tray-8",
"tray-9",
"tray-10"
],
"envelope name": [
"iso-b4-envelope",
"iso-b5-envelope",
"iso-c3-envelope",
"iso-c4-envelope",
"iso-c5-envelope",
"iso-c6-envelope",
"iso-designated-long-envelope",
"monarch-envelope",
"na-6x9-envelope",
"na-7x9-envelope",
"na-9x11-envelope",
"na-9x12-envelope",
"na-10x13-envelope",
"na-10x14-envelope",
"na-10x15-envelope",
"na-number-9-envelope",
"na-number-10-envelope"
]
}, Pe = Object.keys(X["Job Template"]), Oe = Pe.concat(Object.keys(X.Operation)), ot = Object.keys(X["Job Template"]).concat(["none"]), ze = de["media name"].concat(de["size name"]), a = {};
a.compression = A([
"compress",
"deflate",
"gzip",
"none"
]);
a["compression-supported"] = B(
a.compression
);
a["cover-back-supported"] = B([
"cover-type",
"media",
"media-col"
]);
a["cover-front-supported"] = B(
a["cover-back-supported"]
);
a["cover-type"] = A([
"no-cover",
"print-back",
"print-both",
"print-front",
"print-none"
]);
a["document-digital-signature"] = A([
"dss",
"none",
"pgp",
"smime",
"xmldsig"
]);
a["document-digital-signature-default"] = A(
a["document-digital-signature"]
);
a["document-digital-signature-supported"] = B(
a["document-digital-signature"]
);
a["document-format-details-supported"] = B([
"document-format",
"document-format-device-id",
"document-format-version",
"document-natural-language",
"document-source-application-name",
"document-source-application-version",
"document-source-os-name",
"document-source-os-version"
]);
a["document-format-letying-attributes"] = B(
//Any Printer attribute keyword name
ot
);
a["document-state-reasons"] = B([
"aborted-by-system",
"canceled-at-device",
"canceled-by-operator",
"canceled-by-user",
"completed-successfully",
"completed-with-errors",
"completed-with-warnings",
"compression-error",
"data-insufficient",
"digital-signature-did-not-verify",
"digital-signature-type-not-supported",
"digital-signature-wait",
"document-access-error",
"document-format-error",
"document-password-error",
"document-permission-error",
"document-security-error",
"document-unprintable-error",
"errors-detected",
"incoming",
"interpreting",
"none",
"outgoing",
"printing",
"processing-to-stop-point",
"queued",
"queued-for-marker",
"queued-in-device",
"resources-are-not-ready",
"resources-are-not-supported",
"submission-interrupted",
"transforming",
"unsupported-compression",
"unsupported-document-format",
"warnings-detected"
]);
a["feed-orientation"] = A([
"long-edge-first",
"short-edge-first"
]);
a["feed-orientation-supported"] = B(
a["feed-orientation"]
);
a["finishings-col-supported"] = B([
"finishing-template",
"stitching"
]);
a["identify-actions"] = B([
"display",
"flash",
"sound",
"speak"
]);
a["identify-actions-default"] = B(
a["identify-actions"]
);
a["identify-actions-supported"] = B(
a["identify-actions"]
);
a["imposition-template"] = L([
"none",
"signature"
]);
a["ipp-features-supported"] = B([
"document-object",
"ipp-everywhere",
"job-save",
"none",
"page-overrides",
"proof-print",
"subscription-object"
]);
a["ipp-versions-supported"] = B([
"1.0",
"1.1",
"2.0",
"2.1",
"2.2"
]);
a["job-accounting-sheets-type"] = L([
"none",
"standard"
]);
a["job-cover-back-supported"] = B(
a["cover-back-supported"]
);
a["job-cover-front-supported"] = B(
a["cover-front-supported"]
);
a["job-creation-attributes-supported"] = B(
// Any Job Template attribute
// Any job creation Operation attribute keyword name
Oe
);
a["job-error-action"] = A([
"abort-job",
"cancel-job",
"continue-job",
"suspend-job"
]);
a["job-error-action-default"] = A(
a["job-error-action"]
);
a["job-error-action-supported"] = B(
a["job-error-action"]
);
a["job-error-sheet-type"] = L([
"none",
"standard"
]);
a["job-error-sheet-when"] = A([
"always",
"on-error"
]);
a["job-finishings-col-supported"] = B(
a["finishings-col-supported"]
);
a["job-hold-until"] = L([
"day-time",
"evening",
"indefinite",
"night",
"no-hold",
"second-shift",
"third-shift",
"weekend"
]);
a["job-hold-until-default"] = L(
a["job-hold-until"]
);
a["job-hold-until-supported"] = K(
a["job-hold-until"]
);
a["job-mandatory-attributes"] = B(
// Any Job Template attribute
Pe
);
a["job-password-encryption"] = L([
"md2",
"md4",
"md5",
"none",
"sha"
]);
a["job-password-encryption-supported"] = K(
a["job-password-encryption"]
);
a["job-save-disposition-supported"] = B([
"save-disposition",
"save-info"
]);
a["job-settable-attributes-supported"] = B(
// Any Job Template attribute
Pe
);
a["job-sheets"] = L([
"first-print-stream-page",
"job-both-sheet",
"job-end-sheet",
"job-start-sheet",
"none",
"standard"
]);
a["job-sheets-default"] = L(
a["job-sheets"]
);
a["job-sheets-supported"] = K(
a["job-sheets"]
);
a["job-spooling-supported"] = A([
"automatic",
"spool",
"stream"
]);
a["job-state-reasons"] = B([
"aborted-by-system",
"compression-error",
"digital-signature-did-not-verify",
"digital-signature-type-not-supported",
"document-access-error",
"document-format-error",
"document-password-error",
"document-permission-error",
"document-security-error",
"document-unprintable-error",
"errors-detected",
"job-canceled-at-device",
"job-canceled-by-operator",
"job-canceled-by-user",
"job-completed-successfully",
"job-completed-with-errors",
"job-completed-with-warnings",
"job-data-insufficient",
"job-delay-output-until-specified",
"job-digital-signature-wait",
"job-hold-until-specified",
"job-incoming",
"job-interpreting",
"job-outgoing",
"job-password-wait",
"job-printed-successfully",
"job-printed-with-errors",
"job-printed-with-warnings",
"job-printing",
"job-queued",
"job-queued-for-marker",
"job-restartable",
"job-resuming",
"job-saved-successfully",
"job-saved-with-errors",
"job-saved-with-warnings",
"job-saving",
"job-spooling",
"job-streaming",
"job-suspended",
"job-suspended-by-operator",
"job-suspended-by-system",
"job-suspended-by-user",
"job-suspending",
"job-transforming",
"none",
"printer-stopped",
"printer-stopped-partly",
"processing-to-stop-point",
"queued-in-device",
"resources-are-not-ready",
"resources-are-not-supported",
"service-off-line",
"submission-interrupted",
"unsupported-compression",
"unsupported-document-format",
"warnings-detected"
]);
a.media = L(
[].concat(
de["size name"],
de["media name"],
de["media type"],
de["input tray"],
de["envelope name"]
)
);
a["media-back-coating"] = L([
"glossy",
"high-gloss",
"matte",
"none",
"satin",
"semi-gloss"
]);
a["media-back-coating-supported"] = K(
a["media-back-coating"]
);
a["media-col-supported"] = B([
"media-bottom-margin",
"media-left-margin",
"media-right-margin",
"media-size-name",
"media-source",
"media-top-margin"
]);
a["media-color"] = L([
"blue",
"buff",
"goldenrod",
"gray",
"green",
"ivory",
"no-color",
"orange",
"pink",
"red",
"white",
"yellow"
]);
a["media-color-supported"] = K(
a["media-color"]
);
a["media-default"] = Jt(
a.media
);
a["media-front-coating"] = L(
a["media-back-coating"]
);
a["media-front-coating-supported"] = K(
a["media-back-coating"]
);
a["media-grain"] = L([
"x-direction",
"y-direction"
]);
a["media-grain-supported"] = K(
a["media-grain"]
);
a["media-input-tray-check"] = L([
de["input tray"]
]);
a["media-input-tray-check-default"] = L([
de["input tray"]
]);
a["media-input-tray-check-supported"] = K(
de["input tray"]
);
a["media-key"] = L(
// Any "media" media or size keyword value
ze
);
a["media-key-supported"] = K([
// Any "media" media or size keyword value
ze
]);
a["media-pre-printed"] = L([
"blank",
"letter-head",
"pre-printed"
]);
a["media-pre-printed-supported"] = L(
a["media-pre-printed"]
);
a["media-ready"] = K([
// Any "media" media or size keyword value
ze
]);
a["media-recycled"] = L([
"none",
"standard"
]);
a["media-recycled-supported"] = L(
a["media-recycled"]
);
a["media-source"] = L([
"alternate",
"alternate-roll",
"auto",
"bottom",
"by-pass-tray",
"center",
"disc",
"envelope",
"hagaki",
"large-capacity",
"left",
"main",
"main-roll",
"manual",
"middle",
"photo",
"rear",
"right",
"roll-1",
"roll-2",
"roll-3",
"roll-4",
"roll-5",
"roll-6",
"roll-7",
"roll-8",
"roll-9",
"roll-10",
"side",
"top",
"tray-1",
"tray-2",
"tray-3",
"tray-4",
"tray-5",
"tray-6",
"tray-7",
"tray-8",
"tray-9",
"tray-10",
"tray-11",
"tray-12",
"tray-13",
"tray-14",
"tray-15",
"tray-16",
"tray-17",
"tray-18",
"tray-19",
"tray-20"
]);
a["media-source-feed-direction"] = A(
a["feed-orientation"]
);
a["media-source-supported"] = K(
a["media-source"]
);
a["media-supported"] = K(
a.media
);
a["media-tooth"] = L([
"antique",
"calendared",
"coarse",
"fine",
"linen",
"medium",
"smooth",
"stipple",
"uncalendared",
"vellum"
]);
a["media-tooth-supported"] = K(
a["media-tooth"]
);
a["media-type"] = L([
"aluminum",
"back-print-film",
"cardboard",
"cardstock",
"cd",
"continuous",
"continuous-long",
"continuous-short",
"corrugated-board",
"disc",
"double-wall",
"dry-film",
"dvd",
"embossing-foil",
"end-board",
"envelope",
"envelope-plain",
"envelope-window",
"film",
"flexo-base",
"flexo-photo-polymer",
"flute",
"foil",
"full-cut-tabs",
"gravure-cylinder",
"image-setter-paper",
"imaging-cylinder",
"labels",
"laminating-foil",
"letterhead",
"mounting-tape",
"multi-layer",
"multi-part-form",
"other",
"paper",
"photographic",
"photographic-film",
"photographic-glossy",
"photographic-high-gloss",
"photographic-matte",
"photographic-satin",
"photographic-semi-gloss",
"plate",
"polyester",
"pre-cut-tabs",
"roll",
"screen",
"screen-paged",
"self-adhesive",
"shrink-foil",
"single-face",
"single-wall",
"sleeve",
"stationery",
"stationery-coated",
"stationery-fine",
"stationery-heavyweight",
"stationery-inkjet",
"stationery-letterhead",
"stationery-lightweight",
"stationery-preprinted",
"stationery-prepunched",
"tab-stock",
"tractor",
"transparency",
"triple-wall",
"wet-film"
]);
a["media-type-supported"] = K(
a["media-type"]
);
a["multiple-document-handling"] = A([
"separate-documents-collated-copies",
"separate-documents-uncollated-copies",
"single-document",
"single-document-new-sheet"
]);
a["multiple-document-handling-default"] = A(
a["multiple-document-handling"]
);
a["multiple-document-handling-supported"] = B(
a["multiple-document-handling"]
);
a["multiple-operation-timeout-action"] = A([
"abort-job",
"hold-job",
"process-job"
]);
a["notify-events"] = B([
"job-completed",
"job-config-changed",
"job-created",
"job-progress",
"job-state-changed",
"job-stopped",
"none",
"printer-config-changed",
"printer-finishings-changed",
"printer-media-changed",
"printer-queue-order-changed",
"printer-restarted",
"printer-shutdown",
"printer-state-changed",
"printer-stopped"
]);
a["notify-events-default"] = B(
a["notify-events"]
);
a["notify-events-supported"] = B(
a["notify-events"]
);
a["notify-pull-method"] = A([
"ippget"
]);
a["notify-pull-method-supported"] = B(
a["notify-pull-method"]
);
a["notify-subscribed-event"] = A(
a["notify-events"]
);
a["output-bin"] = L([
"bottom",
"center",
"face-down",
"face-up",
"large-capacity",
"left",
"mailbox-1",
"mailbox-2",
"mailbox-3",
"mailbox-4",
"mailbox-5",
"mailbox-6",
"mailbox-7",
"mailbox-8",
"mailbox-9",
"mailbox-10",
"middle",
"my-mailbox",
"rear",
"right",
"side",
"stacker-1",
"stacker-2",
"stacker-3",
"stacker-4",
"stacker-5",
"stacker-6",
"stacker-7",
"stacker-8",
"stacker-9",
"stacker-10",
"top",
"tray-1",
"tray-2",
"tray-3",
"tray-4",
"tray-5",
"tray-6",
"tray-7",
"tray-8",
"tray-9",
"tray-10"
]);
a["job-accounting-output-bin"] = L(
a["output-bin"]
);
a["output-bin-default"] = L(
a["output-bin"]
);
a["output-bin-supported"] = K(
a["output-bin"]
);
a["page-delivery"] = A([
"reverse-order-face-down",
"reverse-order-face-up",
"same-order-face-down",
"same-order-face-up",
"system-specified"
]);
a["page-delivery-default"] = A(
a["page-delivery"]
);
a["page-delivery-supported"] = B(
a["page-delivery"]
);
a["page-order-received"] = A([
"1-to-n-order",
"n-to-1-order"
]);
a["page-order-received-default"] = A(
a["page-order-received"]
);
a["page-order-received-supported"] = B(
a["page-order-received"]
);
a["current-page-order"] = A(
a["page-order-received"]
);
a["pdl-init-file-supported"] = B([
"pdl-init-file-entry",
"pdl-init-file-location",
"pdl-init-file-name"
]);
a["pdl-override-supported"] = A([
"attempted",
"guaranteed",
"not-attempted"
]);
a["presentation-direction-number-up"] = A([
"tobottom-toleft",
"tobottom-toright",
"toleft-tobottom",
"toleft-totop",
"toright-tobottom",
"toright-totop",
"totop-toleft",
"totop-toright"
]);
a["presentation-direction-number-up-default"] = A(
a["presentation-direction-number-up"]
);
a["presentation-direction-number-up-supported"] = B(
a["presentation-direction-number-up"]
);
a["print-color-mode"] = A([
"auto",
"bi-level",
"color",
"highlight",
"monochrome",
"process-bi-level",
"process-monochrome"
]);
a["print-color-mode-default"] = A(
a["print-color-mode"]
);
a["print-color-mode-supported"] = B(
a["print-color-mode"]
);
a["print-content-optimize"] = A([
"auto",
"graphic",
"photo",
"text",
"text-and-graphic"
]);
a["print-content-optimize-default"] = A(
a["print-content-optimize"]
);
a["print-content-optimize-supported"] = B(
a["print-content-optimize"]
);
a["print-rendering-intent"] = A([
"absolute",
"auto",
"perceptual",
"relative",
"relative-bpc",
"saturation"
]);
a["print-rendering-intent-default"] = A(
a["print-rendering-intent"]
);
a["print-rendering-intent-supported"] = B(
a["print-rendering-intent"]
);
a["printer-get-attributes-supported"] = B(
// Any Job Template attribute
// Any job creation Operation attribute keyword name
Oe
);
a["printer-mandatory-job-attributes"] = B(
// Any Job Template attribute
// Any Operation attribute at the job level
//this probably isn't quite right...
Oe
);
a["printer-settable-attributes-supported"] = B(
// Any read-write Printer attribute keyword name
ot
);
a["printer-state-reasons"] = B([
"alert-removal-of-binary-change-entry",
"bander-added",
"bander-almost-empty",
"bander-almost-full",
"bander-at-limit",
"bander-closed",
"bander-configuration-change",
"bander-cover-closed",
"bander-cover-open",
"bander-empty",
"bander-full",
"bander-interlock-closed",
"bander-interlock-open",
"bander-jam",
"bander-life-almost-over",
"bander-life-over",
"bander-memory-exhausted",
"bander-missing",
"bander-motor-failure",
"bander-near-limit",
"bander-offline",
"bander-opened",
"bander-over-temperature",
"bander-power-saver",
"bander-recoverable-failure",
"bander-recoverable-storage-error",
"bander-removed",
"bander-resource-added",
"bander-resource-removed",
"bander-thermistor-failure",
"bander-timing-failure",
"bander-turned-off",
"bander-turned-on",
"bander-under-temperature",
"bander-unrecoverable-failure",
"bander-unrecoverable-storage-error",
"bander-warming-up",
"binder-added",
"binder-almost-empty",
"binder-almost-full",
"binder-at-limit",
"binder-closed",
"binder-configuration-change",
"binder-cover-closed",
"binder-cover-open",
"binder-empty",
"binder-full",
"binder-interlock-closed",
"binder-interlock-open",
"binder-jam",
"binder-life-almost-over",
"binder-life-over",
"binder-memory-exhausted",
"binder-missing",
"binder-motor-failure",
"binder-near-limit",
"binder-offline",
"binder-opened",
"binder-over-temperature",
"binder-power-saver",
"binder-recoverable-failure",
"binder-recoverable-storage-error",
"binder-removed",
"binder-resource-added",
"binder-resource-removed",
"binder-thermistor-failure",
"binder-timing-failure",
"binder-turned-off",
"binder-turned-on",
"binder-under-temperature",
"binder-unrecoverable-failure",
"binder-unrecoverable-storage-error",
"binder-warming-up",
"cleaner-life-almost-over",
"cleaner-life-over",
"configuration-change",
"connecting-to-device",
"cover-open",
"deactivated",
"developer-empty",
"developer-low",
"die-cutter-added",
"die-cutter-almost-empty",
"die-cutter-almost-full",
"die-cutter-at-limit",
"die-cutter-closed",
"die-cutter-configuration-change",
"die-cutter-cover-closed",
"die-cutter-cover-open",
"die-cutter-empty",
"die-cutter-full",
"die-cutter-interlock-closed",
"die-cutter-interlock-open",
"die-cutter-jam",
"die-cutter-life-almost-over",
"die-cutter-life-over",
"die-cutter-memory-exhausted",
"die-cutter-missing",
"die-cutter-motor-failure",
"die-cutter-near-limit",
"die-cutter-offline",
"die-cutter-opened",
"die-cutter-over-temperature",
"die-cutter-power-saver",
"die-cutter-recoverable-failure",
"die-cutter-recoverable-storage-error",
"die-cutter-removed",
"die-cutter-resource-added",
"die-cutter-resource-removed",
"die-cutter-thermistor-failure",
"die-cutter-timing-failure",
"die-cutter-turned-off",
"die-cutter-turned-on",
"die-cutter-under-temperature",
"die-cutter-unrecoverable-failure",
"die-cutter-unrecoverable-storage-error",
"die-cutter-warming-up",
"door-open",
"folder-added",
"folder-almost-empty",
"folder-almost-full",
"folder-at-limit",
"folder-closed",
"folder-configuration-change",
"folder-cover-closed",
"folder-cover-open",
"folder-empty",
"folder-full",
"folder-interlock-closed",
"folder-interlock-open",
"folder-jam",
"folder-life-almost-over",
"folder-life-over",
"folder-memory-exhausted",
"folder-missing",
"folder-motor-failure",
"folder-near-limit",
"folder-offline",
"folder-opened",
"folder-over-temperature",
"folder-power-saver",
"folder-recoverable-failure",
"folder-recoverable-storage-error",
"folder-removed",
"folder-resource-added",
"folder-resource-removed",
"folder-thermistor-failure",
"folder-timing-failure",
"folder-turned-off",
"folder-turned-on",
"folder-under-temperature",
"folder-unrecoverable-failure",
"folder-unrecoverable-storage-error",
"folder-warming-up",
"fuser-over-temp",
"fuser-under-temp",
"imprinter-added",
"imprinter-almost-empty",
"imprinter-almost-full",
"imprinter-at-limit",
"imprinter-closed",
"imprinter-configuration-change",
"imprinter-cover-closed",
"imprinter-cover-open",
"imprinter-empty",
"imprinter-full",
"imprinter-interlock-closed",
"imprinter-interlock-open",
"imprinter-jam",
"imprinter-life-almost-over",
"imprinter-life-over",
"imprinter-memory-exhausted",
"imprinter-missing",
"imprinter-motor-failure",
"imprinter-near-limit",
"imprinter-offline",
"imprinter-opened",
"imprinter-over-temperature",
"imprinter-power-saver",
"imprinter-recoverable-failure",
"imprinter-recoverable-storage-error",
"imprinter-removed",
"imprinter-resource-added",
"imprinter-resource-removed",
"imprinter-thermistor-failure",
"imprinter-timing-failure",
"imprinter-turned-off",
"imprinter-turned-on",
"imprinter-under-temperature",
"imprinter-unrecoverable-failure",
"imprinter-unrecoverable-storage-error",
"imprinter-warming-up",
"input-cannot-feed-size-selected",
"input-manual-input-request",
"input-media-color-change",
"input-media-form-parts-change",
"input-media-size-change",
"input-media-type-change",
"input-media-weight-change",
"input-tray-elevation-failure",
"input-tray-missing",
"input-tray-position-failure",
"inserter-added",
"inserter-almost-empty",
"inserter-almost-full",
"inserter-at-limit",
"inserter-closed",
"inserter-configuration-change",
"inserter-cover-closed",
"inserter-cover-open",
"inserter-empty",
"inserter-full",
"inserter-interlock-closed",
"inserter-interlock-open",
"inserter-jam",
"inserter-life-almost-over",
"inserter-life-over",
"inserter-memory-exhausted",
"inserter-missing",
"inserter-motor-failure",
"inserter-near-limit",
"inserter-offline",
"inserter-opened",
"inserter-over-temperature",
"inserter-power-saver",
"inserter-recoverable-failure",
"inserter-recoverable-storage-error",
"inserter-removed",
"inserter-resource-added",
"inserter-resource-removed",
"inserter-thermistor-failure",
"inserter-timing-failure",
"inserter-turned-off",
"inserter-turned-on",
"inserter-under-temperature",
"inserter-unrecoverable-failure",
"inserter-unrecoverable-storage-error",
"inserter-warming-up",
"interlock-closed",
"interlock-open",
"interpreter-cartridge-added",
"interpreter-cartridge-deleted",
"interpreter-complex-page-encountered",
"interpreter-memory-decrease",
"interpreter-memory-increase",
"interpreter-resource-added",
"interpreter-resource-deleted",
"interpreter-resource-unavailable",
"make-envelope-added",
"make-envelope-almost-empty",
"make-envelope-almost-full",
"make-envelope-at-limit",
"make-envelope-closed",
"make-envelope-configuration-change",
"make-envelope-cover-closed",
"make-envelope-cover-open",
"make-envelope-empty",
"make-envelope-full",
"make-envelope-interlock-closed",
"make-envelope-interlock-open",
"make-envelope-jam",
"make-envelope-life-almost-over",
"make-envelope-life-over",
"make-envelope-memory-exhausted",
"make-envelope-missing",
"make-envelope-motor-failure",
"make-envelope-near-limit",
"make-envelope-offline",
"make-envelope-opened",
"make-envelope-over-temperature",
"make-envelope-power-saver",
"make-envelope-recoverable-failure",
"make-envelope-recoverable-storage-error",
"make-envelope-removed",
"make-envelope-resource-added",
"make-envelope-resource-removed",
"make-envelope-thermistor-failure",
"make-envelope-timing-failure",
"make-envelope-turned-off",
"make-envelope-turned-on",
"make-envelope-under-temperature",
"make-envelope-unrecoverable-failure",
"make-envelope-unrecoverable-storage-error",
"make-envelope-warming-up",
"marker-adjusting-print-quality",
"marker-developer-almost-empty",
"marker-developer-empty",
"marker-fuser-thermistor-failure",
"marker-fuser-timing-failure",
"marker-ink-almost-empty",
"marker-ink-empty",
"marker-print-ribbon-almost-empty",
"marker-print-ribbon-empty",
"marker-supply-empty",
"marker-supply-low",
"marker-toner-cartridge-missing",
"marker-waste-almost-full",
"marker-waste-full",
"marker-waste-ink-receptacle-almost-full",
"marker-waste-ink-receptacle-full",
"marker-waste-toner-receptacle-almost-full",
"marker-waste-toner-receptacle-full",
"media-empty",
"media-jam",
"media-low",
"media-needed",
"media-path-cannot-duplex-media-selected",
"media-path-media-tray-almost-full",
"media-path-media-tray-full",
"media-path-media-tray-missing",
"moving-to-paused",
"none",
"opc-life-over",
"opc-near-eol",
"other",
"output-area-almost-full",
"output-area-full",
"output-mailbox-select-failure",
"output-tray-missing",
"paused",
"perforater-added",
"perforater-almost-empty",
"perforater-almost-full",
"perforater-at-limit",
"perforater-closed",
"perforater-configuration-change",
"perforater-cover-closed",
"perforater-cover-open",
"perforater-empty",
"perforater-full",
"perforater-interlock-closed",
"perforater-interlock-open",
"perforater-jam",
"perforater-life-almost-over",
"perforater-life-over",
"perforater-memory-exhausted",
"perforater-missing",
"perforater-motor-failure",
"perforater-near-limit",
"perforater-offline",
"perforater-opened",
"perforater-over-temperature",
"perforater-power-saver",
"perforater-recoverable-failure",
"perforater-recoverable-storage-error",
"perforater-removed",
"perforater-resource-added",
"perforater-resource-removed",
"perforater-thermistor-failure",
"perforater-timing-failure",
"perforater-turned-off",
"perforater-turned-on",
"perforater-under-temperature",
"perforater-unrecoverable-failure",
"perforater-unrecoverable-storage-error",
"perforater-warming-up",
"power-down",
"power-up",
"printer-manual-reset",
"printer-nms-reset",
"printer-ready-to-print",
"puncher-added",
"puncher-almost-empty",
"puncher-almost-full",
"puncher-at-limit",
"puncher-closed",
"puncher-configuration-change",
"puncher-cover-closed",
"puncher-cover-open",
"puncher-empty",
"puncher-full",
"puncher-interlock-closed",
"puncher-interlock-open",
"puncher-jam",
"puncher-life-almost-over",
"puncher-life-over",
"puncher-memory-exhausted",
"puncher-missing",
"puncher-motor-failure",
"puncher-near-limit",
"puncher-offline",
"puncher-opened",
"puncher-over-temperature",
"puncher-power-saver",
"puncher-recoverable-failure",
"puncher-recoverable-storage-error",
"puncher-removed",
"puncher-resource-added",
"puncher-resource-removed",
"puncher-thermistor-failure",
"puncher-timing-failure",
"puncher-turned-off",
"puncher-turned-on",
"puncher-under-temperature",
"puncher-unrecoverable-failure",
"puncher-unrecoverable-storage-error",
"puncher-warming-up",
"separation-cutter-added",
"separation-cutter-almost-empty",
"separation-cutter-almost-full",
"separation-cutter-at-limit",
"separation-cutter-closed",
"separation-cutter-configuration-change",
"separation-cutter-cover-closed",
"separation-cutter-cover-open",
"separation-cutter-empty",
"separation-cutter-full",
"separation-cutter-interlock-closed",
"separation-cutter-interlock-open",
"separation-cutter-jam",
"separation-cutter-life-almost-over",
"separation-cutter-life-over",
"separation-cutter-memory-exhausted",
"separation-cutter-missing",
"separation-cutter-motor-failure",
"separation-cutter-near-limit",
"separation-cutter-offline",
"separation-cutter-opened",
"separation-cutter-over-temperature",
"separation-cutter-power-saver",
"separation-cutter-recoverable-failure",
"separation-cutter-recoverable-storage-error",
"separation-cutter-removed",
"separation-cutter-resource-added",
"separation-cutter-resource-removed",
"separation-cutter-thermistor-failure",
"separation-cutter-timing-failure",
"separation-cutter-turned-off",
"separation-cutter-turned-on",
"separation-cutter-under-temperature",
"separation-cutter-unrecoverable-failure",
"separation-cutter-unrecoverable-storage-error",
"separation-cutter-warming-up",
"sheet-rotator-added",
"sheet-rotator-almost-empty",
"sheet-rotator-almost-full",
"sheet-rotator-at-limit",
"sheet-rotator-closed",
"sheet-rotator-configuration-change",
"sheet-rotator-cover-closed",
"sheet-rotator-cover-open",
"sheet-rotator-empty",
"sheet-rotator-full",
"sheet-rotator-interlock-closed",
"sheet-rotator-interlock-open",
"sheet-rotator-jam",
"sheet-rotator-life-almost-over",
"sheet-rotator-life-over",
"sheet-rotator-memory-exhausted",
"sheet-rotator-missing",
"sheet-rotator-motor-failure",
"sheet-rotator-near-limit",
"sheet-rotator-offline",
"sheet-rotator-opened",
"sheet-rotator-over-temperature",
"sheet-rotator-power-saver",
"sheet-rotator-recoverable-failure",
"sheet-rotator-recoverable-storage-error",
"sheet-rotator-removed",
"sheet-rotator-resource-added",
"sheet-rotator-resource-removed",
"sheet-rotator-thermistor-failure",
"sheet-rotator-timing-failure",
"sheet-rotator-turned-off",
"sheet-rotator-turned-on",
"sheet-rotator-under-temperature",
"sheet-rotator-unrecoverable-failure",
"sheet-rotator-unrecoverable-storage-error",
"sheet-rotator-warming-up",
"shutdown",
"slitter-added",
"slitter-almost-empty",
"slitter-almost-full",
"slitter-at-limit",
"slitter-closed",
"slitter-configuration-change",
"slitter-cover-closed",
"slitter-cover-open",
"slitter-empty",
"slitter-full",
"slitter-interlock-closed",
"slitter-interlock-open",
"slitter-jam",
"slitter-life-almost-over",
"slitter-life-over",
"slitter-memory-exhausted",
"slitter-missing",
"slitter-motor-failure",
"slitter-near-limit",
"slitter-offline",
"slitter-opened",
"slitter-over-temperature",
"slitter-power-saver",
"slitter-recoverable-failure",
"slitter-recoverable-storage-error",
"slitter-removed",
"slitter-resource-added",
"slitter-resource-removed",
"slitter-thermistor-failure",
"slitter-timing-failure",
"slitter-turned-off",
"slitter-turned-on",
"slitter-under-temperature",
"slitter-unrecoverable-failure",
"slitter-unrecoverable-storage-error",
"slitter-warming-up",
"spool-area-full",
"stacker-added",
"stacker-almost-empty",
"stacker-almost-full",
"stacker-at-limit",
"stacker-closed",
"stacker-configuration-change",
"stacker-cover-closed",
"stacker-cover-open",
"stacker-empty",
"stacker-full",
"stacker-interlock-closed",
"stacker-interlock-open",
"stacker-jam",
"stacker-life-almost-over",
"stacker-life-over",
"stacker-memory-exhausted",
"stacker-missing",
"stacker-motor-failure",
"stacker-near-limit",
"stacker-offline",
"stacker-opened",
"stacker-over-temperature",
"stacker-power-saver",
"stacker-recoverable-failure",
"stacker-recoverable-storage-error",
"stacker-removed",
"stacker-resource-added",
"stacker-resource-removed",
"stacker-thermistor-failure",
"stacker-timing-failure",
"stacker-turned-off",
"stacker-turned-on",
"stacker-under-temperature",
"stacker-unrecoverable-failure",
"stacker-unrecoverable-storage-error",
"stacker-warming-up",
"stapler-added",
"stapler-almost-empty",
"stapler-almost-full",
"stapler-at-limit",
"stapler-closed",
"stapler-configuration-change",
"stapler-cover-closed",
"stapler-cover-open",
"stapler-empty",
"stapler-full",
"stapler-interlock-closed",
"stapler-interlock-open",
"stapler-jam",
"stapler-life-almost-over",
"stapler-life-over",
"stapler-memory-exhausted",
"stapler-missing",
"stapler-motor-failure",
"stapler-near-limit",
"stapler-offline",
"stapler-opened",
"stapler-over-temperature",
"stapler-power-saver",
"stapler-recoverable-failure",
"stapler-recoverable-storage-error",
"stapler-removed",
"stapler-resource-added",
"stapler-resource-removed",
"stapler-thermistor-failure",
"stapler-timing-failure",
"stapler-turned-off",
"stapler-turned-on",
"stapler-under-temperature",
"stapler-unrecoverable-failure",
"stapler-unrecoverable-storage-error",
"stapler-warming-up",
"stitcher-added",
"stitcher-almost-empty",
"stitcher-almost-full",
"stitcher-at-limit",
"stitcher-closed",
"stitcher-configuration-change",
"stitcher-cover-closed",
"stitcher-cover-open",
"stitcher-empty",
"stitcher-full",
"stitcher-interlock-closed",
"stitcher-interlock-open",
"stitcher-jam",
"stitcher-life-almost-over",
"stitcher-life-over",
"stitcher-memory-exhausted",
"stitcher-missing",
"stitcher-motor-failure",
"stitcher-near-limit",
"stitcher-offline",
"stitcher-opened",
"stitcher-over-temperature",
"stitcher-power-saver",
"stitcher-recoverable-failure",
"stitcher-recoverable-storage-error",
"stitcher-removed",
"stitcher-resource-added",
"stitcher-resource-removed",
"stitcher-thermistor-failure",
"stitcher-timing-failure",
"stitcher-turned-off",
"stitcher-turned-on",
"stitcher-under-temperature",
"stitcher-unrecoverable-failure",
"stitcher-unrecoverable-storage-error",
"stitcher-warming-up",
"stopped-partly",
"stopping",
"subunit-added",
"subunit-almost-empty",
"subunit-almost-full",
"subunit-at-limit",
"subunit-closed",
"subunit-empty",
"subunit-full",
"subunit-life-almost-over",
"subunit-life-over",
"subunit-memory-exhausted",
"subunit-missing",
"subunit-motor-failure",
"subunit-near-limit",
"subunit-offline",
"subunit-opened",
"subunit-over-temperature",
"subunit-power-saver",
"subunit-recoverable-failure",
"subunit-recoverable-storage-error",
"subunit-removed",
"subunit-resource-added",
"subunit-resource-removed",
"subunit-thermistor-failure",
"subunit-timing-Failure",
"subunit-turned-off",
"subunit-turned-on",
"subunit-under-temperature",
"subunit-unrecoverable-failure",
"subunit-unrecoverable-storage-error",
"subunit-warming-up",
"timed-out",
"toner-empty",
"toner-low",
"trimmer-added",
"trimmer-added",
"trimmer-almost-empty",
"trimmer-almost-empty",
"trimmer-almost-full",
"trimmer-almost-full",
"trimmer-at-limit",
"trimmer-at-limit",
"trimmer-closed",
"trimmer-closed",
"trimmer-configuration-change",
"trimmer-configuration-change",
"trimmer-cover-closed",
"trimmer-cover-closed",
"trimmer-cover-open",
"trimmer-cover-open",
"trimmer-empty",
"trimmer-empty",
"trimmer-full",
"trimmer-full",
"trimmer-interlock-closed",
"trimmer-interlock-closed",
"trimmer-interlock-open",
"trimmer-interlock-open",
"trimmer-jam",
"trimmer-jam",
"trimmer-life-almost-over",
"trimmer-life-almost-over",
"trimmer-life-over",
"trimmer-life-over",
"trimmer-memory-exhausted",
"trimmer-memory-exhausted",
"trimmer-missing",
"trimmer-missing",
"trimmer-motor-failure",
"trimmer-motor-failure",
"trimmer-near-limit",
"trimmer-near-limit",
"trimmer-offline",
"trimmer-offline",
"trimmer-opened",
"trimmer-opened",
"trimmer-over-temperature",
"trimmer-over-temperature",
"trimmer-power-saver",
"trimmer-power-saver",
"trimmer-recoverable-failure",
"trimmer-recoverable-failure",
"trimmer-recoverable-storage-error",
"trimmer-removed",
"trimmer-resource-added",
"trimmer-resource-removed",
"trimmer-thermistor-failure",
"trimmer-timing-failure",
"trimmer-turned-off",
"trimmer-turned-on",
"trimmer-under-temperature",
"trimmer-unrecoverable-failure",
"trimmer-unrecoverable-storage-error",
"trimmer-warming-up",
"unknown",
"wrapper-added",
"wrapper-almost-empty",
"wrapper-almost-full",
"wrapper-at-limit",
"wrapper-closed",
"wrapper-configuration-change",
"wrapper-cover-closed",
"wrapper-cover-open",
"wrapper-empty",
"wrapper-full",
"wrapper-interlock-closed",
"wrapper-interlock-open",
"wrapper-jam",
"wrapper-life-almost-over",
"wrapper-life-over",
"wrapper-memory-exhausted",
"wrapper-missing",
"wrapper-motor-failure",
"wrapper-near-limit",
"wrapper-offline",
"wrapper-opened",
"wrapper-over-temperature",
"wrapper-power-saver",
"wrapper-recoverable-failure",
"wrapper-recoverable-storage-error",
"wrapper-removed",
"wrapper-resource-added",
"wrapper-resource-removed",
"wrapper-thermistor-failure",
"wrapper-timing-failure",
"wrapper-turned-off",
"wrapper-turned-on",
"wrapper-under-temperature",
"wrapper-unrecoverable-failure",
"wrapper-unrecoverable-storage-error",
"wrapper-warming-up"
]);
a["proof-print-supported"] = B([
"media",
"media-col",
"proof-print-copies"
]);
a["pwg-raster-document-sheet-back"] = A([
"flipped",
"manual-tumble",
"normal",
"rotated"
]);
a["pwg-raster-document-type-supported"] = B([
"adobe-rgb_8",
"adobe-rgb_16",
"black_1",
"black_8",
"black_16",
"cmyk_8",
"cmyk_16",
"device1_8",
"device1_16",
"device2_8",
"device2_16",
"device3_8",
"device3_16",
"device4_8",
"device4_16",
"device5_8",
"device5_16",
"device6_8",
"device6_16",
"device7_8",
"device7_16",
"device8_8",
"device8_16",
"device9_8",
"device9_16",
"device10_8",
"device10_16",
"device11_8",
"device11_16",
"device12_8",
"device12_16",
"device13_8",
"device13_16",
"device14_8",
"device14_16",
"device15_8",
"device15_16",
"rgb_8",
"rgb_16",
"sgray_1",
"sgray_8",
"sgray_16",
"srgb_8",
"srgb_16"
]);
a["requested-attributes"] = A([
"all",
"document-description",
"document-template",
"job-description",
"job-template",
"printer-description",
"subscription-description",
"subscription-template"
]);
a["save-disposition"] = A([
"none",
"print-save",
"save-only"
]);
a["save-disposition-supported"] = B(
a["save-disposition"]
);
a["save-info-supported"] = B([
"save-document-format",
"save-location",
"save-name"
]);
a["separator-sheets-type"] = L([
"both-sheets",
"end-sheet",
"none",
"slip-sheets",
"start-sheet"
]);
a["separator-sheets-type-supported"] = K(
a["separator-sheets-type"]
);
a["sheet-collate"] = A([
"collated",
"uncollated"
]);
a["sheet-collate-default"] = A(
a["sheet-collate"]
);
a["sheet-collate-supported"] = B(
a["sheet-collate"]
);
a.sides = A([
"one-sided",
"two-sided-long-edge",
"two-sided-short-edge"
]);
a["sides-default"] = A(
a.sides
);
a["sides-supported"] = B(
a.sides
);
a["stitching-reference-edge"] = A([
"bottom",
"left",
"right",
"top"
]);
a["stitching-reference-edge-supported"] = B(
a["stitching-reference-edge"]
);
a["stitching-supported"] = B([
"stitching-locations",
"stitching-offset",
"stitching-reference-edge"
]);
a["uri-authentication-supported"] = B([
"basic",
"certificate",
"digest",
"negotiate",
"none",
"requesting-user-name"
]);
a["uri-security-supported"] = B([
"none",
"ssl3",
"tls"
]);
a["which-jobs"] = A([
"aborted",
"all",
"canceled",
"completed",
"not-completed",
"pending",
"pending-held",
"processing",
"processing-stopped",
"proof-print",
"saved"
]);
a["which-jobs-supported"] = B(
a["which-jobs"]
);
a["x-image-position"] = A([
"center",
"left",
"none",
"right"
]);
a["x-image-position-default"] = A(
a["x-image-position"]
);
a["x-image-position-supported"] = B(
a["x-image-position"]
);
a["xri-authentication-supported"] = B([
"basic",
"certificate",
"digest",
"none",
"requesting-user-name"
]);
a["xri-security-supported"] = B([
"none",
"ssl3",
"tls"
]);
a["y-image-position"] = A([
"bottom",
"center",
"none",
"top"
]);
a["y-image-position-default"] = A(
a["y-image-position"]
);
a["y-image-position-supported"] = B(
a["y-image-position"]
);
let Ee = [];
Ee[256] = "1.0";
Ee[257] = "1.1";
Ee[512] = "2.0";
Ee[513] = "2.1";
const Ct = ne(Ee);
let Rt = O["operations-supported"], qt = "";
function Dt() {
return +Math.random().toString().substr(-8);
}
function Lt(u) {
let d = be.Buffer.alloc(10240), f = 0;
function x(y) {
C(1), d.writeUInt8(y, f), f += 1;
}
function w(y) {
C(2), d.writeUInt16BE(y, f), f += 2;
}
function j(y) {
C(4), d.writeUInt32BE(y, f), f += 4;
}
function _(y, k) {
let T = be.Buffer.byteLength(y);
C(T), d.write(y, f, T, k || "utf8"), f += T;
}
function c(y, k) {
let T = be.Buffer.byteLength(y);
w(T), C(T), d.write(y, f, T, k || "utf8"), f += T;
}
function C(y) {
f + y > d.length && (d = be.Buffer.concat([d], 2 * d.length));
}
let Z = {
"attributes-charset": 1,
"attributes-natural-language": 2
}, G = {
"job-attributes-tag": ["Job Template", "Job Description"],
"operation-attributes-tag": "Operation",
"printer-attributes-tag": "Printer Description",
"unsupported-attributes-tag": "",
//??
"subscription-attributes-tag": "Subscription Description",
"event-notification-attributes-tag": "Event Notifications",
"resource-attributes-tag": "",
//??
"document-attributes-tag": "Document Description"
};
function N(y) {
let k = u[y];
if (!k)
return;
let T = Object.keys(k);
y == v["operation-attributes-tag"] && (T = T.sort(function(V, Q) {
return (Z[V] || 3) - (Z[Q] || 3);
}));
let q = G[y];
x(v[y]), T.forEach(function(V) {
te(q, V, k);
});
}
function te(y, k, T) {
let q = Array.isArray(y) ? y.find(function(fe) {
return X[fe][k];
}) : y;
if (!q)
throw "Unknown attribute: " + k;
let V = X[q][k], Q = T[k];
Array.isArray(Q) || (Q = [Q]), Q.forEach(function(fe, Se) {
let Ie = Array.isArray(V) ? ue(V, k, fe) : V, ke = W(Ie, k, fe);
ke === v.enum && (fe = O[k][fe]), x(ke), Se == 0 ? c(k) : w(0), oe(ke, fe, Ie.members);
});
}
function W(y, k, T) {
let q = y.tag;
if (!q) {
let V = !!~T.indexOf(qt);
q = v[y.type + (V ? "With" : "Without") + "Language"];
}
return q;
}
function ue(y, k, T) {
switch (y.alts) {
case "keyword,name":
case "keyword,name,novalue":
return T === null && y.lookup.novalue ? y.lookup.novalue : ~a[k].indexOf(T) ? y.lookup.keyword : y.lookup.name;
case "integer,rangeOfInteger":
return Array.isArray(T) ? y.lookup.rangeOfInteger : y.lookup.integer;
case "dateTime,novalue":
return isNaN(Date.parse(T)) ? y.lookup.novalue : y.lookup.dateTime;
case "integer,novalue":
return isNaN(T) ? y.lookup.novalue : y.lookup.integer;
case "name,novalue":
return T !== null ? y.lookup.name : y.lookup.novalue;
case "novalue,uri":
return T !== null ? y.lookup.uri : y.lookup.novalue;
case "enumeration,unknown":
return O[k][T] ? y.lookup.enumeration : y.lookup.unknown;
case "enumeration,novalue":
return T !== null ? y.lookup.enumeration : y.lookup.novalue;
case "collection,novalue":
return T !== null ? y.lookup.enumeration : y.lookup.novalue;
}
}
function oe(y, k, T) {
switch (y) {
case v.enum:
return w(4), j(k);
case v.integer:
return w(4), j(k);
case v.boolean:
return w(1), x(Number(k));
case v.rangeOfInteger:
w(8), j(k.min), j(k.max);
return;
case v.resolution:
w(9), j(k[0]), j(k[1]), x(k[2] === "dpi" ? 3 : 4);
return;
case v.dateTime:
w(11), w(k.getFullYear()), x(k.getMonth() + 1), x(k.getDate()), x(k.getHours()), x(k.getMinutes()), x(k.getSeconds()), x(Math.floor(k.getMilliseconds() / 100));
let q = Nt(k);
_(q[0]), x(q[1]), x(q[2]);
return;
case v.nameWithoutLanguage:
case v.textWithoutLanguage:
case v.octetString:
case v.memberAttrName:
return c(k);
case v.keyword:
case v.uri:
case v.uriScheme:
case v.charset:
case v.naturalLanguage:
case v.mimeMediaType:
return c(k, "ascii");
case v.begCollection:
return w(0), ce(k, T);
case v["no-value"]:
return w(0);
default:
return w(0);
}
}
function ce(y, k) {
Object.keys(y).forEach(function(T) {
let q = y[T], V = k[T];
Array.isArray(V) && (V = ue(V, T, q));
let Q = W(V, T, q);
Q === v.enum && (q = O[T][q]), x(v.memberAttrName), w(0), oe(v.memberAttrName, T), x(Q), w(0), oe(Q, q, V.members);
}), x(v.endCollection), w(0), w(0);
}
if (w(Ct[u.version || "2.0"]), w(u.operation ? Rt[u.operation] : rt[u.statusCode]), j(u.id || Dt()), N("operation-attributes-tag"), N("job-attributes-tag"), N("printer-attributes-tag"), N("document-attributes-tag"), x(3), !u.data)
return d.slice(0, f);
if (!be.Buffer.isBuffer(u.data))
throw "data must be a Buffer";
let F = be.Buffer.alloc(f + u.data.length);
return d.copy(F, 0, 0, f), u.data.copy(F, f, 0), F;
}
function Nt(u) {
let d = u.getTimezoneOffset();
return [d > 0 ? "-" : "+", ~~(Math.abs(d) / 60), Math.abs(d) % 60];
}
class Le {
constructor(d, f) {
_e(this, "url");
_e(this, "version");
_e(this, "uri");
_e(this, "charset");
_e(this, "language");
if (!(this instanceof Le))
return new Le(d, f);
f = f || {}, this.url = typeof d == "string" ? new URL(d) : d, this.version = f.version || "2.0", this.uri = f.uri || "ipp://" + this.url.host + this.url.pathname, this.charset = f.charset || "utf-8", this.language = f.language || "en-us";
}
_message(d, f) {
typeof d > "u" && (d = "Get-Printer-Attributes");
const x = {
version: this.version,
operation: d,
id: null,
// will get added by serializer if one isn't given
"operation-attributes-tag": {
// these are required to be in this order
"attributes-charset": this.charset,
"attributes-natural-language": this.language,
"printer-uri": this.uri
}
};
return f && f["operation-attributes-tag"]["job-id"] ? x["operation-attributes-tag"]["job-id"] = f["operation-attributes-tag"]["job-id"] : f && f["operation-attributes-tag"]["job-uri"] && (x["operation-attributes-tag"]["job-uri"] = f["operation-attributes-tag"]["job-uri"]), f = tt(x, f), f["operation-attributes-tag"]["job-uri"] && delete f["operation-attributes-tag"]["printer-uri"], f;
}
getHeaders(d) {
return { ...d, "Content-Type": "application/ipp" };
}
encodeMsg(d, f) {
f = this._message(d, f);
const x = Lt(f);
return console.log(x), x;
}
}
export {
Ot as decodeResponse,
Le as default
};