UNPKG

purgetss

Version:

A package that simplifies mobile app creation for Titanium developers.

1,393 lines (1,292 loc) 233 kB
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',