@safeticsinc/dra 0.0.2 → 0.0.211

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.
@@ -0,0 +1,2 @@
1
+ "use strict";class e extends Error{constructor(t,r="DRA_ERROR",n){super(t),this.name="DRAError",this.code=r,this.context=n,this.timestamp=new Date,Object.setPrototypeOf(this,e.prototype)}toJSON(){return{name:this.name,code:this.code,message:this.message,context:this.context,timestamp:this.timestamp}}toString(){const e=this.context?`\n컨텍스트: ${JSON.stringify(this.context,null,2)}`:"";return`[${this.code}] ${this.message}${e}`}}class t extends e{constructor(e,r){super(e,"VALIDATION_ERROR",r),this.name="ValidationError",Object.setPrototypeOf(this,t.prototype)}}class r extends e{constructor(e,t,n,a){super(void 0!==n&&void 0!==a?`파라미터 '${e}'은(는) ${n}~${a} 범위여야 합니다. (현재값: ${t})`:void 0!==n?`파라미터 '${e}'은(는) ${n} 이상이어야 합니다. (현재값: ${t})`:`파라미터 '${e}'은(는) ${a} 이하여야 합니다. (현재값: ${t})`,"OUT_OF_RANGE_ERROR",{paramName:e,value:t,minValue:n,maxValue:a}),this.name="OutOfRangeError",this.paramName=e,this.value=t,this.minValue=n,this.maxValue=a,Object.setPrototypeOf(this,r.prototype)}}class n extends e{constructor(e){super(`필수 파라미터가 누락되었습니다: ${e.join(", ")}`,"MISSING_PARAMETER_ERROR",{requiredParams:e}),this.name="MissingParameterError",this.requiredParams=e,Object.setPrototypeOf(this,n.prototype)}}class a extends e{constructor(e,t,r){super(e,"CALCULATION_ERROR",{formulaCode:t,params:r}),this.name="CalculationError",this.formulaCode=t,this.params=r,Object.setPrototypeOf(this,a.prototype)}}class i extends e{constructor(e,t,r){super(e,"INVALID_STATE_ERROR",{currentState:t,requiredState:r}),this.name="InvalidStateError",this.currentState=t,this.requiredState=r||"",Object.setPrototypeOf(this,i.prototype)}}class u extends e{constructor(e,t,r){super(`파라미터 '${e}'의 타입이 잘못되었습니다. (예상: ${t}, 실제: ${r})`,"TYPE_ERROR",{paramName:e,expectedType:t,actualType:r}),this.name="TypeError",this.paramName=e,this.expectedType=t,this.actualType=r,Object.setPrototypeOf(this,u.prototype)}}class s extends e{constructor(e,t){const r=t-e;super(`안전거리가 기준을 충족하지 못했습니다. (계산값: ${e}mm, 필요값: ${t}mm, 부족: ${r}mm)`,"SAFETY_THRESHOLD_ERROR",{calculatedValue:e,minimumRequired:t,safetyMargin:r}),this.name="SafetyThresholdError",this.calculatedValue=e,this.minimumRequired=t,this.safetyMargin=r,Object.setPrototypeOf(this,s.prototype)}}class o{static validateRange(e,t,n,a){if(void 0!==n&&void 0!==a&&(t<n||t>a))throw new r(e,t,n,a);if(void 0!==n&&t<n)throw new r(e,t,n,void 0);if(void 0!==a&&t>a)throw new r(e,t,void 0,a)}static validateRequired(e,t){const r=t.filter(t=>!(t in e));if(r.length>0)throw new n(r)}static validateType(e,t,r){const n=typeof t;if(n!==r)throw new u(e,r,n)}static validateNonZero(e,r){if(0===r)throw new t(`파라미터 '${e}'은(는) 0이 될 수 없습니다.`,{paramName:e,value:r})}static validateArrayLength(e,r,n){if(r.length<n)throw new t(`파라미터 '${e}'은(는) 최소 ${n}개 이상의 요소를 가져야 합니다. (현재: ${r.length}개)`,{paramName:e,minLength:n,actualLength:r.length})}static validateSafetyThreshold(e,t){if(e<t)throw new s(e,t)}static catch(t,r="알 수 없는 에러가 발생했습니다"){return t instanceof e?(console.error(`[${t.code}] ${t.message}`),t):t instanceof Error?(console.error(`[ERROR] ${t.message}`),new e(t.message)):(console.error(`[ERROR] ${r}`),new e(r))}static log(e){console.error(`\n═══════════════════════════════════════════════════════════\n [${e.code}] ${e.name}\n═══════════════════════════════════════════════════════════\n 메시지: ${e.message}\n 시간: ${e.timestamp.toISOString()}\n${e.context?` 상세정보:\n${JSON.stringify(e.context,null,4)}`:""}\n═══════════════════════════════════════════════════════════\n `)}}class m{constructor(e){this.value=e}chain(e){return e(this.value)}log(e="Result"){return console.log(`[${e}]: ${this.value}`),this}}exports.ISO13855=void 0,function(e){function t(e,t,r){return o.validateType("K",e,"number"),o.validateType("T",t,"number"),o.validateType("C",r,"number"),e*t+r}function r(e,t){return o.validateType("t_1",e,"number"),o.validateType("t_2",t,"number"),e+t}function n(e,t){return o.validateType("T",e,"number"),o.validateType("d",t,"number"),2e3*e+8*(t-14)}function a(e,t){return o.validateType("T",e,"number"),o.validateType("d",t,"number"),1600*e+8*(t-14)}function i(e){return o.validateType("T",e,"number"),1600*e+850}function u(e){return o.validateType("T",e,"number"),1600*e+1200}function s(e,t){o.validateType("T",e,"number"),o.validateType("H",t,"number");return 1600*e+Math.max(1200-.4*t,850)}function c(e){return o.validateType("d",e,"number"),15*(e-50)}function l(e){return o.validateType("H",e,"number"),e/15+50}function p(e,t,r){return o.validateType("K",e,"number"),o.validateType("T",t,"number"),o.validateType("C_RO",r,"number"),e*t+r}function d(e,t){return o.validateType("K",e,"number"),o.validateType("K",t,"number"),2e3*e+t}function h(e,t){return o.validateType("T",e,"number"),o.validateType("C_RO",t,"number"),1600*e+t}function y(e){return o.validateArrayLength("pathLengths",e,0),e.reduce((e,t)=>e+t,0)}function T(e){return o.validateType("T",e,"number"),1600*e+1200}function v(e,t){return o.validateType("T",e,"number"),o.validateType("h",t,"number"),1600*e+(1200-.4*t)}function b(e){return o.validateType("T",e,"number"),1600*e+250}function f(e,t){return o.validateType("e",e,"number"),o.validateType("v",t,"number"),o.validateRange("v",t,Number.EPSILON),e/t}function A(e){o.validateArrayLength("measurements",e,10);const t=e.reduce((e,t)=>e+t)/e.length,r=e.reduce((e,r)=>e+Math.pow(r-t,2),0)/e.length,n=Math.sqrt(r),a=t+3*n,i=Math.max(...e);return Math.max(a,i)}function O(e,t,r){return o.validateType("l_1",e,"number"),o.validateType("l_2",t,"number"),o.validateType("l_3",r,"number"),e+t+r}function w(e,t,r){return o.validateType("S_1",e,"number"),o.validateType("S_2",t,"number"),o.validateType("S_3",r,"number"),e+t+r}function R(e){return o.validateType("T",e,"number"),1600*e}function x(e,t){return o.validateType("t_11",e,"number"),o.validateType("t_12",t,"number"),e+t}function S(e,t){return o.validateType("S_RT",e,"number"),o.validateType("S_RO",t,"number"),Math.max(e,t)}function _(e,t,r){return o.validateType("t_1",e,"number"),o.validateType("t_2",t,"number"),o.validateType("t_3",r,"number"),e+t-r}function E(e){return o.validateArrayLength("projectionLenths",e,0),e.reduce((e,t)=>e+t,0)}function $(e){return o.validateType("S",e,"number"),Math.max(e,100)}function g(e){return o.validateType("S",e,"number"),Math.max(e,500)}function C(e,t=30){return o.validateType("S",e,"number"),o.validateType("detectionCapacity",t,"number"),e>150&&t<=30}function P(e,t=14){return o.validateType("S",e,"number"),o.validateType("detectionCapacity",t,"number"),e>100&&t<=14}function I(e,t){return o.validateType("S_actual",e,"number"),o.validateType("S_required",t,"number"),e>=t}function B(e){return o.validateType("H_min",e,"number"),e<=300}function N(e){return o.validateType("H_max",e,"number"),e<=1e3}function M(e){return o.validateType("H_min",e,"number"),e<=750}function L(e,t){return o.validateType("angleA_s",e,"number"),e-t>30}function j(e){return o.validateType("S_2000",e,"number"),e>500?"1600mm/s":"2000mm/s"}e.A1=t,e.A2=r,e.A3=n,e.A4=a,e.A5=i,e.A6=u,e.A7=s,e.A8=c,e.A9=l,e.A10=p,e.A11=d,e.A12=h,e.A13=y,e.A14=T,e.A15=v,e.A16=b,e.A17=f,e.B1=A,e.B2=O,e.B3=w,e.B4=R,e.B5=x,e.B6=S,e.B7=_,e.B8=E,e.C1=$,e.C2=g,e.C3=C,e.C4=P,e.C5=I,e.C6=B,e.C7=N,e.C8=M,e.C9=L,e.C10=j;e.builder=new class{constructor(){this.storedParams={}}params(e){return this.storedParams=e,this}update(e){return this.storedParams={...this.storedParams,...e},this}A1(e,r,n){return new m(t(e,r,n))}A2(e,t){return new m(r(e,t))}A3(e,t){return new m(n(e,t))}A4(e,t){return new m(a(e,t))}A5(e){return new m(i(e))}A6(e){return new m(u(e))}A7(e,t){return new m(s(e,t))}A8(e){return new m(c(e))}A9(e){return new m(l(e))}A10(e,t,r){return new m(p(e,t,r))}A11(e,t){return new m(d(e,t))}A12(e,t){return new m(h(e,t))}A13(e){return new m(y(e))}A14(e){return new m(T(e))}A15(e,t){return new m(v(e,t))}A16(e){return new m(b(e))}A17(e,t){return new m(f(e,t))}B1(e){return new m(A(e))}B2(e,t,r){return new m(O(e,t,r))}B3(e,t,r){return new m(w(e,t,r))}B4(e){return new m(R(e))}B5(e,t){return new m(x(e,t))}B6(e,t){return new m(S(e,t))}B7(e,t,r){return new m(_(e,t,r))}B8(e){return new m(E(e))}C1(e){return new m($(e))}C2(e){return new m(g(e))}C3(e,t){return C(e,t)}C4(e,t){return P(e,t)}C5(e,t){return I(e,t)}C6(e){return B(e)}C7(e){return N(e)}C8(e){return M(e)}C9(e,t){return L(e,t)}C10(e){return j(e)}}}(exports.ISO13855||(exports.ISO13855={})),exports.ISO13857=void 0,function(e){function t(e,t){return o.validateType("S_h",e,"number"),Math.max(e,t)}e.B1=t;e.builder=new class{constructor(){this.storedParams={}}params(e){return this.storedParams=e,this}update(e){return this.storedParams={...this.storedParams,...e},this}B1(e,r){return new m(t(e,r))}}}(exports.ISO13857||(exports.ISO13857={}));const c={ISO13855:exports.ISO13855.builder,ISO13857:exports.ISO13857.builder,wrap:e=>new m(e)};exports.CalculationError=a,exports.DRA=c,exports.DRAError=e,exports.ErrorHandler=o,exports.InvalidStateError=i,exports.MissingParameterError=n,exports.OutOfRangeError=r,exports.SafetyThresholdError=s,exports.TypeError=u,exports.ValidationError=t;
2
+ //# sourceMappingURL=index.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs.js","sources":["../src/core/error.ts","../src/algorithm/formulas.ts"],"sourcesContent":[null,null],"names":["DRAError","Error","constructor","message","code","context","super","this","name","timestamp","Date","Object","setPrototypeOf","prototype","toJSON","toString","contextStr","JSON","stringify","ValidationError","OutOfRangeError","paramName","value","minValue","maxValue","undefined","MissingParameterError","requiredParams","join","CalculationError","formulaCode","params","InvalidStateError","currentState","requiredState","TypeError","expectedType","actualType","SafetyThresholdError","calculatedValue","minimumRequired","safetyMargin","ErrorHandler","validateRange","validateRequired","requiredKeys","missingKeys","filter","key","length","validateType","validateNonZero","validateArrayLength","array","minLength","actualLength","validateSafetyThreshold","error","fallbackMessage","console","log","toISOString","ChainableResult","chain","fn","label","ISO13855","A1","K","T","C","A2","t_1","t_2","A3","d","A4","A5","A6","A7","H","Math","max","A8","A9","A10","C_RO","A11","A12","A13","pathLengths","reduce","sum","A14","A15","h","A16","A17","e","v","Number","EPSILON","B1","measurements","mean","a","b","variance","x","pow","sigma","sqrt","calculated","maximum","B2","l_1","l_2","l_3","B3","S_1","S_2","S_3","B4","B5","t_11","t_12","B6","S_RT","S_RO","B7","t_3","B8","projectionLengths","C1","S","C2","C3","detectionCapacity","C4","C5","S_actual","S_required","C6","H_min","C7","H_max","C8","C9","angleA_s","angleA_h","C10","S_2000","builder","storedParams","update","ISO13857","S_h","S_r","DRA","wrap"],"mappings":"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"}
package/dist/index.esm.js CHANGED
@@ -1,3 +1,2 @@
1
- export * from './core/index';
2
- export * from './algorithm/index';
3
- //# sourceMappingURL=index.js.map
1
+ class e extends Error{constructor(t,r="DRA_ERROR",n){super(t),this.name="DRAError",this.code=r,this.context=n,this.timestamp=new Date,Object.setPrototypeOf(this,e.prototype)}toJSON(){return{name:this.name,code:this.code,message:this.message,context:this.context,timestamp:this.timestamp}}toString(){const e=this.context?`\n컨텍스트: ${JSON.stringify(this.context,null,2)}`:"";return`[${this.code}] ${this.message}${e}`}}class t extends e{constructor(e,r){super(e,"VALIDATION_ERROR",r),this.name="ValidationError",Object.setPrototypeOf(this,t.prototype)}}class r extends e{constructor(e,t,n,a){super(void 0!==n&&void 0!==a?`파라미터 '${e}'은(는) ${n}~${a} 범위여야 합니다. (현재값: ${t})`:void 0!==n?`파라미터 '${e}'은(는) ${n} 이상이어야 합니다. (현재값: ${t})`:`파라미터 '${e}'은(는) ${a} 이하여야 합니다. (현재값: ${t})`,"OUT_OF_RANGE_ERROR",{paramName:e,value:t,minValue:n,maxValue:a}),this.name="OutOfRangeError",this.paramName=e,this.value=t,this.minValue=n,this.maxValue=a,Object.setPrototypeOf(this,r.prototype)}}class n extends e{constructor(e){super(`필수 파라미터가 누락되었습니다: ${e.join(", ")}`,"MISSING_PARAMETER_ERROR",{requiredParams:e}),this.name="MissingParameterError",this.requiredParams=e,Object.setPrototypeOf(this,n.prototype)}}class a extends e{constructor(e,t,r){super(e,"CALCULATION_ERROR",{formulaCode:t,params:r}),this.name="CalculationError",this.formulaCode=t,this.params=r,Object.setPrototypeOf(this,a.prototype)}}class u extends e{constructor(e,t,r){super(e,"INVALID_STATE_ERROR",{currentState:t,requiredState:r}),this.name="InvalidStateError",this.currentState=t,this.requiredState=r||"",Object.setPrototypeOf(this,u.prototype)}}class i extends e{constructor(e,t,r){super(`파라미터 '${e}'의 타입이 잘못되었습니다. (예상: ${t}, 실제: ${r})`,"TYPE_ERROR",{paramName:e,expectedType:t,actualType:r}),this.name="TypeError",this.paramName=e,this.expectedType=t,this.actualType=r,Object.setPrototypeOf(this,i.prototype)}}class s extends e{constructor(e,t){const r=t-e;super(`안전거리가 기준을 충족하지 못했습니다. (계산값: ${e}mm, 필요값: ${t}mm, 부족: ${r}mm)`,"SAFETY_THRESHOLD_ERROR",{calculatedValue:e,minimumRequired:t,safetyMargin:r}),this.name="SafetyThresholdError",this.calculatedValue=e,this.minimumRequired=t,this.safetyMargin=r,Object.setPrototypeOf(this,s.prototype)}}class o{static validateRange(e,t,n,a){if(void 0!==n&&void 0!==a&&(t<n||t>a))throw new r(e,t,n,a);if(void 0!==n&&t<n)throw new r(e,t,n,void 0);if(void 0!==a&&t>a)throw new r(e,t,void 0,a)}static validateRequired(e,t){const r=t.filter(t=>!(t in e));if(r.length>0)throw new n(r)}static validateType(e,t,r){const n=typeof t;if(n!==r)throw new i(e,r,n)}static validateNonZero(e,r){if(0===r)throw new t(`파라미터 '${e}'은(는) 0이 될 수 없습니다.`,{paramName:e,value:r})}static validateArrayLength(e,r,n){if(r.length<n)throw new t(`파라미터 '${e}'은(는) 최소 ${n}개 이상의 요소를 가져야 합니다. (현재: ${r.length}개)`,{paramName:e,minLength:n,actualLength:r.length})}static validateSafetyThreshold(e,t){if(e<t)throw new s(e,t)}static catch(t,r="알 수 없는 에러가 발생했습니다"){return t instanceof e?(console.error(`[${t.code}] ${t.message}`),t):t instanceof Error?(console.error(`[ERROR] ${t.message}`),new e(t.message)):(console.error(`[ERROR] ${r}`),new e(r))}static log(e){console.error(`\n═══════════════════════════════════════════════════════════\n [${e.code}] ${e.name}\n═══════════════════════════════════════════════════════════\n 메시지: ${e.message}\n 시간: ${e.timestamp.toISOString()}\n${e.context?` 상세정보:\n${JSON.stringify(e.context,null,4)}`:""}\n═══════════════════════════════════════════════════════════\n `)}}class m{constructor(e){this.value=e}chain(e){return e(this.value)}log(e="Result"){return console.log(`[${e}]: ${this.value}`),this}}var c,l;!function(e){function t(e,t,r){return o.validateType("K",e,"number"),o.validateType("T",t,"number"),o.validateType("C",r,"number"),e*t+r}function r(e,t){return o.validateType("t_1",e,"number"),o.validateType("t_2",t,"number"),e+t}function n(e,t){return o.validateType("T",e,"number"),o.validateType("d",t,"number"),2e3*e+8*(t-14)}function a(e,t){return o.validateType("T",e,"number"),o.validateType("d",t,"number"),1600*e+8*(t-14)}function u(e){return o.validateType("T",e,"number"),1600*e+850}function i(e){return o.validateType("T",e,"number"),1600*e+1200}function s(e,t){o.validateType("T",e,"number"),o.validateType("H",t,"number");return 1600*e+Math.max(1200-.4*t,850)}function c(e){return o.validateType("d",e,"number"),15*(e-50)}function l(e){return o.validateType("H",e,"number"),e/15+50}function d(e,t,r){return o.validateType("K",e,"number"),o.validateType("T",t,"number"),o.validateType("C_RO",r,"number"),e*t+r}function p(e,t){return o.validateType("K",e,"number"),o.validateType("K",t,"number"),2e3*e+t}function h(e,t){return o.validateType("T",e,"number"),o.validateType("C_RO",t,"number"),1600*e+t}function y(e){return o.validateArrayLength("pathLengths",e,0),e.reduce((e,t)=>e+t,0)}function T(e){return o.validateType("T",e,"number"),1600*e+1200}function v(e,t){return o.validateType("T",e,"number"),o.validateType("h",t,"number"),1600*e+(1200-.4*t)}function b(e){return o.validateType("T",e,"number"),1600*e+250}function f(e,t){return o.validateType("e",e,"number"),o.validateType("v",t,"number"),o.validateRange("v",t,Number.EPSILON),e/t}function w(e){o.validateArrayLength("measurements",e,10);const t=e.reduce((e,t)=>e+t)/e.length,r=e.reduce((e,r)=>e+Math.pow(r-t,2),0)/e.length,n=Math.sqrt(r),a=t+3*n,u=Math.max(...e);return Math.max(a,u)}function A(e,t,r){return o.validateType("l_1",e,"number"),o.validateType("l_2",t,"number"),o.validateType("l_3",r,"number"),e+t+r}function R(e,t,r){return o.validateType("S_1",e,"number"),o.validateType("S_2",t,"number"),o.validateType("S_3",r,"number"),e+t+r}function O(e){return o.validateType("T",e,"number"),1600*e}function _(e,t){return o.validateType("t_11",e,"number"),o.validateType("t_12",t,"number"),e+t}function $(e,t){return o.validateType("S_RT",e,"number"),o.validateType("S_RO",t,"number"),Math.max(e,t)}function g(e,t,r){return o.validateType("t_1",e,"number"),o.validateType("t_2",t,"number"),o.validateType("t_3",r,"number"),e+t-r}function S(e){return o.validateArrayLength("projectionLenths",e,0),e.reduce((e,t)=>e+t,0)}function C(e){return o.validateType("S",e,"number"),Math.max(e,100)}function x(e){return o.validateType("S",e,"number"),Math.max(e,500)}function E(e,t=30){return o.validateType("S",e,"number"),o.validateType("detectionCapacity",t,"number"),e>150&&t<=30}function P(e,t=14){return o.validateType("S",e,"number"),o.validateType("detectionCapacity",t,"number"),e>100&&t<=14}function B(e,t){return o.validateType("S_actual",e,"number"),o.validateType("S_required",t,"number"),e>=t}function N(e){return o.validateType("H_min",e,"number"),e<=300}function L(e){return o.validateType("H_max",e,"number"),e<=1e3}function M(e){return o.validateType("H_min",e,"number"),e<=750}function I(e,t){return o.validateType("angleA_s",e,"number"),e-t>30}function j(e){return o.validateType("S_2000",e,"number"),e>500?"1600mm/s":"2000mm/s"}e.A1=t,e.A2=r,e.A3=n,e.A4=a,e.A5=u,e.A6=i,e.A7=s,e.A8=c,e.A9=l,e.A10=d,e.A11=p,e.A12=h,e.A13=y,e.A14=T,e.A15=v,e.A16=b,e.A17=f,e.B1=w,e.B2=A,e.B3=R,e.B4=O,e.B5=_,e.B6=$,e.B7=g,e.B8=S,e.C1=C,e.C2=x,e.C3=E,e.C4=P,e.C5=B,e.C6=N,e.C7=L,e.C8=M,e.C9=I,e.C10=j;e.builder=new class{constructor(){this.storedParams={}}params(e){return this.storedParams=e,this}update(e){return this.storedParams={...this.storedParams,...e},this}A1(e,r,n){return new m(t(e,r,n))}A2(e,t){return new m(r(e,t))}A3(e,t){return new m(n(e,t))}A4(e,t){return new m(a(e,t))}A5(e){return new m(u(e))}A6(e){return new m(i(e))}A7(e,t){return new m(s(e,t))}A8(e){return new m(c(e))}A9(e){return new m(l(e))}A10(e,t,r){return new m(d(e,t,r))}A11(e,t){return new m(p(e,t))}A12(e,t){return new m(h(e,t))}A13(e){return new m(y(e))}A14(e){return new m(T(e))}A15(e,t){return new m(v(e,t))}A16(e){return new m(b(e))}A17(e,t){return new m(f(e,t))}B1(e){return new m(w(e))}B2(e,t,r){return new m(A(e,t,r))}B3(e,t,r){return new m(R(e,t,r))}B4(e){return new m(O(e))}B5(e,t){return new m(_(e,t))}B6(e,t){return new m($(e,t))}B7(e,t,r){return new m(g(e,t,r))}B8(e){return new m(S(e))}C1(e){return new m(C(e))}C2(e){return new m(x(e))}C3(e,t){return E(e,t)}C4(e,t){return P(e,t)}C5(e,t){return B(e,t)}C6(e){return N(e)}C7(e){return L(e)}C8(e){return M(e)}C9(e,t){return I(e,t)}C10(e){return j(e)}}}(c||(c={})),function(e){function t(e,t){return o.validateType("S_h",e,"number"),Math.max(e,t)}e.B1=t;e.builder=new class{constructor(){this.storedParams={}}params(e){return this.storedParams=e,this}update(e){return this.storedParams={...this.storedParams,...e},this}B1(e,r){return new m(t(e,r))}}}(l||(l={}));const d={ISO13855:c.builder,ISO13857:l.builder,wrap:e=>new m(e)};export{a as CalculationError,d as DRA,e as DRAError,o as ErrorHandler,c as ISO13855,l as ISO13857,u as InvalidStateError,n as MissingParameterError,r as OutOfRangeError,s as SafetyThresholdError,i as TypeError,t as ValidationError};
2
+ //# sourceMappingURL=index.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sourceRoot":"","sources":["../src/schema/robot.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/core/error.ts","../src/algorithm/formulas.ts"],"sourcesContent":[null,null],"names":["DRAError","Error","constructor","message","code","context","super","this","name","timestamp","Date","Object","setPrototypeOf","prototype","toJSON","toString","contextStr","JSON","stringify","ValidationError","OutOfRangeError","paramName","value","minValue","maxValue","undefined","MissingParameterError","requiredParams","join","CalculationError","formulaCode","params","InvalidStateError","currentState","requiredState","TypeError","expectedType","actualType","SafetyThresholdError","calculatedValue","minimumRequired","safetyMargin","ErrorHandler","validateRange","validateRequired","requiredKeys","missingKeys","filter","key","length","validateType","validateNonZero","validateArrayLength","array","minLength","actualLength","validateSafetyThreshold","error","fallbackMessage","console","log","toISOString","ChainableResult","chain","fn","label","ISO13855","ISO13857","A1","K","T","C","A2","t_1","t_2","A3","d","A4","A5","A6","A7","H","Math","max","A8","A9","A10","C_RO","A11","A12","A13","pathLengths","reduce","sum","A14","A15","h","A16","A17","e","v","Number","EPSILON","B1","measurements","mean","a","b","variance","x","pow","sigma","sqrt","calculated","maximum","B2","l_1","l_2","l_3","B3","S_1","S_2","S_3","B4","B5","t_11","t_12","B6","S_RT","S_RO","B7","t_3","B8","projectionLengths","C1","S","C2","C3","detectionCapacity","C4","C5","S_actual","S_required","C6","H_min","C7","H_max","C8","C9","angleA_s","angleA_h","C10","S_2000","builder","storedParams","update","S_h","S_r","DRA","wrap"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).DraMath={})}(this,function(e){"use strict";class t extends Error{constructor(e,r="DRA_ERROR",n){super(e),this.name="DRAError",this.code=r,this.context=n,this.timestamp=new Date,Object.setPrototypeOf(this,t.prototype)}toJSON(){return{name:this.name,code:this.code,message:this.message,context:this.context,timestamp:this.timestamp}}toString(){const e=this.context?`\n컨텍스트: ${JSON.stringify(this.context,null,2)}`:"";return`[${this.code}] ${this.message}${e}`}}class r extends t{constructor(e,t){super(e,"VALIDATION_ERROR",t),this.name="ValidationError",Object.setPrototypeOf(this,r.prototype)}}class n extends t{constructor(e,t,r,a){super(void 0!==r&&void 0!==a?`파라미터 '${e}'은(는) ${r}~${a} 범위여야 합니다. (현재값: ${t})`:void 0!==r?`파라미터 '${e}'은(는) ${r} 이상이어야 합니다. (현재값: ${t})`:`파라미터 '${e}'은(는) ${a} 이하여야 합니다. (현재값: ${t})`,"OUT_OF_RANGE_ERROR",{paramName:e,value:t,minValue:r,maxValue:a}),this.name="OutOfRangeError",this.paramName=e,this.value=t,this.minValue=r,this.maxValue=a,Object.setPrototypeOf(this,n.prototype)}}class a extends t{constructor(e){super(`필수 파라미터가 누락되었습니다: ${e.join(", ")}`,"MISSING_PARAMETER_ERROR",{requiredParams:e}),this.name="MissingParameterError",this.requiredParams=e,Object.setPrototypeOf(this,a.prototype)}}class i extends t{constructor(e,t,r){super(e,"CALCULATION_ERROR",{formulaCode:t,params:r}),this.name="CalculationError",this.formulaCode=t,this.params=r,Object.setPrototypeOf(this,i.prototype)}}class u extends t{constructor(e,t,r){super(e,"INVALID_STATE_ERROR",{currentState:t,requiredState:r}),this.name="InvalidStateError",this.currentState=t,this.requiredState=r||"",Object.setPrototypeOf(this,u.prototype)}}class o extends t{constructor(e,t,r){super(`파라미터 '${e}'의 타입이 잘못되었습니다. (예상: ${t}, 실제: ${r})`,"TYPE_ERROR",{paramName:e,expectedType:t,actualType:r}),this.name="TypeError",this.paramName=e,this.expectedType=t,this.actualType=r,Object.setPrototypeOf(this,o.prototype)}}class s extends t{constructor(e,t){const r=t-e;super(`안전거리가 기준을 충족하지 못했습니다. (계산값: ${e}mm, 필요값: ${t}mm, 부족: ${r}mm)`,"SAFETY_THRESHOLD_ERROR",{calculatedValue:e,minimumRequired:t,safetyMargin:r}),this.name="SafetyThresholdError",this.calculatedValue=e,this.minimumRequired=t,this.safetyMargin=r,Object.setPrototypeOf(this,s.prototype)}}class m{static validateRange(e,t,r,a){if(void 0!==r&&void 0!==a&&(t<r||t>a))throw new n(e,t,r,a);if(void 0!==r&&t<r)throw new n(e,t,r,void 0);if(void 0!==a&&t>a)throw new n(e,t,void 0,a)}static validateRequired(e,t){const r=t.filter(t=>!(t in e));if(r.length>0)throw new a(r)}static validateType(e,t,r){const n=typeof t;if(n!==r)throw new o(e,r,n)}static validateNonZero(e,t){if(0===t)throw new r(`파라미터 '${e}'은(는) 0이 될 수 없습니다.`,{paramName:e,value:t})}static validateArrayLength(e,t,n){if(t.length<n)throw new r(`파라미터 '${e}'은(는) 최소 ${n}개 이상의 요소를 가져야 합니다. (현재: ${t.length}개)`,{paramName:e,minLength:n,actualLength:t.length})}static validateSafetyThreshold(e,t){if(e<t)throw new s(e,t)}static catch(e,r="알 수 없는 에러가 발생했습니다"){return e instanceof t?(console.error(`[${e.code}] ${e.message}`),e):e instanceof Error?(console.error(`[ERROR] ${e.message}`),new t(e.message)):(console.error(`[ERROR] ${r}`),new t(r))}static log(e){console.error(`\n═══════════════════════════════════════════════════════════\n [${e.code}] ${e.name}\n═══════════════════════════════════════════════════════════\n 메시지: ${e.message}\n 시간: ${e.timestamp.toISOString()}\n${e.context?` 상세정보:\n${JSON.stringify(e.context,null,4)}`:""}\n═══════════════════════════════════════════════════════════\n `)}}class l{constructor(e){this.value=e}chain(e){return e(this.value)}log(e="Result"){return console.log(`[${e}]: ${this.value}`),this}}e.ISO13855=void 0,function(e){function t(e,t,r){return m.validateType("K",e,"number"),m.validateType("T",t,"number"),m.validateType("C",r,"number"),e*t+r}function r(e,t){return m.validateType("t_1",e,"number"),m.validateType("t_2",t,"number"),e+t}function n(e,t){return m.validateType("T",e,"number"),m.validateType("d",t,"number"),2e3*e+8*(t-14)}function a(e,t){return m.validateType("T",e,"number"),m.validateType("d",t,"number"),1600*e+8*(t-14)}function i(e){return m.validateType("T",e,"number"),1600*e+850}function u(e){return m.validateType("T",e,"number"),1600*e+1200}function o(e,t){m.validateType("T",e,"number"),m.validateType("H",t,"number");return 1600*e+Math.max(1200-.4*t,850)}function s(e){return m.validateType("d",e,"number"),15*(e-50)}function c(e){return m.validateType("H",e,"number"),e/15+50}function d(e,t,r){return m.validateType("K",e,"number"),m.validateType("T",t,"number"),m.validateType("C_RO",r,"number"),e*t+r}function p(e,t){return m.validateType("K",e,"number"),m.validateType("K",t,"number"),2e3*e+t}function h(e,t){return m.validateType("T",e,"number"),m.validateType("C_RO",t,"number"),1600*e+t}function y(e){return m.validateArrayLength("pathLengths",e,0),e.reduce((e,t)=>e+t,0)}function T(e){return m.validateType("T",e,"number"),1600*e+1200}function v(e,t){return m.validateType("T",e,"number"),m.validateType("h",t,"number"),1600*e+(1200-.4*t)}function f(e){return m.validateType("T",e,"number"),1600*e+250}function b(e,t){return m.validateType("e",e,"number"),m.validateType("v",t,"number"),m.validateRange("v",t,Number.EPSILON),e/t}function A(e){m.validateArrayLength("measurements",e,10);const t=e.reduce((e,t)=>e+t)/e.length,r=e.reduce((e,r)=>e+Math.pow(r-t,2),0)/e.length,n=Math.sqrt(r),a=t+3*n,i=Math.max(...e);return Math.max(a,i)}function O(e,t,r){return m.validateType("l_1",e,"number"),m.validateType("l_2",t,"number"),m.validateType("l_3",r,"number"),e+t+r}function w(e,t,r){return m.validateType("S_1",e,"number"),m.validateType("S_2",t,"number"),m.validateType("S_3",r,"number"),e+t+r}function R(e){return m.validateType("T",e,"number"),1600*e}function S(e,t){return m.validateType("t_11",e,"number"),m.validateType("t_12",t,"number"),e+t}function g(e,t){return m.validateType("S_RT",e,"number"),m.validateType("S_RO",t,"number"),Math.max(e,t)}function _(e,t,r){return m.validateType("t_1",e,"number"),m.validateType("t_2",t,"number"),m.validateType("t_3",r,"number"),e+t-r}function E(e){return m.validateArrayLength("projectionLenths",e,0),e.reduce((e,t)=>e+t,0)}function $(e){return m.validateType("S",e,"number"),Math.max(e,100)}function C(e){return m.validateType("S",e,"number"),Math.max(e,500)}function x(e,t=30){return m.validateType("S",e,"number"),m.validateType("detectionCapacity",t,"number"),e>150&&t<=30}function P(e,t=14){return m.validateType("S",e,"number"),m.validateType("detectionCapacity",t,"number"),e>100&&t<=14}function I(e,t){return m.validateType("S_actual",e,"number"),m.validateType("S_required",t,"number"),e>=t}function B(e){return m.validateType("H_min",e,"number"),e<=300}function N(e){return m.validateType("H_max",e,"number"),e<=1e3}function M(e){return m.validateType("H_min",e,"number"),e<=750}function L(e,t){return m.validateType("angleA_s",e,"number"),e-t>30}function j(e){return m.validateType("S_2000",e,"number"),e>500?"1600mm/s":"2000mm/s"}e.A1=t,e.A2=r,e.A3=n,e.A4=a,e.A5=i,e.A6=u,e.A7=o,e.A8=s,e.A9=c,e.A10=d,e.A11=p,e.A12=h,e.A13=y,e.A14=T,e.A15=v,e.A16=f,e.A17=b,e.B1=A,e.B2=O,e.B3=w,e.B4=R,e.B5=S,e.B6=g,e.B7=_,e.B8=E,e.C1=$,e.C2=C,e.C3=x,e.C4=P,e.C5=I,e.C6=B,e.C7=N,e.C8=M,e.C9=L,e.C10=j;e.builder=new class{constructor(){this.storedParams={}}params(e){return this.storedParams=e,this}update(e){return this.storedParams={...this.storedParams,...e},this}A1(e,r,n){return new l(t(e,r,n))}A2(e,t){return new l(r(e,t))}A3(e,t){return new l(n(e,t))}A4(e,t){return new l(a(e,t))}A5(e){return new l(i(e))}A6(e){return new l(u(e))}A7(e,t){return new l(o(e,t))}A8(e){return new l(s(e))}A9(e){return new l(c(e))}A10(e,t,r){return new l(d(e,t,r))}A11(e,t){return new l(p(e,t))}A12(e,t){return new l(h(e,t))}A13(e){return new l(y(e))}A14(e){return new l(T(e))}A15(e,t){return new l(v(e,t))}A16(e){return new l(f(e))}A17(e,t){return new l(b(e,t))}B1(e){return new l(A(e))}B2(e,t,r){return new l(O(e,t,r))}B3(e,t,r){return new l(w(e,t,r))}B4(e){return new l(R(e))}B5(e,t){return new l(S(e,t))}B6(e,t){return new l(g(e,t))}B7(e,t,r){return new l(_(e,t,r))}B8(e){return new l(E(e))}C1(e){return new l($(e))}C2(e){return new l(C(e))}C3(e,t){return x(e,t)}C4(e,t){return P(e,t)}C5(e,t){return I(e,t)}C6(e){return B(e)}C7(e){return N(e)}C8(e){return M(e)}C9(e,t){return L(e,t)}C10(e){return j(e)}}}(e.ISO13855||(e.ISO13855={})),e.ISO13857=void 0,function(e){function t(e,t){return m.validateType("S_h",e,"number"),Math.max(e,t)}e.B1=t;e.builder=new class{constructor(){this.storedParams={}}params(e){return this.storedParams=e,this}update(e){return this.storedParams={...this.storedParams,...e},this}B1(e,r){return new l(t(e,r))}}}(e.ISO13857||(e.ISO13857={}));const c={ISO13855:e.ISO13855.builder,ISO13857:e.ISO13857.builder,wrap:e=>new l(e)};e.CalculationError=i,e.DRA=c,e.DRAError=t,e.ErrorHandler=m,e.InvalidStateError=u,e.MissingParameterError=a,e.OutOfRangeError=n,e.SafetyThresholdError=s,e.TypeError=o,e.ValidationError=r});
2
+ //# sourceMappingURL=index.umd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.umd.js","sources":["../src/core/error.ts","../src/algorithm/formulas.ts"],"sourcesContent":[null,null],"names":["DRAError","Error","constructor","message","code","context","super","this","name","timestamp","Date","Object","setPrototypeOf","prototype","toJSON","toString","contextStr","JSON","stringify","ValidationError","OutOfRangeError","paramName","value","minValue","maxValue","undefined","MissingParameterError","requiredParams","join","CalculationError","formulaCode","params","InvalidStateError","currentState","requiredState","TypeError","expectedType","actualType","SafetyThresholdError","calculatedValue","minimumRequired","safetyMargin","ErrorHandler","validateRange","validateRequired","requiredKeys","missingKeys","filter","key","length","validateType","validateNonZero","validateArrayLength","array","minLength","actualLength","validateSafetyThreshold","error","fallbackMessage","console","log","toISOString","ChainableResult","chain","fn","label","ISO13855","A1","K","T","C","A2","t_1","t_2","A3","d","A4","A5","A6","A7","H","Math","max","A8","A9","A10","C_RO","A11","A12","A13","pathLengths","reduce","sum","A14","A15","h","A16","A17","e","v","Number","EPSILON","B1","measurements","mean","a","b","variance","x","pow","sigma","sqrt","calculated","maximum","B2","l_1","l_2","l_3","B3","S_1","S_2","S_3","B4","B5","t_11","t_12","B6","S_RT","S_RO","B7","t_3","B8","projectionLengths","C1","S","C2","C3","detectionCapacity","C4","C5","S_actual","S_required","C6","H_min","C7","H_max","C8","C9","angleA_s","angleA_h","C10","S_2000","builder","storedParams","update","ISO13857","S_h","S_r","DRA","wrap"],"mappings":"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"}
package/package.json CHANGED
@@ -1,47 +1,46 @@
1
1
  {
2
2
  "name": "@safeticsinc/dra",
3
- "version": "0.0.2",
3
+ "version": "0.0.211",
4
4
  "description": "digital risk assessment system algorithm and formula",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
- "main": "./dist/index.cjs",
7
+ "main": "./dist/index.cjs.js",
8
8
  "module": "./dist/index.esm.js",
9
9
  "types": "./dist/index.d.ts",
10
- "exports": {
11
- ".": {
12
- "types": "./dist/index.d.ts",
13
- "import": "./dist/index.esm.js",
14
- "require": "./dist/index.cjs.js"
15
- }
16
- },
17
10
  "files": [
18
11
  "dist",
19
12
  "package.json",
20
13
  "README.md"
21
14
  ],
22
15
  "scripts": {
23
- "build": "npm run build:esm && npm run build:cjs && npm run build:cli",
24
- "build:esm": "tsc --project tsconfig.json --outDir dist && node -e \"require('fs').renameSync('dist/index.js', 'dist/index.esm.js')\"",
25
- "build:cjs": "tsc --project tsconfig.cjs.json --outDir dist && node -e \"require('fs').renameSync('dist/index.js', 'dist/index.cjs')\"",
26
- "build:cli": "tsc --project tsconfig.cli.json",
16
+ "build": "rollup -c",
27
17
  "type-check": "tsc --noEmit",
28
18
  "prepublishOnly": "npm run build",
29
- "cli": "tsx src/cli/index.ts"
19
+ "cli-dev": "ts-node src/cli.ts",
20
+ "cli": "dist/cli.cjs"
30
21
  },
31
22
  "repository": {
32
23
  "type": "git",
33
- "url": ""
24
+ "url": "https://github.com/mtkim-safetics/dra_math.git"
34
25
  },
35
26
  "engines": {
36
27
  "node": ">=18.0.0"
37
28
  },
38
29
  "devDependencies": {
30
+ "@babel/core": "^7.28.5",
31
+ "@rollup/plugin-babel": "^6.1.0",
32
+ "@rollup/plugin-commonjs": "^29.0.0",
33
+ "@rollup/plugin-node-resolve": "^16.0.3",
34
+ "@rollup/plugin-typescript": "^12.3.0",
39
35
  "@types/node": "^20.0.0",
40
36
  "@types/seedrandom": "^3",
41
37
  "@types/three": "^0.159.0",
38
+ "eslint": "^9.39.2",
42
39
  "readline": "^1.3.0",
40
+ "rollup": "^4.55.1",
41
+ "rollup-plugin-terser": "^7.0.2",
43
42
  "ts-node": "^10.9.2",
44
- "tsx": "^4.21.0",
43
+ "tslib": "^2.8.1",
45
44
  "typedoc": "^0.28.15",
46
45
  "typescript": "^5.6.3"
47
46
  },
@@ -1,385 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DRA = exports.ISO13857 = exports.ISO13855 = void 0;
4
- const error_1 = require("../core/error");
5
- class ChainableResult {
6
- constructor(value) {
7
- this.value = value;
8
- }
9
- chain(fn) {
10
- return fn(this.value);
11
- }
12
- log(label = 'Result') {
13
- console.log(`[${label}]: ${this.value}`);
14
- return this;
15
- }
16
- }
17
- // ==================== ISO 13855 - 광전자식 방호장치 ====================
18
- var ISO13855;
19
- (function (ISO13855) {
20
- function A1(K, T, C) {
21
- error_1.ErrorHandler.validateType('K', K, 'number');
22
- error_1.ErrorHandler.validateType('T', T, 'number');
23
- error_1.ErrorHandler.validateType('C', C, 'number');
24
- return K * T + C;
25
- }
26
- ISO13855.A1 = A1;
27
- function A2(t_1, t_2) {
28
- error_1.ErrorHandler.validateType('t_1', t_1, 'number');
29
- error_1.ErrorHandler.validateType('t_2', t_2, 'number');
30
- return t_1 + t_2;
31
- }
32
- ISO13855.A2 = A2;
33
- function A3(T, d) {
34
- error_1.ErrorHandler.validateType('T', T, 'number');
35
- error_1.ErrorHandler.validateType('d', d, 'number');
36
- return 2000 * T + 8 * (d - 14);
37
- }
38
- ISO13855.A3 = A3;
39
- function A4(T, d) {
40
- error_1.ErrorHandler.validateType('T', T, 'number');
41
- error_1.ErrorHandler.validateType('d', d, 'number');
42
- return 1600 * T + 8 * (d - 14);
43
- }
44
- ISO13855.A4 = A4;
45
- function A5(T) {
46
- error_1.ErrorHandler.validateType('T', T, 'number');
47
- return 1600 * T + 850;
48
- }
49
- ISO13855.A5 = A5;
50
- function A6(T) {
51
- error_1.ErrorHandler.validateType('T', T, 'number');
52
- return 1600 * T + 1200;
53
- }
54
- ISO13855.A6 = A6;
55
- function A7(T, H) {
56
- error_1.ErrorHandler.validateType('T', T, 'number');
57
- error_1.ErrorHandler.validateType('H', H, 'number');
58
- const invasionDistance = Math.max(1200 - 0.4 * H, 850);
59
- return 1600 * T + invasionDistance;
60
- }
61
- ISO13855.A7 = A7;
62
- function A8(d) {
63
- error_1.ErrorHandler.validateType('d', d, 'number');
64
- return 15 * (d - 50);
65
- }
66
- ISO13855.A8 = A8;
67
- function A9(H) {
68
- error_1.ErrorHandler.validateType('H', H, 'number');
69
- return H / 15 + 50;
70
- }
71
- ISO13855.A9 = A9;
72
- function A10(K, T, C_RO) {
73
- error_1.ErrorHandler.validateType('K', K, 'number');
74
- error_1.ErrorHandler.validateType('T', T, 'number');
75
- error_1.ErrorHandler.validateType('C_RO', C_RO, 'number');
76
- return K * T + C_RO;
77
- }
78
- ISO13855.A10 = A10;
79
- function A11(T, C_RO) {
80
- error_1.ErrorHandler.validateType('K', T, 'number');
81
- error_1.ErrorHandler.validateType('K', C_RO, 'number');
82
- return 2000 * T + C_RO;
83
- }
84
- ISO13855.A11 = A11;
85
- function A12(T, C_RO) {
86
- error_1.ErrorHandler.validateType('T', T, 'number');
87
- error_1.ErrorHandler.validateType('C_RO', C_RO, 'number');
88
- return 1600 * T + C_RO;
89
- }
90
- ISO13855.A12 = A12;
91
- function A13(pathLengths) {
92
- error_1.ErrorHandler.validateArrayLength('pathLengths', pathLengths, 0);
93
- return pathLengths.reduce((sum, length) => sum + length, 0);
94
- }
95
- ISO13855.A13 = A13;
96
- function A14(T) {
97
- error_1.ErrorHandler.validateType('T', T, 'number');
98
- return 1600 * T + 1200;
99
- }
100
- ISO13855.A14 = A14;
101
- function A15(T, h) {
102
- error_1.ErrorHandler.validateType('T', T, 'number');
103
- error_1.ErrorHandler.validateType('h', h, 'number');
104
- return 1600 * T + (1200 - 0.4 * h);
105
- }
106
- ISO13855.A15 = A15;
107
- function A16(T) {
108
- error_1.ErrorHandler.validateType('T', T, 'number');
109
- return 1600 * T + 250;
110
- }
111
- ISO13855.A16 = A16;
112
- function A17(e, v) {
113
- error_1.ErrorHandler.validateType('e', e, 'number');
114
- error_1.ErrorHandler.validateType('v', v, 'number');
115
- error_1.ErrorHandler.validateRange('v', v, Number.EPSILON);
116
- return e / v;
117
- }
118
- ISO13855.A17 = A17;
119
- function B1(measurements) {
120
- error_1.ErrorHandler.validateArrayLength('measurements', measurements, 10);
121
- const mean = measurements.reduce((a, b) => a + b) / measurements.length;
122
- const variance = measurements.reduce((sum, x) => sum + Math.pow(x - mean, 2), 0) /
123
- measurements.length;
124
- const sigma = Math.sqrt(variance);
125
- const calculated = mean + 3 * sigma;
126
- const maximum = Math.max(...measurements);
127
- return Math.max(calculated, maximum);
128
- }
129
- ISO13855.B1 = B1;
130
- function B2(l_1, l_2, l_3) {
131
- error_1.ErrorHandler.validateType('l_1', l_1, 'number');
132
- error_1.ErrorHandler.validateType('l_2', l_2, 'number');
133
- error_1.ErrorHandler.validateType('l_3', l_3, 'number');
134
- return l_1 + l_2 + l_3;
135
- }
136
- ISO13855.B2 = B2;
137
- function B3(S_1, S_2, S_3) {
138
- error_1.ErrorHandler.validateType('S_1', S_1, 'number');
139
- error_1.ErrorHandler.validateType('S_2', S_2, 'number');
140
- error_1.ErrorHandler.validateType('S_3', S_3, 'number');
141
- return S_1 + S_2 + S_3;
142
- }
143
- ISO13855.B3 = B3;
144
- function B4(T) {
145
- error_1.ErrorHandler.validateType('T', T, 'number');
146
- return 1600 * T;
147
- }
148
- ISO13855.B4 = B4;
149
- function B5(t_11, t_12) {
150
- error_1.ErrorHandler.validateType('t_11', t_11, 'number');
151
- error_1.ErrorHandler.validateType('t_12', t_12, 'number');
152
- return t_11 + t_12;
153
- }
154
- ISO13855.B5 = B5;
155
- function B6(S_RT, S_RO) {
156
- error_1.ErrorHandler.validateType('S_RT', S_RT, 'number');
157
- error_1.ErrorHandler.validateType('S_RO', S_RO, 'number');
158
- return Math.max(S_RT, S_RO);
159
- }
160
- ISO13855.B6 = B6;
161
- function B7(t_1, t_2, t_3) {
162
- error_1.ErrorHandler.validateType('t_1', t_1, 'number');
163
- error_1.ErrorHandler.validateType('t_2', t_2, 'number');
164
- error_1.ErrorHandler.validateType('t_3', t_3, 'number');
165
- return t_1 + t_2 - t_3;
166
- }
167
- ISO13855.B7 = B7;
168
- function B8(projectionLengths) {
169
- error_1.ErrorHandler.validateArrayLength('projectionLenths', projectionLengths, 0);
170
- return projectionLengths.reduce((sum, length) => sum + length, 0);
171
- }
172
- ISO13855.B8 = B8;
173
- /**
174
- * === C 공식: 표준에서 태그되지 않은 조건 수식 ===
175
- */
176
- function C1(S) {
177
- error_1.ErrorHandler.validateType('S', S, 'number');
178
- return Math.max(S, 100);
179
- }
180
- ISO13855.C1 = C1;
181
- function C2(S) {
182
- error_1.ErrorHandler.validateType('S', S, 'number');
183
- return Math.max(S, 500);
184
- }
185
- ISO13855.C2 = C2;
186
- function C3(S, detectionCapacity = 30) {
187
- error_1.ErrorHandler.validateType('S', S, 'number');
188
- error_1.ErrorHandler.validateType('detectionCapacity', detectionCapacity, 'number');
189
- return S > 150 && detectionCapacity <= 30;
190
- }
191
- ISO13855.C3 = C3;
192
- function C4(S, detectionCapacity = 14) {
193
- error_1.ErrorHandler.validateType('S', S, 'number');
194
- error_1.ErrorHandler.validateType('detectionCapacity', detectionCapacity, 'number');
195
- return S > 100 && detectionCapacity <= 14;
196
- }
197
- ISO13855.C4 = C4;
198
- function C5(S_actual, S_required) {
199
- error_1.ErrorHandler.validateType('S_actual', S_actual, 'number');
200
- error_1.ErrorHandler.validateType('S_required', S_required, 'number');
201
- return S_actual >= S_required;
202
- }
203
- ISO13855.C5 = C5;
204
- function C6(H_min) {
205
- error_1.ErrorHandler.validateType('H_min', H_min, 'number');
206
- return H_min <= 300;
207
- }
208
- ISO13855.C6 = C6;
209
- function C7(H_max) {
210
- error_1.ErrorHandler.validateType('H_max', H_max, 'number');
211
- return H_max <= 1000;
212
- }
213
- ISO13855.C7 = C7;
214
- function C8(H_min) {
215
- error_1.ErrorHandler.validateType('H_min', H_min, 'number');
216
- return H_min <= 750;
217
- }
218
- ISO13855.C8 = C8;
219
- function C9(angleA_s, angleA_h) {
220
- error_1.ErrorHandler.validateType('angleA_s', angleA_s, 'number');
221
- return angleA_s - angleA_h > 30;
222
- }
223
- ISO13855.C9 = C9;
224
- function C10(S_2000) {
225
- error_1.ErrorHandler.validateType('S_2000', S_2000, 'number');
226
- return S_2000 > 500 ? '1600mm/s' : '2000mm/s';
227
- }
228
- ISO13855.C10 = C10;
229
- class CalculationChainImpl {
230
- constructor() {
231
- this.storedParams = {};
232
- }
233
- params(params) {
234
- this.storedParams = params;
235
- return this;
236
- }
237
- update(params) {
238
- this.storedParams = { ...this.storedParams, ...params };
239
- return this;
240
- }
241
- // A 계열
242
- A1(K, T, C) {
243
- return new ChainableResult(A1(K, T, C));
244
- }
245
- A2(t_1, t_2) {
246
- return new ChainableResult(A2(t_1, t_2));
247
- }
248
- A3(T, d) {
249
- return new ChainableResult(A3(T, d));
250
- }
251
- A4(T, d) {
252
- return new ChainableResult(A4(T, d));
253
- }
254
- A5(T) {
255
- return new ChainableResult(A5(T));
256
- }
257
- A6(T) {
258
- return new ChainableResult(A6(T));
259
- }
260
- A7(T, H) {
261
- return new ChainableResult(A7(T, H));
262
- }
263
- A8(d) {
264
- return new ChainableResult(A8(d));
265
- }
266
- A9(H) {
267
- return new ChainableResult(A9(H));
268
- }
269
- A10(K, T, C_RO) {
270
- return new ChainableResult(A10(K, T, C_RO));
271
- }
272
- A11(T, C_RO) {
273
- return new ChainableResult(A11(T, C_RO));
274
- }
275
- A12(T, C_RO) {
276
- return new ChainableResult(A12(T, C_RO));
277
- }
278
- A13(pathLengths) {
279
- return new ChainableResult(A13(pathLengths));
280
- }
281
- A14(T) {
282
- return new ChainableResult(A14(T));
283
- }
284
- A15(T, h) {
285
- return new ChainableResult(A15(T, h));
286
- }
287
- A16(T) {
288
- return new ChainableResult(A16(T));
289
- }
290
- A17(e, v) {
291
- return new ChainableResult(A17(e, v));
292
- }
293
- // B 계열
294
- B1(measurements) {
295
- return new ChainableResult(B1(measurements));
296
- }
297
- B2(l_1, l_2, l_3) {
298
- return new ChainableResult(B2(l_1, l_2, l_3));
299
- }
300
- B3(S_1, S_2, S_3) {
301
- return new ChainableResult(B3(S_1, S_2, S_3));
302
- }
303
- B4(T) {
304
- return new ChainableResult(B4(T));
305
- }
306
- B5(t_11, t_12) {
307
- return new ChainableResult(B5(t_11, t_12));
308
- }
309
- B6(S_RT, S_RO) {
310
- return new ChainableResult(B6(S_RT, S_RO));
311
- }
312
- B7(t_1, t_2, t_3) {
313
- return new ChainableResult(B7(t_1, t_2, t_3));
314
- }
315
- B8(projectionLengths) {
316
- return new ChainableResult(B8(projectionLengths));
317
- }
318
- // C 조건식
319
- C1(S) {
320
- return new ChainableResult(C1(S));
321
- }
322
- C2(S) {
323
- return new ChainableResult(C2(S));
324
- }
325
- C3(S, detectionCapacity) {
326
- return C3(S, detectionCapacity);
327
- }
328
- C4(S, detectionCapacity) {
329
- return C4(S, detectionCapacity);
330
- }
331
- C5(S_actual, S_required) {
332
- return C5(S_actual, S_required);
333
- }
334
- C6(H_min) {
335
- return C6(H_min);
336
- }
337
- C7(H_max) {
338
- return C7(H_max);
339
- }
340
- C8(H_min) {
341
- return C8(H_min);
342
- }
343
- C9(angleA_s, angleA_h) {
344
- return C9(angleA_s, angleA_h);
345
- }
346
- C10(S_2000) {
347
- return C10(S_2000);
348
- }
349
- }
350
- ISO13855.builder = new CalculationChainImpl();
351
- })(ISO13855 || (exports.ISO13855 = ISO13855 = {}));
352
- // ==================== ISO 13857 - 보호 구조물 ====================
353
- var ISO13857;
354
- (function (ISO13857) {
355
- function B1(S_h, S_r) {
356
- error_1.ErrorHandler.validateType('S_h', S_h, 'number');
357
- return Math.max(S_h, S_r);
358
- }
359
- ISO13857.B1 = B1;
360
- class CalculationChainImpl {
361
- constructor() {
362
- this.storedParams = {};
363
- }
364
- params(params) {
365
- this.storedParams = params;
366
- return this;
367
- }
368
- update(params) {
369
- this.storedParams = { ...this.storedParams, ...params };
370
- return this;
371
- }
372
- B1(S_h, S_r) {
373
- return new ChainableResult(B1(S_h, S_r));
374
- }
375
- }
376
- ISO13857.builder = new CalculationChainImpl();
377
- })(ISO13857 || (exports.ISO13857 = ISO13857 = {}));
378
- exports.DRA = {
379
- ISO13855: ISO13855.builder,
380
- ISO13857: ISO13857.builder,
381
- wrap(value) {
382
- return new ChainableResult(value);
383
- },
384
- };
385
- //# sourceMappingURL=formulas.js.map