TO DO

  • Реализовать прозрачную конфигурацию дизайнера и его подсистем. Сейчас существует несколько классов с конфигурацией это не понятно и не интуитивно. В идеале должен быть какой-то один файл “config.js”, где указываются необходимые параметры(конфигурация ui дизайнера, адреса для запросов на сервер, команды над структурой проекта etc), и класс для запуска всего этого.
  • Перенести код в отдельный проект. Дизайнер это самостоятельное JavaScript приложение(вернее даже два приложения), и должен жить отдельно. По правильному, код должен быть перенесен, и проекты m3_designer и m3_sandbox должны подключать только собранный, минифицированный скрипт и файлы с конфигурацией(см предыдущий пункт)
  • Файл requests.js это плохой негодный legacy код. Из него должна быть вынесена логика с классы команд.
  • Создание template global’ов сейчас происходит неправильно. Нужно добавить некий класс медиатор между подсистемой IDE и подсистемой UIDesigner’а, чтобы логика по созданию файла на сервера исполнялась в классе команды(соответсвенно это класс следует написать)
  • Код в подсистеме IDE далек от идеала. Желателен рефакторинг, исправление варнингов, и проверка всех файлов JSLint’ом. И еще неплохо было написать побольше коментариев.
  • Файл exntesions.js требует разнесение по корректным подсистемам