mechanical-tolerance-calculator 1.0.9 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +28 -13
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -185,7 +185,8 @@ function calculateUncomputedBounds(nominal, spec) {
|
|
|
185
185
|
}
|
|
186
186
|
|
|
187
187
|
function checkMeetsSpecification(measurement, bounds) {
|
|
188
|
-
const
|
|
188
|
+
const validatedMeasurement = validateMeasurement(measurement);
|
|
189
|
+
const measure = parseStringFloat(validatedMeasurement);
|
|
189
190
|
const upper = parseStringFloat(bounds.upperBound);
|
|
190
191
|
const lower = parseStringFloat(bounds.lowerBound);
|
|
191
192
|
|
|
@@ -202,8 +203,12 @@ function processMeasurement(materialType, measurement, tolerances) {
|
|
|
202
203
|
};
|
|
203
204
|
}
|
|
204
205
|
|
|
206
|
+
const validatedMeasurement = validateMeasurement(measurement);
|
|
205
207
|
// Calculate nominal diameter
|
|
206
|
-
const nominal = parseNominalFromMeasurement(
|
|
208
|
+
const nominal = parseNominalFromMeasurement(
|
|
209
|
+
validatedMeasurement,
|
|
210
|
+
materialType
|
|
211
|
+
);
|
|
207
212
|
|
|
208
213
|
// Find matching specification
|
|
209
214
|
const matchedSpec = findMatchingSpec(
|
|
@@ -260,9 +265,10 @@ function processMeasurement(materialType, measurement, tolerances) {
|
|
|
260
265
|
}
|
|
261
266
|
|
|
262
267
|
function processOneMeasurement(materialType, measurement, tolerances) {
|
|
268
|
+
const validatedMeasurement = validateMeasurement(measurement);
|
|
263
269
|
const processedMeasurement = processMeasurement(
|
|
264
270
|
materialType,
|
|
265
|
-
|
|
271
|
+
validatedMeasurement,
|
|
266
272
|
tolerances
|
|
267
273
|
);
|
|
268
274
|
return {
|
|
@@ -278,7 +284,8 @@ function checkOneMeasurementFor(materialType, measurement) {
|
|
|
278
284
|
return camcoStandardTolerances;
|
|
279
285
|
}
|
|
280
286
|
|
|
281
|
-
|
|
287
|
+
const validatedMeasurement = validateMeasurement(measurement);
|
|
288
|
+
if (typeof measurement !== "number" || isNaN(validatedMeasurement)) {
|
|
282
289
|
return {
|
|
283
290
|
error: true,
|
|
284
291
|
message: "Invalid measurement value",
|
|
@@ -287,7 +294,7 @@ function checkOneMeasurementFor(materialType, measurement) {
|
|
|
287
294
|
|
|
288
295
|
return processOneMeasurement(
|
|
289
296
|
camcoStandardTolerances.type,
|
|
290
|
-
|
|
297
|
+
validatedMeasurement,
|
|
291
298
|
camcoStandardTolerances
|
|
292
299
|
);
|
|
293
300
|
}
|
|
@@ -346,9 +353,10 @@ function parseStringFloat(value) {
|
|
|
346
353
|
return isNaN(parsed) ? 0 : parsed;
|
|
347
354
|
}
|
|
348
355
|
function processIndividualMeasurement(materialType, measurement, tolerances) {
|
|
356
|
+
const validatedMeasurement = validateMeasurement(measurement);
|
|
349
357
|
const processedMeasurement = processMeasurement(
|
|
350
358
|
materialType,
|
|
351
|
-
|
|
359
|
+
validatedMeasurement,
|
|
352
360
|
tolerances
|
|
353
361
|
);
|
|
354
362
|
return processedMeasurement;
|
|
@@ -444,27 +452,32 @@ function checkMultipleMeasurementsFor(materialType, measurements) {
|
|
|
444
452
|
}
|
|
445
453
|
|
|
446
454
|
function generateReasonForSpecs(spec, measurement, base1, base2) {
|
|
455
|
+
const validatedMeasurement = validateMeasurement(measurement);
|
|
447
456
|
if (spec === true) {
|
|
448
457
|
return `${parseToFixedThreeString(
|
|
449
|
-
|
|
458
|
+
validatedMeasurement
|
|
450
459
|
)} falls between ${base1} and ${base2}`;
|
|
451
460
|
}
|
|
452
461
|
return `${parseToFixedThreeString(
|
|
453
|
-
|
|
462
|
+
validatedMeasurement
|
|
454
463
|
)} doesn't fall between ${base1} and ${base2}`;
|
|
455
464
|
}
|
|
456
465
|
|
|
457
466
|
function generateReasonForTolerances(spec, measurement1, measurement2, base) {
|
|
467
|
+
const validatedMeasurement1 = validateMeasurement(measurement1);
|
|
468
|
+
const validatedMeasurement2 = validateMeasurement(measurement2);
|
|
458
469
|
if (spec === true) {
|
|
459
470
|
return `The difference between ${parseToFixedThreeString(
|
|
460
|
-
|
|
471
|
+
validatedMeasurement1
|
|
461
472
|
)} and ${parseToFixedThreeString(
|
|
462
|
-
|
|
473
|
+
validatedMeasurement2
|
|
463
474
|
)} is less than or equal to ${base}.`;
|
|
464
475
|
}
|
|
465
476
|
return `The difference between ${parseToFixedThreeString(
|
|
466
|
-
|
|
467
|
-
)} and ${parseToFixedThreeString(
|
|
477
|
+
validatedMeasurement1
|
|
478
|
+
)} and ${parseToFixedThreeString(
|
|
479
|
+
validatedMeasurement2
|
|
480
|
+
)} is greater than ${base}.`;
|
|
468
481
|
}
|
|
469
482
|
|
|
470
483
|
function validateMeasurements(measurements) {
|
|
@@ -480,7 +493,9 @@ function validateMeasurements(measurements) {
|
|
|
480
493
|
};
|
|
481
494
|
}
|
|
482
495
|
|
|
483
|
-
measurements.forEach((a) =>
|
|
496
|
+
measurements.forEach((a) => {
|
|
497
|
+
return validateMeasurement(a);
|
|
498
|
+
});
|
|
484
499
|
return null;
|
|
485
500
|
}
|
|
486
501
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mechanical-tolerance-calculator",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"description": "Calculates international standard specification and tolerances for bores, round bars and metals of mechanical units. For examples; H7, H8, H9, h8, h9 specifications and IT5/IT6 tolerances.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|