Skip to content

Commit

Permalink
Dist folder is commited to Github because of bower packaging. Bumbed …
Browse files Browse the repository at this point in the history
…version to 1.0.2 by use of gulp-bump
  • Loading branch information
ismarslomic committed Oct 3, 2015
1 parent 6b81737 commit 8995739
Show file tree
Hide file tree
Showing 6 changed files with 174 additions and 5 deletions.
1 change: 0 additions & 1 deletion .gitignore
Expand Up @@ -2,6 +2,5 @@
bower_components
node_modules
coverage
dist
.DS_Store
coverage
7 changes: 5 additions & 2 deletions bower.json
@@ -1,6 +1,7 @@
{
"name": "angular-read-more",
"description": "AngularJS Read More Directive",
"version": "1.0.2",
"main": "dist/readmore.min.js",
"keywords": [
"angular",
Expand Down Expand Up @@ -30,13 +31,15 @@
".travis.yml",
"angular-read-more.png",
"gulpfile.js",
"karma.conf.js"
"karma.conf.js",
"package.json"
],
"dependencies": {
"angular": "~1.4.6",
"angular-animate": "~1.4.6"
},
"devDependencies": {
"angular-mocks": "~1.4.6"
"angular-mocks": "~1.4.6",
"angular-read-more": "~1.0.1"
}
}
155 changes: 155 additions & 0 deletions dist/readmore.js
@@ -0,0 +1,155 @@
/*
* angular-read-more v1.0.0
* (c) 2014-2015 Hitesh Modha
* License: MIT
*/

'use strict';

angular
.module('hm.readmore', ['ngAnimate'])
.directive('hmReadMore', readMore)
.config(function ($logProvider) {
$logProvider.debugEnabled(false);
});

/** @ngInject */
function readMore($templateCache) {
var directive = {
restrict: 'AE',
scope: {
hmText: '@',
hmLimit: '@',
hmMoreText: '@',
hmLessText: '@',
hmDotsClass: '@',
hmLinkClass: '@'
},
template: $templateCache.get('readmore.template.html'),
controller: hmReadMoreController,
controllerAs: 'vm',
bindToController: true
};

return directive;

/** @ngInject */
// "bindToController: true" binds scope variables to Controller
function hmReadMoreController($filter, $scope, $log) {
var vm = this;
vm.toggle = {
dots: '...',
dotsClass: vm.hmDotsClass,
linkClass: vm.hmLinkClass
}

// Toggle functions
function setToggleMoreText() {
$log.debug('setToggleMoreText');
vm.toggle.moreText = vm.hmMoreText || 'Read more';
}

function setToggleLessText() {
$log.debug('setToggleLessText');
vm.toggle.lessText = vm.hmLessText || 'Read less';
}

function setCurrentToggleText() {
$log.debug('setCurrentToggleText');
vm.toggle.text = vm.toggle.state ? vm.toggle.lessText : vm.toggle.moreText;
}

function setShowToggle() {
$log.debug('setShowToggle');
vm.toggle.show = vm.moreText && vm.moreText.length > 0;
}

vm.doToggle = function () {
$log.debug('doToggle');
vm.toggle.state = !vm.toggle.state;
vm.showMoreText = !vm.showMoreText;
setCurrentToggleText();
}

$scope.$watch('vm.hmMoreText', function (newValue, oldValue) {
if (newValue != oldValue) {
$log.debug('hmMoreText changed');
setToggleMoreText();
setCurrentToggleText();
}
});

$scope.$watch('vm.hmLessText', function (newValue, oldValue) {
if (newValue != oldValue) {
$log.debug('hmLessText changed');
setToggleLessText();
setCurrentToggleText();
}
});

$scope.$watch('vm.hmDotsClass', function (newValue, oldValue) {
if (newValue != oldValue) {
$log.debug('hmDotsClass changed');
vm.toggle.dotsClass = vm.hmDotsClass;
}
});

$scope.$watch('vm.hmLinkClass', function (newValue, oldValue) {
if (newValue != oldValue) {
$log.debug('hmLinkClass changed');
vm.toggle.linkClass = vm.hmLinkClass;
}
});

// ----------

// If negative number, set to undefined
function validateLimit() {
$log.debug('validateLimit');
vm.hmLimit = (vm.hmLimit && vm.hmLimit <= 0) ? undefined : vm.hmLimit;
}

function getMoreTextLimit() {
$log.debug('getMoreTextLimit');
return vm.hmLimit && vm.hmLimit < vm.hmText.length ? vm.hmLimit - vm.hmText.length : 0;
}

function setLessAndMoreText() {
$log.debug('setLessAndMoreText');
vm.lessText = $filter('limitTo')(vm.hmText, vm.hmLimit);
vm.moreText = $filter('limitTo')(vm.hmText, getMoreTextLimit());
}

function initialize() {
$log.debug('initialize');
setToggleMoreText();
setToggleLessText();
validateLimit();
setLessAndMoreText();
setShowToggle();
setCurrentToggleText();
}

initialize();

$scope.$watch('vm.hmText', function (newValue, oldValue) {
if (newValue != oldValue) {
$log.debug('hmText changed');
validateLimit();
setLessAndMoreText();
setShowToggle();
}
});

$scope.$watch('vm.hmLimit', function (newValue, oldValue) {
if (newValue != oldValue) {
$log.debug('hmLimit changed');
validateLimit();
setLessAndMoreText();
setShowToggle();
}
});
}
};

