Browse Source

Sharp framework

Alan Colon 7 năm trước cách đây
mục cha
commit
e2d05e062b

+ 15 - 0
app/app.js

@@ -1,5 +1,20 @@
 const angular = require('angular')
 require('material-framework/app')
+const routes = require('./routes')
 
 const app = angular.module('app', ['material-framework'])
 
+app.config(($routeProvider, $mdThemingProvider) => {
+  // TODO: Select a theme
+  const palettes = ['red', 'pink', 'purple', 'deep-purple', 'indigo', 'blue', 'light-blue', 'cyan', 'teal', 'green', 'light-green', 'lime', 'yellow', 'amber', 'orange', 'deep-orange', 'brown', 'grey', 'blue-grey']
+  const randomPalette = () => palettes[Math.floor(Math.random() * palettes.length)]
+  $mdThemingProvider.theme('default')
+    .primaryPalette(randomPalette())
+    .accentPalette(randomPalette())
+    .warnPalette(randomPalette())
+
+  routes($routeProvider)
+
+})
+
+module.exports = app

+ 5 - 0
app/assets/index.js

@@ -0,0 +1,5 @@
+const assets = require('material-framework/app/assets')
+module.exports = Object.assign(assets, {
+  // TODO: Insert project assets
+  // Override logo with image
+})

+ 12 - 0
app/components/dashboard-page.js

@@ -0,0 +1,12 @@
+const app = require('../app')
+
+app.component('appDashboardPage', {
+  template: html`
+    <app-user-area>
+      Dashboard
+    </app-user-area>
+  `,
+  controllerAs: 'dashboard',
+  controller: function() {
+  }
+})

+ 2 - 0
app/components/index.js

@@ -0,0 +1,2 @@
+require('./user-area-nav')
+require('./dashboard-page')

+ 17 - 0
app/components/user-area-nav.js

@@ -0,0 +1,17 @@
+const app = require('../app')
+const { dashboardIcon } = require('../assets')
+
+app.component('appUserAreaNav', {
+  template: html`
+    <h3>
+      Intelligence
+    </h3>
+
+    <md-menu-item>
+      <md-button ng-href="/dashboard">
+        <md-icon md-svg-icon="${dashboardIcon}"></md-icon>
+        Dashboard
+      </md-button>
+    </md-menu-item>
+  `
+})

+ 8 - 1
app/index.js

@@ -1 +1,8 @@
-require('./app')
+const assets = require('./assets')
+const app = require('./app')
+require('./services')
+require('./components')
+module.exports = {
+  app,
+  assets
+}

+ 3 - 0
app/routes.js

@@ -0,0 +1,3 @@
+module.exports = function($routeProvider) {
+  $routeProvider.when('/dashboard', {template: '<app-dashboard-page />'})
+}

+ 6 - 0
app/services/api.js

@@ -0,0 +1,6 @@
+const app = require('../app')
+
+app.run(function(api) {
+  // TODO: Assign API functions:
+  // api.statistics = () => api.get('/api/statistics')
+})

+ 1 - 0
app/services/index.js

@@ -0,0 +1 @@
+require('./api')

+ 3 - 1
bin/project.js

@@ -1,4 +1,6 @@
 const config = require('../config')
 const frameworkConfig = require('material-framework/config')
 frameworkConfig.inject(config)
-require('material-framework/bin/project')
+require('../lib/server')
+require('../lib/database')
+require('material-framework/bin/project')

+ 5 - 0
lib/controllers/index.js

@@ -0,0 +1,5 @@
+const { controllers: C } = require('material-framework/server')
+
+module.exports = Object.assign(C, {
+  // TODO: API Controllers
+})

+ 5 - 0
lib/database/index.js

@@ -0,0 +1,5 @@
+const {database} = require('material-framework/server')
+
+module.exports = Object.assign(database, {
+  // TODO: App models
+})

+ 4 - 0
lib/routes.js

@@ -0,0 +1,4 @@
+const C = require('./controllers')
+module.exports = app => {
+  // TODO: REST Routes
+}

+ 3 - 2
lib/server.js

@@ -1,2 +1,3 @@
-const app = require('material-framework/server')
-app.start()
+const { app } = require('material-framework/server')
+const routes = require('./routes')
+routes(app)