from generation.sectionGeneratedActionShouldLoad import * def generateServiceSectionGeneratedActions(c): base = f"{c.dir}/templates/service-section-generated-action" fmtCommon = c.readFile(base) fmtInstant = c.readFile(f"{base}-instant") fmtRelay = c.readFile(f"{base}-relay") fmtInstantDelay = c.readFile(f"{base}-instant-delay") fmtInstantRelay = c.readFile(f"{base}-instant-relay") fmtInstantModel = c.readFile(f"{base}-instant-model") fmtInstantShouldResetCore = c.readFile(f"{base}-instant-shouldResetCore") fmtModel = c.readFile(f"{base}-model") fmtShouldResetCore = c.readFile(f"{base}-shouldResetCore") canRelay = "🚀model" in c.structure.service.actions if canRelay: c.serviceSectionGeneratedActions += "\n".join(fmtRelay + ['']) for key in c.structure.service.actions: value = c.structure.service.actions[key] # Шаблонные действия. if value == "": # instant model. if key == "🚀model": c.serviceSectionGeneratedActions += "\n".join(fmtInstantModel) + "\n" continue # model. if key == "model": c.serviceSectionGeneratedActions += "\n".join(fmtModel) + "\n" continue # shouldLoad*. shouldLoad = "shouldLoad" if key.startswith(shouldLoad): c.serviceSectionGeneratedActions += sectionGeneratedActionShouldLoad(key, "service", c) continue # instant shouldResetCore. if key == "🚀shouldResetCore": c.serviceSectionGeneratedActions += "\n".join(fmtInstantShouldResetCore) + "\n" continue # shouldResetCore. if key == "shouldResetCore": c.serviceSectionGeneratedActions += "\n".join(fmtShouldResetCore) + "\n" continue continue output = "" action = key template = fmtCommon # Действие без receive(on:) if action.startswith("🚀"): action = action[1:] template = fmtInstantRelay if canRelay else fmtInstant # Действие c .delay(on:) if action.startswith("⏳"): action = action[1:] template = fmtInstantDelay for fmt in template: ln = fmt \ .replace("%SHOULD%", action) \ .replace("%SINK%", value) output += ln + "\n" c.serviceSectionGeneratedActions += output