// Перенос всего содержимого physics_9.html в physics_9_ch1..ch5.html.
// - Извлекает CSS-блок монолита, инжектит в каждую ch-файл (стили нужны для рендера)
// - Извлекает HTML-тело каждого §1..§36 + лабораторного блока
// - Чистит emoji и Font Awesome
// - Подключает FA CDN для совместимости
// - Заменяет STUB-builder для каждого pid на реальный контент
'use strict';
const fs = require('fs');
const path = require('path');
const TBOOKS = path.join(__dirname, '..', '..', 'frontend', 'textbooks');
const SRC = path.join(TBOOKS, 'physics_9.html');
const src = fs.readFileSync(SRC, 'utf8');
// === Распределение §N → главе ===
const CH_OF = {};
for (let n = 1; n <= 14; n++) CH_OF[n] = 1;
for (let n = 15; n <= 24; n++) CH_OF[n] = 2;
for (let n = 25; n <= 30; n++) CH_OF[n] = 3;
for (let n = 31; n <= 36; n++) CH_OF[n] = 4;
// Заголовки § (для матчинга STUB) — должны точно совпадать с PARA_NAMES в gen_phys9_ch.js
const PARA_NAMES = {
1:'Механическое движение',
2:'Относительность движения. Система отсчёта',
3:'Скалярные и векторные величины. Действия над векторами',
4:'Проекция вектора на ось',
5:'Путь и перемещение',
6:'Равномерное прямолинейное движение. Скорость',
7:'Графическое представление равномерного движения',
8:'Неравномерное движение. Средняя и мгновенная скорость',
9:'Сложение скоростей',
10:'Ускорение',
11:'Скорость при равноускоренном движении',
12:'Перемещение, координата и путь при равноускоренном движении',
13:'Линейная и угловая скорости',
14:'Ускорение точки при движении по окружности',
15:'Взаимодействие тел. Сила. ИСО. 1-й закон Ньютона',
16:'Масса',
17:'Второй закон Ньютона',
18:'Третий закон Ньютона. Принцип относительности Галилея',
19:'Деформация тел. Сила упругости. Закон Гука',
20:'Силы трения. Силы сопротивления среды',
21:'Движение тела под действием силы тяжести',
22:'Движение тела, брошенного под углом к горизонту',
23:'Закон всемирного тяготения',
24:'Вес. Невесомость и перегрузки',
25:'Условия равновесия тел. Момент силы',
26:'Простые механизмы. Рычаги. Блоки',
27:'Наклонная плоскость. «Золотое правило» механики. КПД',
28:'Центр тяжести. Виды равновесия',
29:'Закон Архимеда. Выталкивающая сила',
30:'Плавание судов. Воздухоплавание',
31:'Импульс тела. Импульс системы тел',
32:'Закон сохранения импульса. Реактивное движение',
33:'Механическая работа. Мощность',
34:'Потенциальная энергия',
35:'Кинетическая энергия. Полная энергия системы тел',
36:'Закон сохранения энергии',
};
// === Извлекаем CSS ===
const styleStart = src.indexOf('', styleStart);
const monolithCss = src.slice(styleStart, styleEnd);
// === Извлекаем §1..§36 ===
// Boundary для §36 — позиция h2 лабораторной секции
const labH2Pos = src.indexOf('Проверка закона сохранения импульса');
const labBoundary = labH2Pos > 0 ? src.lastIndexOf('