Socket
Socket
Sign inDemoInstall

ember-welcome-page

Package Overview
Dependencies
Maintainers
4
Versions
26
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ember-welcome-page - npm Package Compare versions

Comparing version 1.0.3 to 2.0.0

addon/components/welcome-page.js

104

index.js
/* jshint node: true */
'use strict';
var existsSync = require('exists-sync');
var fs = require('fs');
var path = require('path');
var VersionChecker = require('ember-cli-version-checker');
var walkSync = require('walk-sync');
var EmberAddon = require('ember-cli/lib/broccoli/ember-addon');
var Funnel = require('broccoli-funnel');
function getWelcomePageHTML(baseURL, version) {
var lodash = require('lodash');
var fileName = path.join(__dirname, 'vendor', 'welcome.html');
var contents = fs.readFileSync(fileName, { encoding: 'utf8' });
var compiled = lodash.template(contents);
return compiled({ baseURL: baseURL, version: version });
}
module.exports = {

@@ -25,89 +13,19 @@ name: 'ember-welcome-page',

this.app = app;
if (this._isProduction()) { return; }
var checker = new VersionChecker(this);
this.guidesVersion = this.massageVersionNumber(checker.for('ember', 'bower').version || checker.for('ember-core', 'npm').version);
this.jsExt = this.app.registry.extensionsForType('js');
this.templateExt = this.app.registry.extensionsForType('template');
app.import('vendor/construction.png');
app.import('vendor/welcome-page.css');
},
serverMiddleware: function(config) {
var app = config.app;
var options = config.options;
treeForAddon: function() {
if (this._isProduction()) { return false; }
this.ui.writeInfoLine("\nJust getting started with Ember? Please visit http://localhost:" + options.port + "/ember-getting-started to get going\n");
var _this = this;
var tree = this._super.treeForAddon.apply(this, arguments);
var welcomePageHTML = getWelcomePageHTML(options.baseURL, this.guidesVersion);
app.get('/ember-getting-started-image.png', function (req, res, next) {
res.sendFile(__dirname + '/vendor/construction.png', options, function (err) {
if (err) {
res.status(err.status).end();
}
});
});
app.get('/ember-getting-started', function (req, res, next) {
res.send(welcomePageHTML);
});
// we'll assume we're running '/' but then bail if we aren't supposed to be overriding
app.get(options.baseURL, function(req, res, next) {
if (_this.shouldOverride(_this.jsExt, _this.templateExt, _this.app.project.root)) {
res.send(welcomePageHTML);
} else {
next();
}
});
return tree;
},
/* requested tests (need to be watching in real-time preferably ...)
- Has an application.hbs been created?
- Has an index.hbs been created?
- Have any routes been created?
*/
shouldOverride: function(jsExtensions, templateExtensions, folderPath) {
var appFiles = walkSync(path.join(folderPath, 'app'));
var jsFiles = appFiles
.filter(function(fileName) {
var extension = path.extname(fileName).slice(1); // remove leading `.`
return jsExtensions.indexOf(extension) > -1;
});
var templateFiles = appFiles
.filter(function(fileName) {
var extension = path.extname(fileName).slice(1); // remove leading `.`
return templateExtensions.indexOf(extension) > -1;
});
var routeFiles = jsFiles
.filter(function(fileName) {
var baseName = path.basename(fileName);
return baseName === 'route' || fileName.match(/^routes/);
});
var routerPath = path.join(folderPath, 'app', 'router.js');
var hasRouterMapContents = false;
if (existsSync(routerPath)) {
var router = fs.readFileSync(routerPath, { encoding: 'utf8' });
hasRouterMapContents = router.match(/this\.route|this\.resource/);
}
var hasTemplates = templateFiles.length > 0;
var hasRoutes = routeFiles.length > 0;
return !hasTemplates && !hasRoutes && !hasRouterMapContents;
},
massageVersionNumber: function(version) {
return version.replace(/(\d).(\d).\d/, '$1.$2.0');
_isProduction: function() {
return EmberAddon.env() === 'production';
}
};
{
"name": "ember-welcome-page",
"version": "1.0.3",
"version": "2.0.0",
"description": "Welcome page for Ember-CLI",

@@ -12,4 +12,3 @@ "directories": {

"start": "ember server",
"test": "ember try:testall",
"test-node": "node node-tests/nodetest-runner.js"
"test": "ember try:each"
},

@@ -23,24 +22,21 @@ "repository": "https://github.com/ember-cli/ember-welcome-page",

"devDependencies": {
"broccoli-asset-rev": "^2.2.0",
"ember-ajax": "0.7.1",
"ember-cli": "2.3.0",
"broccoli-asset-rev": "^2.4.2",
"ember-ajax": "^2.0.1",
"ember-cli": "2.8.0",
"ember-cli-app-version": "^1.0.0",
"ember-cli-dependency-checker": "^1.2.0",
"ember-cli-htmlbars-inline-precompile": "^0.3.1",
"ember-cli-inject-live-reload": "^1.3.1",
"ember-cli-qunit": "^1.2.1",
"ember-cli-release": "^1.0.0-beta.1",
"ember-cli-sri": "^2.0.0",
"ember-cli-inject-live-reload": "^1.4.0",
"ember-cli-jshint": "^1.0.0",
"ember-cli-qunit": "^2.1.0",
"ember-cli-release": "^0.2.9",
"ember-cli-sri": "^2.1.0",
"ember-cli-test-loader": "^1.1.0",
"ember-cli-uglify": "^1.2.0",
"ember-data": "^2.3.0",
"ember-data": "^2.8.0",
"ember-disable-prototype-extensions": "^1.1.0",
"ember-disable-proxy-controllers": "^1.0.1",
"ember-export-application-global": "^1.0.4",
"ember-load-initializers": "^0.5.0",
"ember-export-application-global": "^1.0.5",
"ember-load-initializers": "^0.5.1",
"ember-resolver": "^2.0.3",
"ember-try": "^0.1.2",
"glob": "^7.0.3",
"loader.js": "^4.0.0",
"mocha": "^2.4.5",
"mocha-only-detector": "^0.1.0"
"loader.js": "^4.0.1"
},

@@ -52,14 +48,8 @@ "keywords": [

"broccoli-funnel": "^1.0.1",
"broccoli-merge-trees": "^1.1.1",
"ember-cli-babel": "^5.1.5",
"ember-cli-htmlbars": "^1.0.1",
"ember-cli-version-checker": "1.1.6",
"exists-sync": "0.0.3",
"lodash": "^4.7.0",
"walk-sync": "^0.2.6"
"ember-cli-babel": "^5.1.6",
"ember-cli-htmlbars": "^1.0.3"
},
"ember-addon": {
"before": "serve-files-middleware",
"configPath": "tests/dummy/config"
}
}

@@ -1,9 +0,10 @@

# Ember-welcome-page
# Ember Welcome Page
[![Build Status](https://travis-ci.org/ember-cli/ember-welcome-page.svg?branch=master)](https://travis-ci.org/ember-cli/ember-welcome-page)
Handles displaying a nice welcome page for Ember-CLI instead of the plain
one that came standard
Displays a nice welcome page for newly generated applications with links to resources.
## Installation
* `git clone` this repository
* `git clone <repository-url>` this repository
* `cd ember-welcome-page`
* `npm install`

@@ -14,11 +15,15 @@ * `bower install`

* Test by copying the contents of the `app` folder from `node-tests/fixtures/<test>` into `app`
* `ember server`
* Visit your app at http://localhost:4200.
* `ember serve`
* Visit your app at [http://localhost:4200](http://localhost:4200).
Note that changes to files in `app` aren't noticed, as we aren't watching
file system changes with this add-on.
## Running Tests
* `npm run node-test` (Runs `ember try:testall` to test your addon against multiple Ember versions)
* `npm test` (Runs `ember try:each` to test your addon against multiple Ember versions)
* `ember test`
* `ember test --server`
## Building
* `ember build`
For more information on using ember-cli, visit [http://ember-cli.com/](http://ember-cli.com/).

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc