HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux WebLive 5.15.0-79-generic #86-Ubuntu SMP Mon Jul 10 16:07:21 UTC 2023 x86_64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/wpamazingsecret/wp-content/plugins_/code-snippets/js/edit/editor.ts
import '../editor'

export const loadSnippetCodeEditor = () => {
	const { codeEditor } = window.wp

	const textarea = document.getElementById('snippet_code')

	if (!textarea) {
		console.error('Could not initialise CodeMirror on textarea.', textarea)
		return
	}

	const editor = codeEditor.initialize(textarea)
	window.code_snippets_editor = editor

	const extraKeys = editor.codemirror.getOption('extraKeys')
	const controlKey = window.navigator.platform.match('Mac') ? 'Cmd' : 'Ctrl'
	const saveSnippet = () => document.getElementById('save_snippet')?.click()

	editor.codemirror.setOption('extraKeys', {
		...'object' === typeof extraKeys ? extraKeys : {},
		[`${controlKey}-S`]: saveSnippet,
		[`${controlKey}-Enter`]: saveSnippet,
	})

	if (window.navigator.platform.match('Mac')) {
		const helpText = document.querySelector('.editor-help-text')
		if (helpText) {
			helpText.className += ' platform-mac'
		}
	}

	const directionControl = document.getElementById('snippet-code-direction') as HTMLSelectElement | null
	directionControl?.addEventListener('change', () => {
		window.code_snippets_editor?.codemirror.setOption('direction', 'rtl' === directionControl.value ? 'rtl' : 'ltr')
	})
}