@snap/camera-kit
Version:
Camera Kit Web
129 lines • 5.71 kB
JavaScript
import Long from "long";
import _m0 from "protobufjs/minimal";
import { Timestamp } from "../../google/protobuf/timestamp";
export const protobufPackage = "com.snap.camerakit.v3";
function createBaseOperationalMetric() {
return { name: "", timestamp: undefined, metric: undefined };
}
export const OperationalMetric = {
encode(message, writer = _m0.Writer.create()) {
var _a, _b, _c;
if (message.name !== "") {
writer.uint32(10).string(message.name);
}
if (message.timestamp !== undefined) {
Timestamp.encode(toTimestamp(message.timestamp), writer.uint32(18).fork()).ldelim();
}
if (((_a = message.metric) === null || _a === void 0 ? void 0 : _a.$case) === "count") {
writer.uint32(24).uint64(message.metric.count);
}
if (((_b = message.metric) === null || _b === void 0 ? void 0 : _b.$case) === "latencyMillis") {
writer.uint32(32).uint64(message.metric.latencyMillis);
}
if (((_c = message.metric) === null || _c === void 0 ? void 0 : _c.$case) === "histogram") {
writer.uint32(40).int64(message.metric.histogram);
}
return writer;
},
decode(input, length) {
const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseOperationalMetric();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
message.name = reader.string();
break;
case 2:
message.timestamp = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
break;
case 3:
message.metric = { $case: "count", count: longToString(reader.uint64()) };
break;
case 4:
message.metric = { $case: "latencyMillis", latencyMillis: longToString(reader.uint64()) };
break;
case 5:
message.metric = { $case: "histogram", histogram: longToString(reader.int64()) };
break;
default:
reader.skipType(tag & 7);
break;
}
}
return message;
},
fromPartial(object) {
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
const message = createBaseOperationalMetric();
message.name = (_a = object.name) !== null && _a !== void 0 ? _a : "";
message.timestamp = (_b = object.timestamp) !== null && _b !== void 0 ? _b : undefined;
if (((_c = object.metric) === null || _c === void 0 ? void 0 : _c.$case) === "count" && ((_d = object.metric) === null || _d === void 0 ? void 0 : _d.count) !== undefined && ((_e = object.metric) === null || _e === void 0 ? void 0 : _e.count) !== null) {
message.metric = { $case: "count", count: object.metric.count };
}
if (((_f = object.metric) === null || _f === void 0 ? void 0 : _f.$case) === "latencyMillis" &&
((_g = object.metric) === null || _g === void 0 ? void 0 : _g.latencyMillis) !== undefined &&
((_h = object.metric) === null || _h === void 0 ? void 0 : _h.latencyMillis) !== null) {
message.metric = { $case: "latencyMillis", latencyMillis: object.metric.latencyMillis };
}
if (((_j = object.metric) === null || _j === void 0 ? void 0 : _j.$case) === "histogram" &&
((_k = object.metric) === null || _k === void 0 ? void 0 : _k.histogram) !== undefined &&
((_l = object.metric) === null || _l === void 0 ? void 0 : _l.histogram) !== null) {
message.metric = { $case: "histogram", histogram: object.metric.histogram };
}
return message;
},
};
function createBaseOperationalMetricsBundle() {
return { metrics: [] };
}
export const OperationalMetricsBundle = {
encode(message, writer = _m0.Writer.create()) {
for (const v of message.metrics) {
OperationalMetric.encode(v, writer.uint32(10).fork()).ldelim();
}
return writer;
},
decode(input, length) {
const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
let end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseOperationalMetricsBundle();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 1:
message.metrics.push(OperationalMetric.decode(reader, reader.uint32()));
break;
default:
reader.skipType(tag & 7);
break;
}
}
return message;
},
fromPartial(object) {
var _a;
const message = createBaseOperationalMetricsBundle();
message.metrics = ((_a = object.metrics) === null || _a === void 0 ? void 0 : _a.map((e) => OperationalMetric.fromPartial(e))) || [];
return message;
},
};
function toTimestamp(date) {
const seconds = Math.trunc(date.getTime() / 1000).toString();
const nanos = (date.getTime() % 1000) * 1000000;
return { seconds, nanos };
}
function fromTimestamp(t) {
let millis = Number(t.seconds) * 1000;
millis += t.nanos / 1000000;
return new Date(millis);
}
function longToString(long) {
return long.toString();
}
if (_m0.util.Long !== Long) {
_m0.util.Long = Long;
_m0.configure();
}
//# sourceMappingURL=operational_metrics.js.map