MCPcopy Index your code
hub / github.com/Acode-Foundation/Acode / format

Method format

src/lib/acode.js:782–824  ·  view source on GitHub ↗
(selectIfNull = true)

Source from the content-addressed store, hash-verified

780 }
781
782 async format(selectIfNull = true) {
783 const file = editorManager.activeFile;
784 if (!file || file.type !== "editor") return false;
785
786 let resolvedMode = file.currentMode;
787 if (!resolvedMode) {
788 try {
789 resolvedMode = getModeForPath(file.filename)?.name;
790 } catch (_) {
791 resolvedMode = null;
792 }
793 }
794 const modeName = resolvedMode || "text";
795 const formatterMap = appSettings.value.formatter || {};
796 const formatterId = formatterMap[modeName];
797 const formatter = this.#formatter.find(({ id }) => id === formatterId);
798
799 if (!formatter) {
800 if (formatterId) {
801 delete formatterMap[modeName];
802 await appSettings.update(false);
803 }
804
805 if (selectIfNull) {
806 const { default: formatterSettings } = await import(
807 /* webpackChunkName: "formatterSettings" */ "settings/formatterSettings"
808 );
809 formatterSettings(modeName);
810 this.#afterSelectFormatter(modeName);
811 } else {
812 toast(strings["please select a formatter"]);
813 }
814 return false;
815 }
816
817 try {
818 await formatter.format();
819 return true;
820 } catch (error) {
821 helpers.error(error);
822 return false;
823 }
824 }
825
826 #afterSelectFormatter(name) {
827 appSettings.on("update:formatter", format);

Callers 13

dirnameFunction · 0.80
formatFunction · 0.80
addControlMethod · 0.80
setConsoleVisibleMethod · 0.80
urlFormatFunction · 0.80
encodeBytesToBytesMethod · 0.80
getTodayKeyMethod · 0.80
uncaughtExceptionMethod · 0.80

Calls 6

#afterSelectFormatterMethod · 0.95
getModeForPathFunction · 0.90
formatterSettingsFunction · 0.85
offMethod · 0.80
updateMethod · 0.45
errorMethod · 0.45

Tested by

no test coverage detected