@signageos/cli 2.4.1 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/README.md +27 -1
  2. package/dist/Applet/Build/appletBuildCommand.d.ts +28 -2
  3. package/dist/Applet/Build/appletBuildCommand.js +27 -1
  4. package/dist/Applet/Generate/Templates/index.js.template +1 -1
  5. package/dist/Applet/Generate/Templates/tsconfig.js.template +1 -1
  6. package/dist/Applet/Generate/appletGenerateCommand.d.ts +29 -23
  7. package/dist/Applet/Generate/appletGenerateCommand.js +37 -31
  8. package/dist/Applet/Start/appletStartCommand.d.ts +44 -2
  9. package/dist/Applet/Start/appletStartCommand.js +44 -2
  10. package/dist/Applet/Test/Upload/appletTestRunCommand.d.ts +25 -2
  11. package/dist/Applet/Test/Upload/appletTestRunCommand.js +24 -1
  12. package/dist/Applet/Test/Upload/appletTestUploadCommand.d.ts +34 -4
  13. package/dist/Applet/Test/Upload/appletTestUploadCommand.js +32 -2
  14. package/dist/Applet/Test/appletTestCommand.d.ts +23 -6
  15. package/dist/Applet/Test/appletTestCommand.js +17 -0
  16. package/dist/Applet/Upload/appletUploadCommand.d.ts +46 -4
  17. package/dist/Applet/Upload/appletUploadCommand.js +44 -2
  18. package/dist/Applet/Upload/appletUploadFacade.js +3 -3
  19. package/dist/Applet/appletCommand.d.ts +42 -10
  20. package/dist/Applet/appletCommand.js +33 -1
  21. package/dist/Auth/loginCommand.d.ts +23 -2
  22. package/dist/Auth/loginCommand.js +42 -14
  23. package/dist/Command/Autocomplete/Install/installAutocompleteCommand.d.ts +17 -0
  24. package/dist/Command/Autocomplete/Install/installAutocompleteCommand.js +17 -0
  25. package/dist/Command/Autocomplete/Install/installAutocompleteCommand.ts +17 -0
  26. package/dist/Command/Autocomplete/Uninstall/uninstallAutocompleteCommand.d.ts +17 -0
  27. package/dist/Command/Autocomplete/Uninstall/uninstallAutocompleteCommand.js +22 -5
  28. package/dist/Command/Autocomplete/autocompleteCommand.d.ts +18 -0
  29. package/dist/Command/Autocomplete/autocompleteCommand.js +19 -1
  30. package/dist/Command/autoComplete.js +2 -2
  31. package/dist/Command/globalArgs.d.ts +33 -0
  32. package/dist/Command/globalArgs.js +33 -0
  33. package/dist/CustomScript/Generate/customScriptGenerateCommand.d.ts +19 -0
  34. package/dist/CustomScript/Generate/customScriptGenerateCommand.js +20 -1
  35. package/dist/CustomScript/Upload/customScriptUploadCommand.d.ts +32 -2
  36. package/dist/CustomScript/Upload/customScriptUploadCommand.js +31 -1
  37. package/dist/CustomScript/customScriptCommand.d.ts +21 -1
  38. package/dist/CustomScript/customScriptCommand.js +20 -0
  39. package/dist/Device/Connect/connectCommand.d.ts +51 -2
  40. package/dist/Device/Connect/connectCommand.js +50 -1
  41. package/dist/Device/Content/setContentCommand.d.ts +28 -2
  42. package/dist/Device/Content/setContentCommand.js +27 -1
  43. package/dist/Device/PowerAction/powerActionCommand.d.ts +54 -2
  44. package/dist/Device/PowerAction/powerActionCommand.js +52 -0
  45. package/dist/Device/deviceCommand.d.ts +26 -6
  46. package/dist/Device/deviceCommand.js +21 -1
  47. package/dist/Device/deviceFacade.d.ts +1 -1
  48. package/dist/Firmware/Upload/firmwareUploadCommand.d.ts +42 -0
  49. package/dist/Firmware/Upload/firmwareUploadCommand.js +40 -6
  50. package/dist/Firmware/Upload/firmwareUploadFacade.js +1 -1
  51. package/dist/Firmware/firmwareCommand.d.ts +25 -0
  52. package/dist/Firmware/firmwareCommand.js +18 -1
  53. package/dist/Lib/childProcess.js +2 -2
  54. package/dist/Organization/Get/organizationGetCommand.d.ts +31 -2
  55. package/dist/Organization/Get/organizationGetCommand.js +31 -2
  56. package/dist/Organization/List/organizationListCommand.d.ts +20 -0
  57. package/dist/Organization/List/organizationListCommand.js +21 -1
  58. package/dist/Organization/SetDefault/organizationSetDefaultCommand.d.ts +24 -0
  59. package/dist/Organization/SetDefault/organizationSetDefaultCommand.js +25 -1
  60. package/dist/Organization/organizationCommand.d.ts +27 -2
  61. package/dist/Organization/organizationCommand.js +26 -1
  62. package/dist/Organization/organizationFacade.d.ts +2 -2
  63. package/dist/Organization/organizationFacade.js +3 -3
  64. package/dist/Timing/List/timingListCommand.d.ts +26 -2
  65. package/dist/Timing/List/timingListCommand.js +26 -2
  66. package/dist/Timing/timingCommand.d.ts +17 -2
  67. package/dist/Timing/timingCommand.js +15 -0
  68. package/dist/helper.d.ts +5 -5
  69. package/dist/helper.js +4 -6
  70. package/dist/index.js +23 -1
  71. package/docs/applet/build/index.md +74 -0
  72. package/docs/applet/generate/index.md +118 -0
  73. package/docs/applet/index.md +134 -0
  74. package/docs/applet/start/index.md +104 -0
  75. package/docs/applet/test/index.md +91 -0
  76. package/docs/applet/test/run/index.md +82 -0
  77. package/docs/applet/test/upload/index.md +80 -0
  78. package/docs/applet/upload/index.md +131 -0
  79. package/docs/autocomplete/index.md +92 -0
  80. package/docs/autocomplete/install/index.md +120 -0
  81. package/docs/autocomplete/uninstall/index.md +65 -0
  82. package/docs/custom-script/generate/index.md +66 -0
  83. package/docs/custom-script/index.md +96 -0
  84. package/docs/custom-script/upload/index.md +78 -0
  85. package/docs/device/connect/index.md +148 -0
  86. package/docs/device/index.md +105 -0
  87. package/docs/device/power-action/index.md +130 -0
  88. package/docs/device/set-content/index.md +72 -0
  89. package/docs/index.md +168 -0
  90. package/docs/login/index.md +122 -0
  91. package/docs/organization/get/index.md +79 -0
  92. package/docs/organization/index.md +105 -0
  93. package/docs/organization/list/index.md +65 -0
  94. package/docs/organization/set-default/index.md +74 -0
  95. package/docs/timing/index.md +78 -0
  96. package/docs/timing/list/index.md +71 -0
  97. package/package.json +29 -19
