- 10, 32, 32, 60, 104, 51, 32, 115, 116, 121, 108, 101, // .
MQTT me
- 115, 115, 97, 103, 101, 115, 60, 47, 104, 51, 62, 10, // ssages
.
- 32, 32, 60, 100, 105, 118, 62, 10, 32, 32, 32, 32, //
.
- 77, 81, 84, 84, 32, 115, 101, 114, 118, 101, 114, 32, // MQTT server
- 115, 116, 97, 116, 117, 115, 58, 32, 60, 98, 62, 36, // status: $
- 123, 99, 111, 110, 110, 115, 116, 97, 116, 117, 115, 125, // {connstatus}
- 60, 47, 98, 62, 10, 32, 32, 60, 47, 100, 105, 118, // .
.
.
- 36, 123, 109, 101, 115, 115, 97, 103, 101, 115, 46, 109, // ${messages.m
- 97, 112, 40, 109, 101, 115, 115, 97, 103, 101, 32, 61, // ap(message =
- 62, 32, 104, 40, 77, 101, 115, 115, 97, 103, 101, 44, // > h(Message,
- 32, 123, 109, 101, 115, 115, 97, 103, 101, 125, 41, 41, // {message}))
- 125, 10, 32, 32, 60, 47, 100, 105, 118, 62, 10, 32, // }.
.
- 32, 60, 100, 105, 118, 32, 115, 116, 121, 108, 101, 61, //
.
- 32, 32, 60, 115, 112, 97, 110, 32, 99, 108, 97, 115, // Publish
- 32, 109, 101, 115, 115, 97, 103, 101, 58, 60, 47, 115, // message:. set
- 84, 120, 116, 40, 101, 118, 46, 116, 97, 114, 103, 101, // Txt(ev.targe
- 116, 46, 118, 97, 108, 117, 101, 41, 125, 32, 47, 62, // t.value)} />
- 10, 32, 32, 60, 47, 100, 105, 118, 62, 10, 32, 32, // .
.
- 60, 100, 105, 118, 32, 99, 108, 97, 115, 115, 61, 34, //
. Th
- 101, 32, 109, 101, 115, 115, 97, 103, 101, 32, 103, 101, // e message ge
- 116, 115, 32, 112, 97, 115, 115, 101, 100, 32, 116, 111, // ts passed to
- 32, 116, 104, 101, 32, 100, 101, 118, 105, 99, 101, 32, // the device
- 118, 105, 97, 32, 82, 69, 83, 84, 46, 32, 84, 104, // via REST. Th
- 101, 110, 32, 116, 104, 101, 32, 100, 101, 118, 105, 99, // en the devic
- 101, 32, 115, 101, 110, 100, 115, 32, 105, 116, 32, 116, // e sends it t
- 111, 10, 32, 32, 32, 32, 116, 104, 101, 32, 77, 81, // o. the MQ
- 84, 84, 32, 115, 101, 114, 118, 101, 114, 32, 111, 118, // TT server ov
- 101, 114, 32, 77, 81, 84, 84, 46, 32, 65, 108, 108, // er MQTT. All
- 32, 77, 81, 84, 84, 32, 109, 101, 115, 115, 97, 103, // MQTT messag
- 101, 115, 32, 111, 110, 32, 97, 32, 115, 117, 98, 115, // es on a subs
- 99, 114, 105, 98, 101, 100, 32, 116, 111, 112, 105, 99, // cribed topic
- 10, 32, 32, 32, 32, 114, 101, 99, 101, 105, 118, 101, // . receive
- 100, 32, 98, 121, 32, 116, 104, 101, 32, 100, 101, 118, // d by the dev
- 105, 99, 101, 44, 32, 97, 114, 101, 32, 112, 114, 111, // ice, are pro
- 112, 97, 103, 97, 116, 101, 100, 32, 116, 111, 32, 116, // pagated to t
- 104, 105, 115, 32, 100, 97, 115, 104, 98, 111, 97, 114, // his dashboar
- 100, 32, 118, 105, 97, 32, 47, 97, 112, 105, 47, 119, // d via /api/w
- 97, 116, 99, 104, 46, 10, 32, 32, 60, 47, 100, 105, // atch.. .
`;.
- 125, 59, 10, 10, 47, 47, 32, 69, 120, 112, 101, 99, // };..// Expec
- 116, 101, 100, 32, 97, 114, 103, 117, 109, 101, 110, 116, // ted argument
- 115, 58, 10, 47, 47, 32, 100, 97, 116, 97, 58, 32, // s:.// data:
- 116, 105, 109, 101, 115, 101, 114, 105, 101, 115, 44, 32, // timeseries,
- 101, 46, 103, 46, 32, 91, 32, 91, 49, 54, 53, 52, // e.g. [ [1654
- 51, 54, 49, 51, 53, 50, 44, 32, 49, 57, 93, 44, // 361352, 19],
- 32, 91, 49, 54, 53, 52, 51, 54, 49, 51, 53, 51, // [1654361353
- 44, 32, 49, 56, 93, 44, 32, 46, 46, 46, 32, 93, // , 18], ... ]
- 10, 47, 47, 32, 119, 105, 100, 116, 104, 44, 32, 104, // .// width, h
- 101, 105, 103, 104, 116, 44, 32, 121, 116, 105, 99, 107, // eight, ytick
- 115, 44, 32, 120, 116, 105, 99, 107, 115, 44, 32, 121, // s, xticks, y
- 109, 105, 110, 44, 32, 121, 109, 97, 120, 44, 32, 120, // min, ymax, x
- 109, 105, 110, 44, 32, 120, 109, 97, 120, 10, 99, 111, // min, xmax.co
- 110, 115, 116, 32, 83, 86, 71, 32, 61, 32, 102, 117, // nst SVG = fu
- 110, 99, 116, 105, 111, 110, 40, 112, 114, 111, 112, 115, // nction(props
- 41, 32, 123, 10, 32, 32, 47, 47, 32, 32, 32, 32, // ) {. //
- 32, 32, 32, 32, 32, 32, 32, 32, 119, 10, 32, 32, // w.
- 47, 47, 32, 32, 32, 43, 45, 45, 45, 45, 45, 45, // // +------
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, // ------------
- 45, 45, 45, 43, 10, 32, 32, 47, 47, 32, 32, 32, // ---+. //
- 124, 32, 32, 32, 32, 32, 32, 32, 32, 104, 49, 32, // | h1
- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 124, 10, // |.
- 32, 32, 47, 47, 32, 32, 32, 124, 32, 32, 32, 32, // // |
- 43, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, // +-----------
- 43, 32, 32, 32, 32, 124, 10, 32, 32, 47, 47, 32, // + |. //
- 32, 32, 124, 32, 32, 32, 32, 124, 32, 32, 32, 32, // | |
- 32, 32, 32, 32, 32, 32, 32, 124, 32, 32, 32, 32, // |
- 124, 32, 32, 104, 10, 32, 32, 47, 47, 32, 32, 32, // | h. //
- 124, 32, 119, 49, 32, 124, 32, 32, 32, 32, 32, 32, // | w1 |
- 32, 32, 32, 32, 32, 124, 32, 119, 50, 32, 124, 10, // | w2 |.
- 32, 32, 47, 47, 32, 32, 32, 124, 32, 32, 32, 32, // // |
- 43, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, // +-----------
- 43, 32, 32, 32, 32, 124, 10, 32, 32, 47, 47, 32, // + |. //
- 32, 32, 124, 32, 32, 32, 32, 32, 32, 32, 32, 32, // |
- 104, 50, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, // h2
- 124, 10, 32, 32, 47, 47, 32, 32, 32, 43, 45, 45, // |. // +--
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, // ------------
- 45, 45, 45, 45, 45, 45, 45, 43, 10, 32, 32, 47, // -------+. /
- 47, 10, 32, 32, 108, 101, 116, 32, 119, 32, 61, 32, // /. let w =
- 112, 114, 111, 112, 115, 46, 119, 105, 100, 116, 104, 44, // props.width,
- 32, 104, 32, 61, 32, 112, 114, 111, 112, 115, 46, 104, // h = props.h
- 101, 105, 103, 104, 116, 44, 32, 119, 49, 32, 61, 32, // eight, w1 =
- 51, 48, 44, 32, 119, 50, 32, 61, 32, 48, 44, 32, // 30, w2 = 0,
- 104, 49, 32, 61, 32, 56, 44, 32, 104, 50, 32, 61, // h1 = 8, h2 =
- 32, 49, 56, 59, 10, 32, 32, 108, 101, 116, 32, 121, // 18;. let y
- 116, 105, 99, 107, 115, 32, 61, 32, 112, 114, 111, 112, // ticks = prop
- 115, 46, 121, 116, 105, 99, 107, 115, 32, 124, 124, 32, // s.yticks ||
- 52, 44, 32, 120, 116, 105, 99, 107, 115, 32, 61, 32, // 4, xticks =
- 112, 114, 111, 112, 115, 46, 120, 116, 105, 99, 107, 115, // props.xticks
- 32, 124, 124, 32, 53, 59, 10, 32, 32, 108, 101, 116, // || 5;. let
- 32, 100, 97, 116, 97, 32, 61, 32, 112, 114, 111, 112, // data = prop
- 115, 46, 100, 97, 116, 97, 32, 124, 124, 32, 91, 93, // s.data || []
- 59, 10, 32, 32, 108, 101, 116, 32, 121, 109, 105, 110, // ;. let ymin
- 32, 61, 32, 112, 114, 111, 112, 115, 46, 121, 109, 105, // = props.ymi
- 110, 32, 124, 124, 32, 48, 59, 10, 32, 32, 108, 101, // n || 0;. le
- 116, 32, 121, 109, 97, 120, 32, 61, 32, 112, 114, 111, // t ymax = pro
- 112, 115, 46, 121, 109, 97, 120, 32, 124, 124, 32, 77, // ps.ymax || M
- 97, 116, 104, 46, 109, 97, 120, 46, 97, 112, 112, 108, // ath.max.appl
- 121, 40, 110, 117, 108, 108, 44, 32, 100, 97, 116, 97, // y(null, data
- 46, 109, 97, 112, 40, 112, 32, 61, 62, 32, 112, 91, // .map(p => p[
- 49, 93, 41, 41, 59, 10, 32, 32, 108, 101, 116, 32, // 1]));. let
- 120, 109, 105, 110, 32, 61, 32, 112, 114, 111, 112, 115, // xmin = props
- 46, 120, 109, 105, 110, 32, 124, 124, 32, 77, 97, 116, // .xmin || Mat
- 104, 46, 109, 105, 110, 46, 97, 112, 112, 108, 121, 40, // h.min.apply(
- 110, 117, 108, 108, 44, 32, 100, 97, 116, 97, 46, 109, // null, data.m
- 97, 112, 40, 112, 32, 61, 62, 32, 112, 91, 48, 93, // ap(p => p[0]
- 41, 41, 59, 10, 32, 32, 108, 101, 116, 32, 120, 109, // ));. let xm
- 97, 120, 32, 61, 32, 112, 114, 111, 112, 115, 46, 120, // ax = props.x
- 109, 97, 120, 32, 124, 124, 32, 77, 97, 116, 104, 46, // max || Math.
- 109, 97, 120, 46, 97, 112, 112, 108, 121, 40, 110, 117, // max.apply(nu
- 108, 108, 44, 32, 100, 97, 116, 97, 46, 109, 97, 112, // ll, data.map
- 40, 112, 32, 61, 62, 32, 112, 91, 48, 93, 41, 41, // (p => p[0]))
- 59, 10, 10, 32, 32, 47, 47, 32, 89, 45, 97, 120, // ;.. // Y-ax
- 105, 115, 32, 116, 105, 99, 107, 32, 108, 105, 110, 101, // is tick line
- 115, 32, 97, 110, 100, 32, 108, 97, 98, 101, 108, 115, // s and labels
- 10, 32, 32, 108, 101, 116, 32, 121, 116, 97, 32, 61, // . let yta =
- 32, 40, 110, 101, 119, 32, 65, 114, 114, 97, 121, 40, // (new Array(
- 121, 116, 105, 99, 107, 115, 32, 43, 32, 49, 41, 41, // yticks + 1))
- 46, 102, 105, 108, 108, 40, 48, 41, 46, 109, 97, 112, // .fill(0).map
- 40, 40, 95, 44, 32, 105, 41, 32, 61, 62, 32, 105, // ((_, i) => i
- 41, 59, 32, 32, 47, 47, 32, 105, 110, 100, 105, 99, // ); // indic
- 101, 115, 10, 32, 32, 108, 101, 116, 32, 121, 116, 105, // es. let yti
- 32, 61, 32, 105, 32, 61, 62, 32, 104, 32, 45, 32, // = i => h -
- 104, 50, 32, 45, 32, 40, 104, 32, 45, 32, 104, 49, // h2 - (h - h1
- 32, 45, 32, 104, 50, 41, 32, 42, 32, 105, 32, 47, // - h2) * i /
- 32, 121, 116, 105, 99, 107, 115, 59, 32, 32, 32, 32, // yticks;
- 32, 32, 32, 32, 32, 32, 47, 47, 32, 105, 110, 100, // // ind
- 101, 120, 39, 115, 32, 89, 10, 32, 32, 108, 101, 116, // ex's Y. let
- 32, 121, 116, 118, 32, 61, 32, 105, 32, 61, 62, 32, // ytv = i =>
- 40, 121, 109, 97, 120, 32, 45, 32, 121, 109, 105, 110, // (ymax - ymin
- 41, 32, 42, 32, 105, 32, 47, 32, 121, 116, 105, 99, // ) * i / ytic
- 107, 115, 59, 10, 32, 32, 108, 101, 116, 32, 121, 116, // ks;. let yt
- 108, 32, 61, 32, 121, 32, 61, 62, 32, 104, 116, 109, // l = y => htm
- 108, 96, 60, 108, 105, 110, 101, 32, 120, 49, 61, 36, // l`
`;.
- 108, 101, 116, 32, 121, 116, 116, 32, 61, 32, 40, 121, // let ytt = (y
- 44, 32, 118, 41, 32, 61, 62, 32, 104, 116, 109, 108, // , v) => html
- 96, 60, 116, 101, 120, 116, 32, 120, 61, 48, 32, 121, // `
- 36, 123, 118, 125, 60, 47, 116, 101, 120, 116, 62, 96, // ${v}`
- 59, 10, 10, 32, 32, 47, 47, 32, 88, 45, 97, 120, // ;.. // X-ax
- 105, 115, 32, 116, 105, 99, 107, 32, 108, 105, 110, 101, // is tick line
- 115, 32, 97, 110, 100, 32, 108, 97, 98, 101, 108, 115, // s and labels
- 10, 32, 32, 108, 101, 116, 32, 100, 97, 116, 101, 102, // . let datef
- 109, 116, 32, 61, 32, 117, 110, 105, 120, 32, 61, 62, // mt = unix =>
- 32, 40, 110, 101, 119, 32, 68, 97, 116, 101, 40, 117, // (new Date(u
- 110, 105, 120, 32, 42, 32, 49, 48, 48, 48, 41, 41, // nix * 1000))
- 46, 116, 111, 73, 83, 79, 83, 116, 114, 105, 110, 103, // .toISOString
- 40, 41, 46, 115, 117, 98, 115, 116, 114, 40, 49, 52, // ().substr(14
- 44, 32, 53, 41, 59, 10, 32, 32, 108, 101, 116, 32, // , 5);. let
- 120, 116, 97, 32, 61, 32, 40, 110, 101, 119, 32, 65, // xta = (new A
- 114, 114, 97, 121, 40, 120, 116, 105, 99, 107, 115, 32, // rray(xticks
- 43, 32, 49, 41, 41, 46, 102, 105, 108, 108, 40, 48, // + 1)).fill(0
- 41, 46, 109, 97, 112, 40, 40, 95, 44, 32, 105, 41, // ).map((_, i)
- 32, 61, 62, 32, 105, 41, 59, 32, 32, 47, 47, 32, // => i); //
- 105, 110, 100, 105, 99, 101, 115, 10, 32, 32, 108, 101, // indices. le
- 116, 32, 120, 116, 105, 32, 61, 32, 105, 32, 61, 62, // t xti = i =>
- 32, 119, 49, 32, 43, 32, 40, 119, 32, 45, 32, 119, // w1 + (w - w
- 49, 32, 45, 32, 119, 50, 41, 32, 42, 32, 105, 32, // 1 - w2) * i
- 47, 32, 120, 116, 105, 99, 107, 115, 59, 32, 32, 32, // / xticks;
- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, // /
- 47, 32, 105, 110, 100, 101, 120, 39, 115, 32, 88, 10, // / index's X.
- 32, 32, 108, 101, 116, 32, 120, 116, 118, 32, 61, 32, // let xtv =
- 105, 32, 61, 62, 32, 100, 97, 116, 101, 102, 109, 116, // i => datefmt
- 40, 120, 109, 105, 110, 32, 43, 32, 40, 120, 109, 97, // (xmin + (xma
- 120, 32, 45, 32, 120, 109, 105, 110, 41, 32, 42, 32, // x - xmin) *
- 105, 32, 47, 32, 120, 116, 105, 99, 107, 115, 41, 59, // i / xticks);
- 10, 32, 32, 108, 101, 116, 32, 120, 116, 108, 32, 61, // . let xtl =
- 32, 120, 32, 61, 62, 32, 104, 116, 109, 108, 96, 60, // x => html`<
- 112, 97, 116, 104, 32, 100, 61, 34, 77, 32, 36, 123, // path d="M ${
- 120, 125, 44, 36, 123, 104, 49, 125, 32, 76, 32, 36, // x},${h1} L $
- 123, 120, 125, 44, 36, 123, 104, 32, 45, 32, 104, 50, // {x},${h - h2
- 125, 34, 32, 99, 108, 97, 115, 115, 61, 34, 116, 105, // }" class="ti
- 99, 107, 34, 47, 62, 96, 59, 10, 32, 32, 108, 101, // ck"/>`;. le
- 116, 32, 120, 116, 116, 32, 61, 32, 40, 120, 44, 32, // t xtt = (x,
- 118, 41, 32, 61, 62, 10, 32, 32, 32, 32, 32, 32, // v) =>.
- 104, 116, 109, 108, 96, 60, 116, 101, 120, 116, 32, 120, // html`
- 36, 123, 118, 125, 60, 47, 116, 101, 120, 116, 62, 96, // ${v}`
- 59, 10, 10, 32, 32, 47, 47, 32, 84, 114, 97, 110, // ;.. // Tran
- 115, 102, 111, 114, 109, 32, 100, 97, 116, 97, 32, 112, // sform data p
- 111, 105, 110, 116, 115, 32, 97, 114, 114, 97, 121, 32, // oints array
- 105, 110, 116, 111, 32, 99, 111, 111, 114, 100, 105, 110, // into coordin
- 97, 116, 101, 10, 32, 32, 108, 101, 116, 32, 100, 120, // ate. let dx
- 32, 61, 32, 118, 32, 61, 62, 32, 119, 49, 32, 43, // = v => w1 +
- 32, 40, 118, 32, 45, 32, 120, 109, 105, 110, 41, 32, // (v - xmin)
- 47, 32, 40, 40, 120, 109, 97, 120, 32, 45, 32, 120, // / ((xmax - x
- 109, 105, 110, 41, 32, 124, 124, 32, 49, 41, 32, 42, // min) || 1) *
- 32, 40, 119, 32, 45, 32, 119, 49, 32, 45, 32, 119, // (w - w1 - w
- 50, 41, 59, 10, 32, 32, 108, 101, 116, 32, 100, 121, // 2);. let dy
- 32, 61, 32, 118, 32, 61, 62, 32, 104, 32, 45, 32, // = v => h -
- 104, 50, 32, 45, 32, 40, 118, 32, 45, 32, 121, 109, // h2 - (v - ym
- 105, 110, 41, 32, 47, 32, 40, 40, 121, 109, 97, 120, // in) / ((ymax
- 32, 45, 32, 121, 109, 105, 110, 41, 32, 124, 124, 32, // - ymin) ||
- 49, 41, 32, 42, 32, 40, 104, 32, 45, 32, 104, 49, // 1) * (h - h1
- 32, 45, 32, 104, 50, 41, 59, 10, 32, 32, 108, 101, // - h2);. le
- 116, 32, 100, 100, 32, 61, 32, 100, 97, 116, 97, 46, // t dd = data.
- 109, 97, 112, 40, 112, 32, 61, 62, 32, 91, 77, 97, // map(p => [Ma
- 116, 104, 46, 114, 111, 117, 110, 100, 40, 100, 120, 40, // th.round(dx(
- 112, 91, 48, 93, 41, 41, 44, 32, 77, 97, 116, 104, // p[0])), Math
- 46, 114, 111, 117, 110, 100, 40, 100, 121, 40, 112, 91, // .round(dy(p[
- 49, 93, 41, 41, 93, 41, 59, 10, 32, 32, 108, 101, // 1]))]);. le
- 116, 32, 100, 100, 108, 32, 61, 32, 100, 100, 46, 108, // t ddl = dd.l
- 101, 110, 103, 116, 104, 59, 10, 32, 32, 47, 47, 32, // ength;. //
- 65, 110, 100, 32, 112, 108, 111, 116, 32, 116, 104, 101, // And plot the
- 32, 100, 97, 116, 97, 32, 97, 115, 32, 60, 112, 97, // data as
element.
- 32, 32, 108, 101, 116, 32, 98, 101, 103, 105, 110, 48, // let begin0
- 32, 61, 32, 100, 100, 108, 32, 63, 32, 96, 77, 32, // = ddl ? `M
- 36, 123, 100, 100, 91, 48, 93, 91, 48, 93, 125, 44, // ${dd[0][0]},
- 36, 123, 100, 100, 91, 48, 93, 91, 49, 93, 125, 96, // ${dd[0][1]}`
- 32, 58, 32, 96, 77, 32, 48, 44, 48, 96, 59, 10, // : `M 0,0`;.
- 32, 32, 108, 101, 116, 32, 98, 101, 103, 105, 110, 32, // let begin
- 61, 32, 96, 77, 32, 36, 123, 119, 49, 125, 44, 36, // = `M ${w1},$
- 123, 104, 32, 45, 32, 104, 50, 125, 96, 59, 32, 32, // {h - h2}`;
- 47, 47, 32, 73, 110, 105, 116, 105, 97, 108, 32, 112, // // Initial p
- 111, 105, 110, 116, 10, 32, 32, 108, 101, 116, 32, 101, // oint. let e
- 110, 100, 32, 61, 32, 100, 100, 108, 32, 63, 32, 96, // nd = ddl ? `
- 76, 32, 36, 123, 100, 100, 91, 100, 100, 108, 32, 45, // L ${dd[ddl -
- 32, 49, 93, 91, 48, 93, 125, 44, 36, 123, 104, 32, // 1][0]},${h
- 45, 32, 104, 50, 125, 96, 32, 58, 32, 96, 76, 32, // - h2}` : `L
- 36, 123, 119, 49, 125, 44, 36, 123, 104, 32, 45, 32, // ${w1},${h -
- 104, 50, 125, 96, 59, 10, 32, 32, 108, 101, 116, 32, // h2}`;. let
- 115, 101, 114, 105, 101, 115, 32, 61, 32, 100, 100, 108, // series = ddl
- 32, 63, 32, 100, 100, 46, 109, 97, 112, 40, 112, 32, // ? dd.map(p
- 61, 62, 32, 96, 76, 32, 36, 123, 112, 91, 48, 93, // => `L ${p[0]
- 125, 32, 36, 123, 112, 91, 49, 93, 125, 96, 41, 32, // } ${p[1]}`)
- 58, 32, 91, 93, 59, 10, 10, 32, 32, 114, 101, 116, // : [];.. ret
- 117, 114, 110, 32, 104, 116, 109, 108, 96, 10, 60, 115, // urn html`.. .
- 32, 36, 123, 121, 116, 97, 46, 109, 97, 112, 40, 105, // ${yta.map(i
- 32, 61, 62, 32, 121, 116, 108, 40, 121, 116, 105, 40, // => ytl(yti(
- 105, 41, 41, 41, 125, 10, 32, 32, 36, 123, 121, 116, // i)))}. ${yt
- 97, 46, 109, 97, 112, 40, 105, 32, 61, 62, 32, 121, // a.map(i => y
- 116, 116, 40, 121, 116, 105, 40, 105, 41, 44, 32, 121, // tt(yti(i), y
- 116, 118, 40, 105, 41, 41, 41, 125, 10, 32, 32, 36, // tv(i)))}. $
- 123, 120, 116, 97, 46, 109, 97, 112, 40, 105, 32, 61, // {xta.map(i =
- 62, 32, 120, 116, 108, 40, 120, 116, 105, 40, 105, 41, // > xtl(xti(i)
- 41, 41, 125, 10, 32, 32, 36, 123, 100, 97, 116, 97, // ))}. ${data
- 46, 108, 101, 110, 103, 116, 104, 32, 63, 32, 120, 116, // .length ? xt
- 97, 46, 109, 97, 112, 40, 105, 32, 61, 62, 32, 120, // a.map(i => x
- 116, 116, 40, 120, 116, 105, 40, 105, 41, 44, 32, 120, // tt(xti(i), x
- 116, 118, 40, 105, 41, 41, 41, 32, 58, 32, 39, 39, // tv(i))) : ''
- 125, 10, 32, 32, 60, 112, 97, 116, 104, 32, 100, 61, // }. .
- 60, 112, 97, 116, 104, 32, 100, 61, 34, 36, 123, 98, // .
- 115, 118, 103, 62, 96, 59, 10, 125, 59, 10, 10, 10, // svg>`;.};...
- 99, 111, 110, 115, 116, 32, 67, 104, 97, 114, 116, 32, // const Chart
- 61, 32, 102, 117, 110, 99, 116, 105, 111, 110, 40, 112, // = function(p
- 114, 111, 112, 115, 41, 32, 123, 10, 32, 32, 99, 111, // rops) {. co
- 110, 115, 116, 32, 91, 100, 97, 116, 97, 44, 32, 115, // nst [data, s
- 101, 116, 68, 97, 116, 97, 93, 32, 61, 32, 117, 115, // etData] = us
- 101, 83, 116, 97, 116, 101, 40, 91, 93, 41, 59, 10, // eState([]);.
- 32, 32, 117, 115, 101, 69, 102, 102, 101, 99, 116, 40, // useEffect(
- 40, 41, 32, 61, 62, 32, 123, 10, 32, 32, 32, 32, // () => {.
- 99, 111, 110, 115, 116, 32, 105, 100, 32, 61, 32, 80, // const id = P
- 117, 98, 83, 117, 98, 46, 115, 117, 98, 115, 99, 114, // ubSub.subscr
- 105, 98, 101, 40, 102, 117, 110, 99, 116, 105, 111, 110, // ibe(function
- 40, 109, 115, 103, 41, 32, 123, 10, 32, 32, 32, 32, // (msg) {.
- 32, 32, 105, 102, 32, 40, 109, 115, 103, 46, 110, 97, // if (msg.na
- 109, 101, 32, 33, 61, 32, 39, 109, 101, 116, 114, 105, // me != 'metri
- 99, 115, 39, 41, 32, 114, 101, 116, 117, 114, 110, 59, // cs') return;
- 10, 32, 32, 32, 32, 32, 32, 115, 101, 116, 68, 97, // . setDa
- 116, 97, 40, 120, 32, 61, 62, 32, 120, 46, 99, 111, // ta(x => x.co
- 110, 99, 97, 116, 40, 91, 109, 115, 103, 46, 100, 97, // ncat([msg.da
- 116, 97, 93, 41, 46, 115, 112, 108, 105, 99, 101, 40, // ta]).splice(
- 45, 77, 97, 120, 77, 101, 116, 114, 105, 99, 115, 68, // -MaxMetricsD
- 97, 116, 97, 80, 111, 105, 110, 116, 115, 41, 41, 59, // ataPoints));
- 10, 32, 32, 32, 32, 125, 41, 59, 10, 32, 32, 32, // . });.
- 32, 114, 101, 116, 117, 114, 110, 32, 80, 117, 98, 83, // return PubS
- 117, 98, 46, 117, 110, 115, 117, 98, 115, 99, 114, 105, // ub.unsubscri
- 98, 101, 40, 105, 100, 41, 59, 10, 32, 32, 125, 44, // be(id);. },
- 32, 91, 93, 41, 59, 10, 10, 32, 32, 108, 101, 116, // []);.. let
- 32, 120, 109, 97, 120, 32, 61, 32, 48, 44, 32, 109, // xmax = 0, m
- 105, 115, 115, 105, 110, 103, 32, 61, 32, 77, 97, 120, // issing = Max
- 77, 101, 116, 114, 105, 99, 115, 68, 97, 116, 97, 80, // MetricsDataP
- 111, 105, 110, 116, 115, 32, 45, 32, 100, 97, 116, 97, // oints - data
- 46, 108, 101, 110, 103, 116, 104, 59, 10, 32, 32, 105, // .length;. i
- 102, 32, 40, 109, 105, 115, 115, 105, 110, 103, 32, 62, // f (missing >
- 32, 48, 41, 32, 120, 109, 97, 120, 32, 61, 32, 77, // 0) xmax = M
- 97, 116, 104, 46, 114, 111, 117, 110, 100, 40, 68, 97, // ath.round(Da
- 116, 101, 46, 110, 111, 119, 40, 41, 32, 47, 32, 49, // te.now() / 1
- 48, 48, 48, 41, 32, 43, 32, 109, 105, 115, 115, 105, // 000) + missi
- 110, 103, 59, 10, 32, 32, 114, 101, 116, 117, 114, 110, // ng;. return
- 32, 104, 116, 109, 108, 96, 10, 60, 100, 105, 118, 32, // html`..
Data C
- 104, 97, 114, 116, 60, 47, 104, 51, 62, 10, 32, 32, // hart
.
- 60, 100, 105, 118, 32, 115, 116, 121, 108, 101, 61, 34, //
. <
- 36, 123, 83, 86, 71, 125, 32, 104, 101, 105, 103, 104, // ${SVG} heigh
- 116, 61, 50, 52, 48, 32, 119, 105, 100, 116, 104, 61, // t=240 width=
- 54, 48, 48, 32, 121, 109, 105, 110, 61, 48, 32, 121, // 600 ymin=0 y
- 109, 97, 120, 61, 50, 48, 32, 120, 109, 97, 120, 61, // max=20 xmax=
- 36, 123, 120, 109, 97, 120, 125, 32, 100, 97, 116, 97, // ${xmax} data
- 61, 36, 123, 100, 97, 116, 97, 125, 32, 47, 62, 10, // =${data} />.
- 32, 32, 60, 47, 100, 105, 118, 62, 10, 32, 32, 60, //
. <
- 100, 105, 118, 32, 99, 108, 97, 115, 115, 61, 34, 109, // div class="m
- 115, 103, 34, 62, 10, 32, 32, 32, 32, 84, 104, 105, // sg">. Thi
- 115, 32, 99, 104, 97, 114, 116, 32, 112, 108, 111, 116, // s chart plot
- 115, 32, 108, 105, 118, 101, 32, 115, 101, 110, 115, 111, // s live senso
- 114, 32, 100, 97, 116, 97, 44, 32, 115, 101, 110, 116, // r data, sent
- 32, 98, 121, 32, 116, 104, 101, 32, 100, 101, 118, 105, // by the devi
- 99, 101, 32, 118, 105, 97, 32, 47, 97, 112, 105, 47, // ce via /api/
- 119, 97, 116, 99, 104, 46, 10, 32, 32, 60, 47, 100, // watch.. .
`;
- 10, 125, 59, 10, 10, 99, 111, 110, 115, 116, 32, 65, // .};..const A
- 112, 112, 32, 61, 32, 102, 117, 110, 99, 116, 105, 111, // pp = functio
- 110, 40, 112, 114, 111, 112, 115, 41, 32, 123, 10, 32, // n(props) {.
- 32, 99, 111, 110, 115, 116, 32, 91, 117, 115, 101, 114, // const [user
- 44, 32, 115, 101, 116, 85, 115, 101, 114, 93, 32, 61, // , setUser] =
- 32, 117, 115, 101, 83, 116, 97, 116, 101, 40, 39, 39, // useState(''
- 41, 59, 10, 32, 32, 99, 111, 110, 115, 116, 32, 91, // );. const [
- 99, 111, 110, 102, 105, 103, 44, 32, 115, 101, 116, 67, // config, setC
- 111, 110, 102, 105, 103, 93, 32, 61, 32, 117, 115, 101, // onfig] = use
- 83, 116, 97, 116, 101, 40, 123, 125, 41, 59, 10, 10, // State({});..
- 32, 32, 99, 111, 110, 115, 116, 32, 103, 101, 116, 99, // const getc
- 111, 110, 102, 105, 103, 32, 61, 32, 40, 41, 32, 61, // onfig = () =
- 62, 10, 32, 32, 32, 32, 32, 32, 102, 101, 116, 99, // >. fetc
- 104, 40, 39, 47, 97, 112, 105, 47, 99, 111, 110, 102, // h('/api/conf
- 105, 103, 47, 103, 101, 116, 39, 44, 32, 123, 104, 101, // ig/get', {he
- 97, 100, 101, 114, 115, 58, 32, 123, 65, 117, 116, 104, // aders: {Auth
- 111, 114, 105, 122, 97, 116, 105, 111, 110, 58, 32, 39, // orization: '
- 39, 125, 125, 41, 10, 32, 32, 32, 32, 32, 32, 32, // '}}).
- 32, 32, 32, 46, 116, 104, 101, 110, 40, 114, 32, 61, // .then(r =
- 62, 32, 114, 46, 106, 115, 111, 110, 40, 41, 41, 10, // > r.json()).
- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 46, 116, // .t
- 104, 101, 110, 40, 114, 32, 61, 62, 32, 115, 101, 116, // hen(r => set
- 67, 111, 110, 102, 105, 103, 40, 114, 41, 41, 10, 32, // Config(r)).
- 32, 32, 32, 32, 32, 32, 32, 32, 32, 46, 99, 97, // .ca
- 116, 99, 104, 40, 101, 114, 114, 32, 61, 62, 32, 99, // tch(err => c
- 111, 110, 115, 111, 108, 101, 46, 108, 111, 103, 40, 101, // onsole.log(e
- 114, 114, 41, 41, 59, 10, 10, 32, 32, 47, 47, 32, // rr));.. //
- 87, 97, 116, 99, 104, 32, 102, 111, 114, 32, 110, 111, // Watch for no
- 116, 105, 102, 105, 99, 97, 116, 105, 111, 110, 115, 46, // tifications.
- 32, 65, 115, 32, 115, 111, 111, 110, 32, 97, 115, 32, // As soon as
- 97, 32, 110, 111, 116, 105, 102, 105, 99, 97, 116, 105, // a notificati
- 111, 110, 32, 97, 114, 114, 105, 118, 101, 115, 44, 32, // on arrives,
- 112, 97, 115, 115, 32, 105, 116, 32, 111, 110, 10, 32, // pass it on.
- 32, 47, 47, 32, 116, 111, 32, 97, 108, 108, 32, 115, // // to all s
- 117, 98, 115, 99, 114, 105, 98, 101, 100, 32, 99, 111, // ubscribed co
- 109, 112, 111, 110, 101, 110, 116, 115, 10, 32, 32, 99, // mponents. c
- 111, 110, 115, 116, 32, 119, 97, 116, 99, 104, 32, 61, // onst watch =
- 32, 102, 117, 110, 99, 116, 105, 111, 110, 40, 41, 32, // function()
- 123, 10, 32, 32, 32, 32, 118, 97, 114, 32, 108, 32, // {. var l
- 61, 32, 119, 105, 110, 100, 111, 119, 46, 108, 111, 99, // = window.loc
- 97, 116, 105, 111, 110, 44, 32, 112, 114, 111, 116, 111, // ation, proto
- 32, 61, 32, 108, 46, 112, 114, 111, 116, 111, 99, 111, // = l.protoco
- 108, 46, 114, 101, 112, 108, 97, 99, 101, 40, 39, 104, // l.replace('h
- 116, 116, 112, 39, 44, 32, 39, 119, 115, 39, 41, 59, // ttp', 'ws');
- 10, 32, 32, 32, 32, 118, 97, 114, 32, 116, 105, 100, // . var tid
- 44, 32, 119, 115, 85, 82, 73, 32, 61, 32, 112, 114, // , wsURI = pr
- 111, 116, 111, 32, 43, 32, 39, 47, 47, 39, 32, 43, // oto + '//' +
- 32, 108, 46, 104, 111, 115, 116, 32, 43, 32, 39, 47, // l.host + '/
- 97, 112, 105, 47, 119, 97, 116, 99, 104, 39, 10, 32, // api/watch'.
- 32, 32, 32, 118, 97, 114, 32, 114, 101, 99, 111, 110, // var recon
- 110, 101, 99, 116, 32, 61, 32, 102, 117, 110, 99, 116, // nect = funct
- 105, 111, 110, 40, 41, 32, 123, 10, 32, 32, 32, 32, // ion() {.
- 32, 32, 118, 97, 114, 32, 119, 115, 32, 61, 32, 110, // var ws = n
- 101, 119, 32, 87, 101, 98, 83, 111, 99, 107, 101, 116, // ew WebSocket
- 40, 119, 115, 85, 82, 73, 41, 59, 10, 32, 32, 32, // (wsURI);.
- 32, 32, 32, 119, 115, 46, 111, 110, 111, 112, 101, 110, // ws.onopen
- 32, 61, 32, 40, 41, 32, 61, 62, 32, 99, 111, 110, // = () => con
- 115, 111, 108, 101, 46, 108, 111, 103, 40, 39, 119, 115, // sole.log('ws
- 32, 99, 111, 110, 110, 101, 99, 116, 101, 100, 39, 41, // connected')
- 59, 10, 32, 32, 32, 32, 32, 32, 119, 115, 46, 111, // ;. ws.o
- 110, 109, 101, 115, 115, 97, 103, 101, 32, 61, 32, 102, // nmessage = f
- 117, 110, 99, 116, 105, 111, 110, 40, 101, 118, 41, 32, // unction(ev)
- 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 116, 114, // {. tr
- 121, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, // y {.
- 32, 32, 118, 97, 114, 32, 109, 115, 103, 32, 61, 32, // var msg =
- 74, 83, 79, 78, 46, 112, 97, 114, 115, 101, 40, 101, // JSON.parse(e
- 118, 46, 100, 97, 116, 97, 41, 59, 10, 32, 32, 32, // v.data);.
- 32, 32, 32, 32, 32, 32, 32, 80, 117, 98, 83, 117, // PubSu
- 98, 46, 112, 117, 98, 108, 105, 115, 104, 40, 109, 115, // b.publish(ms
+ 46, 110, 97, 109, 101, 32, 33, 61, 32, 39, 109, 101, // .name != 'me
+ 116, 114, 105, 99, 115, 39, 41, 32, 114, 101, 116, 117, // trics') retu
+ 114, 110, 59, 10, 32, 32, 32, 32, 32, 32, 115, 101, // rn;. se
+ 116, 68, 97, 116, 97, 40, 120, 32, 61, 62, 32, 120, // tData(x => x
+ 46, 99, 111, 110, 99, 97, 116, 40, 91, 109, 115, 103, // .concat([msg
+ 46, 100, 97, 116, 97, 93, 41, 46, 115, 112, 108, 105, // .data]).spli
+ 99, 101, 40, 45, 77, 97, 120, 77, 101, 116, 114, 105, // ce(-MaxMetri
+ 99, 115, 68, 97, 116, 97, 80, 111, 105, 110, 116, 115, // csDataPoints
+ 41, 41, 59, 10, 32, 32, 32, 32, 125, 41, 59, 10, // ));. });.
+ 32, 32, 32, 32, 114, 101, 116, 117, 114, 110, 32, 80, // return P
+ 117, 98, 83, 117, 98, 46, 117, 110, 115, 117, 98, 115, // ubSub.unsubs
+ 99, 114, 105, 98, 101, 40, 105, 100, 41, 59, 10, 32, // cribe(id);.
+ 32, 125, 44, 32, 91, 93, 41, 59, 10, 10, 32, 32, // }, []);..
+ 108, 101, 116, 32, 120, 109, 97, 120, 32, 61, 32, 48, // let xmax = 0
+ 44, 32, 109, 105, 115, 115, 105, 110, 103, 32, 61, 32, // , missing =
+ 77, 97, 120, 77, 101, 116, 114, 105, 99, 115, 68, 97, // MaxMetricsDa
+ 116, 97, 80, 111, 105, 110, 116, 115, 32, 45, 32, 100, // taPoints - d
+ 97, 116, 97, 46, 108, 101, 110, 103, 116, 104, 59, 10, // ata.length;.
+ 32, 32, 105, 102, 32, 40, 109, 105, 115, 115, 105, 110, // if (missin
+ 103, 32, 62, 32, 48, 41, 32, 120, 109, 97, 120, 32, // g > 0) xmax
+ 61, 32, 77, 97, 116, 104, 46, 114, 111, 117, 110, 100, // = Math.round
+ 40, 68, 97, 116, 101, 46, 110, 111, 119, 40, 41, 32, // (Date.now()
+ 47, 32, 49, 48, 48, 48, 41, 32, 43, 32, 109, 105, // / 1000) + mi
+ 115, 115, 105, 110, 103, 59, 10, 32, 32, 114, 101, 116, // ssing;. ret
+ 117, 114, 110, 32, 104, 116, 109, 108, 96, 10, 60, 100, // urn html`.. Dat
+ 97, 32, 67, 104, 97, 114, 116, 60, 47, 104, 51, 62, // a Chart
+ 10, 32, 32, 60, 100, 105, 118, 32, 115, 116, 121, 108, // . .
+ 32, 32, 60, 36, 123, 83, 86, 71, 125, 32, 104, 101, // <${SVG} he
+ 105, 103, 104, 116, 61, 50, 52, 48, 32, 119, 105, 100, // ight=240 wid
+ 116, 104, 61, 54, 48, 48, 32, 121, 109, 105, 110, 61, // th=600 ymin=
+ 48, 32, 121, 109, 97, 120, 61, 50, 48, 32, 120, 109, // 0 ymax=20 xm
+ 97, 120, 61, 36, 123, 120, 109, 97, 120, 125, 32, 100, // ax=${xmax} d
+ 97, 116, 97, 61, 36, 123, 100, 97, 116, 97, 125, 32, // ata=${data}
+ 47, 62, 10, 32, 32, 60, 47, 100, 105, 118, 62, 10, // />.
.
+ 32, 32, 60, 100, 105, 118, 32, 99, 108, 97, 115, 115, // .
+ 84, 104, 105, 115, 32, 99, 104, 97, 114, 116, 32, 112, // This chart p
+ 108, 111, 116, 115, 32, 108, 105, 118, 101, 32, 115, 101, // lots live se
+ 110, 115, 111, 114, 32, 100, 97, 116, 97, 44, 32, 115, // nsor data, s
+ 101, 110, 116, 32, 98, 121, 32, 116, 104, 101, 32, 100, // ent by the d
+ 101, 118, 105, 99, 101, 32, 118, 105, 97, 32, 47, 97, // evice via /a
+ 112, 105, 47, 119, 97, 116, 99, 104, 46, 10, 32, 32, // pi/watch..
+ 60, 47, 100, 105, 118, 62, 10, 60, 47, 100, 105, 118, //
. `;.};..cons
+ 116, 32, 65, 112, 112, 32, 61, 32, 102, 117, 110, 99, // t App = func
+ 116, 105, 111, 110, 40, 112, 114, 111, 112, 115, 41, 32, // tion(props)
+ 123, 10, 32, 32, 99, 111, 110, 115, 116, 32, 91, 117, // {. const [u
+ 115, 101, 114, 44, 32, 115, 101, 116, 85, 115, 101, 114, // ser, setUser
+ 93, 32, 61, 32, 117, 115, 101, 83, 116, 97, 116, 101, // ] = useState
+ 40, 39, 39, 41, 59, 10, 32, 32, 99, 111, 110, 115, // ('');. cons
+ 116, 32, 91, 99, 111, 110, 102, 105, 103, 44, 32, 115, // t [config, s
+ 101, 116, 67, 111, 110, 102, 105, 103, 93, 32, 61, 32, // etConfig] =
+ 117, 115, 101, 83, 116, 97, 116, 101, 40, 123, 125, 41, // useState({})
+ 59, 10, 10, 32, 32, 99, 111, 110, 115, 116, 32, 103, // ;.. const g
+ 101, 116, 99, 111, 110, 102, 105, 103, 32, 61, 32, 40, // etconfig = (
+ 41, 32, 61, 62, 10, 32, 32, 32, 32, 32, 32, 102, // ) =>. f
+ 101, 116, 99, 104, 40, 39, 47, 97, 112, 105, 47, 99, // etch('/api/c
+ 111, 110, 102, 105, 103, 47, 103, 101, 116, 39, 44, 32, // onfig/get',
+ 123, 104, 101, 97, 100, 101, 114, 115, 58, 32, 123, 65, // {headers: {A
+ 117, 116, 104, 111, 114, 105, 122, 97, 116, 105, 111, 110, // uthorization
+ 58, 32, 39, 39, 125, 125, 41, 10, 32, 32, 32, 32, // : ''}}).
+ 32, 32, 32, 32, 32, 32, 46, 116, 104, 101, 110, 40, // .then(
+ 114, 32, 61, 62, 32, 114, 46, 106, 115, 111, 110, 40, // r => r.json(
+ 41, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, // )).
+ 32, 46, 116, 104, 101, 110, 40, 114, 32, 61, 62, 32, // .then(r =>
+ 115, 101, 116, 67, 111, 110, 102, 105, 103, 40, 114, 41, // setConfig(r)
+ 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, // ).
+ 46, 99, 97, 116, 99, 104, 40, 101, 114, 114, 32, 61, // .catch(err =
+ 62, 32, 99, 111, 110, 115, 111, 108, 101, 46, 108, 111, // > console.lo
+ 103, 40, 101, 114, 114, 41, 41, 59, 10, 10, 32, 32, // g(err));..
+ 47, 47, 32, 87, 97, 116, 99, 104, 32, 102, 111, 114, // // Watch for
+ 32, 110, 111, 116, 105, 102, 105, 99, 97, 116, 105, 111, // notificatio
+ 110, 115, 46, 32, 65, 115, 32, 115, 111, 111, 110, 32, // ns. As soon
+ 97, 115, 32, 97, 32, 110, 111, 116, 105, 102, 105, 99, // as a notific
+ 97, 116, 105, 111, 110, 32, 97, 114, 114, 105, 118, 101, // ation arrive
+ 115, 44, 32, 112, 97, 115, 115, 32, 105, 116, 32, 111, // s, pass it o
+ 110, 10, 32, 32, 47, 47, 32, 116, 111, 32, 97, 108, // n. // to al
+ 108, 32, 115, 117, 98, 115, 99, 114, 105, 98, 101, 100, // l subscribed
+ 32, 99, 111, 109, 112, 111, 110, 101, 110, 116, 115, 10, // components.
+ 32, 32, 99, 111, 110, 115, 116, 32, 119, 97, 116, 99, // const watc
+ 104, 32, 61, 32, 102, 117, 110, 99, 116, 105, 111, 110, // h = function
+ 40, 41, 32, 123, 10, 32, 32, 32, 32, 118, 97, 114, // () {. var
+ 32, 108, 32, 61, 32, 119, 105, 110, 100, 111, 119, 46, // l = window.
+ 108, 111, 99, 97, 116, 105, 111, 110, 44, 32, 112, 114, // location, pr
+ 111, 116, 111, 32, 61, 32, 108, 46, 112, 114, 111, 116, // oto = l.prot
+ 111, 99, 111, 108, 46, 114, 101, 112, 108, 97, 99, 101, // ocol.replace
+ 40, 39, 104, 116, 116, 112, 39, 44, 32, 39, 119, 115, // ('http', 'ws
+ 39, 41, 59, 10, 32, 32, 32, 32, 118, 97, 114, 32, // ');. var
+ 116, 105, 100, 44, 32, 119, 115, 85, 82, 73, 32, 61, // tid, wsURI =
+ 32, 112, 114, 111, 116, 111, 32, 43, 32, 39, 47, 47, // proto + '//
+ 39, 32, 43, 32, 108, 46, 104, 111, 115, 116, 32, 43, // ' + l.host +
+ 32, 39, 47, 97, 112, 105, 47, 119, 97, 116, 99, 104, // '/api/watch
+ 39, 10, 32, 32, 32, 32, 118, 97, 114, 32, 114, 101, // '. var re
+ 99, 111, 110, 110, 101, 99, 116, 32, 61, 32, 102, 117, // connect = fu
+ 110, 99, 116, 105, 111, 110, 40, 41, 32, 123, 10, 32, // nction() {.
+ 32, 32, 32, 32, 32, 118, 97, 114, 32, 119, 115, 32, // var ws
+ 61, 32, 110, 101, 119, 32, 87, 101, 98, 83, 111, 99, // = new WebSoc
+ 107, 101, 116, 40, 119, 115, 85, 82, 73, 41, 59, 10, // ket(wsURI);.
+ 32, 32, 32, 32, 32, 32, 47, 47, 32, 119, 115, 46, // // ws.
+ 111, 110, 111, 112, 101, 110, 32, 61, 32, 40, 41, 32, // onopen = ()
+ 61, 62, 32, 99, 111, 110, 115, 111, 108, 101, 46, 108, // => console.l
+ 111, 103, 40, 39, 119, 115, 32, 99, 111, 110, 110, 101, // og('ws conne
+ 99, 116, 101, 100, 39, 41, 59, 10, 32, 32, 32, 32, // cted');.
+ 32, 32, 119, 115, 46, 111, 110, 109, 101, 115, 115, 97, // ws.onmessa
+ 103, 101, 32, 61, 32, 102, 117, 110, 99, 116, 105, 111, // ge = functio
+ 110, 40, 101, 118, 41, 32, 123, 10, 32, 32, 32, 32, // n(ev) {.
+ 32, 32, 32, 32, 116, 114, 121, 32, 123, 10, 32, 32, // try {.
+ 32, 32, 32, 32, 32, 32, 32, 32, 118, 97, 114, 32, // var
+ 109, 115, 103, 32, 61, 32, 74, 83, 79, 78, 46, 112, // msg = JSON.p
+ 97, 114, 115, 101, 40, 101, 118, 46, 100, 97, 116, 97, // arse(ev.data
+ 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, // );.
+ 32, 80, 117, 98, 83, 117, 98, 46, 112, 117, 98, 108, // PubSub.publ
+ 105, 115, 104, 40, 109, 115, 103, 41, 59, 10, 32, 32, // ish(msg);.
+ 32, 32, 32, 32, 32, 32, 32, 32, 47, 47, 32, 105, // // i
+ 102, 32, 40, 109, 115, 103, 46, 110, 97, 109, 101, 32, // f (msg.name
+ 33, 61, 32, 39, 109, 101, 116, 114, 105, 99, 115, 39, // != 'metrics'
+ 41, 32, 99, 111, 110, 115, 111, 108, 101, 46, 108, 111, // ) console.lo
+ 103, 40, 39, 119, 115, 45, 62, 39, 44, 32, 109, 115, // g('ws->', ms
103, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, // g);.
- 32, 32, 105, 102, 32, 40, 109, 115, 103, 46, 110, 97, // if (msg.na
- 109, 101, 32, 33, 61, 32, 39, 109, 101, 116, 114, 105, // me != 'metri
- 99, 115, 39, 41, 32, 99, 111, 110, 115, 111, 108, 101, // cs') console
- 46, 108, 111, 103, 40, 39, 119, 115, 45, 62, 39, 44, // .log('ws->',
- 32, 109, 115, 103, 41, 59, 10, 32, 32, 32, 32, 32, // msg);.
- 32, 32, 32, 125, 32, 99, 97, 116, 99, 104, 32, 40, // } catch (
- 101, 41, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, // e) {.
- 32, 32, 32, 99, 111, 110, 115, 111, 108, 101, 46, 108, // console.l
- 111, 103, 40, 39, 73, 110, 118, 97, 108, 105, 100, 32, // og('Invalid
- 119, 115, 32, 102, 114, 97, 109, 101, 58, 39, 44, 32, // ws frame:',
- 101, 118, 46, 100, 97, 116, 97, 41, 59, 32, 32, 47, // ev.data); /
- 47, 32, 101, 115, 108, 105, 110, 116, 45, 100, 105, 115, // / eslint-dis
- 97, 98, 108, 101, 45, 108, 105, 110, 101, 10, 32, 32, // able-line.
- 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, // }.
- 32, 32, 125, 59, 10, 32, 32, 32, 32, 32, 32, 119, // };. w
- 115, 46, 111, 110, 99, 108, 111, 115, 101, 32, 61, 32, // s.onclose =
- 102, 117, 110, 99, 116, 105, 111, 110, 40, 41, 32, 123, // function() {
- 10, 32, 32, 32, 32, 32, 32, 32, 32, 99, 108, 101, // . cle
- 97, 114, 84, 105, 109, 101, 111, 117, 116, 40, 116, 105, // arTimeout(ti
- 100, 41, 59, 10, 32, 32, 32, 32, 32, 32, 32, 32, // d);.
- 116, 105, 100, 32, 61, 32, 115, 101, 116, 84, 105, 109, // tid = setTim
- 101, 111, 117, 116, 40, 114, 101, 99, 111, 110, 110, 101, // eout(reconne
- 99, 116, 44, 32, 49, 48, 48, 48, 41, 59, 10, 32, // ct, 1000);.
- 32, 32, 32, 32, 32, 32, 32, 99, 111, 110, 115, 111, // conso
- 108, 101, 46, 108, 111, 103, 40, 39, 119, 115, 32, 100, // le.log('ws d
- 105, 115, 99, 111, 110, 110, 101, 99, 116, 101, 100, 39, // isconnected'
- 41, 59, 10, 32, 32, 32, 32, 32, 32, 125, 59, 10, // );. };.
- 32, 32, 32, 32, 125, 59, 10, 32, 32, 32, 32, 114, // };. r
- 101, 99, 111, 110, 110, 101, 99, 116, 40, 41, 59, 10, // econnect();.
- 32, 32, 125, 59, 10, 10, 32, 32, 99, 111, 110, 115, // };.. cons
- 116, 32, 108, 111, 103, 105, 110, 32, 61, 32, 102, 117, // t login = fu
- 110, 99, 116, 105, 111, 110, 40, 117, 41, 32, 123, 10, // nction(u) {.
- 32, 32, 32, 32, 100, 111, 99, 117, 109, 101, 110, 116, // document
- 46, 99, 111, 111, 107, 105, 101, 32, 61, 32, 96, 97, // .cookie = `a
- 99, 99, 101, 115, 115, 95, 116, 111, 107, 101, 110, 61, // ccess_token=
- 36, 123, 117, 46, 116, 111, 107, 101, 110, 125, 59, 112, // ${u.token};p
- 97, 116, 104, 61, 47, 59, 109, 97, 120, 45, 97, 103, // ath=/;max-ag
- 101, 61, 51, 54, 48, 48, 96, 59, 10, 32, 32, 32, // e=3600`;.
- 32, 115, 101, 116, 85, 115, 101, 114, 40, 117, 46, 117, // setUser(u.u
- 115, 101, 114, 41, 59, 10, 32, 32, 32, 32, 119, 97, // ser);. wa
- 116, 99, 104, 40, 41, 59, 10, 32, 32, 32, 32, 114, // tch();. r
- 101, 116, 117, 114, 110, 32, 103, 101, 116, 99, 111, 110, // eturn getcon
- 102, 105, 103, 40, 41, 59, 10, 32, 32, 125, 59, 10, // fig();. };.
- 10, 32, 32, 99, 111, 110, 115, 116, 32, 108, 111, 103, // . const log
- 111, 117, 116, 32, 61, 32, 101, 118, 32, 61, 62, 32, // out = ev =>
- 123, 10, 32, 32, 32, 32, 100, 111, 99, 117, 109, 101, // {. docume
- 110, 116, 46, 99, 111, 111, 107, 105, 101, 32, 61, 32, // nt.cookie =
- 96, 97, 99, 99, 101, 115, 115, 95, 116, 111, 107, 101, // `access_toke
- 110, 61, 59, 112, 97, 116, 104, 61, 47, 59, 109, 97, // n=;path=/;ma
- 120, 45, 97, 103, 101, 61, 48, 96, 59, 10, 32, 32, // x-age=0`;.
- 32, 32, 115, 101, 116, 85, 115, 101, 114, 40, 39, 39, // setUser(''
- 41, 59, 10, 32, 32, 125, 59, 10, 10, 32, 32, 117, // );. };.. u
- 115, 101, 69, 102, 102, 101, 99, 116, 40, 40, 41, 32, // seEffect(()
- 61, 62, 32, 123, 10, 32, 32, 32, 32, 47, 47, 32, // => {. //
- 67, 97, 108, 108, 101, 100, 32, 111, 110, 99, 101, 32, // Called once
- 97, 116, 32, 105, 110, 105, 116, 32, 116, 105, 109, 101, // at init time
- 10, 32, 32, 32, 32, 80, 117, 98, 83, 117, 98, 46, // . PubSub.
- 115, 117, 98, 115, 99, 114, 105, 98, 101, 40, 109, 115, // subscribe(ms
- 103, 32, 61, 62, 32, 109, 115, 103, 46, 110, 97, 109, // g => msg.nam
- 101, 32, 61, 61, 32, 39, 99, 111, 110, 102, 105, 103, // e == 'config
- 39, 32, 38, 38, 32, 103, 101, 116, 99, 111, 110, 102, // ' && getconf
- 105, 103, 40, 41, 41, 59, 10, 32, 32, 32, 32, 102, // ig());. f
- 101, 116, 99, 104, 40, 39, 47, 97, 112, 105, 47, 108, // etch('/api/l
- 111, 103, 105, 110, 39, 44, 32, 123, 104, 101, 97, 100, // ogin', {head
- 101, 114, 115, 58, 32, 123, 65, 117, 116, 104, 111, 114, // ers: {Author
- 105, 122, 97, 116, 105, 111, 110, 58, 32, 39, 39, 125, // ization: ''}
- 125, 41, 10, 32, 32, 32, 32, 32, 32, 32, 32, 46, // }). .
- 116, 104, 101, 110, 40, 114, 32, 61, 62, 32, 114, 46, // then(r => r.
- 106, 115, 111, 110, 40, 41, 41, 10, 32, 32, 32, 32, // json()).
- 32, 32, 32, 32, 46, 116, 104, 101, 110, 40, 114, 32, // .then(r
- 61, 62, 32, 108, 111, 103, 105, 110, 40, 114, 41, 41, // => login(r))
- 10, 32, 32, 32, 32, 32, 32, 32, 32, 46, 99, 97, // . .ca
- 116, 99, 104, 40, 101, 114, 114, 32, 61, 62, 32, 115, // tch(err => s
- 101, 116, 85, 115, 101, 114, 40, 39, 39, 41, 41, 59, // etUser(''));
- 10, 32, 32, 125, 44, 32, 91, 93, 41, 59, 10, 10, // . }, []);..
- 32, 32, 105, 102, 32, 40, 33, 117, 115, 101, 114, 41, // if (!user)
- 32, 114, 101, 116, 117, 114, 110, 32, 104, 116, 109, 108, // return html
- 96, 60, 36, 123, 76, 111, 103, 105, 110, 125, 32, 108, // `<${Login} l
- 111, 103, 105, 110, 61, 36, 123, 108, 111, 103, 105, 110, // ogin=${login
- 125, 32, 47, 62, 96, 59, 10, 10, 32, 32, 114, 101, // } />`;.. re
- 116, 117, 114, 110, 32, 104, 116, 109, 108, 96, 10, 60, // turn html`.<
- 36, 123, 78, 97, 118, 125, 32, 117, 115, 101, 114, 61, // ${Nav} user=
- 36, 123, 117, 115, 101, 114, 125, 32, 108, 111, 103, 111, // ${user} logo
- 117, 116, 61, 36, 123, 108, 111, 103, 111, 117, 116, 125, // ut=${logout}
- 32, 47, 62, 10, 60, 100, 105, 118, 32, 99, 108, 97, // />..
.
- 32, 32, 32, 32, 60, 100, 105, 118, 32, 99, 108, 97, //
<${Hero}
- 47, 62, 60, 47, 100, 105, 118, 62, 10, 32, 32, 32, // />
.
+ 125, 32, 99, 97, 116, 99, 104, 32, 40, 101, 41, 32, // } catch (e)
+ 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, // {.
+ 99, 111, 110, 115, 111, 108, 101, 46, 108, 111, 103, 40, // console.log(
+ 39, 73, 110, 118, 97, 108, 105, 100, 32, 119, 115, 32, // 'Invalid ws
+ 102, 114, 97, 109, 101, 58, 39, 44, 32, 101, 118, 46, // frame:', ev.
+ 100, 97, 116, 97, 41, 59, 32, 32, 47, 47, 32, 101, // data); // e
+ 115, 108, 105, 110, 116, 45, 100, 105, 115, 97, 98, 108, // slint-disabl
+ 101, 45, 108, 105, 110, 101, 10, 32, 32, 32, 32, 32, // e-line.
+ 32, 32, 32, 125, 10, 32, 32, 32, 32, 32, 32, 125, // }. }
+ 59, 10, 32, 32, 32, 32, 32, 32, 119, 115, 46, 111, // ;. ws.o
+ 110, 99, 108, 111, 115, 101, 32, 61, 32, 102, 117, 110, // nclose = fun
+ 99, 116, 105, 111, 110, 40, 41, 32, 123, 10, 32, 32, // ction() {.
+ 32, 32, 32, 32, 32, 32, 99, 108, 101, 97, 114, 84, // clearT
+ 105, 109, 101, 111, 117, 116, 40, 116, 105, 100, 41, 59, // imeout(tid);
+ 10, 32, 32, 32, 32, 32, 32, 32, 32, 116, 105, 100, // . tid
+ 32, 61, 32, 115, 101, 116, 84, 105, 109, 101, 111, 117, // = setTimeou
+ 116, 40, 114, 101, 99, 111, 110, 110, 101, 99, 116, 44, // t(reconnect,
+ 32, 49, 48, 48, 48, 41, 59, 10, 32, 32, 32, 32, // 1000);.
+ 32, 32, 32, 32, 99, 111, 110, 115, 111, 108, 101, 46, // console.
+ 108, 111, 103, 40, 39, 119, 115, 32, 100, 105, 115, 99, // log('ws disc
+ 111, 110, 110, 101, 99, 116, 101, 100, 39, 41, 59, 10, // onnected');.
+ 32, 32, 32, 32, 32, 32, 125, 59, 10, 32, 32, 32, // };.
+ 32, 125, 59, 10, 32, 32, 32, 32, 114, 101, 99, 111, // };. reco
+ 110, 110, 101, 99, 116, 40, 41, 59, 10, 32, 32, 125, // nnect();. }
+ 59, 10, 10, 32, 32, 99, 111, 110, 115, 116, 32, 108, // ;.. const l
+ 111, 103, 105, 110, 32, 61, 32, 102, 117, 110, 99, 116, // ogin = funct
+ 105, 111, 110, 40, 117, 41, 32, 123, 10, 32, 32, 32, // ion(u) {.
+ 32, 100, 111, 99, 117, 109, 101, 110, 116, 46, 99, 111, // document.co
+ 111, 107, 105, 101, 32, 61, 32, 96, 97, 99, 99, 101, // okie = `acce
+ 115, 115, 95, 116, 111, 107, 101, 110, 61, 36, 123, 117, // ss_token=${u
+ 46, 116, 111, 107, 101, 110, 125, 59, 112, 97, 116, 104, // .token};path
+ 61, 47, 59, 109, 97, 120, 45, 97, 103, 101, 61, 51, // =/;max-age=3
+ 54, 48, 48, 96, 59, 10, 32, 32, 32, 32, 115, 101, // 600`;. se
+ 116, 85, 115, 101, 114, 40, 117, 46, 117, 115, 101, 114, // tUser(u.user
+ 41, 59, 10, 32, 32, 32, 32, 119, 97, 116, 99, 104, // );. watch
+ 40, 41, 59, 10, 32, 32, 32, 32, 114, 101, 116, 117, // ();. retu
+ 114, 110, 32, 103, 101, 116, 99, 111, 110, 102, 105, 103, // rn getconfig
+ 40, 41, 59, 10, 32, 32, 125, 59, 10, 10, 32, 32, // ();. };..
+ 99, 111, 110, 115, 116, 32, 108, 111, 103, 111, 117, 116, // const logout
+ 32, 61, 32, 101, 118, 32, 61, 62, 32, 123, 10, 32, // = ev => {.
+ 32, 32, 32, 100, 111, 99, 117, 109, 101, 110, 116, 46, // document.
+ 99, 111, 111, 107, 105, 101, 32, 61, 32, 96, 97, 99, // cookie = `ac
+ 99, 101, 115, 115, 95, 116, 111, 107, 101, 110, 61, 59, // cess_token=;
+ 112, 97, 116, 104, 61, 47, 59, 109, 97, 120, 45, 97, // path=/;max-a
+ 103, 101, 61, 48, 96, 59, 10, 32, 32, 32, 32, 115, // ge=0`;. s
+ 101, 116, 85, 115, 101, 114, 40, 39, 39, 41, 59, 10, // etUser('');.
+ 32, 32, 125, 59, 10, 10, 32, 32, 117, 115, 101, 69, // };.. useE
+ 102, 102, 101, 99, 116, 40, 40, 41, 32, 61, 62, 32, // ffect(() =>
+ 123, 10, 32, 32, 32, 32, 47, 47, 32, 67, 97, 108, // {. // Cal
+ 108, 101, 100, 32, 111, 110, 99, 101, 32, 97, 116, 32, // led once at
+ 105, 110, 105, 116, 32, 116, 105, 109, 101, 10, 32, 32, // init time.
+ 32, 32, 80, 117, 98, 83, 117, 98, 46, 115, 117, 98, // PubSub.sub
+ 115, 99, 114, 105, 98, 101, 40, 109, 115, 103, 32, 61, // scribe(msg =
+ 62, 32, 109, 115, 103, 46, 110, 97, 109, 101, 32, 61, // > msg.name =
+ 61, 32, 39, 99, 111, 110, 102, 105, 103, 39, 32, 38, // = 'config' &
+ 38, 32, 103, 101, 116, 99, 111, 110, 102, 105, 103, 40, // & getconfig(
+ 41, 41, 59, 10, 32, 32, 32, 32, 102, 101, 116, 99, // ));. fetc
+ 104, 40, 39, 47, 97, 112, 105, 47, 108, 111, 103, 105, // h('/api/logi
+ 110, 39, 44, 32, 123, 104, 101, 97, 100, 101, 114, 115, // n', {headers
+ 58, 32, 123, 65, 117, 116, 104, 111, 114, 105, 122, 97, // : {Authoriza
+ 116, 105, 111, 110, 58, 32, 39, 39, 125, 125, 41, 10, // tion: ''}}).
+ 32, 32, 32, 32, 32, 32, 32, 32, 46, 116, 104, 101, // .the
+ 110, 40, 114, 32, 61, 62, 32, 114, 46, 106, 115, 111, // n(r => r.jso
+ 110, 40, 41, 41, 10, 32, 32, 32, 32, 32, 32, 32, // n()).
+ 32, 46, 116, 104, 101, 110, 40, 114, 32, 61, 62, 32, // .then(r =>
+ 108, 111, 103, 105, 110, 40, 114, 41, 41, 10, 32, 32, // login(r)).
+ 32, 32, 32, 32, 32, 32, 46, 99, 97, 116, 99, 104, // .catch
+ 40, 101, 114, 114, 32, 61, 62, 32, 115, 101, 116, 85, // (err => setU
+ 115, 101, 114, 40, 39, 39, 41, 41, 59, 10, 32, 32, // ser(''));.
+ 125, 44, 32, 91, 93, 41, 59, 10, 10, 32, 32, 105, // }, []);.. i
+ 102, 32, 40, 33, 117, 115, 101, 114, 41, 32, 114, 101, // f (!user) re
+ 116, 117, 114, 110, 32, 104, 116, 109, 108, 96, 60, 36, // turn html`<$
+ 123, 76, 111, 103, 105, 110, 125, 32, 108, 111, 103, 105, // {Login} logi
+ 110, 61, 36, 123, 108, 111, 103, 105, 110, 125, 32, 47, // n=${login} /
+ 62, 96, 59, 10, 10, 32, 32, 114, 101, 116, 117, 114, // >`;.. retur
+ 110, 32, 104, 116, 109, 108, 96, 10, 60, 36, 123, 78, // n html`.<${N
+ 97, 118, 125, 32, 117, 115, 101, 114, 61, 36, 123, 117, // av} user=${u
+ 115, 101, 114, 125, 32, 108, 111, 103, 111, 117, 116, 61, // ser} logout=
+ 36, 123, 108, 111, 103, 111, 117, 116, 125, 32, 47, 62, // ${logout} />
+ 10, 60, 100, 105, 118, 32, 99, 108, 97, 115, 115, 61, // .
+ 10, 32, 32, 60, 100, 105, 118, 32, 99, 108, 97, 115, // .
.
32, 60, 100, 105, 118, 32, 99, 108, 97, 115, 115, 61, //
- 60, 36, 123, 67, 104, 97, 114, 116, 125, 32, 47, 62, // <${Chart} />
- 60, 47, 100, 105, 118, 62, 10, 32, 32, 32, 32, 60, //
. <
- 100, 105, 118, 32, 99, 108, 97, 115, 115, 61, 34, 99, // div class="c
- 111, 108, 32, 99, 111, 108, 45, 54, 34, 62, 10, 32, // ol col-6">.
- 32, 32, 32, 32, 32, 36, 123, 117, 115, 101, 114, 32, // ${user
- 61, 61, 32, 39, 97, 100, 109, 105, 110, 39, 32, 38, // == 'admin' &
- 38, 32, 104, 40, 67, 111, 110, 102, 105, 103, 117, 114, // & h(Configur
- 97, 116, 105, 111, 110, 44, 32, 123, 99, 111, 110, 102, // ation, {conf
- 105, 103, 125, 41, 125, 10, 32, 32, 32, 32, 60, 47, // ig})}.
- 100, 105, 118, 62, 10, 32, 32, 32, 32, 60, 100, 105, // div>.
<${M
- 101, 115, 115, 97, 103, 101, 115, 125, 32, 99, 111, 110, // essages} con
- 102, 105, 103, 61, 36, 123, 99, 111, 110, 102, 105, 103, // fig=${config
- 125, 32, 47, 62, 60, 47, 100, 105, 118, 62, 10, 32, // } />.
- 32, 60, 47, 100, 105, 118, 62, 10, 60, 47, 100, 105, //
.`;.};..win
- 100, 111, 119, 46, 111, 110, 108, 111, 97, 100, 32, 61, // dow.onload =
- 32, 40, 41, 32, 61, 62, 32, 114, 101, 110, 100, 101, // () => rende
- 114, 40, 104, 40, 65, 112, 112, 41, 44, 32, 100, 111, // r(h(App), do
- 99, 117, 109, 101, 110, 116, 46, 98, 111, 100, 121, 41, // cument.body)
- 59, 10, 0 // ;.
+ 60, 36, 123, 72, 101, 114, 111, 125, 32, 47, 62, 60, // <${Hero} /><
+ 47, 100, 105, 118, 62, 10, 32, 32, 32, 32, 60, 100, // /div>.
<${
+ 67, 104, 97, 114, 116, 125, 32, 47, 62, 60, 47, 100, // Chart} />.
.
+ 32, 32, 36, 123, 117, 115, 101, 114, 32, 61, 61, 32, // ${user ==
+ 39, 97, 100, 109, 105, 110, 39, 32, 38, 38, 32, 104, // 'admin' && h
+ 40, 67, 111, 110, 102, 105, 103, 117, 114, 97, 116, 105, // (Configurati
+ 111, 110, 44, 32, 123, 99, 111, 110, 102, 105, 103, 125, // on, {config}
+ 41, 125, 10, 32, 32, 32, 32, 60, 47, 100, 105, 118, // )}.
.
<${Mess
+ 97, 103, 101, 115, 125, 32, 99, 111, 110, 102, 105, 103, // ages} config
+ 61, 36, 123, 99, 111, 110, 102, 105, 103, 125, 32, 47, // =${config} /
+ 62, 60, 47, 100, 105, 118, 62, 10, 32, 32, 60, 47, // >
.
+ 100, 105, 118, 62, 10, 60, 47, 100, 105, 118, 62, 96, // div>.
`
+ 59, 10, 125, 59, 10, 10, 119, 105, 110, 100, 111, 119, // ;.};..window
+ 46, 111, 110, 108, 111, 97, 100, 32, 61, 32, 40, 41, // .onload = ()
+ 32, 61, 62, 32, 114, 101, 110, 100, 101, 114, 40, 104, // => render(h
+ 40, 65, 112, 112, 41, 44, 32, 100, 111, 99, 117, 109, // (App), docum
+ 101, 110, 116, 46, 98, 111, 100, 121, 41, 59, 10, 0 // ent.body);.
};
static const unsigned char v3[] = {
118, 97, 114, 32, 101, 44, 110, 44, 95, 44, 116, 44, // var e,n,_,t,
@@ -2796,7 +2796,7 @@ static const struct packed_file {
time_t mtime;
} packed_files[] = {
{"/web_root/index.html", v1, sizeof(v1), 1659483223},
- {"/web_root/main.js", v2, sizeof(v2), 1659483223},
+ {"/web_root/main.js", v2, sizeof(v2), 1660395584},
{"/web_root/preact.min.js", v3, sizeof(v3), 1659483223},
{"/web_root/style.css", v4, sizeof(v4), 1659483223},
{"/web_root/user.png", v5, sizeof(v5), 1659483223},
diff --git a/examples/device-dashboard/web_root/main.js b/examples/device-dashboard/web_root/main.js
index 5ec6ed37..010bb7ae 100644
--- a/examples/device-dashboard/web_root/main.js
+++ b/examples/device-dashboard/web_root/main.js
@@ -119,7 +119,7 @@ const Configuration = function(props) {
const updatepub = ev => update('pub', pub);
const updatesub = ev => update('sub', sub);
- console.log(props, [url, pub, sub]);
+ // console.log(props, [url, pub, sub]);
return html`
@@ -319,12 +319,12 @@ const App = function(props) {
var tid, wsURI = proto + '//' + l.host + '/api/watch'
var reconnect = function() {
var ws = new WebSocket(wsURI);
- ws.onopen = () => console.log('ws connected');
+ // ws.onopen = () => console.log('ws connected');
ws.onmessage = function(ev) {
try {
var msg = JSON.parse(ev.data);
PubSub.publish(msg);
- if (msg.name != 'metrics') console.log('ws->', msg);
+ // if (msg.name != 'metrics') console.log('ws->', msg);
} catch (e) {
console.log('Invalid ws frame:', ev.data); // eslint-disable-line
}
diff --git a/examples/webui-login/main.c b/examples/webui-login/main.c
index e651eadf..bf6dd838 100644
--- a/examples/webui-login/main.c
+++ b/examples/webui-login/main.c
@@ -49,7 +49,7 @@ void fn(struct mg_connection *c, int ev, void *ev_data, void *fn_data) {
struct user *u = getuser(hm);
if (u == NULL && mg_http_match_uri(hm, "/api/#")) {
// All URIs starting with /api/ must be authenticated
- mg_printf(c, "%s", "HTTP/1.1 403 Denied\r\nContent-Length: 0\r\n\r\n");
+ mg_http_reply(c, 403, "", "Denied\n");
} else if (mg_http_match_uri(hm, "/api/data")) {
mg_http_reply(c, 200, "Content-Type: application/json\r\n",
"{%Q:%Q,%Q:%Q}\n", "text", "Hello!", "data", "somedata");
diff --git a/examples/webui-plain/main.c b/examples/webui-plain/main.c
index cc91674a..a80cf330 100644
--- a/examples/webui-plain/main.c
+++ b/examples/webui-plain/main.c
@@ -43,7 +43,7 @@ static void fn(struct mg_connection *c, int ev, void *ev_data, void *fn_data) {
update_config(json, "$.url", &s_config.url);
update_config(json, "$.pub", &s_config.pub);
update_config(json, "$.sub", &s_config.sub);
- mg_printf(c, "HTTP/1.1 200 OK\r\nContent-Length: 0\r\n\r\n");
+ mg_http_reply(c, 200, "", "ok\n");
} else {
struct mg_http_serve_opts opts = {.root_dir = s_root_dir};
mg_http_serve_dir(c, ev_data, &opts);