Add @SinceKotlin to kotlinx.browser and kotlinx.dom packages
Add @DeprecatedSinceKotlin to kotlin.browser and kotlin.dom packages
This commit is contained in:
@@ -13,6 +13,7 @@ import kotlin.internal.LowPriorityInOverloadResolution
|
||||
replaceWith = ReplaceWith("window", "kotlinx.browser.window")
|
||||
)
|
||||
@LowPriorityInOverloadResolution
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
public external val window: Window
|
||||
|
||||
@Deprecated(
|
||||
@@ -20,6 +21,7 @@ public external val window: Window
|
||||
replaceWith = ReplaceWith("document", "kotlinx.browser.document")
|
||||
)
|
||||
@LowPriorityInOverloadResolution
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
public external val document: Document
|
||||
|
||||
@Deprecated(
|
||||
@@ -27,6 +29,7 @@ public external val document: Document
|
||||
replaceWith = ReplaceWith("localStorage", "kotlinx.browser.localStorage")
|
||||
)
|
||||
@LowPriorityInOverloadResolution
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
public external val localStorage: Storage
|
||||
|
||||
@Deprecated(
|
||||
@@ -34,5 +37,6 @@ public external val localStorage: Storage
|
||||
replaceWith = ReplaceWith("sessionStorage", "kotlinx.browser.sessionStorage")
|
||||
)
|
||||
@LowPriorityInOverloadResolution
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
public external val sessionStorage: Storage
|
||||
|
||||
|
||||
@@ -21,6 +21,7 @@ import kotlinx.dom.createElement as newCreateElement
|
||||
message = "This API is moved to another package, use 'kotlinx.dom.createElement' instead.",
|
||||
replaceWith = ReplaceWith("this.createElement(name, init)", "kotlinx.dom.createElement")
|
||||
)
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
public inline fun Document.createElement(name: String, noinline init: Element.() -> Unit): Element = this.newCreateElement(name, init)
|
||||
|
||||
/**
|
||||
@@ -33,5 +34,6 @@ public inline fun Document.createElement(name: String, noinline init: Element.()
|
||||
message = "This API is moved to another package, use 'kotlinx.dom.appendElement' instead.",
|
||||
replaceWith = ReplaceWith("this.appendElement(name, init)", "kotlinx.dom.appendElement")
|
||||
)
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
public inline fun Element.appendElement(name: String, noinline init: Element.() -> Unit): Element = this.newAppendElement(name, init)
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ import kotlinx.dom.removeClass as newRemoveClass
|
||||
message = "This API is moved to another package, use 'kotlinx.dom.hasClass' instead.",
|
||||
replaceWith = ReplaceWith("this.hasClass(cssClass)", "kotlinx.dom.hasClass")
|
||||
)
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
inline fun Element.hasClass(cssClass: String): Boolean = this.newHasClass(cssClass)
|
||||
|
||||
/**
|
||||
@@ -29,6 +30,7 @@ inline fun Element.hasClass(cssClass: String): Boolean = this.newHasClass(cssCla
|
||||
message = "This API is moved to another package, use 'kotlinx.dom.addClass' instead.",
|
||||
replaceWith = ReplaceWith("this.addClass(cssClasses)", "kotlinx.dom.addClass")
|
||||
)
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
inline fun Element.addClass(vararg cssClasses: String): Boolean = this.newAddClass(*cssClasses)
|
||||
|
||||
/**
|
||||
@@ -41,4 +43,5 @@ inline fun Element.addClass(vararg cssClasses: String): Boolean = this.newAddCla
|
||||
message = "This API is moved to another package, use 'kotlinx.dom.removeClass' instead.",
|
||||
replaceWith = ReplaceWith("this.removeClass(cssClasses)", "kotlinx.dom.removeClass")
|
||||
)
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
inline fun Element.removeClass(vararg cssClasses: String): Boolean = this.newRemoveClass(*cssClasses)
|
||||
@@ -19,6 +19,7 @@ import kotlinx.dom.isText as newIsText
|
||||
message = "This API is moved to another package, use 'kotlinx.dom.isText' instead.",
|
||||
replaceWith = ReplaceWith("this.isText", "kotlinx.dom.isText")
|
||||
)
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
public val Node.isText: Boolean
|
||||
inline get() = this.newIsText
|
||||
|
||||
@@ -30,5 +31,6 @@ public val Node.isText: Boolean
|
||||
message = "This API is moved to another package, use 'kotlinx.dom.isElement' instead.",
|
||||
replaceWith = ReplaceWith("this.isElement", "kotlinx.dom.isElement")
|
||||
)
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
public val Node.isElement: Boolean
|
||||
inline get() = this.newIsElement
|
||||
|
||||
@@ -17,6 +17,7 @@ import kotlinx.dom.clear as newClear
|
||||
message = "This API is moved to another package, use 'kotlinx.dom.clear' instead.",
|
||||
replaceWith = ReplaceWith("this.clear()", "kotlinx.dom.clear")
|
||||
)
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
public inline fun Node.clear() = this.newClear()
|
||||
|
||||
/**
|
||||
@@ -29,4 +30,5 @@ public inline fun Node.clear() = this.newClear()
|
||||
message = "This API is moved to another package, use 'kotlinx.dom.appendText' instead.",
|
||||
replaceWith = ReplaceWith("this.appendText(text)", "kotlinx.dom.appendText")
|
||||
)
|
||||
@DeprecatedSinceKotlin(warningSince = "1.4")
|
||||
inline fun Element.appendText(text: String): Element = this.newAppendText(text)
|
||||
|
||||
@@ -7,11 +7,15 @@ package kotlinx.browser
|
||||
|
||||
import org.w3c.dom.*
|
||||
|
||||
@SinceKotlin("1.4")
|
||||
public external val window: Window
|
||||
|
||||
@SinceKotlin("1.4")
|
||||
public external val document: Document
|
||||
|
||||
@SinceKotlin("1.4")
|
||||
public external val localStorage: Storage
|
||||
|
||||
@SinceKotlin("1.4")
|
||||
public external val sessionStorage: Storage
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ import kotlin.contracts.*
|
||||
*
|
||||
* The element is initialized with the specified [init] function.
|
||||
*/
|
||||
@SinceKotlin("1.4")
|
||||
public fun Document.createElement(name: String, init: Element.() -> Unit): Element {
|
||||
contract { callsInPlace(init, InvocationKind.EXACTLY_ONCE) }
|
||||
return createElement(name).apply(init)
|
||||
@@ -23,6 +24,7 @@ public fun Document.createElement(name: String, init: Element.() -> Unit): Eleme
|
||||
*
|
||||
* The element is initialized with the specified [init] function.
|
||||
*/
|
||||
@SinceKotlin("1.4")
|
||||
public fun Element.appendElement(name: String, init: Element.() -> Unit): Element {
|
||||
contract { callsInPlace(init, InvocationKind.EXACTLY_ONCE) }
|
||||
return ownerDocument!!.createElement(name, init).also { appendChild(it) }
|
||||
|
||||
@@ -8,6 +8,7 @@ package kotlinx.dom
|
||||
import org.w3c.dom.*
|
||||
|
||||
/** Returns true if the element has the given CSS class style in its 'class' attribute */
|
||||
@SinceKotlin("1.4")
|
||||
fun Element.hasClass(cssClass: String): Boolean = className.matches("""(^|.*\s+)$cssClass($|\s+.*)""".toRegex())
|
||||
|
||||
/**
|
||||
@@ -15,6 +16,7 @@ fun Element.hasClass(cssClass: String): Boolean = className.matches("""(^|.*\s+)
|
||||
*
|
||||
* @return true if at least one class has been added
|
||||
*/
|
||||
@SinceKotlin("1.4")
|
||||
fun Element.addClass(vararg cssClasses: String): Boolean {
|
||||
val missingClasses = cssClasses.filterNot { hasClass(it) }
|
||||
if (missingClasses.isNotEmpty()) {
|
||||
@@ -37,6 +39,7 @@ fun Element.addClass(vararg cssClasses: String): Boolean {
|
||||
*
|
||||
* @return true if at least one class has been removed
|
||||
*/
|
||||
@SinceKotlin("1.4")
|
||||
fun Element.removeClass(vararg cssClasses: String): Boolean {
|
||||
if (cssClasses.any { hasClass(it) }) {
|
||||
val toBeRemoved = cssClasses.toSet()
|
||||
|
||||
@@ -10,11 +10,13 @@ import org.w3c.dom.*
|
||||
/**
|
||||
* Gets a value indicating whether this node is a TEXT_NODE or a CDATA_SECTION_NODE.
|
||||
*/
|
||||
@SinceKotlin("1.4")
|
||||
public val Node.isText: Boolean
|
||||
get() = nodeType == Node.TEXT_NODE || nodeType == Node.CDATA_SECTION_NODE
|
||||
|
||||
/**
|
||||
* Gets a value indicating whether this node is an [Element].
|
||||
*/
|
||||
@SinceKotlin("1.4")
|
||||
public val Node.isElement: Boolean
|
||||
get() = nodeType == Node.ELEMENT_NODE
|
||||
|
||||
@@ -8,6 +8,7 @@ package kotlinx.dom
|
||||
import org.w3c.dom.*
|
||||
|
||||
/** Removes all the children from this node. */
|
||||
@SinceKotlin("1.4")
|
||||
public fun Node.clear() {
|
||||
while (hasChildNodes()) {
|
||||
removeChild(firstChild!!)
|
||||
@@ -19,6 +20,7 @@ public fun Node.clear() {
|
||||
*
|
||||
* @return this element
|
||||
*/
|
||||
@SinceKotlin("1.4")
|
||||
fun Element.appendText(text: String): Element {
|
||||
appendChild(ownerDocument!!.createTextNode(text))
|
||||
return this
|
||||
|
||||
Reference in New Issue
Block a user