Latest commit

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

PHP Helper

This package provides helper functions for strings, arrays, console output and error formatting

By halpdesk, 2018-11-29

Installation

composer require halpdesk/helpers

List of Helpers

Array helpers

/** * This function reads a JSON content string and converts it to an Array * By Halpdesk * * @param String $content The CSV string to convert * @param Boolean $assoc If set to true, the function returns an object instead * @throws Exception Exception with json_last_error from json_decode if any * @return mixed The resulting array or object * */json_to_array(String $content, $assoc = true)
/** * Reads a JSON file and converts it to an Array * * @param String $path Full path to JSON file * @return Array The resulting array * @author Halpdesk * */json_file_to_array(String $path)
/** * Combine two arrays with same keys, last value persists * ignores empty values * * @param Array[] $array The arrays to patch * @return Array The resulting array * @author Halpdesk */array_patch(...$array)
/** * Transforms an array to CSV format * * @param Array $array The arrays to transform * @return string $separator The CSV separator, typically a semicolon or comma * @return string $newLine The newline character, typically "\r\n" for windows, "\n" for linux systems * @author Halpdesk */array_to_csv(Array $array, String $separator = ';', String $newLine = "\n")

Array key helpers

/** * This function changes all keys in an array to camelCase style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_camel_case(Array $array)
/** * This function changes all keys in an array to snake_case style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_snake_case(Array $array)
/** * This function changes all keys first leter to upper case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_ucfirst(Array $array)
/** * This function changes all keys first leter to lower case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_lcfirst(Array $array)

Console helpers

/** * Console color * Format text with the standard console colors * * Foreground colors: * black, blue, green, cyan, red, purple, brown, light_grey * dark_grey, light_blue, light_green, light_cyan, light_red * light_purple, yellow, white * * Background colors: * black, green, blue, light_grey, red, yellow, magenta, cyan * * @param String $fg The foreground color * @param String $bg The background color * @author Halpdesk */cc(String $string, String $fg = null, String $bg = null)
/** * Display an aray as a JSON in a console (with color support) * (abbreviation `eject` = echo JSON encoded colored text) * * @param Array $arr The arrays to eject * @param int $tabspace Number of spaced in for indentation / tab * @param string $fgKeyColor Text color for the array keys * @param string $fgValueColor Text color for the array values * @param string $bgColor Background color for output * @return void * @author Halpdesk */eject(Array $arr, int $tabspace = 2, String $fgKeyColor = 'blue', String $fgValueColor = 'brown', $bgColor = null)
/** * edd - eject, dump and die * (depends on function eject) * * @param Array $array The Array to dump * @return void * @author Halpdesk */function edd(Array$array)
/** * output - prints a text with color support * (depends on function cc) * * Styles: * info, warn, err * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */output(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * outputln - output color coded message to a console with a new line * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */outputln(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * od - output and die (i.e. overdose) * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return void * @author Halpdesk */od(String $message = null, String $style = null, int $indent = 0)

Error helpers

/** * get_formatted_trace - get the trace of an exception * depends on Laravel functions * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @return Array The formatted trace * @author Halpdesk */get_formatted_trace(Array $trace, String $basePath = null)
/** * get_formatted_error - get the error of an exception * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @param bool $showFile If set to true, show which file * @return Array The formatted trace * @author Halpdesk */get_formatted_error(Exception $e, String $basePath = null, bool $showFile = true)

String helpers

/** * @param String $string The string to camelCase * @author Halpdesk */camel_case(String $string)
/** * @param String $string The string to snake_case * @author Halpdesk */snake_case(String $string)
/** * replace_foregin_chars - will return a string with foreign characters like å, ä, ö replaced with a, a, o * * There are probably many ways to do this for all characters, but the blow answer does not work for all encodings: * https://stackoverflow.com/questions/9720665/how-to-convert-special-characters-to-normal-characters * * @param String $string The string to manipulate * @return String The string with foreign characters replaced * @author Halpdesk */replace_foreign_chars(String $string)
/** * Strips all letters that are not alphanumeric * @param String $string The string to manipulate * @return String The stripped string */strip_to_alphanumeric(String $string)
/** * Checks if string is alphanumeric * @param String $string The string to manipulate * @return bool */is_alphanumeric(String $string)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Latest commit

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

PHP Helper

This package provides helper functions for strings, arrays, console output and error formatting

By halpdesk, 2018-11-29

Installation

composer require halpdesk/helpers

List of Helpers

Array helpers

/** * This function reads a JSON content string and converts it to an Array * By Halpdesk * * @param String $content The CSV string to convert * @param Boolean $assoc If set to true, the function returns an object instead * @throws Exception Exception with json_last_error from json_decode if any * @return mixed The resulting array or object * */json_to_array(String $content, $assoc = true)
/** * Reads a JSON file and converts it to an Array * * @param String $path Full path to JSON file * @return Array The resulting array * @author Halpdesk * */json_file_to_array(String $path)
/** * Combine two arrays with same keys, last value persists * ignores empty values * * @param Array[] $array The arrays to patch * @return Array The resulting array * @author Halpdesk */array_patch(...$array)
/** * Transforms an array to CSV format * * @param Array $array The arrays to transform * @return string $separator The CSV separator, typically a semicolon or comma * @return string $newLine The newline character, typically "\r\n" for windows, "\n" for linux systems * @author Halpdesk */array_to_csv(Array $array, String $separator = ';', String $newLine = "\n")

Array key helpers

/** * This function changes all keys in an array to camelCase style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_camel_case(Array $array)
/** * This function changes all keys in an array to snake_case style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_snake_case(Array $array)
/** * This function changes all keys first leter to upper case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_ucfirst(Array $array)
/** * This function changes all keys first leter to lower case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_lcfirst(Array $array)

Console helpers

/** * Console color * Format text with the standard console colors * * Foreground colors: * black, blue, green, cyan, red, purple, brown, light_grey * dark_grey, light_blue, light_green, light_cyan, light_red * light_purple, yellow, white * * Background colors: * black, green, blue, light_grey, red, yellow, magenta, cyan * * @param String $fg The foreground color * @param String $bg The background color * @author Halpdesk */cc(String $string, String $fg = null, String $bg = null)
/** * Display an aray as a JSON in a console (with color support) * (abbreviation `eject` = echo JSON encoded colored text) * * @param Array $arr The arrays to eject * @param int $tabspace Number of spaced in for indentation / tab * @param string $fgKeyColor Text color for the array keys * @param string $fgValueColor Text color for the array values * @param string $bgColor Background color for output * @return void * @author Halpdesk */eject(Array $arr, int $tabspace = 2, String $fgKeyColor = 'blue', String $fgValueColor = 'brown', $bgColor = null)
/** * edd - eject, dump and die * (depends on function eject) * * @param Array $array The Array to dump * @return void * @author Halpdesk */function edd(Array$array)
/** * output - prints a text with color support * (depends on function cc) * * Styles: * info, warn, err * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */output(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * outputln - output color coded message to a console with a new line * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */outputln(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * od - output and die (i.e. overdose) * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return void * @author Halpdesk */od(String $message = null, String $style = null, int $indent = 0)

Error helpers

/** * get_formatted_trace - get the trace of an exception * depends on Laravel functions * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @return Array The formatted trace * @author Halpdesk */get_formatted_trace(Array $trace, String $basePath = null)
/** * get_formatted_error - get the error of an exception * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @param bool $showFile If set to true, show which file * @return Array The formatted trace * @author Halpdesk */get_formatted_error(Exception $e, String $basePath = null, bool $showFile = true)

String helpers

/** * @param String $string The string to camelCase * @author Halpdesk */camel_case(String $string)
/** * @param String $string The string to snake_case * @author Halpdesk */snake_case(String $string)
/** * replace_foregin_chars - will return a string with foreign characters like å, ä, ö replaced with a, a, o * * There are probably many ways to do this for all characters, but the blow answer does not work for all encodings: * https://stackoverflow.com/questions/9720665/how-to-convert-special-characters-to-normal-characters * * @param String $string The string to manipulate * @return String The string with foreign characters replaced * @author Halpdesk */replace_foreign_chars(String $string)
/** * Strips all letters that are not alphanumeric * @param String $string The string to manipulate * @return String The stripped string */strip_to_alphanumeric(String $string)
/** * Checks if string is alphanumeric * @param String $string The string to manipulate * @return bool */is_alphanumeric(String $string)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

PHP Helper

This package provides helper functions for strings, arrays, console output and error formatting

By halpdesk, 2018-11-29

Installation

composer require halpdesk/helpers

List of Helpers

Array helpers

/** * This function reads a JSON content string and converts it to an Array * By Halpdesk * * @param String $content The CSV string to convert * @param Boolean $assoc If set to true, the function returns an object instead * @throws Exception Exception with json_last_error from json_decode if any * @return mixed The resulting array or object * */json_to_array(String $content, $assoc = true)
/** * Reads a JSON file and converts it to an Array * * @param String $path Full path to JSON file * @return Array The resulting array * @author Halpdesk * */json_file_to_array(String $path)
/** * Combine two arrays with same keys, last value persists * ignores empty values * * @param Array[] $array The arrays to patch * @return Array The resulting array * @author Halpdesk */array_patch(...$array)
/** * Transforms an array to CSV format * * @param Array $array The arrays to transform * @return string $separator The CSV separator, typically a semicolon or comma * @return string $newLine The newline character, typically "\r\n" for windows, "\n" for linux systems * @author Halpdesk */array_to_csv(Array $array, String $separator = ';', String $newLine = "\n")

Array key helpers

/** * This function changes all keys in an array to camelCase style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_camel_case(Array $array)
/** * This function changes all keys in an array to snake_case style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_snake_case(Array $array)
/** * This function changes all keys first leter to upper case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_ucfirst(Array $array)
/** * This function changes all keys first leter to lower case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_lcfirst(Array $array)

Console helpers

/** * Console color * Format text with the standard console colors * * Foreground colors: * black, blue, green, cyan, red, purple, brown, light_grey * dark_grey, light_blue, light_green, light_cyan, light_red * light_purple, yellow, white * * Background colors: * black, green, blue, light_grey, red, yellow, magenta, cyan * * @param String $fg The foreground color * @param String $bg The background color * @author Halpdesk */cc(String $string, String $fg = null, String $bg = null)
/** * Display an aray as a JSON in a console (with color support) * (abbreviation `eject` = echo JSON encoded colored text) * * @param Array $arr The arrays to eject * @param int $tabspace Number of spaced in for indentation / tab * @param string $fgKeyColor Text color for the array keys * @param string $fgValueColor Text color for the array values * @param string $bgColor Background color for output * @return void * @author Halpdesk */eject(Array $arr, int $tabspace = 2, String $fgKeyColor = 'blue', String $fgValueColor = 'brown', $bgColor = null)
/** * edd - eject, dump and die * (depends on function eject) * * @param Array $array The Array to dump * @return void * @author Halpdesk */function edd(Array$array)
/** * output - prints a text with color support * (depends on function cc) * * Styles: * info, warn, err * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */output(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * outputln - output color coded message to a console with a new line * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */outputln(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * od - output and die (i.e. overdose) * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return void * @author Halpdesk */od(String $message = null, String $style = null, int $indent = 0)

Error helpers

/** * get_formatted_trace - get the trace of an exception * depends on Laravel functions * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @return Array The formatted trace * @author Halpdesk */get_formatted_trace(Array $trace, String $basePath = null)
/** * get_formatted_error - get the error of an exception * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @param bool $showFile If set to true, show which file * @return Array The formatted trace * @author Halpdesk */get_formatted_error(Exception $e, String $basePath = null, bool $showFile = true)

String helpers

/** * @param String $string The string to camelCase * @author Halpdesk */camel_case(String $string)
/** * @param String $string The string to snake_case * @author Halpdesk */snake_case(String $string)
/** * replace_foregin_chars - will return a string with foreign characters like å, ä, ö replaced with a, a, o * * There are probably many ways to do this for all characters, but the blow answer does not work for all encodings: * https://stackoverflow.com/questions/9720665/how-to-convert-special-characters-to-normal-characters * * @param String $string The string to manipulate * @return String The string with foreign characters replaced * @author Halpdesk */replace_foreign_chars(String $string)
/** * Strips all letters that are not alphanumeric * @param String $string The string to manipulate * @return String The stripped string */strip_to_alphanumeric(String $string)
/** * Checks if string is alphanumeric * @param String $string The string to manipulate * @return bool */is_alphanumeric(String $string)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

PHP Helper

This package provides helper functions for strings, arrays, console output and error formatting

By halpdesk, 2018-11-29

Installation

composer require halpdesk/helpers

List of Helpers

Array helpers

/** * This function reads a JSON content string and converts it to an Array * By Halpdesk * * @param String $content The CSV string to convert * @param Boolean $assoc If set to true, the function returns an object instead * @throws Exception Exception with json_last_error from json_decode if any * @return mixed The resulting array or object * */json_to_array(String $content, $assoc = true)
/** * Reads a JSON file and converts it to an Array * * @param String $path Full path to JSON file * @return Array The resulting array * @author Halpdesk * */json_file_to_array(String $path)
/** * Combine two arrays with same keys, last value persists * ignores empty values * * @param Array[] $array The arrays to patch * @return Array The resulting array * @author Halpdesk */array_patch(...$array)
/** * Transforms an array to CSV format * * @param Array $array The arrays to transform * @return string $separator The CSV separator, typically a semicolon or comma * @return string $newLine The newline character, typically "\r\n" for windows, "\n" for linux systems * @author Halpdesk */array_to_csv(Array $array, String $separator = ';', String $newLine = "\n")

Array key helpers

/** * This function changes all keys in an array to camelCase style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_camel_case(Array $array)
/** * This function changes all keys in an array to snake_case style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_snake_case(Array $array)
/** * This function changes all keys first leter to upper case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_ucfirst(Array $array)
/** * This function changes all keys first leter to lower case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_lcfirst(Array $array)

Console helpers

/** * Console color * Format text with the standard console colors * * Foreground colors: * black, blue, green, cyan, red, purple, brown, light_grey * dark_grey, light_blue, light_green, light_cyan, light_red * light_purple, yellow, white * * Background colors: * black, green, blue, light_grey, red, yellow, magenta, cyan * * @param String $fg The foreground color * @param String $bg The background color * @author Halpdesk */cc(String $string, String $fg = null, String $bg = null)
/** * Display an aray as a JSON in a console (with color support) * (abbreviation `eject` = echo JSON encoded colored text) * * @param Array $arr The arrays to eject * @param int $tabspace Number of spaced in for indentation / tab * @param string $fgKeyColor Text color for the array keys * @param string $fgValueColor Text color for the array values * @param string $bgColor Background color for output * @return void * @author Halpdesk */eject(Array $arr, int $tabspace = 2, String $fgKeyColor = 'blue', String $fgValueColor = 'brown', $bgColor = null)
/** * edd - eject, dump and die * (depends on function eject) * * @param Array $array The Array to dump * @return void * @author Halpdesk */function edd(Array$array)
/** * output - prints a text with color support * (depends on function cc) * * Styles: * info, warn, err * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */output(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * outputln - output color coded message to a console with a new line * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */outputln(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * od - output and die (i.e. overdose) * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return void * @author Halpdesk */od(String $message = null, String $style = null, int $indent = 0)

Error helpers

/** * get_formatted_trace - get the trace of an exception * depends on Laravel functions * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @return Array The formatted trace * @author Halpdesk */get_formatted_trace(Array $trace, String $basePath = null)
/** * get_formatted_error - get the error of an exception * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @param bool $showFile If set to true, show which file * @return Array The formatted trace * @author Halpdesk */get_formatted_error(Exception $e, String $basePath = null, bool $showFile = true)

String helpers

/** * @param String $string The string to camelCase * @author Halpdesk */camel_case(String $string)
/** * @param String $string The string to snake_case * @author Halpdesk */snake_case(String $string)
/** * replace_foregin_chars - will return a string with foreign characters like å, ä, ö replaced with a, a, o * * There are probably many ways to do this for all characters, but the blow answer does not work for all encodings: * https://stackoverflow.com/questions/9720665/how-to-convert-special-characters-to-normal-characters * * @param String $string The string to manipulate * @return String The string with foreign characters replaced * @author Halpdesk */replace_foreign_chars(String $string)
/** * Strips all letters that are not alphanumeric * @param String $string The string to manipulate * @return String The stripped string */strip_to_alphanumeric(String $string)
/** * Checks if string is alphanumeric * @param String $string The string to manipulate * @return bool */is_alphanumeric(String $string)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Latest commit

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

PHP Helper

This package provides helper functions for strings, arrays, console output and error formatting

By halpdesk, 2018-11-29

Installation

composer require halpdesk/helpers

List of Helpers

Array helpers

/** * This function reads a JSON content string and converts it to an Array * By Halpdesk * * @param String $content The CSV string to convert * @param Boolean $assoc If set to true, the function returns an object instead * @throws Exception Exception with json_last_error from json_decode if any * @return mixed The resulting array or object * */json_to_array(String $content, $assoc = true)
/** * Reads a JSON file and converts it to an Array * * @param String $path Full path to JSON file * @return Array The resulting array * @author Halpdesk * */json_file_to_array(String $path)
/** * Combine two arrays with same keys, last value persists * ignores empty values * * @param Array[] $array The arrays to patch * @return Array The resulting array * @author Halpdesk */array_patch(...$array)
/** * Transforms an array to CSV format * * @param Array $array The arrays to transform * @return string $separator The CSV separator, typically a semicolon or comma * @return string $newLine The newline character, typically "\r\n" for windows, "\n" for linux systems * @author Halpdesk */array_to_csv(Array $array, String $separator = ';', String $newLine = "\n")

Array key helpers

/** * This function changes all keys in an array to camelCase style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_camel_case(Array $array)
/** * This function changes all keys in an array to snake_case style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_snake_case(Array $array)
/** * This function changes all keys first leter to upper case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_ucfirst(Array $array)
/** * This function changes all keys first leter to lower case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_lcfirst(Array $array)

Console helpers

/** * Console color * Format text with the standard console colors * * Foreground colors: * black, blue, green, cyan, red, purple, brown, light_grey * dark_grey, light_blue, light_green, light_cyan, light_red * light_purple, yellow, white * * Background colors: * black, green, blue, light_grey, red, yellow, magenta, cyan * * @param String $fg The foreground color * @param String $bg The background color * @author Halpdesk */cc(String $string, String $fg = null, String $bg = null)
/** * Display an aray as a JSON in a console (with color support) * (abbreviation `eject` = echo JSON encoded colored text) * * @param Array $arr The arrays to eject * @param int $tabspace Number of spaced in for indentation / tab * @param string $fgKeyColor Text color for the array keys * @param string $fgValueColor Text color for the array values * @param string $bgColor Background color for output * @return void * @author Halpdesk */eject(Array $arr, int $tabspace = 2, String $fgKeyColor = 'blue', String $fgValueColor = 'brown', $bgColor = null)
/** * edd - eject, dump and die * (depends on function eject) * * @param Array $array The Array to dump * @return void * @author Halpdesk */function edd(Array$array)
/** * output - prints a text with color support * (depends on function cc) * * Styles: * info, warn, err * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */output(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * outputln - output color coded message to a console with a new line * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */outputln(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * od - output and die (i.e. overdose) * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return void * @author Halpdesk */od(String $message = null, String $style = null, int $indent = 0)

Error helpers

/** * get_formatted_trace - get the trace of an exception * depends on Laravel functions * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @return Array The formatted trace * @author Halpdesk */get_formatted_trace(Array $trace, String $basePath = null)
/** * get_formatted_error - get the error of an exception * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @param bool $showFile If set to true, show which file * @return Array The formatted trace * @author Halpdesk */get_formatted_error(Exception $e, String $basePath = null, bool $showFile = true)

String helpers

/** * @param String $string The string to camelCase * @author Halpdesk */camel_case(String $string)
/** * @param String $string The string to snake_case * @author Halpdesk */snake_case(String $string)
/** * replace_foregin_chars - will return a string with foreign characters like å, ä, ö replaced with a, a, o * * There are probably many ways to do this for all characters, but the blow answer does not work for all encodings: * https://stackoverflow.com/questions/9720665/how-to-convert-special-characters-to-normal-characters * * @param String $string The string to manipulate * @return String The string with foreign characters replaced * @author Halpdesk */replace_foreign_chars(String $string)
/** * Strips all letters that are not alphanumeric * @param String $string The string to manipulate * @return String The stripped string */strip_to_alphanumeric(String $string)
/** * Checks if string is alphanumeric * @param String $string The string to manipulate * @return bool */is_alphanumeric(String $string)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

PHP Helper

This package provides helper functions for strings, arrays, console output and error formatting

By halpdesk, 2018-11-29

Installation

composer require halpdesk/helpers

List of Helpers

Array helpers

/** * This function reads a JSON content string and converts it to an Array * By Halpdesk * * @param String $content The CSV string to convert * @param Boolean $assoc If set to true, the function returns an object instead * @throws Exception Exception with json_last_error from json_decode if any * @return mixed The resulting array or object * */json_to_array(String $content, $assoc = true)
/** * Reads a JSON file and converts it to an Array * * @param String $path Full path to JSON file * @return Array The resulting array * @author Halpdesk * */json_file_to_array(String $path)
/** * Combine two arrays with same keys, last value persists * ignores empty values * * @param Array[] $array The arrays to patch * @return Array The resulting array * @author Halpdesk */array_patch(...$array)
/** * Transforms an array to CSV format * * @param Array $array The arrays to transform * @return string $separator The CSV separator, typically a semicolon or comma * @return string $newLine The newline character, typically "\r\n" for windows, "\n" for linux systems * @author Halpdesk */array_to_csv(Array $array, String $separator = ';', String $newLine = "\n")

Array key helpers

/** * This function changes all keys in an array to camelCase style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_camel_case(Array $array)
/** * This function changes all keys in an array to snake_case style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_snake_case(Array $array)
/** * This function changes all keys first leter to upper case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_ucfirst(Array $array)
/** * This function changes all keys first leter to lower case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_lcfirst(Array $array)

Console helpers

/** * Console color * Format text with the standard console colors * * Foreground colors: * black, blue, green, cyan, red, purple, brown, light_grey * dark_grey, light_blue, light_green, light_cyan, light_red * light_purple, yellow, white * * Background colors: * black, green, blue, light_grey, red, yellow, magenta, cyan * * @param String $fg The foreground color * @param String $bg The background color * @author Halpdesk */cc(String $string, String $fg = null, String $bg = null)
/** * Display an aray as a JSON in a console (with color support) * (abbreviation `eject` = echo JSON encoded colored text) * * @param Array $arr The arrays to eject * @param int $tabspace Number of spaced in for indentation / tab * @param string $fgKeyColor Text color for the array keys * @param string $fgValueColor Text color for the array values * @param string $bgColor Background color for output * @return void * @author Halpdesk */eject(Array $arr, int $tabspace = 2, String $fgKeyColor = 'blue', String $fgValueColor = 'brown', $bgColor = null)
/** * edd - eject, dump and die * (depends on function eject) * * @param Array $array The Array to dump * @return void * @author Halpdesk */function edd(Array$array)
/** * output - prints a text with color support * (depends on function cc) * * Styles: * info, warn, err * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */output(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * outputln - output color coded message to a console with a new line * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */outputln(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * od - output and die (i.e. overdose) * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return void * @author Halpdesk */od(String $message = null, String $style = null, int $indent = 0)

Error helpers

/** * get_formatted_trace - get the trace of an exception * depends on Laravel functions * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @return Array The formatted trace * @author Halpdesk */get_formatted_trace(Array $trace, String $basePath = null)
/** * get_formatted_error - get the error of an exception * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @param bool $showFile If set to true, show which file * @return Array The formatted trace * @author Halpdesk */get_formatted_error(Exception $e, String $basePath = null, bool $showFile = true)

String helpers

/** * @param String $string The string to camelCase * @author Halpdesk */camel_case(String $string)
/** * @param String $string The string to snake_case * @author Halpdesk */snake_case(String $string)
/** * replace_foregin_chars - will return a string with foreign characters like å, ä, ö replaced with a, a, o * * There are probably many ways to do this for all characters, but the blow answer does not work for all encodings: * https://stackoverflow.com/questions/9720665/how-to-convert-special-characters-to-normal-characters * * @param String $string The string to manipulate * @return String The string with foreign characters replaced * @author Halpdesk */replace_foreign_chars(String $string)
/** * Strips all letters that are not alphanumeric * @param String $string The string to manipulate * @return String The stripped string */strip_to_alphanumeric(String $string)
/** * Checks if string is alphanumeric * @param String $string The string to manipulate * @return bool */is_alphanumeric(String $string)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

PHP Helper

This package provides helper functions for strings, arrays, console output and error formatting

By halpdesk, 2018-11-29

Installation

composer require halpdesk/helpers

List of Helpers

Array helpers

/** * This function reads a JSON content string and converts it to an Array * By Halpdesk * * @param String $content The CSV string to convert * @param Boolean $assoc If set to true, the function returns an object instead * @throws Exception Exception with json_last_error from json_decode if any * @return mixed The resulting array or object * */json_to_array(String $content, $assoc = true)
/** * Reads a JSON file and converts it to an Array * * @param String $path Full path to JSON file * @return Array The resulting array * @author Halpdesk * */json_file_to_array(String $path)
/** * Combine two arrays with same keys, last value persists * ignores empty values * * @param Array[] $array The arrays to patch * @return Array The resulting array * @author Halpdesk */array_patch(...$array)
/** * Transforms an array to CSV format * * @param Array $array The arrays to transform * @return string $separator The CSV separator, typically a semicolon or comma * @return string $newLine The newline character, typically "\r\n" for windows, "\n" for linux systems * @author Halpdesk */array_to_csv(Array $array, String $separator = ';', String $newLine = "\n")

Array key helpers

/** * This function changes all keys in an array to camelCase style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_camel_case(Array $array)
/** * This function changes all keys in an array to snake_case style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_snake_case(Array $array)
/** * This function changes all keys first leter to upper case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_ucfirst(Array $array)
/** * This function changes all keys first leter to lower case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_lcfirst(Array $array)

Console helpers

/** * Console color * Format text with the standard console colors * * Foreground colors: * black, blue, green, cyan, red, purple, brown, light_grey * dark_grey, light_blue, light_green, light_cyan, light_red * light_purple, yellow, white * * Background colors: * black, green, blue, light_grey, red, yellow, magenta, cyan * * @param String $fg The foreground color * @param String $bg The background color * @author Halpdesk */cc(String $string, String $fg = null, String $bg = null)
/** * Display an aray as a JSON in a console (with color support) * (abbreviation `eject` = echo JSON encoded colored text) * * @param Array $arr The arrays to eject * @param int $tabspace Number of spaced in for indentation / tab * @param string $fgKeyColor Text color for the array keys * @param string $fgValueColor Text color for the array values * @param string $bgColor Background color for output * @return void * @author Halpdesk */eject(Array $arr, int $tabspace = 2, String $fgKeyColor = 'blue', String $fgValueColor = 'brown', $bgColor = null)
/** * edd - eject, dump and die * (depends on function eject) * * @param Array $array The Array to dump * @return void * @author Halpdesk */function edd(Array$array)
/** * output - prints a text with color support * (depends on function cc) * * Styles: * info, warn, err * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */output(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * outputln - output color coded message to a console with a new line * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */outputln(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * od - output and die (i.e. overdose) * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return void * @author Halpdesk */od(String $message = null, String $style = null, int $indent = 0)

Error helpers

/** * get_formatted_trace - get the trace of an exception * depends on Laravel functions * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @return Array The formatted trace * @author Halpdesk */get_formatted_trace(Array $trace, String $basePath = null)
/** * get_formatted_error - get the error of an exception * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @param bool $showFile If set to true, show which file * @return Array The formatted trace * @author Halpdesk */get_formatted_error(Exception $e, String $basePath = null, bool $showFile = true)

String helpers

/** * @param String $string The string to camelCase * @author Halpdesk */camel_case(String $string)
/** * @param String $string The string to snake_case * @author Halpdesk */snake_case(String $string)
/** * replace_foregin_chars - will return a string with foreign characters like å, ä, ö replaced with a, a, o * * There are probably many ways to do this for all characters, but the blow answer does not work for all encodings: * https://stackoverflow.com/questions/9720665/how-to-convert-special-characters-to-normal-characters * * @param String $string The string to manipulate * @return String The string with foreign characters replaced * @author Halpdesk */replace_foreign_chars(String $string)
/** * Strips all letters that are not alphanumeric * @param String $string The string to manipulate * @return String The stripped string */strip_to_alphanumeric(String $string)
/** * Checks if string is alphanumeric * @param String $string The string to manipulate * @return bool */is_alphanumeric(String $string)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Latest commit

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

PHP Helper

This package provides helper functions for strings, arrays, console output and error formatting

By halpdesk, 2018-11-29

Installation

composer require halpdesk/helpers

List of Helpers

Array helpers

/** * This function reads a JSON content string and converts it to an Array * By Halpdesk * * @param String $content The CSV string to convert * @param Boolean $assoc If set to true, the function returns an object instead * @throws Exception Exception with json_last_error from json_decode if any * @return mixed The resulting array or object * */json_to_array(String $content, $assoc = true)
/** * Reads a JSON file and converts it to an Array * * @param String $path Full path to JSON file * @return Array The resulting array * @author Halpdesk * */json_file_to_array(String $path)
/** * Combine two arrays with same keys, last value persists * ignores empty values * * @param Array[] $array The arrays to patch * @return Array The resulting array * @author Halpdesk */array_patch(...$array)
/** * Transforms an array to CSV format * * @param Array $array The arrays to transform * @return string $separator The CSV separator, typically a semicolon or comma * @return string $newLine The newline character, typically "\r\n" for windows, "\n" for linux systems * @author Halpdesk */array_to_csv(Array $array, String $separator = ';', String $newLine = "\n")

Array key helpers

/** * This function changes all keys in an array to camelCase style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_camel_case(Array $array)
/** * This function changes all keys in an array to snake_case style * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_snake_case(Array $array)
/** * This function changes all keys first leter to upper case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_ucfirst(Array $array)
/** * This function changes all keys first leter to lower case * * @param String $array The array to change * @return Array The resulting array * @author Halpdesk */array_keys_to_lcfirst(Array $array)

Console helpers

/** * Console color * Format text with the standard console colors * * Foreground colors: * black, blue, green, cyan, red, purple, brown, light_grey * dark_grey, light_blue, light_green, light_cyan, light_red * light_purple, yellow, white * * Background colors: * black, green, blue, light_grey, red, yellow, magenta, cyan * * @param String $fg The foreground color * @param String $bg The background color * @author Halpdesk */cc(String $string, String $fg = null, String $bg = null)
/** * Display an aray as a JSON in a console (with color support) * (abbreviation `eject` = echo JSON encoded colored text) * * @param Array $arr The arrays to eject * @param int $tabspace Number of spaced in for indentation / tab * @param string $fgKeyColor Text color for the array keys * @param string $fgValueColor Text color for the array values * @param string $bgColor Background color for output * @return void * @author Halpdesk */eject(Array $arr, int $tabspace = 2, String $fgKeyColor = 'blue', String $fgValueColor = 'brown', $bgColor = null)
/** * edd - eject, dump and die * (depends on function eject) * * @param Array $array The Array to dump * @return void * @author Halpdesk */function edd(Array$array)
/** * output - prints a text with color support * (depends on function cc) * * Styles: * info, warn, err * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */output(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * outputln - output color coded message to a console with a new line * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return string The final message, color encoded * @author Halpdesk */outputln(String $message = null, String $style = null, int $indent = 0, bool $returnOnly = false)
/** * od - output and die (i.e. overdose) * (depends on function output) * * @param string $message The text to output * @param string $style Three standard stylings to chose from: "info", "warn" or "err" * @param int $indent Indentation * @param bool $returnOnly If set to true the function only returns the text, but does not actually output it * @return void * @author Halpdesk */od(String $message = null, String $style = null, int $indent = 0)

Error helpers

/** * get_formatted_trace - get the trace of an exception * depends on Laravel functions * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @return Array The formatted trace * @author Halpdesk */get_formatted_trace(Array $trace, String $basePath = null)
/** * get_formatted_error - get the error of an exception * * @param Array $trace The trace stack to format * @param String $basePath If not null, it removes the base path portion for each trace line * @param bool $showFile If set to true, show which file * @return Array The formatted trace * @author Halpdesk */get_formatted_error(Exception $e, String $basePath = null, bool $showFile = true)

String helpers

/** * @param String $string The string to camelCase * @author Halpdesk */camel_case(String $string)
/** * @param String $string The string to snake_case * @author Halpdesk */snake_case(String $string)
/** * replace_foregin_chars - will return a string with foreign characters like å, ä, ö replaced with a, a, o * * There are probably many ways to do this for all characters, but the blow answer does not work for all encodings: * https://stackoverflow.com/questions/9720665/how-to-convert-special-characters-to-normal-characters * * @param String $string The string to manipulate * @return String The string with foreign characters replaced * @author Halpdesk */replace_foreign_chars(String $string)
/** * Strips all letters that are not alphanumeric * @param String $string The string to manipulate * @return String The stripped string */strip_to_alphanumeric(String $string)
/** * Checks if string is alphanumeric * @param String $string The string to manipulate * @return bool */is_alphanumeric(String $string)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages