======Unit====== ''Inherits:HTMLElement'' =====Overview===== The Unit object is the core of BitsmistJS. It inherits from HTMLElement and thus takes over the functionality of a standard HTML element. When creating your own units, you create them by inheriting from this Unit class. =====Properties===== ====uniqueId==== ''Type:String'' ''Target:Prototype'' ''get'' A unique ID assigned to each instance of the unit. It is automatically generated. BITSMIST.V1.Unit static class always returns "00000000-0000-0000-0000-000000000000". ---- ====assets==== ''Type:Object'' ''get'' The object that holds assets. ---- ====ready==== ''Type:Promise'' ''get'' The promise that is resolved when a unit is ready. =====Methods===== ====get(assetName, key, defaultValue)==== ''Type:*'' ''Target:Prototype'' Returns the value from the asset. ===Parameters=== |< 100% 180px 130px - >| ^Parameter^Type^Description^ |assetName \\ ''Required''|String| The asset name.| |key \\ ''Required''|String|The key in the asset to be retrieved.| |defaultValue|*|Returns this value if the specified key is not found in the asset.| ===Return Value=== The value obtained from the asset. ---- ====has(assetName, key)==== ''Type:Boolean'' ''Target:Prototype'' Returns whether the asset has the specified key. ===Parameters=== |< 100% 180px 130px - >| ^Parameter^Type^Description^ |assetName \\ ''Required''|String| The asset name.| |key \\ ''Required''|String|The key in the asset to be checked.| ===Return Value=== True if the key exists, False if not. ---- ====set(assetName, key, value)==== ''Type:Undefined'' ''Target:Prototype'' Sets the value to the asset. ===Parameters=== |< 100% 180px 130px - >| ^Parameter^Type^Description^ |assetName \\ ''Required''|String| The asset name.| |key \\ ''Required''|String|The key in the asset to be set.| |value|*|The value to set.| ===Return Value=== Undefined. ---- ====upgrade(unit, type, name, content)==== ''Type:Undefined'' ''static'' Upgrades the unit. The type of upgrade varies depending on the type argument. ^type^Description^ |"asset"|Adds the asset to the unit. Specify the asset name for the "name" and content holder for the "content" parameter.| |"method"|Adds the method to the unit. Specify the method name for the "name" and the Function object for "the content" parameter.| |"property"|Adds the property to the unit. Specify the property name for the "name" and the getter/setter for the "content" parameter.| |others|Adds content to the asset specified by the "name" parameter with the "content" parameter.| ===Paramters=== |< 100% 180px 130px - >| ^Parameter^Type^Description^ |unit \\ ''Required''|Unit|The unit to be upgraded.| |type \\ ''Required''|String|The upgrade type. Valid types are "asset", "method", "property" and the asset names.| |name \\ ''Required''|String|The name of the item to be upgraded.| |content \\ ''Required''|*|The content of upgrade.| ===Return Value=== Undefined.