diff --git a/dist/showdown.js b/dist/showdown.js index c88587b..28ccafe 100644 Binary files a/dist/showdown.js and b/dist/showdown.js differ diff --git a/dist/showdown.min.js b/dist/showdown.min.js index 5f33dd9..1425b95 100644 Binary files a/dist/showdown.min.js and b/dist/showdown.min.js differ diff --git a/src/angular.js b/src/angular.js deleted file mode 100644 index 46220f1..0000000 --- a/src/angular.js +++ /dev/null @@ -1,146 +0,0 @@ -//Check if AngularJs and Showdown is defined and only load ng-Showdown if both are present -if (typeof angular !== 'undefined' && typeof showdown !== 'undefined') { - - (function (module, showdown) { - 'use strict'; - - module - .provider('$showdown', provider) - .directive('sdModelToHtml', ['$showdown', markdownToHtmlDirective]) - .filter('sdStripHtml', stripHtmlFilter); - - /** - * Angular Provider - * Enables configuration of showdown via angular.config and Dependency Injection into controllers, views - * directives, etc... This assures the directives and filters provided by the library itself stay consistent - * with the user configurations. - * If the user wants to use a different configuration in a determined context, he can use the "classic" Showdown - * object instead. - */ - function provider() { - - // Configuration parameters for Showdown - var config = { - extensions: [], - stripHtml: true - }; - - /** - * Sets a configuration option - * - * @param {string} key Config parameter key - * @param {string} value Config parameter value - */ - /* jshint validthis: true */ - this.setOption = function (key, value) { - config[key] = value; - - return this; - }; - - /** - * Gets the value of the configuration parameter specified by key - * - * @param {string} key The config parameter key - * @returns {string|null} Returns the value of the config parameter. (or null if the config parameter is not set) - */ - this.getOption = function (key) { - if (config.hasOwnProperty(key)) { - return config.key; - } else { - return null; - } - }; - - /** - * Loads a Showdown Extension - * - * @param {string} extensionName The name of the extension to load - */ - this.loadExtension = function (extensionName) { - config.extensions.push(extensionName); - - return this; - }; - - function SDObject() { - var converter = new showdown.Converter(config); - - /** - * Converts a markdown text into HTML - * - * @param {string} markdown The markdown string to be converted to HTML - * @returns {string} The converted HTML - */ - this.makeHtml = function (markdown) { - return converter.makeHtml(markdown); - }; - - /** - * Strips a text of it's HTML tags - * - * @param {string} text - * @returns {string} - */ - this.stripHtml = function (text) { - return String(text).replace(/<[^>]+>/gm, ''); - }; - } - - // The object returned by service provider - this.$get = function () { - return new SDObject(); - }; - } - - /** - * AngularJS Directive to Md to HTML transformation - * - * Usage example: - *
- * - * @param {showdown.Converter} $showdown - * @returns {*} - */ - function markdownToHtmlDirective($showdown) { - - var link = function (scope, element) { - scope.$watch('model', function (newValue) { - var val; - if (typeof newValue === 'string') { - val = $showdown.makeHtml(newValue); - } else { - val = typeof newValue; - } - element.html(val); - }); - }; - - return { - restrict: 'A', - link: link, - scope: { - model: '=sdModelToHtml' - } - }; - } - - /** - * AngularJS Filter to Strip HTML tags from text - * - * @returns {Function} - */ - function stripHtmlFilter() { - return function (text) { - return String(text).replace(/<[^>]+>/gm, ''); - }; - } - - })(angular.module('showdown', []), showdown); - -} else { - - /** TODO Since this library is opt out, maybe we should not throw an error so we can concatenate this - script with the main lib */ - // throw new Error("ng-showdown was not loaded because one of it's dependencies (AngularJS or Showdown) wasn't met"); -}