From f1a3e2dd5837c6b7a66486b5566e422ca10a8399 Mon Sep 17 00:00:00 2001 From: jgallego Date: Wed, 5 Oct 2016 15:13:28 +0200 Subject: [PATCH] componentes basicos con prueba basica --- @salix/core/src/button/button.bt.js | 2 +- @salix/core/src/button/button.mt.html | 4 +- @salix/core/src/button/button.mt.js | 2 +- @salix/core/src/check/check.bt.html | 2 + @salix/core/src/check/check.bt.js | 1 + @salix/core/src/check/check.js | 18 +++++ @salix/core/src/check/check.mt.html | 3 + @salix/core/src/check/check.mt.js | 23 +++++++ @salix/core/src/core.js | 12 ++++ @salix/core/src/interpolate.js | 76 ++++++++++++++++----- @salix/core/src/radio/radio.bt.html | 2 + @salix/core/src/radio/radio.bt.js | 1 + @salix/core/src/radio/radio.js | 18 +++++ @salix/core/src/radio/radio.mt.html | 2 + @salix/core/src/radio/radio.mt.js | 23 +++++++ @salix/core/src/resolveDefaultComponents.js | 16 +++-- @salix/core/src/textfield/textfield.bt.html | 2 + @salix/core/src/textfield/textfield.bt.js | 1 + @salix/core/src/textfield/textfield.js | 18 +++++ @salix/core/src/textfield/textfield.mt.html | 4 ++ @salix/core/src/textfield/textfield.mt.js | 25 +++++++ @salix/core/src/txt/txt.bt.html | 2 + @salix/core/src/txt/txt.bt.js | 1 + @salix/core/src/txt/txt.js | 18 +++++ @salix/core/src/txt/txt.mt.html | 1 + @salix/core/src/txt/txt.mt.js | 20 ++++++ @salix/vendor/src/angular-vendor.js | 4 +- index.html | 9 +++ npm-debug.log | 26 ------- 29 files changed, 280 insertions(+), 56 deletions(-) create mode 100644 @salix/core/src/check/check.bt.html create mode 100644 @salix/core/src/check/check.bt.js create mode 100644 @salix/core/src/check/check.js create mode 100644 @salix/core/src/check/check.mt.html create mode 100644 @salix/core/src/check/check.mt.js create mode 100644 @salix/core/src/radio/radio.bt.html create mode 100644 @salix/core/src/radio/radio.bt.js create mode 100644 @salix/core/src/radio/radio.js create mode 100644 @salix/core/src/radio/radio.mt.html create mode 100644 @salix/core/src/radio/radio.mt.js create mode 100644 @salix/core/src/textfield/textfield.bt.html create mode 100644 @salix/core/src/textfield/textfield.bt.js create mode 100644 @salix/core/src/textfield/textfield.js create mode 100644 @salix/core/src/textfield/textfield.mt.html create mode 100644 @salix/core/src/textfield/textfield.mt.js create mode 100644 @salix/core/src/txt/txt.bt.html create mode 100644 @salix/core/src/txt/txt.bt.js create mode 100644 @salix/core/src/txt/txt.js create mode 100644 @salix/core/src/txt/txt.mt.html create mode 100644 @salix/core/src/txt/txt.mt.js delete mode 100644 npm-debug.log diff --git a/@salix/core/src/button/button.bt.js b/@salix/core/src/button/button.bt.js index bffd70bd1..7312e96b3 100644 --- a/@salix/core/src/button/button.bt.js +++ b/@salix/core/src/button/button.bt.js @@ -13,7 +13,7 @@ export function factory() { return { template: template, default: { - texto: DEFAULT_TEXT, + text: DEFAULT_TEXT, className: DEFAULT_CLASS, enabled: 'true', typeName: 'button' diff --git a/@salix/core/src/button/button.mt.html b/@salix/core/src/button/button.mt.html index 0ff8edbeb..211963288 100644 --- a/@salix/core/src/button/button.mt.html +++ b/@salix/core/src/button/button.mt.html @@ -1,3 +1,3 @@ - \ No newline at end of file diff --git a/@salix/core/src/button/button.mt.js b/@salix/core/src/button/button.mt.js index d1b28ced1..9f053d63f 100644 --- a/@salix/core/src/button/button.mt.js +++ b/@salix/core/src/button/button.mt.js @@ -13,7 +13,7 @@ export function factory() { return { template: template, default: { - texto: DEFAULT_TEXT, + text: DEFAULT_TEXT, className: DEFAULT_CLASS, enabled: 'true', typeName: 'button' diff --git a/@salix/core/src/check/check.bt.html b/@salix/core/src/check/check.bt.html new file mode 100644 index 000000000..4505aeb41 --- /dev/null +++ b/@salix/core/src/check/check.bt.html @@ -0,0 +1,2 @@ + + diff --git a/@salix/core/src/check/check.bt.js b/@salix/core/src/check/check.bt.js new file mode 100644 index 000000000..a5cf0bd45 --- /dev/null +++ b/@salix/core/src/check/check.bt.js @@ -0,0 +1 @@ +// por definir diff --git a/@salix/core/src/check/check.js b/@salix/core/src/check/check.js new file mode 100644 index 000000000..e6b3e282d --- /dev/null +++ b/@salix/core/src/check/check.js @@ -0,0 +1,18 @@ +import {module as _module} from '../module'; +import * as resolveFactory from '../resolveDefaultComponents'; +import * as util from '../util'; + +const _NAME = 'check'; +export const NAME = util.getName(_NAME); + +directive.$inject =[resolveFactory.NAME]; +export function directive (resolve){ + return{ + require:'E', + template: function(_,attr){ + return resolve.getTemplate(_NAME, attr); + } + } +} + +_module.directive(NAME,directive); diff --git a/@salix/core/src/check/check.mt.html b/@salix/core/src/check/check.mt.html new file mode 100644 index 000000000..13d98afe2 --- /dev/null +++ b/@salix/core/src/check/check.mt.html @@ -0,0 +1,3 @@ + + *[text]* + diff --git a/@salix/core/src/check/check.mt.js b/@salix/core/src/check/check.mt.js new file mode 100644 index 000000000..5c043ad4b --- /dev/null +++ b/@salix/core/src/check/check.mt.js @@ -0,0 +1,23 @@ +import {module as _module} from '../module'; +import * as util from '../util'; +import * as constant from '../constants'; +import template from './check.mt.html'; + +const _NAME = 'check'; +const DEFAULT_TEXT = 'check'; +const DEFAULT_CLASS = 'mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect'; + +export const NAME = util.getFactoryName(_NAME + constant.MATERIAL_DESIGN_FRAMEWORK); + +export function factory() { + return { + template: template, + default: { + text: DEFAULT_TEXT, + enabled: 'true', + className: DEFAULT_CLASS + } + } +} + +_module.factory(NAME, factory); diff --git a/@salix/core/src/core.js b/@salix/core/src/core.js index 511f8e75b..933f71f98 100644 --- a/@salix/core/src/core.js +++ b/@salix/core/src/core.js @@ -8,3 +8,15 @@ export {NAME as INTERPOLATE,Interpolate} from './interpolate' export {NAME as BUTTON,directive as ButtonDirective} from './button/button' export {NAME as BUTTONMT,factory as buttonmt} from './button/button.mt' export {NAME as BUTTONBT,factory as buttonbt} from './button/button.bt' +export {NAME as CHECK,directive as CheckDirective} from './check/check' +export {NAME as CHECKMT,factory as checknmt} from './check/check.mt' +export {NAME as CHECKBT,factory as checkbt} from './check/check.bt' +export {NAME as RADIO,directive as RadioDirective} from './radio/radio' +export {NAME as RADIOMT,factory as radionmt} from './radio/radio.mt' +export {NAME as RADIOBT,factory as radiobt} from './radio/radio.bt' +export {NAME as TEXTFIELD,directive as TextfieldDirective} from './textfield/textfield' +export {NAME as TEXTFIELDMT,factory as textfieldmt} from './textfield/textfield.mt' +export {NAME as TEXTFIELDBT,factory as textfieldbt} from './textfield/textfield.bt' +export {NAME as TXT,directive as TxtDirective} from './txt/txt' +export {NAME as TXTMT,factory as txtmt} from './txt/txt.mt' +export {NAME as TXTBT,factory as txtbt} from './txt/txt.bt' \ No newline at end of file diff --git a/@salix/core/src/interpolate.js b/@salix/core/src/interpolate.js index f65e54dcb..cdcc387ff 100644 --- a/@salix/core/src/interpolate.js +++ b/@salix/core/src/interpolate.js @@ -1,16 +1,54 @@ import {module as _module} from './module'; import * as util from './util'; +import {ng} from '@salix/vendor' export const NAME = util.getProviderName('interpolate'); -export class Interpolate -{ - contructor (){ - this._startSymbol='*['; - - this._endSymbol = ']'; + + function minErr(){ + } + function stringify(value) { + if (value == null) { // null || undefined + return ''; + } + switch (typeof value) { + case 'string': + break; + case 'number': + value = '' + value; + break; + default: + value = angular.toJson(value); + } + + return value; + } + + var $interpolateMinErr =ng.angular.$interpolateMinErr = ng.$$minErr('$interpolate'); + + $interpolateMinErr.throwNoconcat = function (text) { + throw $interpolateMinErr('noconcat', + 'Error while interpolating: {0}\nStrict Contextual Escaping disallows ' + + 'interpolations that concatenate multiple expressions when a trusted value is ' + + 'required. See http://docs.angularjs.org/api/ng.$sce', text); + }; + + $interpolateMinErr.interr = function (text, err) { + return $interpolateMinErr('interr', 'Can\'t interpolate: {0}\n{1}', text, err.toString()); + }; + + + +export class Interpolate +{ + constructor (){ + this._startSymbol='*['; + + this._endSymbol = ']*'; + } + set startSymbol (value) { if (value) { this._startSymbol = value; @@ -27,20 +65,22 @@ export class Interpolate } else { return this._endSymbol; } - }; + }; + $get($parse, $exceptionHandler, $sce) { var startSymbolLength = this._startSymbol.length, endSymbolLength = this._endSymbol.length, escapedStartRegexp = new RegExp(this._startSymbol.replace(/./g, escape), 'g'), - escapedEndRegexp = new RegExp(this._endSymbol.replace(/./g, escape), 'g'); + escapedEndRegexp = new RegExp(this._endSymbol.replace(/./g, escape), 'g'), + self = this; function escape(ch) { return '\\\\\\' + ch; } function unescapeText(text) { - return text.replace(escapedStartRegexp, this._startSymbol). - replace(escapedEndRegexp, this._endSymbol); + return text.replace(escapedStartRegexp, self._startSymbol). + replace(escapedEndRegexp, self._endSymbol); } // TODO: this is the same as the constantWatchDelegate in parse.js @@ -52,10 +92,10 @@ export class Interpolate return unwatch; } - function $interpolate(text, mustHaveExpression, trustedContext, allOrNothing) - { + function $interpolate(text, mustHaveExpression, trustedContext, allOrNothing) + { // Provide a quick exit and simplified result function for text with no interpolation - if (!text.length || text.indexOf(this._startSymbol) === -1) + if (!text.length || text.indexOf(self._startSymbol) === -1) { var constantInterp; if (!mustHaveExpression) { @@ -80,12 +120,12 @@ export class Interpolate expressionPositions = []; while (index < textLength) { - if (((startIndex = text.indexOf(this._startSymbol, index)) !== -1) && - ((endIndex = text.indexOf(this._endSymbol, startIndex + this._startSymbolLength)) !== -1)) { + if (((startIndex = text.indexOf(self._startSymbol, index)) !== -1) && + ((endIndex = text.indexOf(self._endSymbol, startIndex + startSymbolLength)) !== -1)) { if (index !== startIndex) { concat.push(unescapeText(text.substring(index, startIndex))); } - exp = text.substring(startIndex + this._startSymbolLength, endIndex); + exp = text.substring(startIndex + startSymbolLength, endIndex); expressions.push(exp); parseFns.push($parse(exp, parseStringifyInterceptor)); index = endIndex + endSymbolLength; @@ -158,10 +198,10 @@ export class Interpolate $interpolate.endSymbol = function () { return endSymbol; }; - + return $interpolate; } } -_module.provider(NAME, Interpolate); +_module.provider(NAME, () => new Interpolate()); diff --git a/@salix/core/src/radio/radio.bt.html b/@salix/core/src/radio/radio.bt.html new file mode 100644 index 000000000..4505aeb41 --- /dev/null +++ b/@salix/core/src/radio/radio.bt.html @@ -0,0 +1,2 @@ + + diff --git a/@salix/core/src/radio/radio.bt.js b/@salix/core/src/radio/radio.bt.js new file mode 100644 index 000000000..a5cf0bd45 --- /dev/null +++ b/@salix/core/src/radio/radio.bt.js @@ -0,0 +1 @@ +// por definir diff --git a/@salix/core/src/radio/radio.js b/@salix/core/src/radio/radio.js new file mode 100644 index 000000000..b84ffce6e --- /dev/null +++ b/@salix/core/src/radio/radio.js @@ -0,0 +1,18 @@ +import {module as _module} from '../module'; +import * as resolveFactory from '../resolveDefaultComponents'; +import * as util from '../util'; + +const _NAME = 'radio'; +export const NAME = util.getName(_NAME); + +directive.$inject =[resolveFactory.NAME]; +export function directive (resolve){ + return{ + require:'E', + template: function(_,attr){ + return resolve.getTemplate(_NAME, attr); + } + } +} + +_module.directive(NAME,directive); diff --git a/@salix/core/src/radio/radio.mt.html b/@salix/core/src/radio/radio.mt.html new file mode 100644 index 000000000..0d9e7e77c --- /dev/null +++ b/@salix/core/src/radio/radio.mt.html @@ -0,0 +1,2 @@ + + *[text]* diff --git a/@salix/core/src/radio/radio.mt.js b/@salix/core/src/radio/radio.mt.js new file mode 100644 index 000000000..1fee7e597 --- /dev/null +++ b/@salix/core/src/radio/radio.mt.js @@ -0,0 +1,23 @@ +import {module as _module} from '../module'; +import * as util from '../util'; +import * as constant from '../constants'; +import template from './radio.mt.html'; + +const _NAME = 'radio'; +const DEFAULT_TEXT = 'radio'; +const DEFAULT_CLASS = 'mdl-radio mdl-js-radio mdl-js-ripple-effect'; + +export const NAME = util.getFactoryName(_NAME + constant.MATERIAL_DESIGN_FRAMEWORK); + +export function factory() { + return { + template: template, + default: { + text: DEFAULT_TEXT, + enabled: 'true', + className: DEFAULT_CLASS + } + } +} + +_module.factory(NAME, factory); diff --git a/@salix/core/src/resolveDefaultComponents.js b/@salix/core/src/resolveDefaultComponents.js index 563361f74..4013a77d2 100644 --- a/@salix/core/src/resolveDefaultComponents.js +++ b/@salix/core/src/resolveDefaultComponents.js @@ -1,37 +1,39 @@ import {module as _module} from './module'; import * as util from './util'; import constant from './constants'; -import interpolate from './interpolate'; +import Interpolate from './interpolate'; export const NAME = util.getProviderName('ResolveDefaultComponent'); export class ResolveDefaultComponent { constructor(){ - this._name="mt"; + this._frameworkName="mt"; } set frameworkName(value){ //mt or bt this._frameworkName = value; } - $get($injector,interpolate){ + $get($injector,vnInterpolate){ //Service Locator return { getTemplate:function(name ,attr){ + this._frameworkName="mt"; let _name = util.getFactoryName( name + this._frameworkName); - let defaultfactory = $injector.has(_name) ? $injector.get():undefined; // vnbutonmtFactory + let defaultfactory = $injector.has(_name) ? $injector.get(_name):undefined; // vnbutonmtFactory if(!defaultfactory) { - throw new Error("factoty is not defined"); + throw new Error("factory is not defined"); } let defaultValues = defaultfactory.default; let template = defaultfactory.template; let scope = Object.assign(defaultValues || {},attr||{}); - return template && interpolate(template)(scope); + return template && vnInterpolate(template)(scope); } }; } } -_module.provider(NAME,ResolveDefaultComponent) +// _module.provider(NAME,ResolveDefaultComponent) +_module.provider(NAME,() => new ResolveDefaultComponent()); \ No newline at end of file diff --git a/@salix/core/src/textfield/textfield.bt.html b/@salix/core/src/textfield/textfield.bt.html new file mode 100644 index 000000000..4505aeb41 --- /dev/null +++ b/@salix/core/src/textfield/textfield.bt.html @@ -0,0 +1,2 @@ + + diff --git a/@salix/core/src/textfield/textfield.bt.js b/@salix/core/src/textfield/textfield.bt.js new file mode 100644 index 000000000..a5cf0bd45 --- /dev/null +++ b/@salix/core/src/textfield/textfield.bt.js @@ -0,0 +1 @@ +// por definir diff --git a/@salix/core/src/textfield/textfield.js b/@salix/core/src/textfield/textfield.js new file mode 100644 index 000000000..8cdbfe128 --- /dev/null +++ b/@salix/core/src/textfield/textfield.js @@ -0,0 +1,18 @@ +import {module as _module} from '../module'; +import * as resolveFactory from '../resolveDefaultComponents'; +import * as util from '../util'; + +const _NAME = 'textfield'; +export const NAME = util.getName(_NAME); + +directive.$inject =[resolveFactory.NAME]; +export function directive (resolve){ + return{ + require:'E', + template: function(_,attr){ + return resolve.getTemplate(_NAME, attr); + } + } +} + +_module.directive(NAME,directive); diff --git a/@salix/core/src/textfield/textfield.mt.html b/@salix/core/src/textfield/textfield.mt.html new file mode 100644 index 000000000..03c055503 --- /dev/null +++ b/@salix/core/src/textfield/textfield.mt.html @@ -0,0 +1,4 @@ +
+ + +
\ No newline at end of file diff --git a/@salix/core/src/textfield/textfield.mt.js b/@salix/core/src/textfield/textfield.mt.js new file mode 100644 index 000000000..7caf83369 --- /dev/null +++ b/@salix/core/src/textfield/textfield.mt.js @@ -0,0 +1,25 @@ +import {module as _module} from '../module'; +import * as util from '../util'; +import * as constant from '../constants'; +import template from './textfield.mt.html'; + +const _NAME = 'textfield'; +const DEFAULT_TEXT = 'text'; +const DEFAULT_CLASS = 'mdl-textfield__input'; +const DEFAULT_TYPE = 'text'; + +export const NAME = util.getFactoryName(_NAME + constant.MATERIAL_DESIGN_FRAMEWORK); + +export function factory() { + return { + template: template, + default: { + text: DEFAULT_TEXT, + enabled: 'enabled', + className: DEFAULT_CLASS, + type: DEFAULT_TYPE + } + } +} + +_module.factory(NAME, factory); diff --git a/@salix/core/src/txt/txt.bt.html b/@salix/core/src/txt/txt.bt.html new file mode 100644 index 000000000..4505aeb41 --- /dev/null +++ b/@salix/core/src/txt/txt.bt.html @@ -0,0 +1,2 @@ + + diff --git a/@salix/core/src/txt/txt.bt.js b/@salix/core/src/txt/txt.bt.js new file mode 100644 index 000000000..a5cf0bd45 --- /dev/null +++ b/@salix/core/src/txt/txt.bt.js @@ -0,0 +1 @@ +// por definir diff --git a/@salix/core/src/txt/txt.js b/@salix/core/src/txt/txt.js new file mode 100644 index 000000000..2ad20698c --- /dev/null +++ b/@salix/core/src/txt/txt.js @@ -0,0 +1,18 @@ +import {module as _module} from '../module'; +import * as resolveFactory from '../resolveDefaultComponents'; +import * as util from '../util'; + +const _NAME = 'txt'; +export const NAME = util.getName(_NAME); + +directive.$inject =[resolveFactory.NAME]; +export function directive (resolve){ + return{ + require:'E', + template: function(_,attr){ + return resolve.getTemplate(_NAME, attr); + } + } +} + +_module.directive(NAME,directive); diff --git a/@salix/core/src/txt/txt.mt.html b/@salix/core/src/txt/txt.mt.html new file mode 100644 index 000000000..9f95f13b3 --- /dev/null +++ b/@salix/core/src/txt/txt.mt.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/@salix/core/src/txt/txt.mt.js b/@salix/core/src/txt/txt.mt.js new file mode 100644 index 000000000..15f774586 --- /dev/null +++ b/@salix/core/src/txt/txt.mt.js @@ -0,0 +1,20 @@ +import {module as _module} from '../module'; +import * as util from '../util'; +import * as constant from '../constants'; +import template from './txt.mt.html'; + +const _NAME = 'txt'; +const DEFAULT_TEXT = 'txt'; + +export const NAME = util.getFactoryName(_NAME + constant.MATERIAL_DESIGN_FRAMEWORK); + +export function factory() { + return { + template: template, + default: { + text: DEFAULT_TEXT + } + } +} + +_module.factory(NAME, factory); diff --git a/@salix/vendor/src/angular-vendor.js b/@salix/vendor/src/angular-vendor.js index 8196ff52a..e18821ded 100644 --- a/@salix/vendor/src/angular-vendor.js +++ b/@salix/vendor/src/angular-vendor.js @@ -2,5 +2,7 @@ import * as _angular from 'angular'; export const ng = { module: _angular.module, - bootstrap: _angular.bootstrap + bootstrap: _angular.bootstrap, + $$minErr :_angular.$$minErr, + angular:_angular } diff --git a/index.html b/index.html index 48130766f..3a1252f4e 100644 --- a/index.html +++ b/index.html @@ -3,11 +3,20 @@ Salix + + +
{{1+1}} +
+
+
+
+
+ diff --git a/npm-debug.log b/npm-debug.log deleted file mode 100644 index dc027a8b7..000000000 --- a/npm-debug.log +++ /dev/null @@ -1,26 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ '/usr/bin/nodejs', '/usr/bin/npm', 'run', 'dev' ] -2 info using npm@1.4.21 -3 info using node@v4.4.7 -4 verbose run-script [ 'predev', 'dev', 'postdev' ] -5 info predev salix-app@1.0.0 -6 info dev salix-app@1.0.0 -7 verbose unsafe-perm in lifecycle true -8 info salix-app@1.0.0 Failed to exec dev script -9 error salix-app@1.0.0 dev: `webpack --progress --colors --watch` -9 error Exit status 1 -10 error Failed at the salix-app@1.0.0 dev script. -10 error This is most likely a problem with the salix-app package, -10 error not with npm itself. -10 error Tell the author that this fails on your system: -10 error webpack --progress --colors --watch -10 error You can get their info via: -10 error npm owner ls salix-app -10 error There is likely additional logging output above. -11 error System Linux 4.7.0-1-amd64 -12 error command "/usr/bin/nodejs" "/usr/bin/npm" "run" "dev" -13 error cwd /home/juan/Proyectos/salix -14 error node -v v4.4.7 -15 error npm -v 1.4.21 -16 error code ELIFECYCLE -17 verbose exit [ 1, true ]