Skip to content

Commit

Permalink
Update SLA code to use API v.1
Browse files Browse the repository at this point in the history
  • Loading branch information
Lowentwickler authored and Ilja Kartashov committed Sep 27, 2023
1 parent c60e2a5 commit ab020d6
Show file tree
Hide file tree
Showing 27 changed files with 524 additions and 704 deletions.
2 changes: 1 addition & 1 deletion config.m1.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ module.exports = (env, args) => {

WITH_STORAGES: ["local", "usb"],
WITH_FILES: true,
WITH_SETTINGS: false,
WITH_SETTINGS: true,
WITH_CONTROLS: false,
WITH_REMOTE_UPLOAD: true,
WITH_START_PRINT_AFTER_UPLOAD: true,
Expand Down
3 changes: 2 additions & 1 deletion config.sl1.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,13 @@ module.exports = (env, args) => {

WITH_STORAGES: ["local", "usb"],
WITH_FILES: true,
WITH_SETTINGS: false,
WITH_SETTINGS: true,
WITH_CONTROLS: false,
WITH_REMOTE_UPLOAD: true,
WITH_START_PRINT_AFTER_UPLOAD: true,
WITH_LOGS: false,
WITH_FONT: false,
WITH_V1_API: true,
...env,
};
return webpackConfig(config, args);
Expand Down
3 changes: 3 additions & 0 deletions src/locales/source/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,10 @@
"ntf.camera-config-success": "Camera configuration has been updated",
"ntf.e-307": "Resin measuring failed!",
"ntf.error": "Error",
"ntf.calibration-error": "Calibration Error",
"ntf.n-calibrated": "Printer is not calibrated!",
"ntf.low-resin.title": "Resin low",
"ntf.low-resin.message": "Measured resin volume is too low. The print can continue, however, a refill might be required.",
"ntf.not-idle": "Printer is not idle!",
"ntf.settings-suc": "Settings was changed successfully.",
"ntf.start-print": "The printer is getting ready.",
Expand Down
7 changes: 4 additions & 3 deletions src/printer/common.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,10 @@ import { LinkState, translateState } from "../state";

const SEPARATOR = " - ";

export const getPrinterLabel = (context) => {
return buildTitle([context.printer?.location, context.printer?.name]);
};
export const getPrinterLabel = (context) => buildTitle([
context.printer?.location || context.printer?.hostname,
context.printer?.name
]);

export const buildTitle = (titleItems) => {
return [...titleItems]
Expand Down
1 change: 0 additions & 1 deletion src/printer/components/cameras.js
Original file line number Diff line number Diff line change
Expand Up @@ -411,7 +411,6 @@ const createCameraSettingsModal = (cameraId, resolve) => {
inputTriggerScheme.value = translateTriggerScheme(data.trigger_scheme);

setVisible(inputFocus.parentNode, hasFocus);
console.log(`DEBUG: has focus (${hasFocus})`, data)
if (hasFocus) {
inputFocus.value = Math.round(data.focus * 100);
}
Expand Down
70 changes: 10 additions & 60 deletions src/printer/components/dataFormat.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,19 +20,6 @@ const str_GB = translate("unit.gb");
const str_true = translate("prop.true");
const str_false = translate("prop.false");

/**
* Format the value data with format specificated.
* @param {string} format - one of ["int", "number", "layer", "temp", "fan", "resin", "cover", "date", "progress", "timeEst", "time", "expo", "boolean"]
* @param {any} value
*/
const formatData = (format, value) => {
if (process.env.PRINTER_TYPE === "sla") {
return slaFormatData(format, value);
} else {
return fdmFormatData(format, value);
}
};

/**
* It formats a number using fixed-point notation with one digit after the decimal point.
* ex: 123.456 => 123.4
Expand Down Expand Up @@ -193,75 +180,38 @@ function formatBoolean(value) {
}

/**
* Format the value data with format specificated for sla type.
* @param {string} format - one of ["int", "number", "layer", "temp", "fan", "resin", "cover", "date", "progress", "timeEst", "time", "expo", "boolean"]
* Format the value data with format specificated.
* @param {string} format - one of ["number", "temp", "fan", "pos", "date", "progress", "timeEst", "time"]
* @param {any} value
*/
const slaFormatData = (format, value) => {
const formatData = (format, value) => {
if (value === undefined || (value === null && format !== "progress")) {
return translate("prop.na");
}

switch (format) {
case "int":
return parseInt(value);
case "number":
return numberFormat(value);
case "layer":
return numberFormat(value, false) + " mm";
case "temp":
return numberFormat(value) + " °C";
case "fan":
return numberFormat(value) + ` ${str_rpm}`;
case "resin":
return numberFormat(value) + ` ${str_ml}`;
case "cover":
return value
? translate("prop.cover-closed")
: translate("prop.cover-opened");
case "date":
return dateFormat(value);
case "progress":
return numberFormat((value || 0) * 100, true, 0) + "%";
case "timeEst":
return formatEstimatedTime(value);
case "time":
return formatTime(value);
case "est-time":
return "~ " + formatTime(value);
case "expo":
return formatExposure(value);
case "totalLayer":
return totalLayers(value);
case "material":
return value || translate("prop.na");
case "size":
return formatSize(value);
case "boolean":
return formatBoolean(value);
default:
return value;
}
};

/**
* Format the value data with format specificated for fdm type.
* @param {string} format - one of ["number", "temp", "fan", "pos", "date", "progress", "timeEst", "time"]
* @param {any} value
*/
const fdmFormatData = (format, value) => {
if (value === undefined || (value === null && format !== "progress")) {
return translate("prop.na");
}

switch (format) {
case "number":
return numberFormat(value);
case "temp":
return numberFormat(value) + " °C";
case "temp_int":
return numberFormat(value, 0) + "°C";
case "fan":
return numberFormat(value) + ` ${str_rpm}`;
case "resin":
return numberFormat(value) + ` ${str_ml}`;
case "cover":
return value
? translate("prop.cover-closed")
: translate("prop.cover-opened");
case "print":
return numberFormat(value || 0, true, 0) + "%";
case "pos":
Expand Down
4 changes: 2 additions & 2 deletions src/printer/components/errors.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,12 @@ export function handleError(result, options) {
let message = result?.data?.message
|| options?.fallbackMessage?.message
|| "Action can not be performed";
let isWarning = false;
let isWarning = options?.isWarning ?? false;

if (result?.data) {
const data = result.data;
if (data.code) {
title += `- ${data.code}`;
title += ` - ${data.code}`;
if (`${data.code}`[3] == "7")
isWarning = true;
}
Expand Down
5 changes: 4 additions & 1 deletion src/printer/components/files.js
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ function getCurrentApiPath(fileName) {
return getApiPath(storage.path, path, fileName);
}

function getApiPath(origin, path, file) {
export function getApiPath(origin, path, file) {
const apiPath = ["/api/v1/files", origin, path, file].filter((e) => !!e)
.join("/");

Expand Down Expand Up @@ -202,6 +202,9 @@ const updateFiles = (opts = {}) => {
headers: { "If-None-Match": lastETag },
})
.then((result) => {
if (result.code === 304) {
return
}
if (url !== getCurrentApiPath()) {
// user navigated to other folder
return;
Expand Down
Loading

0 comments on commit ab020d6

Please sign in to comment.