Files
NativeScript/tools/workspace-scripts.js
2024-10-23 09:25:25 -07:00

166 lines
5.1 KiB
JavaScript

module.exports = {
message: 'NativeScript ~ made with ❤️ Choose a command to start...',
pageSize: 32,
scripts: {
default: 'nps-i',
nx: {
script: 'nx',
description: 'Execute any command with the Nx cli'
},
format: {
script: 'nx format:write',
description: 'Format source code of the entire workspace (auto-run on precommit hook)'
},
"🔧": {
script: `npx cowsay "NativeScript apps are key to a user's ❤️"`,
description: '_____________ Apps to develop and experiment with _____________'
},
// app testing targets
apps: {
"...Automated...": {
script: `npx cowsay "These run fast, watch the fireworks! 🎆"`,
description: ` 🔻 Automated test runner which executes e2e tests on the target platform 🎆`
},
// Automated test runner which executes e2e tests on the target platform
automated: {
clean: {
script: 'nx clean apps-automated',
description: '⚆ Clean 🧹'
},
ios: {
script: 'nx debug apps-automated ios',
description: '⚆ Run iOS '
},
visionos: {
script: 'nx debug apps-automated vision',
description: '⚆ Run visionOS 🥽'
},
android: {
script: 'nx debug apps-automated android',
description: '⚆ Run Android 🤖'
},
},
"...ToolBox...": {
script: `npx cowsay "🎯 The best development target to experiment with ideas and debug core"`,
description: ` 🔻 Toolbox for livesyncing changes and experimenting 🎯`
},
// Toolbox useful for livesyncing changes and experimenting
toolbox: {
clean: {
script: 'nx clean apps-toolbox',
description: '⚆ Clean 🧹'
},
ios: {
script: 'nx debug apps-toolbox ios',
description: '⚆ Run iOS '
},
visionos: {
script: 'nx debug apps-toolbox vision',
description: '⚆ Run visionOS 🥽'
},
android: {
script: 'nx debug apps-toolbox android',
description: '⚆ Run Android 🤖'
},
},
"...UI...": {
script: `npx cowsay "Tons of ui samples to prove out core behavior and validate github issue fixes ☑️"`,
description: ` 🔻 Tons of ui samples to prove out core behavior and validate github issue fixes ☑️`
},
// Various UI level setups for @nativescript/core testing
ui: {
clean: {
script: 'nx clean apps-ui',
description: '⚆ Clean 🧹'
},
ios: {
script: 'nx debug apps-ui ios',
description: '⚆ Run iOS '
},
visionos: {
script: 'nx debug apps-ui vision',
description: '⚆ Run visionOS 🥽'
},
android: {
script: 'nx debug apps-ui android',
description: '⚆ Run Android 🤖'
},
},
},
"⚙️": {
script: `npx cowsay "@nativescript/* packages will keep your ⚙️ cranking"`,
description: '_____________ @nativescript/* _____________'
},
// packages
// build output is always in dist/packages
'@nativescript': {
// @nativescript/core
core: {
build: {
script: 'nx build core',
description: '@nativescript/core: Build'
},
test: {
script: 'nx test core',
description: '@nativescript/core: Unit tests'
},
},
// @nativescript/core API Reference Docs
'core-api-docs': {
build: {
script: 'nx build core-api-docs',
description: '@nativescript/core: API Reference Docs Build'
}
},
// @nativescript/ui-mobile-base
'ui-mobile-base': {
build: {
script: 'nx build ui-mobile-base',
description: '@nativescript/ui-mobile-base: Build for npm'
},
},
// @nativescript/webpack (5)
webpack5: {
build: {
script: 'nx build webpack5',
description: '@nativescript/webpack(5): Build for npm'
},
test: {
script: 'nx test webpack5',
description: '@nativescript/webpack(5): Unit tests'
},
},
},
"⚡": {
script: `npx cowsay "Focus only on source you care about for efficiency ⚡"`,
description: '_____________ Focus (VS Code supported) _____________'
},
focus: {
core: {
script: 'nx g @nstudio/focus:mode core',
description: 'Focus on @nativescript/core'
},
types: {
script: 'nx g @nstudio/focus:mode types-android,types-ios',
description: 'Focus on @nativescript/types'
},
'ui-mobile-base': {
script: 'nx g @nstudio/focus:mode ui-mobile-base',
description: 'Focus on @nativescript/ui-mobile-base'
},
webpack: {
script: 'nx g @nstudio/focus:mode webpack',
description: 'Focus on @nativescript/webpack'
},
reset: {
script: 'nx g @nstudio/focus:mode',
description: 'Reset Focus'
}
},
".....................": {
script: `npx cowsay "That's all for now folks ~"`,
description: '.....................'
}
},
};