# HG changeset patch # User Tomas Zeman # Date 1507895400 -7200 # Node ID 4acbd9c0ce054af6a60436e38ea7114d95fd7648 # Parent 7a5f3e314547399d99a63753c89723acdcb4519d ngTags: ngKeyDown/Up/Press, type annotations diff -r 7a5f3e314547 -r 4acbd9c0ce05 shared/src/main/scala/ngTags.scala --- a/shared/src/main/scala/ngTags.scala Thu Aug 31 15:11:52 2017 +0200 +++ b/shared/src/main/scala/ngTags.scala Fri Oct 13 13:50:00 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 Tomas Zeman + * Copyright 2015-2017 Tomas Zeman * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,61 +15,68 @@ */ package net.tz.ngtags +import scalatags.Text.TypedTag import scalatags.Text.all._ object ngTags { def i18n(s: String): String = s"{{'$s' | translate}}" def interpolate(s: String) = s"{{$s}}" - def isOpen(expr: String) = attr("is-open"):=expr + def isOpen(expr: String): Modifier = attr("is-open"):=expr - val ngAlert = tag("alert") + val ngAlert: TypedTag[String] = tag("alert") val ngApp: Attr = attr("ng-app") - def ngBindHtml(safe: String) = attr("ng-bind-html"):=safe - def ngChange(expr: String) = attr("ng-change"):=expr - def ngClick(expr: String) = attr("ng-click"):=expr - val ngCloak = tag("ng-cloak") - def ngCls(expr: String) = attr("ng-class"):=expr - def ngCtrl(c: String) = attr("ng-controller"):=c - def ngDisabled(expr: String) = attr("ng-disabled"):=expr - def ngHide(expr: String) = attr("ng-hide"):=expr - def ngHref(expr: String) = attr("ng-href"):=interpolate(expr) - def ngIf(expr: String) = attr("ng-if"):=expr - val ngInclude = attr("ng-include") - def ngInit(expr: String) = attr("ng-init"):=expr + def ngBindHtml(safe: String): Modifier = attr("ng-bind-html"):=safe + def ngChange(expr: String): Modifier = attr("ng-change"):=expr + def ngClick(expr: String): Modifier = attr("ng-click"):=expr + val ngCloak: TypedTag[String] = tag("ng-cloak") + def ngCls(expr: String): Modifier = attr("ng-class"):=expr + def ngCtrl(c: String): Modifier = attr("ng-controller"):=c + def ngDisabled(expr: String): Modifier = attr("ng-disabled"):=expr + def ngHide(expr: String): Modifier = attr("ng-hide"):=expr + def ngHref(expr: String): Modifier = attr("ng-href"):=interpolate(expr) + def ngIf(expr: String): Modifier = attr("ng-if"):=expr + val ngInclude: Attr = attr("ng-include") + def ngInit(expr: String): Modifier = attr("ng-init"):=expr + + def ngKeyDown(expr: String): Modifier = attr("ng-keydown"):=expr + def ngKeyPress(expr: String): Modifier = attr("ng-keypress"):=expr + def ngKeyUp(expr: String): Modifier = attr("ng-keyup"):=expr - def ngMessage(strVal: String) = attr("ng-message"):=strVal - def ngMessageExp(expr: String) = attr("ng-message-exp"):=expr - def ngMessages(expr: String) = attr("ng-messages"):=expr + def ngMessage(strVal: String): Modifier = attr("ng-message"):=strVal + def ngMessageExp(expr: String): Modifier = attr("ng-message-exp"):=expr + def ngMessages(expr: String): Modifier = attr("ng-messages"):=expr - def ngModel(expr: String) = attr("ng-model"):=expr - def ngModelOptions(expr: String) = attr("ng-model-options"):=expr + def ngModel(expr: String): Modifier = attr("ng-model"):=expr + def ngModelOptions(expr: String): Modifier = attr("ng-model-options"):=expr - def ngOptions(expr: String) = attr("ng-options"):=expr + def ngOptions(expr: String): Modifier = attr("ng-options"):=expr - def ngReadonly(expr: String) = attr("ng-readonly"):=expr + def ngReadonly(expr: String): Modifier = attr("ng-readonly"):=expr - def ngRepeat(name: String, list: String) = attr("ng-repeat"):=s"$name in $list" - def ngRepeatStart(n: String, l: String) = attr("ng-repeat-start"):=s"$n in $l" - val ngRepeatEnd = attr("ng-repeat-end").empty + def ngRepeat(name: String, list: String): Modifier = + attr("ng-repeat"):=s"$name in $list" + def ngRepeatStart(n: String, l: String): Modifier = + attr("ng-repeat-start"):=s"$n in $l" + val ngRepeatEnd: Modifier = attr("ng-repeat-end").empty - def ngSrc(expr: String) = attr("ng-src"):=expr - def ngShow(expr: String) = attr("ng-show"):=expr - def ngStyle(s: String) = attr("ng-style"):=s - def ngValue(expr: String) = attr("ng-value"):=expr - val ngView = tag("ng-view") + def ngSrc(expr: String): Modifier = attr("ng-src"):=expr + def ngShow(expr: String): Modifier = attr("ng-show"):=expr + def ngStyle(s: String): Modifier = attr("ng-style"):=s + def ngValue(expr: String): Modifier = attr("ng-value"):=expr + val ngView: TypedTag[String] = tag("ng-view") - val translateAttr = attr("translate") + val translateAttr: Attr = attr("translate") } object uiSelect { - val uiSelect = tag("ui-select") - val uiSelectMatch = tag("ui-select-match") - val uiSelectChoices = tag("ui-select-choices") - def theme(t: String) = attr("theme"):=t - def repeat(n: String, col: String) = attr("repeat"):=s"$n in $col" - def onSelect(fun: String) = attr("on-select"):=fun - def onRemove(fun: String) = attr("on-remove"):=fun - def allowClear(b: Boolean) = attr("allow-clear"):=b + val uiSelect: TypedTag[String] = tag("ui-select") + val uiSelectMatch: TypedTag[String] = tag("ui-select-match") + val uiSelectChoices: TypedTag[String] = tag("ui-select-choices") + def theme(t: String): Modifier = attr("theme"):=t + def repeat(n: String, col: String): Modifier = attr("repeat"):=s"$n in $col" + def onSelect(fun: String): Modifier = attr("on-select"):=fun + def onRemove(fun: String): Modifier = attr("on-remove"):=fun + def allowClear(b: Boolean): Modifier = attr("allow-clear"):=b } // vim: set ts=2 sw=2 et: