- 텍스트 수식 줄 hover · 누름 고정(행 단위 선택) 걷음 - 변수 이름 식 = 변수 이름마다 낮은 단추 · 값 든 식 = 수 하나하나 낮은 단추 → 같은 줄의 상세 모달(적용 · 삭제 · 닫기) - 변수가 시험 입력(옵션)이면 옵션 고르기 칩으로 - 공용 상세 `lineOpener` 새로 — M02 SK 상세 · M01 단가산출 기초 같은 길(M01 = 시험 고침 고리) - 상세 보기 줄마다 붙던 옵션 값 칩(`쓰는입력`) 걷음 — 위 옵션 칸이 대신(748-3) - 새 파일 `LogicLab_FormulaTokens`(조각 나누기 순수 셈) · 시험 test_748_2 · 낡은 시험 고침 test_722(inputChip 줄 걷음) Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
21 lines
1.0 KiB
JavaScript
21 lines
1.0 KiB
JavaScript
/* PLAN 748-2 헬퍼 — 텍스트 수식 조각 나누기(`M01_MasterData_UI_LogicLab_FormulaTokens.ts` 순수 셈).
|
|
* 짝 = `test_748_2_formula_tokens.py`. 결과 = 표준출력 JSON.
|
|
*/
|
|
const path = require("path");
|
|
const { makeLoader } = require("./helper_ts_stub_loader.cjs");
|
|
|
|
const { load } = makeLoader({ root: path.join(__dirname, "..", "..") });
|
|
const m = load("M01_MasterData", "M01_MasterData_UI_LogicLab_FormulaTokens.ts");
|
|
const hot = (list) => list.filter((t) => t.hot).map((t) => t.text);
|
|
const name = "굴착기노무비단가 * 뒤채움및다짐소형장비.굴착기 * 8 / 시공량 = 굴착기노무비";
|
|
const value = "35,412 * 1 * 8 / 110 = 2,575";
|
|
const out = {
|
|
nameHot: hot(m.nameTokens(name)),
|
|
nameAll: m.nameTokens(name).map((t) => t.text),
|
|
fnCall: hot(m.nameTokens("올림(단가) + 1.5 - 보정")),
|
|
valueHot: hot(m.valueTokens(value)),
|
|
valueAll: m.valueTokens("13,873 = 13,873 · 21 %").map((t) => t.text),
|
|
empty: [m.nameTokens("").length, m.valueTokens("").length],
|
|
};
|
|
process.stdout.write(JSON.stringify(out));
|