IssueAttachment
Represents a file that is attached to an issue.
Extends PersistentFile.
Properties
Name | Type | Description |
|---|---|---|
author | User | Read-only. The user who attached the file to the issue. |
base64Content | String | Read-only. The Base64 representation of the attachment. Available since 2021.2 |
becomesRemoved | Boolean | Read-only. When `true`, the entity is removed in the current transaction. Otherwise, `false`. This property can become `true` only in on-change rules when the rule is triggered on the removal of an issue or an article. In the rule code, the `runOn` rule property must contain the `removal` parameter set to `true`. Available since 2017.4.37915 runOn: {removal: true} |
charset | String | Read-only. The charset type of the file. Only applicable to text files. Available since 2019.2.53994 |
content | InputStream | Read-only. The content of the file in binary form. Available since 2019.2.53994 |
created | Number | Read-only. The date and time when the attachment was created as a timestamp. |
extension | String | Read-only. The extension that defines the file type. |
extensionProperties | Object | The object containing extension properties for this entity and their values. Extension properties are custom properties that might be added to core YouTrack entities by an app. For details about extension properties, see https://www.jetbrains.com/help/youtrack/devportal/apps-extension-properties.html. Available since 2024.3 const entities = require('@jetbrains/youtrack-scripting-api/entities');
exports.rule = entities.Issue.action({
command: 'test',
action: function (ctx) {
const printValues = () => {
return 'stringProp:' + ctx.issue.extensionProperties.stringProp + ';'
+ 'integerProp:' + ctx.issue.extensionProperties.integerProp + ';'
+ 'booleanProp:' + ctx.issue.extensionProperties.booleanProp + ';'
+ 'issueProp:' + ctx.issue.extensionProperties.issueProp?.id + ';'
+ 'issuesProp:' + ctx.issue.extensionProperties.issuesProp?.first()?.id + ';'
}
ctx.issue.addComment(printValues());
}
}); |
fileUrl | String | Read-only. The URL of the issue attachment. Available since 2019.2.56440 |
isNew | Boolean | Read-only. When `true`, the entity is created in the current transaction. Otherwise, `false`. Available since 2018.2.42351 |
isRemoved | Boolean | Read-only. If the attachment is removed, this property is `true`. |
issue | Issue | Read-only. The issue that the file is attached to. |
metaData | String | Read-only. The image dimensions. For image files, the value is rw=_width_&rh=_height_. For non-image files, the value is `empty`. |
mimeType | String | Read-only. The MIME type of the file. Available since 2019.2.53994 |
name | String | Read-only. The name of the file. |
permittedGroup | UserGroup | The group for which the attachment is visible when the visibility is restricted to a single group. |
permittedGroups | Set.<UserGroup> | The groups for which the issue is visible when the visibility is restricted to multiple groups. |
permittedUsers | Set.<User> | The list of users for whom the attachment is visible. |
size | Number | Read-only. The size of the attached file in bytes. |
updated | Number | Read-only. The date and time the attachment was last updated as a timestamp. |
Methods
action
Creates a declaration of a rule that a user can apply to an issue attachment using a menu option. The object that is returned by this method is normally exported to the `rule` property, otherwise it is not treated as a rule.
Parameters
Name | Type | Description |
|---|---|---|
ruleProperties | Object | A JSON object that defines the properties for the rule. |
ruleProperties.title | string | The human-readable name of the rule. Displayed in the administrative UI in YouTrack. |
ruleProperties.userInput | Object | An object that defines the properties for information that will be requested from the user who triggers the action rule. |
ruleProperties.userInput.type | string, Object | The data type for the value that is requested from the user. The following types are supported: * entities.Field.dateTimeType * entities.Field.dateType * entities.Field.integerType * entities.Field.floatType * entities.Field.periodType * entities.Field.stringType * entities.Build * entities.EnumField * entities.Issue * entities.IssueTag * entities.OwnedField * entities.Project * entities.ProjectVersion * entities.UserGroup * entities.User |
ruleProperties.userInput.description | string | The label for the control that is used to collect additional information from the user. |
ruleProperties.guard | IssueAttachment~guardFunction | A function that is invoked to determine whether the action is applicable to an issue attachment. |
ruleProperties.action | IssueAttachment~actionFunction | The function that is invoked when a user triggers this action. |
ruleProperties.requirements | Requirements | The set of entities that must be present for the script to work as expected. |
Return Value
Type | Description |
|---|---|
Object | The object representation of the rule. |
Example
findByExtensionProperties
Searches for IssueAttachment entities with extension properties that match the specified query.
Available since 2024.3.43260
Parameters
Name | Type | Description |
|---|---|---|
extensionPropertiesQuery | Object | The extension properties query, defined as a set of key-value pairs representing properties and their corresponding values. |
Return Value
Type | Description |
|---|---|
Set.<IssueAttachment> | The set of IssueAttachment entities that contain the specified extension properties. |
Example
becomes
Checks whether a field is set to an expected value in the current transaction.
Parameters
Name | Type | Description |
|---|---|---|
fieldName | string | The name of the field to check. |
expected | string | The expected value. |
Return Value
Type | Description |
|---|---|
boolean | If the field is set to the expected value, returns `true`. |
canBeReadBy
Checks whether a user has permission to read the field.
Parameters
Name | Type | Description |
|---|---|---|
fieldName | string | The name of the field. |
user | User | The user for whom the permission to read the field is checked. |
Return Value
Type | Description |
|---|---|
boolean | If the user can read the field, returns `true`. |
canBeWrittenBy
Checks whether a user has permission to update the field.
Parameters
Name | Type | Description |
|---|---|---|
fieldName | string | The name of the field. |
user | User | The user for whom the permission to update the field is checked. |
Return Value
Type | Description |
|---|---|
boolean | If the user can update the field, returns `true`. |
delete
Permanently deletes the attachment.
Available since 2018.1.40030
is
Checks whether a field is equal to an expected value.
Available since 2019.2.55603
Parameters
Name | Type | Description |
|---|---|---|
fieldName | string | The name of the field to check. |
expected | string | The expected value. |
Return Value
Type | Description |
|---|---|
boolean | If the field is equal to the expected value, returns `true`. |
isChanged
Checks whether the value of a field is changed in the current transaction.
Parameters
Name | Type | Description |
|---|---|---|
fieldName | string | The name of the field to check. |
Return Value
Type | Description |
|---|---|
boolean | If the value of the field is changed in the current transaction, returns `true`. |
oldValue
Returns the previous value of a single-value field before an update was applied. If the field is not changed in the transaction, returns null.
Parameters
Name | Type | Description |
|---|---|---|
fieldName | string | The name of the field. |
Return Value
Type | Description |
|---|---|
Object | If the field is changed in the current transaction, the previous value of the field. Otherwise, null. |
required
Asserts that a value is set for a field. If a value for the required field is not set, the specified message is displayed in the user interface.
Parameters
Name | Type | Description |
|---|---|---|
fieldName | string | The name of the field to check. |
message | string | The message that is displayed to the user that describes the field requirement. |
was
Checks whether a field was equal to an expected value prior to the current transaction.
Available since 2019.2.55603
Parameters
Name | Type | Description |
|---|---|---|
fieldName | string | The name of the field to check. |
expected | string | The expected value. |
Return Value
Type | Description |
|---|---|
boolean | If the field was equal to the expected value, returns `true`. |