angular.module("hm.readmore").run(["$templateCache", function($templateCache) {$templateCache.put("readmore.template.html","<span name=\"text\">\n <span>{{ vm.lessText }}</span><span ng-show=\"vm.showMoreText\" class=\"more-show-hide\">{{ vm.moreText }}</span>\n</span>\n\n<span name=\"toggle\" ng-show=\"vm.toggle.show\">\n <span ng-class=\"vm.toggle.dotsClass\" ng-show=\"!vm.toggle.state\">{{ vm.toggle.dots }}</span>\n <a ng-class=\"vm.toggle.linkClass\" ng-click=\"vm.doToggle()\">{{ vm.toggle.text }}</a>\n</span>\n");}]);
1 change: 1 addition & 0 deletions dist/readmore.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 9 additions & 1 deletion gulpfile.js
Expand Up @@ -11,7 +11,8 @@ var gulp = require('gulp'),
ngAnnotate = require('gulp-ng-annotate'),
browserSync = require('browser-sync'),
coveralls = require('gulp-coveralls'),
shell = require('gulp-shell');
shell = require('gulp-shell'),
bump = require('gulp-bump');


// Use the gulp-angular-templatecache in order to create JS file of HTML templates to
Expand Down Expand Up @@ -81,3 +82,10 @@ gulp.task('browser-sync', function () {
gulp.task('watch', ['build', 'browser-sync'], function () {
gulp.watch('src/**/*.*', ['build']);
});

// Update bower, component, npm at once:
gulp.task('bump', function(){
gulp.src(['./bower.json', './package.json'])
.pipe(bump())
.pipe(gulp.dest('./'));
});
5 changes: 4 additions & 1 deletion package.json
@@ -1,6 +1,6 @@
{
"name": "angular-read-more",
"version": "1.0.0",
"version": "1.0.2",
"description": "Simple AngularJS Read More Directive",
"main": "./src/readmore.js",
"repository": {
Expand Down Expand Up @@ -50,5 +50,8 @@
"karma-ng-html2js-preprocessor": "^0.1.2",
"karma-phantomjs-launcher": "^0.2.1",
"phantomjs": "^1.9.18"
},
"dependencies": {
"gulp-bump": "^1.0.0"
}
}

0 comments on commit 8995739

Please sign in to comment.