@@ -1,4 +1,21 @@
1
1
  export declare const OPTION_LIST: readonly [];
2
+ /**
3
+ * Removes the signageOS CLI auto-completion functionality from the user's shell configuration.
4
+ * This command reverses the changes made by the install command, removing auto-completion
5
+ * scripts and configuration entries from shell profile files.
6
+ *
7
+ * @group Tools:2
8
+ *
9
+ * @example
10
+ * ```bash
11
+ * # Uninstall auto-completion
12
+ * sos autocomplete uninstall
13
+ * ```
14
+ *
15
+ * @see {@link ../install/ Install auto-completion command}
16
+ *
17
+ * @since 2.4.0
18
+ */
2
19
  export declare const uninstallAutocomplete: {
3
20
  name: "uninstall";
4
21
  description: string;
@@ -47,6 +47,23 @@ const fs = __importStar(require("fs"));
47
47
  const path = __importStar(require("path"));
48
48
  const commandDefinition_1 = require("../../commandDefinition");
49
49
  exports.OPTION_LIST = [];
50
+ /**
51
+ * Removes the signageOS CLI auto-completion functionality from the user's shell configuration.
52
+ * This command reverses the changes made by the install command, removing auto-completion
53
+ * scripts and configuration entries from shell profile files.
54
+ *
55
+ * @group Tools:2
56
+ *
57
+ * @example
58
+ * ```bash
59
+ * # Uninstall auto-completion
60
+ * sos autocomplete uninstall
61
+ * ```
62
+ *
63
+ * @see {@link ../install/ Install auto-completion command}
64
+ *
65
+ * @since 2.4.0
66
+ */
50
67
  exports.uninstallAutocomplete = (0, commandDefinition_1.createCommandDefinition)({
51
68
  name: 'uninstall',
52
69
  description: 'Uninstall command auto-completion for bash/zsh shells',
@@ -66,11 +83,11 @@ exports.uninstallAutocomplete = (0, commandDefinition_1.createCommandDefinition)
66
83
  try {
67
84
  yield fs.promises.access(completionFilePath);
68
85
  yield fs.promises.unlink(completionFilePath);
69
- console.log(`✅ Removed completion script: ${completionFilePath}`);
86
+ console.info(`✅ Removed completion script: ${completionFilePath}`);
70
87
  }
71
88
  catch (error) {
72
89
  if (error.code === 'ENOENT') {
73
- console.log(`ℹ️ Completion script not found at: ${completionFilePath}`);
90
+ console.info(`ℹ️ Completion script not found at: ${completionFilePath}`);
74
91
  }
75
92
  else {
76
93
  throw error;
@@ -95,7 +112,7 @@ exports.uninstallAutocomplete = (0, commandDefinition_1.createCommandDefinition)
95
112
  }
96
113
  if (content !== originalContent) {
97
114
  fs.writeFileSync(configFilePath, content, 'utf8');
98
- console.log(`✅ Removed source line from ${configFile}`);
115
+ console.info(`✅ Removed source line from ${configFile}`);
99
116
  configModified = true;
100
117
  }
101
118
  }
@@ -108,8 +125,8 @@ exports.uninstallAutocomplete = (0, commandDefinition_1.createCommandDefinition)
108
125
  if (!configModified) {
109
126
  console.info(`ℹ️ No shell configuration files were modified`);
110
127
  }
111
- console.log('\nAuto-completion for signageOS CLI has been uninstalled.');
112
- console.log('You may need to restart your terminal or run "source ~/.bashrc" (or equivalent) for changes to take effect.');
128
+ console.info('\nAuto-completion for signageOS CLI has been uninstalled.');
129
+ console.info('You may need to restart your terminal or run "source ~/.bashrc" (or equivalent) for changes to take effect.');
113
130
  }
114
131
  catch (error) {
115
132
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -1,6 +1,24 @@
1
1
  import { ICommand, OptionList } from '../commandDefinition';
2
2
  export declare const OPTION_LIST: readonly [];
3
3
  export declare const initializeAutocomplete: (rootCommand: ICommand<string, OptionList>) => void;
4
+ /**
5
+ * Provides commands for installing and managing shell auto-completion for the signageOS CLI.
6
+ * Auto-completion enhances developer productivity by providing intelligent command and
7
+ * sub-command suggestions in supported shells (bash, zsh, fish).
8
+ *
9
+ * @group Tools:7
10
+ *
11
+ * @example
12
+ * ```bash
13
+ * # Install auto-completion for current shell
14
+ * sos autocomplete install
15
+ *
16
+ * # Uninstall auto-completion
17
+ * sos autocomplete uninstall
18
+ * ```
19
+ *
20
+ * @since 2.4.0
21
+ */
4
22
  export declare const autocomplete: {
5
23
  name: "autocomplete";
6
24
  description: string;
@@ -19,9 +19,27 @@ const initializeAutocomplete = (rootCommand) => {
19
19
  (0, installAutocompleteCommand_1.setRootCommand)(rootCommand);
20
20
  };
21
21
  exports.initializeAutocomplete = initializeAutocomplete;
22
+ /**
23
+ * Provides commands for installing and managing shell auto-completion for the signageOS CLI.
24
+ * Auto-completion enhances developer productivity by providing intelligent command and
25
+ * sub-command suggestions in supported shells (bash, zsh, fish).
26
+ *
27
+ * @group Tools:7
28
+ *
29
+ * @example
30
+ * ```bash
31
+ * # Install auto-completion for current shell
32
+ * sos autocomplete install
33
+ *
34
+ * # Uninstall auto-completion
35
+ * sos autocomplete uninstall
36
+ * ```
37
+ *
38
+ * @since 2.4.0
39
+ */
22
40
  exports.autocomplete = (0, commandDefinition_1.createCommandDefinition)({
23
41
  name: 'autocomplete',
24
- description: 'Commands for managing CLI auto-completion',
42
+ description: 'CLI auto-completion management',
25
43
  optionList: exports.OPTION_LIST,
26
44
  commands: [installAutocompleteCommand_1.installAutocomplete, uninstallAutocompleteCommand_1.uninstallAutocomplete],
27
45
  run() {
@@ -82,7 +82,7 @@ function generateCompletionScript(rootCommand) {
82
82
  }
83
83
  // Replace placeholders in the shell script
84
84
  script = script.replace(/\${TOPLEVEL_COMMANDS}/g, topLevelCommands);
85
- script = script.replace(/ # COMMAND_SCHEMA_CASES will be replaced with actual cases during generation/g, commandCases);
85
+ script = script.replace(/ {4}# COMMAND_SCHEMA_CASES will be replaced with actual cases during generation/g, commandCases);
86
86
  return script;
87
87
  }
88
88
  function installAutoCompletion(rootCommand) {
@@ -176,7 +176,7 @@ function displayInstallationMessage(completionFilePath, config) {
176
176
  message.push('\nUsage examples:');
177
177
  message.push(' sos [TAB] # Show all top-level commands');
178
178
  message.push(' sos applet [TAB] # Show all applet subcommands');
179
- console.log(message.join('\n'));
179
+ console.info(message.join('\n'));
180
180
  }
181
181
  // Create a standalone completion setup command
182
182
  function setupCompletion(rootCommand) {
@@ -1,2 +1,35 @@
1
+ /**
2
+ * Extract global API URL option from command line arguments.
3
+ * Parses the global --api-url option that can be used to override the default
4
+ * signageOS REST API endpoint for all CLI operations. This is useful for testing
5
+ * against different environments or custom API deployments.
6
+ *
7
+ * @returns The API URL if specified, undefined otherwise
8
+ *
9
+ * @example
10
+ * ```bash
11
+ * # Use custom API URL
12
+ * sos --api-url https://api.custom.signageos.io applet list
13
+ * ```
14
+ */
1
15
  export declare function getGlobalApiUrl(): string | undefined;
16
+ /**
17
+ * Extract global profile option from command line arguments.
18
+ * Parses the global --profile option that specifies which authentication profile
19
+ * to use for CLI operations. Profiles allow management of multiple signageOS
20
+ * environments or accounts from the same machine.
21
+ *
22
+ * @returns The profile name if specified, falls back to default profile
23
+ *
24
+ * @example
25
+ * ```bash
26
+ * # Use specific profile
27
+ * sos --profile production applet list
28
+ *
29
+ * # Use staging profile
30
+ * sos --profile staging device connect
31
+ * ```
32
+ *
33
+ * @since 1.0.0
34
+ */
2
35
  export declare function getGlobalProfile(): string;
@@ -7,10 +7,43 @@ exports.getGlobalApiUrl = getGlobalApiUrl;
7
7
  exports.getGlobalProfile = getGlobalProfile;
8
8
  const command_line_args_1 = __importDefault(require("command-line-args"));
9
9
  const generalCommand_1 = require("../generalCommand");
10
+ /**
11
+ * Extract global API URL option from command line arguments.
12
+ * Parses the global --api-url option that can be used to override the default
13
+ * signageOS REST API endpoint for all CLI operations. This is useful for testing
14
+ * against different environments or custom API deployments.
15
+ *
16
+ * @returns The API URL if specified, undefined otherwise
17
+ *
18
+ * @example
19
+ * ```bash
20
+ * # Use custom API URL
21
+ * sos --api-url https://api.custom.signageos.io applet list
22
+ * ```
23
+ */
10
24
  function getGlobalApiUrl() {
11
25
  const options = (0, command_line_args_1.default)([generalCommand_1.API_URL_OPTION], { partial: true });
12
26
  return options[generalCommand_1.API_URL_OPTION.name];
13
27
  }
28
+ /**
29
+ * Extract global profile option from command line arguments.
30
+ * Parses the global --profile option that specifies which authentication profile
31
+ * to use for CLI operations. Profiles allow management of multiple signageOS
32
+ * environments or accounts from the same machine.
33
+ *
34
+ * @returns The profile name if specified, falls back to default profile
35
+ *
36
+ * @example
37
+ * ```bash
38
+ * # Use specific profile
39
+ * sos --profile production applet list
40
+ *
41
+ * # Use staging profile
42
+ * sos --profile staging device connect
43
+ * ```
44
+ *
45
+ * @since 1.0.0
46
+ */
14
47
  function getGlobalProfile() {
15
48
  const options = (0, command_line_args_1.default)([generalCommand_1.PROFILE_OPTION], { partial: true });
16
49
  return options[generalCommand_1.PROFILE_OPTION.name];
@@ -1,3 +1,22 @@
1
+ /**
2
+ * Creates a new custom script project with boilerplate code and configuration files.
3
+ * This command sets up a complete development environment for custom script development,
4
+ * including necessary dependencies and project structure.
5
+ *
6
+ * @group Development:1
7
+ *
8
+ * @example
9
+ * ```bash
10
+ * # Generate custom script project
11
+ * sos custom-script generate
12
+ * ```
13
+ *
14
+ * @see {@link https://developers.signageos.io/docs/custom-scripts/ Custom Scripts Documentation}
15
+ *
16
+ * @see {@link ../upload/ Upload custom script command}
17
+ *
18
+ * @since 2.2.0
19
+ */
1
20
  export declare const customScriptGenerate: {
2
21
  name: "generate";
3
22
  description: string;
@@ -19,9 +19,28 @@ const commandDefinition_1 = require("../../Command/commandDefinition");
19
19
  const customScriptFacade_1 = require("../customScriptFacade");
20
20
  const customScriptGenerateFacade_1 = require("./customScriptGenerateFacade");
21
21
  const git_1 = require("../../Lib/git");
22
+ /**
23
+ * Creates a new custom script project with boilerplate code and configuration files.
24
+ * This command sets up a complete development environment for custom script development,
25
+ * including necessary dependencies and project structure.
26
+ *
27
+ * @group Development:1
28
+ *
29
+ * @example
30
+ * ```bash
31
+ * # Generate custom script project
32
+ * sos custom-script generate
33
+ * ```
34
+ *
35
+ * @see {@link https://developers.signageos.io/docs/custom-scripts/ Custom Scripts Documentation}
36
+ *
37
+ * @see {@link ../upload/ Upload custom script command}
38
+ *
39
+ * @since 2.2.0
40
+ */
22
41
  exports.customScriptGenerate = (0, commandDefinition_1.createCommandDefinition)({
23
42
  name: 'generate',
24
- description: 'Generates a local repository for developing a Custom Script',
43
+ description: 'Generate a local repository for developing a Custom Script',
25
44
  optionList: [],
26
45
  commands: [],
27
46
  run() {
@@ -2,19 +2,49 @@ import { CommandLineOptions } from '../../Command/commandDefinition';
2
2
  export declare const OPTION_LIST: readonly [{
3
3
  readonly name: "no-default-organization";
4
4
  readonly type: BooleanConstructor;
5
- readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc which were set using command sos organization set-default";
5
+ readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc";
6
6
  }, {
7
7
  readonly name: "organization-uid";
8
8
  readonly type: StringConstructor;
9
9
  readonly description: "Organization UID";
10
10
  }];
11
+ /**
12
+ * Uploads custom script code and configuration to the signageOS platform based on
13
+ * the .sosconfig.json configuration file. Custom Scripts enable advanced device
14
+ * functionality beyond standard applets, including system-level operations and
15
+ * device-specific configurations for multiple platforms.
16
+ *
17
+ * @group Development:2
18
+ *
19
+ * @example
20
+ * ```bash
21
+ * # Upload custom script from current directory
22
+ * sos custom-script upload
23
+ *
24
+ * # Upload with specific organization
25
+ * sos custom-script upload --organization-uid abc123def456
26
+ * ```
27
+ *
28
+ * @throws {Error} When .sosconfig.json is missing or invalid
29
+ * @throws {Error} When script platform configuration is missing
30
+ * @throws {Error} When organization access is denied
31
+ * @throws {Error} When script upload fails
32
+ *
33
+ * @see {@link https://developers.signageos.io/docs/custom-scripts/ Custom Scripts Documentation}
34
+ *
35
+ * @see {@link ../generate/ Generate custom script project}
36
+ *
37
+ * @see {@link ../ Custom Script management commands}
38
+ *
39
+ * @since 1.8.0
40
+ */
11
41
  export declare const customScriptUpload: {
12
42
  name: "upload";
13
43
  description: string;
14
44
  optionList: readonly [{
15
45
  readonly name: "no-default-organization";
16
46
  readonly type: BooleanConstructor;
17
- readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc which were set using command sos organization set-default";
47
+ readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc";
18
48
  }, {
19
49
  readonly name: "organization-uid";
20
50
  readonly type: StringConstructor;
@@ -23,9 +23,39 @@ const organizationFacade_1 = require("../../Organization/organizationFacade");
23
23
  const customScriptFacade_1 = require("../customScriptFacade");
24
24
  const Debug = (0, debug_1.default)('@signageos/cli:CustomScript:Upload:Command');
25
25
  exports.OPTION_LIST = [organizationFacade_1.NO_DEFAULT_ORGANIZATION_OPTION, organizationFacade_1.ORGANIZATION_UID_OPTION];
26
+ /**
27
+ * Uploads custom script code and configuration to the signageOS platform based on
28
+ * the .sosconfig.json configuration file. Custom Scripts enable advanced device
29
+ * functionality beyond standard applets, including system-level operations and
30
+ * device-specific configurations for multiple platforms.
31
+ *
32
+ * @group Development:2
33
+ *
34
+ * @example
35
+ * ```bash
36
+ * # Upload custom script from current directory
37
+ * sos custom-script upload
38
+ *
39
+ * # Upload with specific organization
40
+ * sos custom-script upload --organization-uid abc123def456
41
+ * ```
42
+ *
43
+ * @throws {Error} When .sosconfig.json is missing or invalid
44
+ * @throws {Error} When script platform configuration is missing
45
+ * @throws {Error} When organization access is denied
46
+ * @throws {Error} When script upload fails
47
+ *
48
+ * @see {@link https://developers.signageos.io/docs/custom-scripts/ Custom Scripts Documentation}
49
+ *
50
+ * @see {@link ../generate/ Generate custom script project}
51
+ *
52
+ * @see {@link ../ Custom Script management commands}
53
+ *
54
+ * @since 1.8.0
55
+ */
26
56
  exports.customScriptUpload = (0, commandDefinition_1.createCommandDefinition)({
27
57
  name: 'upload',
28
- description: 'Uploads current custom script version',
58
+ description: 'Upload custom script to the signageOS platform',
29
59
  optionList: exports.OPTION_LIST,
30
60
  commands: [],
31
61
  run(options) {
@@ -1,3 +1,23 @@
1
+ /**
2
+ * Provides commands for developing and deploying custom scripts to signageOS devices.
3
+ * Custom Scripts enable advanced device functionality beyond standard applets,
4
+ * including system-level operations and device-specific configurations.
5
+ *
6
+ * @group Development:5
7
+ *
8
+ * @example
9
+ * ```bash
10
+ * # Generate new custom script project
11
+ * sos custom-script generate
12
+ *
13
+ * # Upload custom script to platform
14
+ * sos custom-script upload
15
+ * ```
16
+ *
17
+ * @see {@link https://developers.signageos.io/docs/custom-scripts/ Custom Scripts Documentation}
18
+ *
19
+ * @since 1.8.0
20
+ */
1
21
  export declare const customScript: {
2
22
  name: "custom-script";
3
23
  description: string;
@@ -8,7 +28,7 @@ export declare const customScript: {
8
28
  optionList: readonly [{
9
29
  readonly name: "no-default-organization";
10
30
  readonly type: BooleanConstructor;
11
- readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc which were set using command sos organization set-default";
31
+ readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc";
12
32
  }, {
13
33
  readonly name: "organization-uid";
14
34
  readonly type: StringConstructor;
@@ -13,6 +13,26 @@ exports.customScript = void 0;
13
13
  const commandDefinition_1 = require("../Command/commandDefinition");
14
14
  const customScriptUploadCommand_1 = require("./Upload/customScriptUploadCommand");
15
15
  const customScriptGenerateCommand_1 = require("./Generate/customScriptGenerateCommand");
16
+ /**
17
+ * Provides commands for developing and deploying custom scripts to signageOS devices.
18
+ * Custom Scripts enable advanced device functionality beyond standard applets,
19
+ * including system-level operations and device-specific configurations.
20
+ *
21
+ * @group Development:5
22
+ *
23
+ * @example
24
+ * ```bash
25
+ * # Generate new custom script project
26
+ * sos custom-script generate
27
+ *
28
+ * # Upload custom script to platform
29
+ * sos custom-script upload
30
+ * ```
31
+ *
32
+ * @see {@link https://developers.signageos.io/docs/custom-scripts/ Custom Scripts Documentation}
33
+ *
34
+ * @since 1.8.0
35
+ */
16
36
  exports.customScript = (0, commandDefinition_1.createCommandDefinition)({
17
37
  name: 'custom-script',
18
38
  description: 'Custom Script management',
@@ -7,7 +7,7 @@ export declare const USE_FORWARD_SERVER_OPTION: {
7
7
  declare const OPTION_LIST: readonly [{
8
8
  readonly name: "no-default-organization";
9
9
  readonly type: BooleanConstructor;
10
- readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc which were set using command sos organization set-default";
10
+ readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc";
11
11
  }, {
12
12
  readonly name: "organization-uid";
13
13
  readonly type: StringConstructor;
@@ -56,13 +56,62 @@ declare const OPTION_LIST: readonly [{
56
56
  readonly type: StringConstructor;
57
57
  readonly description: "Path to the applet file or the project folder depending on the entry file. Relative to the command or absolute.";
58
58
  }];
59
+ /**
60
+ * Establishes a connection between a signageOS device and the local development environment,
61
+ * allowing real-time testing and debugging of applets during development. Supports both
62
+ * local network (LAN) and forward server connections for different network configurations.
63
+ *
64
+ * The command sets up a development server and configures the device to load the applet
65
+ * from the local machine, enabling hot reload and live debugging capabilities.
66
+ *
67
+ * @group Management:1
68
+ *
69
+ * @example
70
+ * ```bash
71
+ * # Connect device with basic configuration
72
+ * sos device connect --device-uid device123 --applet-uid my-applet
73
+ *
74
+ * # Connect with custom server port
75
+ * sos device connect --device-uid device123 --server-port 8080
76
+ *
77
+ * # Connect using forward server (for remote devices)
78
+ * sos device connect --device-uid device123 --use-forward-server
79
+ *
80
+ * # Connect with hot reload enabled
81
+ * sos device connect --device-uid device123 --hot-reload
82
+ *
83
+ * # Connect with custom organization
84
+ * sos device connect --device-uid device123 --organization-uid org456
85
+ *
86
+ * # Connect with custom public URL
87
+ * sos device connect --device-uid device123 --server-public-url https://my-domain.com
88
+ *
89
+ * # Connect and run in background
90
+ * sos device connect --device-uid device123 --detach
91
+ *
92
+ * # Force connection (terminate existing servers)
93
+ * sos device connect --device-uid device123 --force
94
+ * ```
95
+ *
96
+ * @throws {Error} When device or applet cannot be found or accessed
97
+ *
98
+ * @throws {Error} When network connection to device fails
99
+ *
100
+ * @throws {Error} When development server cannot be started
101
+ *
102
+ * @throws {Error} When hot reload configuration is invalid
103
+ *
104
+ * @see {@link https://developers.signageos.io/docs/applets/connect-to-device-cli/ Device Connection and Development Documentation}
105
+ *
106
+ * @since 0.9.0
107
+ */
59
108
  export declare const connect: {
60
109
  name: "connect";
61
110
  description: string;
62
111
  optionList: readonly [{
63
112
  readonly name: "no-default-organization";
64
113
  readonly type: BooleanConstructor;
65
- readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc which were set using command sos organization set-default";
114
+ readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc";
66
115
  }, {
67
116
  readonly name: "organization-uid";
68
117
  readonly type: StringConstructor;
@@ -45,9 +45,58 @@ const OPTION_LIST = [
45
45
  appletServerHelper_1.HOT_RELOAD_OPTION,
46
46
  appletUploadCommandHelper_1.APPLET_PATH_OPTION,
47
47
  ];
48
+ /**
49
+ * Establishes a connection between a signageOS device and the local development environment,
50
+ * allowing real-time testing and debugging of applets during development. Supports both
51
+ * local network (LAN) and forward server connections for different network configurations.
52
+ *
53
+ * The command sets up a development server and configures the device to load the applet
54
+ * from the local machine, enabling hot reload and live debugging capabilities.
55
+ *
56
+ * @group Management:1
57
+ *
58
+ * @example
59
+ * ```bash
60
+ * # Connect device with basic configuration
61
+ * sos device connect --device-uid device123 --applet-uid my-applet
62
+ *
63
+ * # Connect with custom server port
64
+ * sos device connect --device-uid device123 --server-port 8080
65
+ *
66
+ * # Connect using forward server (for remote devices)
67
+ * sos device connect --device-uid device123 --use-forward-server
68
+ *
69
+ * # Connect with hot reload enabled
70
+ * sos device connect --device-uid device123 --hot-reload
71
+ *
72
+ * # Connect with custom organization
73
+ * sos device connect --device-uid device123 --organization-uid org456
74
+ *
75
+ * # Connect with custom public URL
76
+ * sos device connect --device-uid device123 --server-public-url https://my-domain.com
77
+ *
78
+ * # Connect and run in background
79
+ * sos device connect --device-uid device123 --detach
80
+ *
81
+ * # Force connection (terminate existing servers)
82
+ * sos device connect --device-uid device123 --force
83
+ * ```
84
+ *
85
+ * @throws {Error} When device or applet cannot be found or accessed
86
+ *
87
+ * @throws {Error} When network connection to device fails
88
+ *
89
+ * @throws {Error} When development server cannot be started
90
+ *
91
+ * @throws {Error} When hot reload configuration is invalid
92
+ *
93
+ * @see {@link https://developers.signageos.io/docs/applets/connect-to-device-cli/ Device Connection and Development Documentation}
94
+ *
95
+ * @since 0.9.0
96
+ */
48
97
  exports.connect = (0, commandDefinition_1.createCommandDefinition)({
49
98
  name: 'connect',
50
- description: 'Set ip for device',
99
+ description: 'Connect device to local development server',
51
100
  optionList: OPTION_LIST,
52
101
  commands: [],
53
102
  run: function (options) {
@@ -2,7 +2,7 @@ import { CommandLineOptions } from '../../Command/commandDefinition';
2
2
  declare const OPTION_LIST: readonly [{
3
3
  readonly name: "no-default-organization";
4
4
  readonly type: BooleanConstructor;
5
- readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc which were set using command sos organization set-default";
5
+ readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc";
6
6
  }, {
7
7
  readonly name: "organization-uid";
8
8
  readonly type: StringConstructor;
@@ -16,13 +16,39 @@ declare const OPTION_LIST: readonly [{
16
16
  readonly type: StringConstructor;
17
17
  readonly description: "Device UID";
18
18
  }];
19
+ /**
20
+ * Deploys an applet to a specific device by creating a timing configuration
21
+ * that activates the specified applet version on the target device. This command
22
+ * establishes the applet-to-device relationship for production deployment.
23
+ *
24
+ * @group Management:3
25
+ *
26
+ * @example
27
+ * ```bash
28
+ * # Deploy applet to device
29
+ * sos device set-content --device-uid device123 --applet-uid my-applet
30
+ *
31
+ * # Deploy with organization override
32
+ * sos device set-content --device-uid device123 --applet-uid my-applet --organization-uid org456
33
+ * ```
34
+ *
35
+ * @throws {Error} When device or applet cannot be found or accessed
36
+ *
37
+ * @throws {Error} When timing configuration creation fails
38
+ *
39
+ * @throws {Error} When organization access is denied
40
+ *
41
+ * @throws {Error} When applet version cannot be determined
42
+ *
43
+ * @since 0.9.0
44
+ */
19
45
  export declare const setContent: {
20
46
  name: "set-content";
21
47
  description: string;
22
48
  optionList: readonly [{
23
49
  readonly name: "no-default-organization";
24
50
  readonly type: BooleanConstructor;
25
- readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc which were set using command sos organization set-default";
51
+ readonly description: "Prevent using the defaultOrganizationUid from ~/.sosrc";
26
52
  }, {
27
53
  readonly name: "organization-uid";
28
54
  readonly type: StringConstructor;
@@ -21,9 +21,35 @@ const helper_1 = require("../../helper");
21
21
  const organizationFacade_1 = require("../../Organization/organizationFacade");
22
22
  const deviceFacade_1 = require("../deviceFacade");
23
23
  const OPTION_LIST = [organizationFacade_1.NO_DEFAULT_ORGANIZATION_OPTION, organizationFacade_1.ORGANIZATION_UID_OPTION, appletFacade_1.APPLET_UID_OPTION, deviceFacade_1.DEVICE_UID_OPTION];
24
+ /**
25
+ * Deploys an applet to a specific device by creating a timing configuration
26
+ * that activates the specified applet version on the target device. This command
27
+ * establishes the applet-to-device relationship for production deployment.
28
+ *
29
+ * @group Management:3
30
+ *
31
+ * @example
32
+ * ```bash
33
+ * # Deploy applet to device
34
+ * sos device set-content --device-uid device123 --applet-uid my-applet
35
+ *
36
+ * # Deploy with organization override
37
+ * sos device set-content --device-uid device123 --applet-uid my-applet --organization-uid org456
38
+ * ```
39
+ *
40
+ * @throws {Error} When device or applet cannot be found or accessed
41
+ *
42
+ * @throws {Error} When timing configuration creation fails
43
+ *
44
+ * @throws {Error} When organization access is denied
45
+ *
46
+ * @throws {Error} When applet version cannot be determined
47
+ *
48
+ * @since 0.9.0
49
+ */
24
50
  exports.setContent = (0, commandDefinition_1.createCommandDefinition)({
25
51
  name: 'set-content',
26
- description: 'Set content for device',
52
+ description: 'Deploy applet to device',
27
53
  optionList: OPTION_LIST,
28
54
  commands: [],
29
55
  run(options) {