@operato/twin-kernel 0.8.2 → 0.8.3
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/dist-cjs/index.cjs +15 -15
- package/package.json +2 -2
package/dist-cjs/index.cjs
CHANGED
|
@@ -63,7 +63,7 @@ __export(index_exports, {
|
|
|
63
63
|
});
|
|
64
64
|
module.exports = __toCommonJS(index_exports);
|
|
65
65
|
|
|
66
|
-
//
|
|
66
|
+
// node_modules/@operato/ops-contract/dist/capability.js
|
|
67
67
|
var CAPABILITIES = {
|
|
68
68
|
operable: {
|
|
69
69
|
key: "operable",
|
|
@@ -198,7 +198,7 @@ function stateFieldsOf(caps) {
|
|
|
198
198
|
return [...out];
|
|
199
199
|
}
|
|
200
200
|
|
|
201
|
-
//
|
|
201
|
+
// node_modules/@operato/ops-contract/dist/contract.js
|
|
202
202
|
var ORDER_TERMINAL_STATUS = ["completed", "cancelled"];
|
|
203
203
|
function isOrderTerminal(o) {
|
|
204
204
|
const status = String(o?.status ?? "").trim().toLowerCase();
|
|
@@ -779,7 +779,7 @@ function gs1Namespaces(prefix) {
|
|
|
779
779
|
return [`urn:epc:idpat:sgtin:${prefix}.`, `urn:epc:class:lgtin:${prefix}.`, `urn:epc:id:sgtin:${prefix}.`];
|
|
780
780
|
}
|
|
781
781
|
|
|
782
|
-
//
|
|
782
|
+
// node_modules/@operato/ops-contract/dist/capacity.js
|
|
783
783
|
function isoDurationHours(iso2) {
|
|
784
784
|
if (!iso2)
|
|
785
785
|
return 0;
|
|
@@ -887,7 +887,7 @@ function analyzeCapacity(input) {
|
|
|
887
887
|
};
|
|
888
888
|
}
|
|
889
889
|
|
|
890
|
-
//
|
|
890
|
+
// node_modules/@operato/ops-contract/dist/wms-profile.js
|
|
891
891
|
var BIZSTEP = {
|
|
892
892
|
receiving: "urn:epcglobal:cbv:bizstep:receiving",
|
|
893
893
|
storing: "urn:epcglobal:cbv:bizstep:storing",
|
|
@@ -917,7 +917,7 @@ var WMS_TYPES = [
|
|
|
917
917
|
{ key: "packer", role: "equipment", label: "twin.type.packer", standardClass: { epcis: "object", isa95: "Equipment" }, identity: { scheme: "gs1:GIAI" }, capabilities: ["processable", "operable"] }
|
|
918
918
|
];
|
|
919
919
|
|
|
920
|
-
//
|
|
920
|
+
// node_modules/@operato/ops-contract/dist/yms-profile.js
|
|
921
921
|
var YARD_BIZSTEP = {
|
|
922
922
|
arriving: "urn:epcglobal:cbv:bizstep:arriving",
|
|
923
923
|
// 게이트-인
|
|
@@ -943,7 +943,7 @@ var YMS_TYPES = [
|
|
|
943
943
|
{ key: "hostler", role: "equipment", label: "twin.type.hostler", standardClass: { epcis: "object", iso55000: "Asset" }, identity: { scheme: "gs1:GIAI" }, capabilities: ["mobile", "operable"] }
|
|
944
944
|
];
|
|
945
945
|
|
|
946
|
-
//
|
|
946
|
+
// node_modules/@operato/ops-contract/dist/mes-profile.js
|
|
947
947
|
var MES_BIZSTEP = {
|
|
948
948
|
receiving: "urn:epcglobal:cbv:bizstep:receiving",
|
|
949
949
|
// 원자재 수령
|
|
@@ -981,7 +981,7 @@ var MES_TYPES = [
|
|
|
981
981
|
{ key: "assembler", role: "equipment", label: "twin.type.assembler", standardClass: { isa95: "Equipment", iso55000: "Asset" }, identity: { scheme: "gs1:GIAI" }, capabilities: ["processable", "operable"] }
|
|
982
982
|
];
|
|
983
983
|
|
|
984
|
-
//
|
|
984
|
+
// node_modules/@operato/ops-contract/dist/ems-profile.js
|
|
985
985
|
var EMS_LOCATION_TYPES = ["incoming", "feeder", "submeter-zone"];
|
|
986
986
|
var METER_DIRECTION = ["import", "export", "bidirectional"];
|
|
987
987
|
var EMS_PROPERTY = {
|
|
@@ -1302,7 +1302,7 @@ function isElectricalLocationType(type) {
|
|
|
1302
1302
|
return EMS_LOCATION_TYPES.includes(type);
|
|
1303
1303
|
}
|
|
1304
1304
|
|
|
1305
|
-
//
|
|
1305
|
+
// node_modules/@operato/ops-contract/dist/domain-catalog.js
|
|
1306
1306
|
var locationKeys = (types) => types.filter((t) => t.role === "location").map((t) => t.key);
|
|
1307
1307
|
var DOMAIN_CATALOG = {
|
|
1308
1308
|
// label 은 언어 중립 i18n 키(twin.system.<code>) — 사람 언어는 표현계층이 렌더(L2).
|
|
@@ -1312,7 +1312,7 @@ var DOMAIN_CATALOG = {
|
|
|
1312
1312
|
ems: { system: "ems", label: "twin.system.ems", types: EMS_TYPES, locationTypes: locationKeys(EMS_TYPES) }
|
|
1313
1313
|
};
|
|
1314
1314
|
|
|
1315
|
-
//
|
|
1315
|
+
// node_modules/@operato/ops-contract/dist/domain-definition.js
|
|
1316
1316
|
var OP_PARAM = {
|
|
1317
1317
|
/** 양품률(0..1, 무차원). 없으면 커널 기본값 — 기본값을 쓴 사실은 `specCoverage()` 가 밝힌다. */
|
|
1318
1318
|
yield: "yield",
|
|
@@ -1321,7 +1321,7 @@ var OP_PARAM = {
|
|
|
1321
1321
|
setupDuration: "setupDuration"
|
|
1322
1322
|
};
|
|
1323
1323
|
|
|
1324
|
-
//
|
|
1324
|
+
// node_modules/@operato/ops-contract/dist/energy-ingest.js
|
|
1325
1325
|
function resolveSubject(kind, localId, opts) {
|
|
1326
1326
|
const declared = opts.identityOf?.(kind, localId);
|
|
1327
1327
|
if (declared)
|
|
@@ -1332,7 +1332,7 @@ function periodFactId(tenantId, kind, subject, from, to) {
|
|
|
1332
1332
|
return [tenantId, kind, subject, from, to].join("|");
|
|
1333
1333
|
}
|
|
1334
1334
|
|
|
1335
|
-
//
|
|
1335
|
+
// node_modules/@operato/ops-contract/dist/epcis.js
|
|
1336
1336
|
var EPCIS_CONTEXT = "https://ref.gs1.org/standards/epcis/2.0.0/epcis-context.jsonld";
|
|
1337
1337
|
var UTC_OFFSET = "+00:00";
|
|
1338
1338
|
var DISP = {
|
|
@@ -1591,7 +1591,7 @@ function transformationEvent(p) {
|
|
|
1591
1591
|
return e;
|
|
1592
1592
|
}
|
|
1593
1593
|
|
|
1594
|
-
//
|
|
1594
|
+
// node_modules/@operato/ops-contract/dist/iso-duration.js
|
|
1595
1595
|
var RE = /^(-)?P(?:(\d+(?:\.\d+)?)W)?(?:(\d+(?:\.\d+)?)D)?(?:T(?:(\d+(?:\.\d+)?)H)?(?:(\d+(?:\.\d+)?)M)?(?:(\d+(?:\.\d+)?)S)?)?$/;
|
|
1596
1596
|
function parseIsoDuration(text) {
|
|
1597
1597
|
if (typeof text !== "string")
|
|
@@ -1617,7 +1617,7 @@ function parseIsoDuration(text) {
|
|
|
1617
1617
|
return sign ? -ms2 : ms2;
|
|
1618
1618
|
}
|
|
1619
1619
|
|
|
1620
|
-
//
|
|
1620
|
+
// node_modules/@operato/ops-contract/dist/master-data.js
|
|
1621
1621
|
function expiryFromAttributes(attrs) {
|
|
1622
1622
|
return readEpochMs(attrs?.[ILMD_ATTR.expiry]);
|
|
1623
1623
|
}
|
|
@@ -1634,7 +1634,7 @@ function readEpochMs(raw) {
|
|
|
1634
1634
|
return Number.isNaN(at) ? void 0 : at;
|
|
1635
1635
|
}
|
|
1636
1636
|
|
|
1637
|
-
//
|
|
1637
|
+
// node_modules/@operato/ops-contract/dist/operational-ingest.js
|
|
1638
1638
|
var TASK_STATUS = ["created", "assigned", "in-progress", "completed"];
|
|
1639
1639
|
var EQUIPMENT_STATUS = ["idle", "busy", "down"];
|
|
1640
1640
|
var PERSON_STATUS = ["idle", "busy"];
|
|
@@ -1842,7 +1842,7 @@ var SPECS = {
|
|
|
1842
1842
|
}
|
|
1843
1843
|
};
|
|
1844
1844
|
|
|
1845
|
-
//
|
|
1845
|
+
// node_modules/@operato/ops-contract/dist/operations-capability.js
|
|
1846
1846
|
function workingHoursBetween(calendar, fromMs, toMs, utcOffsetMinutes) {
|
|
1847
1847
|
if (!(toMs > fromMs))
|
|
1848
1848
|
return 0;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@operato/twin-kernel",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Twin Domain Kernel — framework-agnostic, zero-dep (domain + sim + 3-channel contract). WMS/YMS/MES, EPCIS 2.0 · ISA-95.",
|
|
6
6
|
"publishConfig": {
|
|
@@ -28,6 +28,6 @@
|
|
|
28
28
|
"test": "node --test test/*.test.ts"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@operato/ops-contract": "^0.
|
|
31
|
+
"@operato/ops-contract": "^0.3.0"
|
|
32
32
|
}
|
|
33
33
|
}
|