purgetss
Version:
A package that simplifies mobile app creation for Titanium developers.
1,393 lines (1,292 loc) • 233 kB
JavaScript
const _applyClasses = {}
const fs = require('fs')
const cwd = process.cwd()
const _ = require('lodash')
const regexUnicode = /[^\u0000-\u00FF]/
const HEX_3_REGEX = /^#?([a-f\d])([a-f\d])([a-f\d])$/i // i.e. #0F3
const HEX_4_REGEX = /^#?([a-f\d])([a-f\d])([a-f\d])([a-f\d])$/i // i.e. #80F3
const HEX_6_REGEX = /^#?([a-f\d]){6}$/i // i.e. #00FF33
const HEX_8_REGEX = /^#?([a-f\d]){8}$/i // i.e. #8800FF33
const globalOptions = {
legacy: false
}
exports.globalOptions = globalOptions
// ! Resets ImageView, View, Window
function resetStyles() {
let convertedStyles = '\n// Custom Styles and Resets\n'
convertedStyles += customRules({ ios: { hires: true } }, 'ImageView')
// convertedStyles += customRules({ default: { width: 'Ti.UI.FILL', height: 'Ti.UI.SIZE' } }, 'Label');
convertedStyles += customRules({ default: { width: 'Ti.UI.SIZE', height: 'Ti.UI.SIZE' } }, 'View')
convertedStyles += customRules({ default: { backgroundColor: '#ffffff' } }, 'Window')
return convertedStyles
}
exports.resetStyles = resetStyles
// ! Width, height and margin properties
function height(modifiersAndValues) {
return processProperties({
prop: 'height',
modules: 'Ti.UI.ActivityIndicator, Ti.UI.Animation, Ti.UI.iPad.Popover, Ti.UI.ListItem, Ti.UI.View'
}, {
h: '{ height: {value} }'
}, {
default: modifiersAndValues
})
}
exports.height = height
function width(modifiersAndValues) {
return processProperties({
prop: 'width',
modules: 'Ti.UI.ActivityIndicator, Ti.UI.Animation, Ti.UI.iPad.Popover, Ti.UI.ListItem, Ti.UI.View'
}, {
w: '{ width: {value} }'
}, {
default: modifiersAndValues
})
}
exports.width = width
function widthHeight(modifiersAndValues) {
return processProperties({
prop: 'width and height',
modules: 'Ti.UI.View, Ti.Blob, Ti.Media.VideoPlayer, MovieSize, Ti.UI.ActivityIndicator, Ti.UI.Android.CardView, Ti.UI.Android.DrawerLayout, Ti.UI.Android.SearchView, Ti.UI.Animation, Ti.UI.Button, Ti.UI.ButtonBar, Ti.UI.DashboardView, Dimension, DimensionWithAbsolutes, Ti.UI.ImageView, Ti.UI.Label, Ti.UI.ListView, Ti.UI.MaskedImage, Ti.UI.NavigationWindow, Ti.UI.OptionBar, Ti.UI.Picker, Ti.UI.PickerRow, Ti.UI.ProgressBar, Ti.UI.ScrollView, Ti.UI.ScrollableView, Ti.UI.SearchBar, Size, Ti.UI.Slider, Ti.UI.Switch, Ti.UI.TabbedBar, Ti.UI.TableView, Ti.UI.TableViewRow, Ti.UI.TextArea, Ti.UI.TextField, Ti.UI.Toolbar, Ti.UI.WebView, Ti.UI.Window, openWindowParams, Ti.UI.iOS.BlurView, Ti.UI.iOS.CoverFlowView, CoverFlowImageType, Ti.UI.iOS.LivePhotoView, Ti.UI.iOS.SplitWindow, Ti.UI.iOS.Stepper, BarItemType, Ti.UI.iPad.Popover'
}, {
wh: '{ width: {value}, height: {value} }'
}, {
default: modifiersAndValues
})
}
exports.widthHeight = widthHeight
function size(modifiersAndValues) {
return processProperties({
prop: 'width and height',
modules: 'Ti.UI.View, Ti.Blob, Ti.Media.VideoPlayer, MovieSize, Ti.UI.ActivityIndicator, Ti.UI.Android.CardView, Ti.UI.Android.DrawerLayout, Ti.UI.Android.SearchView, Ti.UI.Animation, Ti.UI.Button, Ti.UI.ButtonBar, Ti.UI.DashboardView, Dimension, DimensionWithAbsolutes, Ti.UI.ImageView, Ti.UI.Label, Ti.UI.ListView, Ti.UI.MaskedImage, Ti.UI.NavigationWindow, Ti.UI.OptionBar, Ti.UI.Picker, Ti.UI.PickerRow, Ti.UI.ProgressBar, Ti.UI.ScrollView, Ti.UI.ScrollableView, Ti.UI.SearchBar, Size, Ti.UI.Slider, Ti.UI.Switch, Ti.UI.TabbedBar, Ti.UI.TableView, Ti.UI.TableViewRow, Ti.UI.TextArea, Ti.UI.TextField, Ti.UI.Toolbar, Ti.UI.WebView, Ti.UI.Window, openWindowParams, Ti.UI.iOS.BlurView, Ti.UI.iOS.CoverFlowView, CoverFlowImageType, Ti.UI.iOS.LivePhotoView, Ti.UI.iOS.SplitWindow, Ti.UI.iOS.Stepper, BarItemType, Ti.UI.iPad.Popover'
}, {
size: '{ width: {value}, height: {value} }'
}, {
default: modifiersAndValues
})
}
exports.size = size
function margin(modifiersAndValues) {
let objectPosition = {
m: '{ top: {value}, right: {value}, bottom: {value}, left: {value} }',
my: '{ top: {value}, bottom: {value} }',
mx: '{ right: {value}, left: {value} }',
mt: '{ top: {value} }',
mr: '{ right: {value} }',
mb: '{ bottom: {value} }',
ml: '{ left: {value} }'
}
delete modifiersAndValues.screen
modifiersAndValues.auto = 'null'
let convertedStyles = processProperties({
prop: 'top, right, bottom, left ( Margin )',
modules: 'Ti.UI.ActivityIndicator, Ti.UI.Animation, Ti.UI.View, Ti.UI.Window'
}, objectPosition, { default: modifiersAndValues })
objectPosition = {
'-m': '{ top: {value}, right: {value}, bottom: {value}, left: {value} }',
'-my': '{ top: {value}, bottom: {value} }',
'-mx': '{ left: {value}, right: {value} }',
'-mt': '{ top: {value} }',
'-mr': '{ right: {value} }',
'-mb': '{ bottom: {value} }',
'-ml': '{ left: {value} }'
}
delete modifiersAndValues['0']
delete modifiersAndValues.auto
convertedStyles += processProperties({
prop: 'top, right, bottom, left ( Negative Margin )',
modules: 'Ti.UI.ActivityIndicator, Ti.UI.Animation, Ti.UI.View, Ti.UI.Window'
}, objectPosition, {
default: modifiersAndValues
})
return convertedStyles
}
exports.margin = margin
function marginAlternate(modifiersAndValues) {
let objectPosition = {
top: '{ top: {value} }',
right: '{ right: {value} }',
bottom: '{ bottom: {value} }',
left: '{ left: {value} }'
}
delete modifiersAndValues.screen
modifiersAndValues.auto = 'null'
let convertedStyles = processProperties({
prop: 'top, right, bottom, left',
modules: 'Ti.UI.ActivityIndicator, Ti.UI.Animation, Ti.UI.View, Ti.UI.Window'
}, objectPosition, { default: modifiersAndValues })
objectPosition = {
'-bottom': '{ bottom: {value} }',
'-left': '{ left: {value} }',
'-right': '{ right: {value} }',
'-top': '{ top: {value} }'
}
delete modifiersAndValues['0']
delete modifiersAndValues.auto
convertedStyles += processProperties({
prop: 'top, right, bottom, left ( Negative )',
modules: 'Ti.UI.ActivityIndicator, Ti.UI.Animation, Ti.UI.View, Ti.UI.Window'
}, objectPosition, {
default: modifiersAndValues
})
return convertedStyles
}
exports.marginAlternate = marginAlternate
// ! Properties with constant values
function accessibilityHidden() {
return processProperties({
prop: 'accessibilityHidden',
modules: 'Ti.UI.View'
}, {
default: '{ accessibilityHidden: {value} }'
}, {
default: {
'accessibility-hidden': true,
'accessibility-not-hidden': false
}
})
}
exports.accessibilityHidden = accessibilityHidden
function accessoryType() {
return processProperties({
prop: 'accessoryType',
modules: 'Ti.UI.ListItem'
}, {
'accesory-type': '{ accessoryType: {value} }'
}, {
default: {
checkmark: 'Ti.UI.LIST_ACCESSORY_TYPE_CHECKMARK',
detail: 'Ti.UI.LIST_ACCESSORY_TYPE_DETAIL',
disclosure: 'Ti.UI.LIST_ACCESSORY_TYPE_DISCLOSURE',
none: 'Ti.UI.LIST_ACCESSORY_TYPE_NONE'
}
})
}
exports.accessoryType = accessoryType
function activeIconIsMask() {
return processProperties({
prop: 'activeIconIsMask - iOS Only',
modules: 'Ti.UI.Tab'
}, {
default: '{ activeIconIsMask: {value} }'
}, {
ios: {
'active-icon-is': {
mask: true,
'not-mask': false
}
}
})
}
exports.activeIconIsMask = activeIconIsMask
function activityEnterTransition() {
return processProperties({
prop: 'activityEnterTransition - Android Only',
modules: 'Ti.UI.Window'
}, {
activity: '{ activityEnterTransition: {value} }'
}, {
android: {
'enter-transition': {
explode: 'Ti.UI.Android.TRANSITION_EXPLODE',
'fade-in': 'Ti.UI.Android.TRANSITION_FADE_IN',
'fade-out': 'Ti.UI.Android.TRANSITION_FADE_OUT',
none: 'Ti.UI.Android.TRANSITION_NONE',
'slide-bottom': 'Ti.UI.Android.TRANSITION_SLIDE_BOTTOM',
'slide-left': 'Ti.UI.Android.TRANSITION_SLIDE_LEFT',
'slide-right': 'Ti.UI.Android.TRANSITION_SLIDE_RIGHT',
'slide-top': 'Ti.UI.Android.TRANSITION_SLIDE_TOP'
}
}
})
}
exports.activityEnterTransition = activityEnterTransition
function activityExitTransition() {
return processProperties({
prop: 'activityExitTransition - Android Only',
modules: 'Ti.UI.Window'
}, {
activity: '{ activityExitTransition: {value} }'
}, {
android: {
'exit-transition': {
explode: 'Ti.UI.Android.TRANSITION_EXPLODE',
'fade-in': 'Ti.UI.Android.TRANSITION_FADE_IN',
'fade-out': 'Ti.UI.Android.TRANSITION_FADE_OUT',
none: 'Ti.UI.Android.TRANSITION_NONE',
'slide-bottom': 'Ti.UI.Android.TRANSITION_SLIDE_BOTTOM',
'slide-left': 'Ti.UI.Android.TRANSITION_SLIDE_LEFT',
'slide-right': 'Ti.UI.Android.TRANSITION_SLIDE_RIGHT',
'slide-top': 'Ti.UI.Android.TRANSITION_SLIDE_TOP'
}
}
})
}
exports.activityExitTransition = activityExitTransition
function activityIndicatorStyle() {
return processProperties({
prop: 'style',
modules: 'Ti.UI.ActivityIndicator'
}, {
'activity-indicator-style': '{ style: {value} }'
}, {
default: {
big: 'Ti.UI.ActivityIndicatorStyle.BIG',
dark: 'Ti.UI.ActivityIndicatorStyle.DARK',
'big-dark': 'Ti.UI.ActivityIndicatorStyle.BIG_DARK',
plain: 'Ti.UI.ActivityIndicatorStyle.PLAIN'
}
})
}
exports.activityIndicatorStyle = activityIndicatorStyle
function activityReenterTransition() {
return processProperties({
prop: 'activityReenterTransition - Android Only',
modules: 'Ti.UI.Window'
}, {
activity: '{ activityReenterTransition: {value} }'
}, {
android: {
'reenter-transition': {
explode: 'Ti.UI.Android.TRANSITION_EXPLODE',
'fade-in': 'Ti.UI.Android.TRANSITION_FADE_IN',
'fade-out': 'Ti.UI.Android.TRANSITION_FADE_OUT',
none: 'Ti.UI.Android.TRANSITION_NONE',
'slide-bottom': 'Ti.UI.Android.TRANSITION_SLIDE_BOTTOM',
'slide-left': 'Ti.UI.Android.TRANSITION_SLIDE_LEFT',
'slide-right': 'Ti.UI.Android.TRANSITION_SLIDE_RIGHT',
'slide-top': 'Ti.UI.Android.TRANSITION_SLIDE_TOP'
}
}
})
}
exports.activityReenterTransition = activityReenterTransition
function activityReturnTransition() {
return processProperties({
prop: 'activityReturnTransition - Android Only',
modules: 'Ti.UI.Window'
}, {
activity: '{ activityReturnTransition: {value} }'
}, {
android: {
'return-transition': {
explode: 'Ti.UI.Android.TRANSITION_EXPLODE',
'fade-in': 'Ti.UI.Android.TRANSITION_FADE_IN',
'fade-out': 'Ti.UI.Android.TRANSITION_FADE_OUT',
none: 'Ti.UI.Android.TRANSITION_NONE',
'slide-bottom': 'Ti.UI.Android.TRANSITION_SLIDE_BOTTOM',
'slide-left': 'Ti.UI.Android.TRANSITION_SLIDE_LEFT',
'slide-right': 'Ti.UI.Android.TRANSITION_SLIDE_RIGHT',
'slide-top': 'Ti.UI.Android.TRANSITION_SLIDE_TOP'
}
}
})
}
exports.activityReturnTransition = activityReturnTransition
function activitySharedElementEnterTransition() {
return processProperties({
prop: 'activitySharedElementEnterTransition - Android Only',
modules: 'Ti.UI.Window'
}, {
activity: '{ activitySharedElementEnterTransition: {value} }'
}, {
android: {
'shared-element-enter-transition': {
'change-bounds': 'Ti.UI.Android.TRANSITION_CHANGE_BOUNDS',
'change-clip-bounds': 'Ti.UI.Android.TRANSITION_CHANGE_CLIP_BOUNDS',
'change-transform': 'Ti.UI.Android.TRANSITION_CHANGE_TRANSFORM',
'change-image-transform': 'Ti.UI.Android.TRANSITION_CHANGE_IMAGE_TRANSFORM',
none: 'Ti.UI.Android.TRANSITION_NONE'
}
}
})
}
exports.activitySharedElementEnterTransition = activitySharedElementEnterTransition
function activitySharedElementExitTransition() {
return processProperties({
prop: 'activitySharedElementExitTransition - Android Only',
modules: 'Ti.UI.Window'
}, {
activity: '{ activitySharedElementExitTransition: {value} }'
}, {
android: {
'shared-element-exit-transition': {
'change-bounds': 'Ti.UI.Android.TRANSITION_CHANGE_BOUNDS',
'change-clip-bounds': 'Ti.UI.Android.TRANSITION_CHANGE_CLIP_BOUNDS',
'change-transform': 'Ti.UI.Android.TRANSITION_CHANGE_TRANSFORM',
'change-image-transform': 'Ti.UI.Android.TRANSITION_CHANGE_IMAGE_TRANSFORM',
none: 'Ti.UI.Android.TRANSITION_NONE'
}
}
})
}
exports.activitySharedElementExitTransition = activitySharedElementExitTransition
function activitySharedElementReenterTransition() {
return processProperties({
prop: 'activitySharedElementReenterTransition - Android Only',
modules: 'Ti.UI.Window'
}, {
activity: '{ activitySharedElementReenterTransition: {value} }'
}, {
android: {
'shared-element-reenter-transition': {
'change-bounds': 'Ti.UI.Android.TRANSITION_CHANGE_BOUNDS',
'change-clip-bounds': 'Ti.UI.Android.TRANSITION_CHANGE_CLIP_BOUNDS',
'change-transform': 'Ti.UI.Android.TRANSITION_CHANGE_TRANSFORM',
'change-image-transform': 'Ti.UI.Android.TRANSITION_CHANGE_IMAGE_TRANSFORM',
none: 'Ti.UI.Android.TRANSITION_NONE'
}
}
})
}
exports.activitySharedElementReenterTransition = activitySharedElementReenterTransition
function activitySharedElementReturnTransition() {
return processProperties({
prop: 'activitySharedElementReturnTransition - Android Only',
modules: 'Ti.UI.Window'
}, {
activity: '{ activitySharedElementReturnTransition: {value} }'
}, {
android: {
'shared-element-return-transition': {
'change-bounds': 'Ti.UI.Android.TRANSITION_CHANGE_BOUNDS',
'change-clip-bounds': 'Ti.UI.Android.TRANSITION_CHANGE_CLIP_BOUNDS',
'change-transform': 'Ti.UI.Android.TRANSITION_CHANGE_TRANSFORM',
'change-image-transform': 'Ti.UI.Android.TRANSITION_CHANGE_IMAGE_TRANSFORM',
none: 'Ti.UI.Android.TRANSITION_NONE'
}
}
})
}
exports.activitySharedElementReturnTransition = activitySharedElementReturnTransition
function alertDialogStyle() {
return processProperties({
prop: 'style - iOS Only',
modules: 'Ti.UI.AlertDialog'
}, {
alert: '{ style: {value} }'
}, {
ios: {
'dialog-style': {
default: 'Ti.UI.iOS.AlertDialogStyle.DEFAULT',
'login-and-password': 'Ti.UI.iOS.AlertDialogStyle.LOGIN_AND_PASSWORD_INPUT',
'plain-text-input': 'Ti.UI.iOS.AlertDialogStyle.PLAIN_TEXT_INPUT',
'secure-text-input': 'Ti.UI.iOS.AlertDialogStyle.SECURE_TEXT_INPUT'
}
}
})
}
exports.alertDialogStyle = alertDialogStyle
function allowsBackForwardNavigationGestures() {
return processProperties({
prop: 'allowsBackForwardNavigationGestures - iOS Only',
modules: 'Ti.UI.WebView'
}, {
default: '{ allowsBackForwardNavigationGestures: {value} }'
}, {
ios: {
'allow-back-forward-navigation-gestures': true,
'dont-allow-back-forward-navigation-gestures': false
}
})
}
exports.allowsBackForwardNavigationGestures = allowsBackForwardNavigationGestures
function allowsLinkPreview() {
return processProperties({
prop: 'allowsLinkPreview - iOS Only',
modules: 'Ti.UI.WebView'
}, {
default: '{ allowsLinkPreview: {value} }'
}, {
ios: {
'allows-link-preview': true,
'dont-allow-link-preview': false
}
})
}
exports.allowsLinkPreview = allowsLinkPreview
function allowsMultipleSelectionDuringEditing() {
return processProperties({
prop: 'allowsMultipleSelectionDuringEditing',
modules: 'Ti.UI.ListView, Ti.UI.TableView'
}, {
default: '{ allowsMultipleSelectionDuringEditing: {value} }'
}, {
default: {
'allows-multiple-selection-during-editing': true,
'dont-allow-multiple-selection-during-editing': false
}
})
}
exports.allowsMultipleSelectionDuringEditing = allowsMultipleSelectionDuringEditing
function allowsMultipleSelectionInteraction() {
return processProperties({
prop: 'allowsMultipleSelectionInteraction',
modules: 'Ti.UI.ListView, Ti.UI.TableView'
}, {
default: '{ allowsMultipleSelectionInteraction: {value} }'
}, {
default: {
'allows-multiple-selection-interaction': true,
'dont-allow-multiple-selection-interaction': false
}
})
}
exports.allowsMultipleSelectionInteraction = allowsMultipleSelectionInteraction
function allowsSelection() {
return processProperties({
prop: 'allowsSelection - iOS Only',
modules: 'Ti.UI.ListView, Ti.UI.TableView'
}, {
default: '{ allowsSelection: {value} }'
}, {
ios: {
'allows-selection': true,
'dont-allow-selection': false
}
})
}
exports.allowsSelection = allowsSelection
function allowsSelectionDuringEditing() {
return processProperties({
prop: 'allowsSelectionDuringEditing',
modules: 'Ti.UI.ListView, Ti.UI.TableView'
}, {
default: '{ allowsSelectionDuringEditing: {value} }'
}, {
default: {
'allows-selection-during-editing': true,
'dont-allow-selection-during-editing': false
}
})
}
exports.allowsSelectionDuringEditing = allowsSelectionDuringEditing
function allowUserCustomization() {
return processProperties({
prop: 'allowUserCustomization - iOS Only',
modules: 'Ti.UI.TabGroup'
}, {
default: '{ allowUserCustomization: {value} }'
}, {
ios: {
'allow-user-customization': true,
'dont-allow-user-customization': false
}
})
}
exports.allowUserCustomization = allowUserCustomization
function transition() {
return processProperties({
modules: 'Ti.UI.Animation',
prop: 'transition - iOS Only'
}, {
'animation-style': '{ transition: {value} }'
}, {
ios: {
'curl-down': 'Ti.UI.iOS.AnimationStyle.CURL_DOWN',
'curl-up': 'Ti.UI.iOS.AnimationStyle.CURL_UP',
'flip-from-left': 'Ti.UI.iOS.AnimationStyle.FLIP_FROM_LEFT',
'flip-from-right': 'Ti.UI.iOS.AnimationStyle.FLIP_FROM_RIGHT',
'flip-from-top': 'Ti.UI.iOS.AnimationStyle.FLIP_FROM_TOP',
'flip-from-bottom': 'Ti.UI.iOS.AnimationStyle.FLIP_FROM_BOTTOM',
'cross-dissolve': 'Ti.UI.iOS.AnimationStyle.CROSS_DISSOLVE',
none: 'Ti.UI.iOS.AnimationStyle.NONE'
}
})
}
exports.transition = transition
function audioStreamType() {
return processProperties({
prop: 'audioStreamType - Android Only',
modules: 'Ti.Android.Notification'
}, {
default: '{ audioStreamType: {value} }'
}, {
android: {
'audio-stream-type-alarm': 'Ti.Android.STREAM_ALARM',
'audio-stream-type-music': 'Ti.Android.STREAM_MUSIC',
'audio-stream-type-notification': 'Ti.Android.STREAM_NOTIFICATION',
'audio-stream-type-ring': 'Ti.Android.STREAM_RING',
'audio-stream-type-system': 'Ti.Android.STREAM_SYSTEM',
'audio-stream-type-voice-call': 'Ti.Android.STREAM_VOICE_CALL',
'audio-stream-type': 'Ti.Android.STREAM_DEFAULT'
}
})
}
exports.audioStreamType = audioStreamType
function autoAdjustScrollViewInsets() {
return processProperties({
prop: 'autoAdjustScrollViewInsets - iOS Only',
modules: 'Ti.UI.Window'
}, {
default: '{ autoAdjustScrollViewInsets: {value} }'
}, {
ios: {
'auto-adjust-scroll-view-inset': true,
'dont-auto-adjust-scroll-view-inset': false
}
})
}
exports.autoAdjustScrollViewInsets = autoAdjustScrollViewInsets
function autocapitalization() {
return processProperties({
prop: 'autocapitalization',
modules: 'Ti.UI.SearchBar, Ti.UI.TextArea, Ti.UI.TextField'
}, {
default: '{ autocapitalization: {value} }'
}, {
default: {
uppercase: 'Ti.UI.TEXT_AUTOCAPITALIZATION_ALL',
'normal-case': 'Ti.UI.TEXT_AUTOCAPITALIZATION_NONE',
capitalize: 'Ti.UI.TEXT_AUTOCAPITALIZATION_WORDS',
sentences: 'Ti.UI.TEXT_AUTOCAPITALIZATION_SENTENCES'
}
})
}
exports.autocapitalization = autocapitalization
function autocorrect() {
return processProperties({
prop: 'autocorrect',
modules: 'Ti.UI.SearchBar, Ti.UI.TextArea, Ti.UI.TextField'
}, {
default: '{ autocorrect: {value} }'
}, {
default: {
autocorrect: true,
'no-autocorrect': false,
'dont-autocorrect': false
}
})
}
exports.autocorrect = autocorrect
function autofillType() {
return processProperties({
prop: 'autofillType',
modules: 'Ti.UI.TextArea, Ti.UI.TextField'
}, {
'autofill-type': '{ autofillType: {value} }'
}, {
default: {
url: 'Ti.UI.AUTOFILL_TYPE_URL',
name: 'Ti.UI.AUTOFILL_TYPE_NAME',
phone: 'Ti.UI.AUTOFILL_TYPE_PHONE',
email: 'Ti.UI.AUTOFILL_TYPE_EMAIL',
address: 'Ti.UI.AUTOFILL_TYPE_ADDRESS',
username: 'Ti.UI.AUTOFILL_TYPE_USERNAME',
password: 'Ti.UI.AUTOFILL_TYPE_PASSWORD',
nickname: 'Ti.UI.AUTOFILL_TYPE_NICKNAME',
location: 'Ti.UI.AUTOFILL_TYPE_LOCATION',
'job-title': 'Ti.UI.AUTOFILL_TYPE_JOB_TITLE',
'given-name': 'Ti.UI.AUTOFILL_TYPE_GIVEN_NAME',
'name-prefix': 'Ti.UI.AUTOFILL_TYPE_NAME_PREFIX',
'middle-name': 'Ti.UI.AUTOFILL_TYPE_MIDDLE_NAME',
'family-name': 'Ti.UI.AUTOFILL_TYPE_FAMILY_NAME',
'name-suffix': 'Ti.UI.AUTOFILL_TYPE_NAME_SUFFIX',
sublocality: 'Ti.UI.AUTOFILL_TYPE_SUBLOCALITY',
'postal-code': 'Ti.UI.AUTOFILL_TYPE_POSTAL_CODE',
'card-number': 'Ti.UI.AUTOFILL_TYPE_CARD_NUMBER',
'address-city': 'Ti.UI.AUTOFILL_TYPE_ADDRESS_CITY',
'country-name': 'Ti.UI.AUTOFILL_TYPE_COUNTRY_NAME',
'new-password': 'Ti.UI.AUTOFILL_TYPE_NEW_PASSWORD',
'address-line1': 'Ti.UI.AUTOFILL_TYPE_ADDRESS_LINE1',
'address-line2': 'Ti.UI.AUTOFILL_TYPE_ADDRESS_LINE2',
'address-state': 'Ti.UI.AUTOFILL_TYPE_ADDRESS_STATE',
'one-time-code': 'Ti.UI.AUTOFILL_TYPE_ONE_TIME_CODE',
'organization-name': 'Ti.UI.AUTOFILL_TYPE_ORGANIZATION_NAME',
'address-city-state': 'Ti.UI.AUTOFILL_TYPE_ADDRESS_CITY_STATE',
'card-security-code': 'Ti.UI.AUTOFILL_TYPE_CARD_SECURITY_CODE',
'card-expiration-day': 'Ti.UI.AUTOFILL_TYPE_CARD_EXPIRATION_DAY',
'card-expiration-date': 'Ti.UI.AUTOFILL_TYPE_CARD_EXPIRATION_DATE',
'card-expiration-year': 'Ti.UI.AUTOFILL_TYPE_CARD_EXPIRATION_YEAR',
'card-expiration-month': 'Ti.UI.AUTOFILL_TYPE_CARD_EXPIRATION_MONTH'
}
})
}
exports.autofillType = autofillType
function autoLink() {
return processProperties({
prop: 'autoLink',
modules: 'Ti.UI.Label, Ti.UI.TextArea, Ti.UI.TextField'
}, {
'auto-link': '{ autoLink: {value} }'
}, {
default: {
all: 'Ti.UI.AUTOLINK_ALL',
'email-addresses': 'Ti.UI.AUTOLINK_EMAIL_ADDRESSES',
'map-addresses': 'Ti.UI.AUTOLINK_MAP_ADDRESSES',
none: 'Ti.UI.AUTOLINK_NONE',
'phone-numbers': 'Ti.UI.AUTOLINK_PHONE_NUMBERS',
urls: 'Ti.UI.AUTOLINK_URLS'
},
ios: {
calendar: 'Ti.UI.AUTOLINK_CALENDAR'
}
})
}
exports.autoLink = autoLink
function autoreverse() {
return processProperties({
prop: 'autoreverse',
modules: 'Ti.UI.Animation'
}, {
default: '{ autoreverse: {value} }'
}, {
default: {
autoreverse: true,
'no-autoreverse': false
}
})
}
exports.autoreverse = autoreverse
function autorotate() {
return processProperties({
prop: 'autorotate',
modules: 'Ti.UI.ImageView'
}, {
default: '{ autorotate: {value} }'
}, {
default: {
autorotate: true,
'dont-autorotate': false
}
})
}
exports.autorotate = autorotate
function backgroundBlendMode() {
if (globalOptions.legacy) {
return processProperties({
prop: 'mode ( Background Blend Mode )',
modules: 'Ti.UI.MaskedImage'
}, {
'bg-blend': '{ mode: {value} }'
}, {
default: {
clear: 'Ti.UI.BLEND_MODE_CLEAR',
copy: 'Ti.UI.BLEND_MODE_COPY',
darken: 'Ti.UI.BLEND_MODE_DARKEN',
'destination-atop': 'Ti.UI.BLEND_MODE_DESTINATION_ATOP',
'destination-in': 'Ti.UI.BLEND_MODE_DESTINATION_IN',
'destination-out': 'Ti.UI.BLEND_MODE_DESTINATION_OUT',
'destination-over': 'Ti.UI.BLEND_MODE_DESTINATION_OVER',
lighten: 'Ti.UI.BLEND_MODE_LIGHTEN',
multiply: 'Ti.UI.BLEND_MODE_MULTIPLY',
normal: 'Ti.UI.BLEND_MODE_NORMAL',
overlay: 'Ti.UI.BLEND_MODE_OVERLAY',
'plus-lighter': 'Ti.UI.BLEND_MODE_PLUS_LIGHTER',
screen: 'Ti.UI.BLEND_MODE_SCREEN',
'source-atop': 'Ti.UI.BLEND_MODE_SOURCE_ATOP',
'source-in': 'Ti.UI.BLEND_MODE_SOURCE_IN',
'source-out': 'Ti.UI.BLEND_MODE_SOURCE_OUT',
xor: 'Ti.UI.BLEND_MODE_XOR'
},
ios: {
color: 'Ti.UI.BLEND_MODE_COLOR',
'color-burn': 'Ti.UI.BLEND_MODE_COLOR_BURN',
'color-dodge': 'Ti.UI.BLEND_MODE_COLOR_DODGE',
diference: 'Ti.UI.BLEND_MODE_DIFFERENCE',
exclusion: 'Ti.UI.BLEND_MODE_EXCLUSION',
'hard-light': 'Ti.UI.BLEND_MODE_HARD_LIGHT',
hue: 'Ti.UI.BLEND_MODE_HUE',
luminosity: 'Ti.UI.BLEND_MODE_LUMINOSITY',
'plus-darker': 'Ti.UI.BLEND_MODE_PLUS_DARKER',
saturation: 'Ti.UI.BLEND_MODE_SATURATION',
'soft-light': 'Ti.UI.BLEND_MODE_SOFT_LIGHT'
}
})
} else {
return processProperties({
prop: 'mode ( Background Blend Mode )',
modules: 'Ti.UI.MaskedImage'
}, {
'bg-blend': '{ mode: {value} }'
}, {
default: {
clear: 'Ti.UI.BLEND_MODE_CLEAR',
copy: 'Ti.UI.BLEND_MODE_COPY',
darken: 'Ti.UI.BLEND_MODE_DARKEN',
'destination-atop': 'Ti.UI.BLEND_MODE_DESTINATION_ATOP',
'destination-in': 'Ti.UI.BLEND_MODE_DESTINATION_IN',
'destination-out': 'Ti.UI.BLEND_MODE_DESTINATION_OUT',
'destination-over': 'Ti.UI.BLEND_MODE_DESTINATION_OVER',
lighten: 'Ti.UI.BLEND_MODE_LIGHTEN',
multiply: 'Ti.UI.BLEND_MODE_MULTIPLY',
normal: 'Ti.UI.BLEND_MODE_NORMAL',
overlay: 'Ti.UI.BLEND_MODE_OVERLAY',
'plus-lighter': 'Ti.UI.BLEND_MODE_PLUS_LIGHTER',
screen: 'Ti.UI.BLEND_MODE_SCREEN',
'source-atop': 'Ti.UI.BLEND_MODE_SOURCE_ATOP',
'source-in': 'Ti.UI.BLEND_MODE_SOURCE_IN',
'source-out': 'Ti.UI.BLEND_MODE_SOURCE_OUT',
xor: 'Ti.UI.BLEND_MODE_XOR',
color: 'Ti.UI.BLEND_MODE_COLOR',
'color-burn': 'Ti.UI.BLEND_MODE_COLOR_BURN',
'color-dodge': 'Ti.UI.BLEND_MODE_COLOR_DODGE',
diference: 'Ti.UI.BLEND_MODE_DIFFERENCE',
exclusion: 'Ti.UI.BLEND_MODE_EXCLUSION',
'hard-light': 'Ti.UI.BLEND_MODE_HARD_LIGHT',
hue: 'Ti.UI.BLEND_MODE_HUE',
luminosity: 'Ti.UI.BLEND_MODE_LUMINOSITY',
'plus-darker': 'Ti.UI.BLEND_MODE_PLUS_DARKER',
saturation: 'Ti.UI.BLEND_MODE_SATURATION',
'soft-light': 'Ti.UI.BLEND_MODE_SOFT_LIGHT'
}
})
}
}
exports.backgroundBlendMode = backgroundBlendMode
function backgroundLinearGradient() {
let convertedStyles = processComments({
prop: 'backgroundGradient - Linear',
modules: 'Ti.UI.MaskedImage'
})
convertedStyles += '\'.bg-linear\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'50%\', y: \'100%\' }, endPoint: { x: \'50%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-linear-to-t\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'0%\', y: \'0%\' }, endPoint: { x: \'0%\', y: \'100%\' } } }\n'
convertedStyles += '\'.bg-linear-to-tr\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'100%\', y: \'0%\' }, endPoint: { x: \'0%\', y: \'100%\' } } }\n'
convertedStyles += '\'.bg-linear-to-r\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'100%\', y: \'0%\' }, endPoint: { x: \'0%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-linear-to-br\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'100%\', y: \'100%\' }, endPoint: { x: \'0%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-linear-to-b\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'100%\', y: \'100%\' }, endPoint: { x: \'100%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-linear-to-bl\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'0%\', y: \'100%\' }, endPoint: { x: \'100%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-linear-to-l\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'0%\', y: \'0%\' }, endPoint: { x: \'100%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-linear-to-tl\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'0%\', y: \'0%\' }, endPoint: { x: \'100%\', y: \'100%\' } } }\n'
convertedStyles += processComments({
prop: 'backgroundGradient - Gradient',
modules: 'Ti.UI.MaskedImage'
})
convertedStyles += '\'.bg-gradient\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'50%\', y: \'100%\' }, endPoint: { x: \'50%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-gradient-to-t\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'0%\', y: \'0%\' }, endPoint: { x: \'0%\', y: \'100%\' } } }\n'
convertedStyles += '\'.bg-gradient-to-tr\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'100%\', y: \'0%\' }, endPoint: { x: \'0%\', y: \'100%\' } } }\n'
convertedStyles += '\'.bg-gradient-to-r\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'100%\', y: \'0%\' }, endPoint: { x: \'0%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-gradient-to-br\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'100%\', y: \'100%\' }, endPoint: { x: \'0%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-gradient-to-b\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'100%\', y: \'100%\' }, endPoint: { x: \'100%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-gradient-to-bl\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'0%\', y: \'100%\' }, endPoint: { x: \'100%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-gradient-to-l\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'0%\', y: \'0%\' }, endPoint: { x: \'100%\', y: \'0%\' } } }\n'
convertedStyles += '\'.bg-gradient-to-tl\': { backgroundGradient: { type: \'linear\', backfillStart: true, startPoint: { x: \'0%\', y: \'0%\' }, endPoint: { x: \'100%\', y: \'100%\' } } }\n'
return convertedStyles
}
exports.backgroundLinearGradient = backgroundLinearGradient
function backgroundRadialGradient() {
let convertedStyles = processComments({
prop: 'backgroundGradient: type, startRadius, endRadius, backfillStart, backfillEnd - iOS Only',
modules: 'Ti.UI.ListItem, Ti.UI.View'
})
const legacy = (globalOptions.legacy) ? '[platform=ios]' : ''
convertedStyles += `'.bg-radial${legacy}': { backgroundGradient: { type: 'radial', backfillStart: true, backfillEnd: true, startRadius: '125%', endRadius: '0%' } }\n`
convertedStyles += `'.bg-radial-to-b${legacy}': { backgroundGradient: { type: 'radial', backfillStart: true, backfillEnd: true, startRadius: '150%', endRadius: '0%', startPoint: { x: '50%', y: '0%' }, endPoint: { x: '50%', y: '0%' } } }\n`
convertedStyles += `'.bg-radial-to-bl${legacy}': { backgroundGradient: { type: 'radial', backfillStart: true, backfillEnd: true, startRadius: '150%', endRadius: '0%', startPoint: { x: '100%', y: '0%' }, endPoint: { x: '100%', y: '0%' } } }\n`
convertedStyles += `'.bg-radial-to-l${legacy}': { backgroundGradient: { type: 'radial', backfillStart: true, backfillEnd: true, startRadius: '150%', endRadius: '0%', startPoint: { x: '100%', y: '50%' }, endPoint: { x: '100%', y: '50%' } } }\n`
convertedStyles += `'.bg-radial-to-tl${legacy}': { backgroundGradient: { type: 'radial', backfillStart: true, backfillEnd: true, startRadius: '150%', endRadius: '0%', startPoint: { x: '100%', y: '100%' }, endPoint: { x: '100%', y: '100%' } } }\n`
convertedStyles += `'.bg-radial-to-t${legacy}': { backgroundGradient: { type: 'radial', backfillStart: true, backfillEnd: true, startRadius: '150%', endRadius: '0%', startPoint: { x: '50%', y: '100%' }, endPoint: { x: '50%', y: '100%' } } }\n`
convertedStyles += `'.bg-radial-to-tr${legacy}': { backgroundGradient: { type: 'radial', backfillStart: true, backfillEnd: true, startRadius: '150%', endRadius: '0%', startPoint: { x: '0%', y: '100%' }, endPoint: { x: '0%', y: '100%' } } }\n`
convertedStyles += `'.bg-radial-to-r${legacy}': { backgroundGradient: { type: 'radial', backfillStart: true, backfillEnd: true, startRadius: '150%', endRadius: '0%', startPoint: { x: '0%', y: '50%' }, endPoint: { x: '0%', y: '50%' } } }\n`
convertedStyles += `'.bg-radial-to-br${legacy}': { backgroundGradient: { type: 'radial', backfillStart: true, backfillEnd: true, startRadius: '150%', endRadius: '0%', startPoint: { x: '0%', y: '0%' }, endPoint: { x: '0%', y: '0%' } } }\n`
return convertedStyles
}
exports.backgroundRadialGradient = backgroundRadialGradient
function backgroundRepeat() {
return processProperties({
prop: 'backgroundRepeat',
modules: 'Ti.UI.View'
}, {
default: '{ backgroundRepeat: {value} }'
}, {
default: {
'bg-repeat': true,
'bg-dont-repeat': false,
'background-repeat': true,
'background-dont-repeat': false
}
})
}
exports.backgroundRepeat = backgroundRepeat
function borderStyle() {
return processProperties({
prop: 'borderStyle',
modules: 'Ti.UI.Picker[android], Ti.UI.TextArea, Ti.UI.TextField'
}, {
'border-style': '{ borderStyle: {value} }'
}, {
default: {
bezel: 'Ti.UI.INPUT_BORDERSTYLE_BEZEL',
filled: 'Ti.UI.INPUT_BORDERSTYLE_FILLED',
line: 'Ti.UI.INPUT_BORDERSTYLE_LINE',
none: 'Ti.UI.INPUT_BORDERSTYLE_NONE',
rounded: 'Ti.UI.INPUT_BORDERSTYLE_ROUNDED',
underlined: 'Ti.UI.INPUT_BORDERSTYLE_UNDERLINED'
}
})
}
exports.borderStyle = borderStyle
function bubbleParent() {
return processProperties({
prop: 'bubbleParent',
modules: 'Ti.Proxy'
}, {
default: '{ bubbleParent: {value} }'
}, {
default: {
'bubble-parent': true,
'dont-bubble-parent': false
}
})
}
exports.bubbleParent = bubbleParent
function buttonStyle() {
return processProperties({
prop: 'style',
modules: 'Ti.UI.Button'
}, {
'button-style': '{ style: {value} }'
}, {
default: {
filled: 'Ti.UI.BUTTON_STYLE_FILLED',
'option-negative': 'Ti.UI.BUTTON_STYLE_OPTION_NEGATIVE',
'option-neutral': 'Ti.UI.BUTTON_STYLE_OPTION_NEUTRAL',
'option-positive': 'Ti.UI.BUTTON_STYLE_OPTION_POSITIVE',
outlined: 'Ti.UI.BUTTON_STYLE_OUTLINED',
text: 'Ti.UI.BUTTON_STYLE_TEXT'
}
})
}
exports.buttonStyle = buttonStyle
function cacheMode() {
return processProperties({
prop: 'cacheMode - Android Only',
modules: 'Ti.UI.WebView'
}, {
'cache-mode': '{ cacheMode: {value} }',
'webview-load': '{ cacheMode: {value} }'
}, {
android: {
default: 'Ti.UI.Android.WEBVIEW_LOAD_DEFAULT',
'no-cache': 'Ti.UI.Android.WEBVIEW_LOAD_NO_CACHE',
'cache-only': 'Ti.UI.Android.WEBVIEW_LOAD_CACHE_ONLY',
'cache-else-network': 'Ti.UI.Android.WEBVIEW_LOAD_CACHE_ELSE_NETWORK'
}
})
}
exports.cacheMode = cacheMode
function cachePolicy() {
return processProperties({
prop: 'cachePolicy - Android Only',
modules: 'Ti.UI.WebView'
}, {
'cache-policy': '{ cachePolicy: {value} }'
}, {
ios: {
'use-protocol-cache-only': 'Ti.UI.iOS.CACHE_POLICY_USE_PROTOCOL_CACHE_POLICY',
'ignoring-local-cache-data': 'Ti.UI.iOS.CACHE_POLICY_RELOAD_IGNORING_LOCAL_CACHE_DATA',
'return-cache-data-else-load': 'Ti.UI.iOS.CACHE_POLICY_RETURN_CACHE_DATA_ELSE_LOAD',
'return-cache-data-dont-load': 'Ti.UI.iOS.CACHE_POLICY_RETURN_CACHE_DATA_DONT_LOAD'
}
})
}
exports.cachePolicy = cachePolicy
function calendarViewShown() {
return processProperties({
prop: 'calendarViewShown - Android Only',
modules: 'Ti.UI.Picker'
}, {
'calendar-view': '{ calendarViewShown: {value} }'
}, {
android: {
shown: true,
hidden: false
}
})
}
exports.calendarViewShown = calendarViewShown
function canCancelEvents() {
return processProperties({
prop: 'canCancelEvents',
modules: 'Ti.UI.ScrollView'
}, {
default: '{ canCancelEvents: {value} }'
}, {
default: {
'can-cancel-events': true,
'cant-cancel-events': false
}
})
}
exports.canCancelEvents = canCancelEvents
function canDelete() {
return processProperties({
prop: 'canDelete - iOS Only',
modules: 'Ti.UI.DashboardItem'
}, {
default: '{ canDelete: {value} }'
}, {
ios: {
'can-delete': true,
'cant-delete': false
}
})
}
exports.canDelete = canDelete
function canEdit() {
return processProperties({
prop: 'canEdit',
modules: 'Ti.UI.ListItem'
}, {
default: '{ canEdit: {value} }'
}, {
default: {
'can-edit': true,
'cant-edit': false
}
})
}
exports.canEdit = canEdit
function canInsert() {
return processProperties({
prop: 'canInsert',
modules: 'Ti.UI.ListItem'
}, {
default: '{ canInsert: {value} }'
}, {
default: {
'can-insert': true,
'cant-insert': false
}
})
}
exports.canInsert = canInsert
function canMove() {
return processProperties({
prop: 'canMove',
modules: 'Ti.UI.ListItem'
}, {
default: '{ canMove: {value} }'
}, {
default: {
'can-move': true,
'cant-move': false
}
})
}
exports.canMove = canMove
function canScroll() {
return processProperties({
prop: 'canScroll',
modules: 'Ti.UI.ListView'
}, {
default: '{ canScroll: {value} }'
}, {
default: {
'can-scroll': true,
'cant-scroll': false
}
})
}
exports.canScroll = canScroll
function caseInsensitiveSearch() {
return processProperties({
prop: 'caseInsensitiveSearch',
modules: 'Ti.UI.ListView'
}, {
case: '{ caseInsensitiveSearch: {value} }'
}, {
default: {
'sensitive-search': false,
'insensitive-search': true
}
})
}
exports.caseInsensitiveSearch = caseInsensitiveSearch
function category() {
return processProperties({
prop: 'category - Android Only',
modules: 'Ti.Android.Notification'
}, {
default: '{ category: {value} }'
}, {
android: {
'category-alarm': 'Ti.Android.CATEGORY_ALARM',
'category-alternative': 'Ti.Android.CATEGORY_ALTERNATIVE',
'category-browsable': 'Ti.Android.CATEGORY_BROWSABLE',
'category-call': 'Ti.Android.CATEGORY_CALL',
'category-default': 'Ti.Android.CATEGORY_DEFAULT',
'category-development-preference': 'Ti.Android.CATEGORY_DEVELOPMENT_PREFERENCE',
'category-email': 'Ti.Android.CATEGORY_EMAIL',
'category-embed': 'Ti.Android.CATEGORY_EMBED',
'category-error': 'Ti.Android.CATEGORY_ERROR',
'category-event': 'Ti.Android.CATEGORY_EVENT',
'category-framework-instrumentation-test': 'Ti.Android.CATEGORY_FRAMEWORK_INSTRUMENTATION_TEST',
'category-home': 'Ti.Android.CATEGORY_HOME',
'category-info': 'Ti.Android.CATEGORY_INFO',
'category-launcher': 'Ti.Android.CATEGORY_LAUNCHER',
'category-message': 'Ti.Android.CATEGORY_MESSAGE',
'category-monkey': 'Ti.Android.CATEGORY_MONKEY',
'category-openable': 'Ti.Android.CATEGORY_OPENABLE',
'category-preference': 'Ti.Android.CATEGORY_PREFERENCE',
'category-progress': 'Ti.Android.CATEGORY_PROGRESS',
'category-promo': 'Ti.Android.CATEGORY_PROMO',
'category-recommendation': 'Ti.Android.CATEGORY_RECOMMENDATION',
'category-sample-code': 'Ti.Android.CATEGORY_SAMPLE_CODE',
'category-selected-alternative': 'Ti.Android.CATEGORY_SELECTED_ALTERNATIVE',
'category-service': 'Ti.Android.CATEGORY_SERVICE',
'category-social': 'Ti.Android.CATEGORY_SOCIAL',
'category-status': 'Ti.Android.CATEGORY_STATUS',
'category-tab': 'Ti.Android.CATEGORY_TAB',
'category-test': 'Ti.Android.CATEGORY_TEST',
'category-transport': 'Ti.Android.CATEGORY_TRANSPORT',
'category-unit-test': 'Ti.Android.CATEGORY_UNIT_TEST'
}
})
}
exports.category = category
function checkable() {
return processProperties({
prop: 'checkable - Android Only',
modules: 'Ti.Android.MenuItem'
}, {
default: '{ checkable: {value} }'
}, {
android: {
checable: true,
unchecable: false
}
})
}
exports.checkable = checkable
function clearButtonMode() {
return processProperties({
prop: 'clearButtonMode - iOS Only',
modules: 'Ti.UI.TextField'
}, {
'clear-button-mode': '{ clearButtonMode: {value} }'
}, {
ios: {
always: 'Ti.UI.INPUT_BUTTONMODE_ALWAYS',
never: 'Ti.UI.INPUT_BUTTONMODE_NEVER',
'on-blur': 'Ti.UI.INPUT_BUTTONMODE_ONBLUR',
'on-focus': 'Ti.UI.INPUT_BUTTONMODE_ONFOCUS'
}
})
}
exports.clearButtonMode = clearButtonMode
function clearOnEdit() {
return processProperties({
prop: 'clearOnEdit - Android Only',
modules: 'Ti.UI.TextArea, Ti.UI.TextField'
}, {
default: '{ clearOnEdit: {value} }'
}, {
android: {
'clear-on-edit': true,
'dont-clear-on-edit': false
}
})
}
exports.clearOnEdit = clearOnEdit
function clipMode() {
return processProperties({
prop: 'clipMode - iOS Only',
modules: 'Ti.UI.View'
}, {
clip: '{ clipMode: {value} }'
}, {
ios: {
enabled: 'Ti.UI.iOS.CLIP_MODE_ENABLED',
disabled: 'Ti.UI.iOS.CLIP_MODE_DISABLED'
}
})
}
exports.clipMode = clipMode
function contentHeightAndWidth() {
let convertedStyles = processComments({
prop: 'contentWidth, contentHeight',
modules: 'Ti.UI.ScrollView'
})
convertedStyles += '\'.content-w-auto\': { contentWidth: Ti.UI.SIZE }\n'
convertedStyles += '\'.content-h-auto\': { contentHeight: Ti.UI.SIZE }\n'
convertedStyles += '\'.content-w-screen\': { contentWidth: Ti.UI.FILL }\n'
convertedStyles += '\'.content-h-screen\': { contentHeight: Ti.UI.FILL }\n'
convertedStyles += '\'.content-auto\': { contentWidth: Ti.UI.SIZE, contentHeight: Ti.UI.SIZE }\n'
convertedStyles += '\'.content-screen\': { contentWidth: Ti.UI.FILL, contentHeight: Ti.UI.FILL }\n'
return convertedStyles
}
exports.contentHeightAndWidth = contentHeightAndWidth
function datePickerStyle() {
return processProperties({
prop: 'datePickerStyle',
modules: 'Ti.UI.Picker'
}, {
'date-picker-style': '{ datePickerStyle: {value} }'
}, {
default: {
automatic: 'Ti.UI.DATE_PICKER_STYLE_AUTOMATIC',
wheels: 'Ti.UI.DATE_PICKER_STYLE_WHEELS',
compact: 'Ti.UI.DATE_PICKER_STYLE_COMPACT',
inline: 'Ti.UI.DATE_PICKER_STYLE_INLINE'
}
})
}
exports.datePickerStyle = datePickerStyle
function defaultItemTemplate() {
return processProperties({
prop: 'defaultItemTemplate',
modules: 'Ti.UI.ListView'
}, {
'list-item-template': '{ defaultItemTemplate: {value} }'
}, {
[(globalOptions.legacy) ? 'ios' : 'default']: {
default: 'Ti.UI.LIST_ITEM_TEMPLATE_DEFAULT',
contacts: 'Ti.UI.LIST_ITEM_TEMPLATE_CONTACTS',
settings: 'Ti.UI.LIST_ITEM_TEMPLATE_SETTINGS',
subtitle: 'Ti.UI.LIST_ITEM_TEMPLATE_SUBTITLE'
}
})
}
exports.defaultItemTemplate = defaultItemTemplate
function dimBackgroundForSearch() {
return processProperties({
prop: 'dimBackgroundForSearch - iOS Only',
modules: 'Ti.UI.ListView, Ti.UI.TableView'
}, {
default: '{ dimBackgroundForSearch: {value} }'
}, {
ios: {
'dim-background-for-search': true,
'dont-dim-background-for-search': false
}
})
}
exports.dimBackgroundForSearch = dimBackgroundForSearch
function disableBounce() {
return processProperties({
prop: 'disableBounce - iOS Only',
modules: 'Ti.UI.ListView, Ti.UI.ScrollableView, Ti.UI.ScrollView, Ti.UI.WebView'
}, {
default: '{ disableBounce: {value} }'
}, {
ios: {
'disable-bounce': true,
'enable-bounce': false
}
})
}
exports.disableBounce = disableBounce
function disableContextMenu() {
return processProperties({
prop: 'disableContextMenu - Android Only',
modules: 'Ti.UI.WebView'
}, {
default: '{ disableContextMenu: {value} }'
}, {
android: {
'disable-context-menu': true,
'dont-disable-context-menu': false
}
})
}
exports.disableContextMenu = disableContextMenu
function displayCaps() {
let convertedStyles = '\n// Property(ies): width, height\n'
convertedStyles += '// Component(s): Ti.UI.ActivityIndicator, Ti.UI.Animation, Ti.UI.iPad.Popover, Ti.UI.View\n'
convertedStyles += '// Description: width and height properties using Ti.Platform.displayCaps platformWidth and platformHeight values\n'
convertedStyles += '\'.platform-w\': { width: Ti.Platform.displayCaps.platformWidth }\n'
convertedStyles += '\'.platform-h\': { height: Ti.Platform.displayCaps.platformHeight }\n'
convertedStyles += '\'.inverted-platform-w[platform=ios]\': { width: Ti.Platform.displayCaps.platformHeight }\n'
convertedStyles += '\'.inverted-platform-h[platform=ios]\': { height: Ti.Platform.displayCaps.platformWidth }\n'
convertedStyles += '\'.inverted-platform-w[platform=android]\': { width: Ti.Platform.displayCaps.platformWidth }\n'
convertedStyles += '\'.inverted-platform-h[platform=android]\': { height: Ti.Platform.displayCaps.platformHeight }\n'
convertedStyles += '\'.platform-wh\': { width: Ti.Platform.displayCaps.platformWidth, height: Ti.Platform.displayCaps.platformHeight }\n'
convertedStyles += '\'.platform-w-inverted[platform=ios]\': { width: Ti.Platform.displayCaps.platformHeight }\n'
convertedStyles += '\'.platform-h-inverted[platform=ios]\': { height: Ti.Platform.displayCaps.platformWidth }\n'
convertedStyles += '\'.platform-wh-inverted[platform=ios]\': { width: Ti.Platform.displayCaps.platformHeight, height: Ti.Platform.displayCaps.platformWidth }\n'
convertedStyles += '\'.platform-w-inverted[platform=android]\': { width: Ti.Platform.displayCaps.platformWidth }\n'
convertedStyles += '\'.platform-h-inverted[platform=android]\': { height: Ti.Platform.displayCaps.platformHeight }\n'
convertedStyles += '\'.platform-wh-inverted[platform=android]\': { width: Ti.Platform.displayCaps.platformWidth, height: Ti.Platform.displayCaps.platformHeight }\n'
return convertedStyles
}
exports.displayCaps = displayCaps
function displayHomeAsUp() {
return processProperties({
prop: 'displayHomeAsUp - Android Only',
modules: 'Ti.Android.ActionBar'
}, {
default: '{ displayHomeAsUp: {value} }'
}, {
android: {
'display-home-as-up': true,
'dont-display-home-as-up': false
}
})
}
exports.displayHomeAsUp = displayHomeAsUp
function visible() {
if (globalOptions.legacy) {
return processProperties({
prop: 'visible',
modules: 'Ti.UI.View, Ti.Android.ActionBar, Ti.Android.MenuItem, Ti.Media.VideoPlayer, Ti.UI.Android.CardView, Ti.UI.Android.DrawerLayout, Ti.UI.Android.SearchView, Ti.UI.Animation, Ti.UI.Button, Ti.UI.ButtonBar, Ti.UI.DashboardView, Ti.UI.ImageView, Ti.UI.Label, Ti.UI.ListView, Ti.UI.MaskedImage, Ti.UI.NavigationWindow, Ti.UI.OptionBar, Ti.UI.Picker, Ti.UI.PickerRow, Ti.UI.ProgressBar, Ti.UI.ScrollView, Ti.UI.ScrollableView, Ti.UI.SearchBar, Ti.UI.ShortcutItem, Ti.UI.Slider, Ti.UI.Switch, Ti.UI.TabGroup, Ti.UI.TabbedBar, Ti.UI.TableView, Ti.UI.TableViewRow, Ti.UI.TextArea, Ti.UI.TextField, Ti.UI.Toolbar, Ti.UI.WebView, Ti.UI.Window, Ti.UI.iOS.BlurView, Ti.UI.iOS.CoverFlowView, Ti.UI.iOS.LivePhotoView, Ti.UI.iOS.SplitWindow, Ti.UI.iOS.Stepper'
}, {
default: '{ visible: {value} }'
}, {
default: {
block: true,
hidden: false,
visible: true,
invisible: false
}
})
} else {
return processProperties({
prop: 'visible (Alternative)',
modules: 'Ti.UI.View, Ti.Android.ActionBar, Ti.Android.MenuItem, Ti.Media.VideoPlayer, Ti.UI.Android.CardView, Ti.UI.Android.DrawerLayout, Ti.UI.Android.SearchView, Ti.UI.Animation, Ti.UI.Button, Ti.UI.ButtonBar, Ti.UI.DashboardView, Ti.UI.ImageView, Ti.UI.Label, Ti.UI.ListView, Ti.UI.MaskedImage, Ti.UI.NavigationWindow, Ti.UI.OptionBar, Ti.UI.Picker, Ti.UI.PickerRow, Ti.UI.ProgressBar, Ti.UI.ScrollView, Ti.UI.ScrollableView, Ti.UI.SearchBar, Ti.UI.ShortcutItem, Ti.UI.Slider, Ti.UI.Switch, Ti.UI.TabGroup, Ti.UI.TabbedBar, Ti.UI.TableView, Ti.UI.TableViewRow, Ti.UI.TextArea, Ti.UI.TextField, Ti.UI.Toolbar, Ti.UI.WebView, Ti.UI.Window, Ti.UI.iOS.BlurView, Ti.UI.iOS.CoverFlowView, Ti.UI.iOS.LivePhotoView, Ti.UI.iOS.SplitWindow, Ti.UI.iOS.Stepper'
}, {
default: '{ visible: {value} }'
}, {
default: {
block: true,
hidden: false
}
})
}
}
exports.visible = visible
function constraint() {
return processProperties({
prop: 'A custom property to use it with the Animation module',
modules: 'Ti.UI.Animation'
}, {
default: '{ constraint: {value} }'
}, {
default: {
'horizontal-constraint': 'horizontal',
'vertical-constraint': 'vertical'
}
})
}
exports.constraint = constraint
function draggingType() {
return processProperties({
prop: 'draggingType',
modules: 'For the Animation Component'
}, {
drag: '{ draggingType: {value} }'
}, {
default: {
apply: 'apply',
animate: 'animate'
}
})
}
exports.draggingType = draggingType
function drawerIndicatorEnabled() {
return processProperties({
prop: 'drawerIndicatorEnabled - Android Only',
modules: 'Ti.UI.Android.DrawerLayout'
}, {
'drawer-indicator': '{ drawerIndicatorEnabled: {value} }'
}, {
android: {
enabled: true,
disabled: false
}
})
}
exports.drawerIndicatorEnabled = drawerIndicatorEnabled
function drawerLockMode() {
return processProperties({
prop: 'drawerLockMode - Android Only',