@camera.ui/cli 0.0.43 → 0.0.44

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.
@@ -1,4 +1,4 @@
1
- export declare const NODE_LTS = "20.18.0";
2
- export declare const CAMERA_UI_LTS = "0.0.34";
1
+ export declare const NODE_LTS = "22.14.0";
2
+ export declare const CAMERA_UI_LTS = "0.0.49";
3
3
  export declare function getNodeLtsVersion(): Promise<string>;
4
4
  export declare function getCameraUiLtsVersion(): Promise<string>;
package/dist/constants.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { getLatestCameraUiVersion, getLatestNodeLTSVersion } from './utils/versions.js';
2
- export const NODE_LTS = '20.18.0';
3
- export const CAMERA_UI_LTS = '0.0.34';
2
+ export const NODE_LTS = '22.14.0';
3
+ export const CAMERA_UI_LTS = '0.0.49';
4
4
  export async function getNodeLtsVersion() {
5
5
  try {
6
6
  const node = await getLatestNodeLTSVersion();
@@ -38,11 +38,11 @@ async function loadConfig() {
38
38
  const asyncResult = await tsImport.load(tsConfigPath, { useCache: false });
39
39
  const cacheDir = resolve(process.cwd(), '.cache');
40
40
  await rm(cacheDir, { force: true, recursive: true });
41
- return asyncResult.default || asyncResult;
41
+ return asyncResult.default ?? asyncResult;
42
42
  }
43
43
  if (await pathExists(jsConfigPath)) {
44
44
  const config = await import(jsConfigPath);
45
- return config.default || config;
45
+ return config.default ?? config;
46
46
  }
47
47
  return {};
48
48
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camera.ui/cli",
3
- "version": "0.0.43",
3
+ "version": "0.0.44",
4
4
  "description": "camera.ui cli",
5
5
  "type": "module",
6
6
  "bin": {
@@ -17,7 +17,7 @@
17
17
  "prepublishOnly": "npm i --package-lock-only && npm run lint:fix && npm run format && npm run build"
18
18
  },
19
19
  "dependencies": {
20
- "@babel/core": "^7.26.9",
20
+ "@babel/core": "^7.26.10",
21
21
  "@babel/plugin-transform-typescript": "^7.26.8",
22
22
  "@babel/preset-env": "^7.26.9",
23
23
  "@babel/preset-typescript": "^7.26.0",
@@ -28,13 +28,13 @@
28
28
  "commander": "^13.1.0",
29
29
  "fs-extra": "^11.3.0",
30
30
  "gradient-string": "^3.0.0",
31
- "inquirer": "^12.4.2",
31
+ "inquirer": "^12.5.0",
32
32
  "json-loader": "^0.5.7",
33
33
  "node-loader": "^2.1.0",
34
34
  "ora": "^8.2.0",
35
35
  "prompts": "^2.4.2",
36
36
  "semver": "^7.7.1",
37
- "terser-webpack-plugin": "^5.3.12",
37
+ "terser-webpack-plugin": "^5.3.14",
38
38
  "ts-import": "^5.0.0-beta.1",
39
39
  "ts-loader": "^9.5.2",
40
40
  "webpack": "^5.98.0",
@@ -42,21 +42,21 @@
42
42
  "webpack-cli": "^6.0.1"
43
43
  },
44
44
  "devDependencies": {
45
- "@camera.ui/types": "^0.0.84",
46
- "@stylistic/eslint-plugin": "^4.1.0",
45
+ "@camera.ui/types": "^0.0.85",
46
+ "@stylistic/eslint-plugin": "^4.2.0",
47
47
  "@types/adm-zip": "^0.5.7",
48
48
  "@types/fs-extra": "^11.0.4",
49
- "@types/node": "^22.13.5",
49
+ "@types/node": "^22.13.10",
50
50
  "@types/prompts": "^2.4.9",
51
51
  "@types/semver": "^7.5.8",
52
52
  "@types/webpack-bundle-analyzer": "^4.7.0",
53
- "@typescript-eslint/parser": "^8.25.0",
54
- "eslint": "^9.21.0",
53
+ "@typescript-eslint/parser": "^8.26.1",
54
+ "eslint": "^9.22.0",
55
55
  "globals": "^16.0.0",
56
- "prettier": "^3.5.2",
56
+ "prettier": "^3.5.3",
57
57
  "rimraf": "^6.0.1",
58
- "typescript": "^5.7.3",
59
- "typescript-eslint": "^8.25.0",
58
+ "typescript": "^5.8.2",
59
+ "typescript-eslint": "^8.26.1",
60
60
  "updates": "^16.4.2"
61
61
  },
62
62
  "author": "seydx (https://github.com/seydx/camera.ui)",
@@ -1,5 +1,5 @@
1
1
  {
2
- "@stylistic/eslint-plugin": "^2.11.0",
3
- "eslint": "^9.16.0",
4
- "globals": "^15.13.0"
2
+ "@stylistic/eslint-plugin": "^4.2.0",
3
+ "eslint": "^9.22.0",
4
+ "globals": "^16.0.0"
5
5
  }
@@ -10,7 +10,7 @@
10
10
  "dependencies": {},
11
11
  "devDependencies": {
12
12
  "cross-env": "^7.0.3",
13
- "updates": "^16.4.0"
13
+ "updates": "^16.4.2"
14
14
  },
15
15
  "engines": {},
16
16
  "keywords": [
@@ -1,3 +1,3 @@
1
1
  {
2
- "prettier": "^3.4.2"
2
+ "prettier": "^3.5.3"
3
3
  }
@@ -1 +1 @@
1
- ruff==0.9.6
1
+ ruff==0.11.0
@@ -1 +1 @@
1
- camera-ui-python-types==0.2.19
1
+ camera-ui-python-types==0.2.20
@@ -48,7 +48,7 @@ class SamplePlugin(BasePlugin):
48
48
  print("Form submitted", action_id, payload)
49
49
  return None
50
50
 
51
- def configureCameras(self, cameras: list[CameraDevice]) -> None:
51
+ async def configureCameras(self, cameras: list[CameraDevice]) -> None:
52
52
  for camera in cameras:
53
53
  self.cameras[camera.id] = camera
54
54
 
@@ -63,6 +63,7 @@ export default [
63
63
  '@typescript-eslint/no-require-imports': 'off',
64
64
  '@typescript-eslint/no-redundant-type-constituents': 'off',
65
65
  '@typescript-eslint/no-namespace': 'off',
66
+ '@stylistic/generator-star-spacing': ['error', { before: true, after: false }],
66
67
 
67
68
  // Stylistic specific rules
68
69
  '@stylistic/max-len': ['error', { code: 170, tabWidth: 2 }],
@@ -1,4 +1,4 @@
1
1
  {
2
- "@typescript-eslint/parser": "^8.11.0",
3
- "typescript-eslint": "^8.11.0"
2
+ "@typescript-eslint/parser": "^8.26.1",
3
+ "typescript-eslint": "^8.26.1"
4
4
  }
@@ -1,6 +1,6 @@
1
1
  {
2
- "@camera.ui/types": "^0.0.84",
3
- "@types/node": "^22.10.1",
2
+ "@camera.ui/types": "^0.0.85",
3
+ "@types/node": "^22.13.10",
4
4
  "rimraf": "^6.0.1",
5
- "typescript": "^5.6.3"
5
+ "typescript": "^5.8.2"
6
6
  }
@@ -30,7 +30,7 @@ export default class SamplePlugin implements BasePlugin {
30
30
  });
31
31
  }
32
32
 
33
- public configureCameras(): void {}
33
+ public async configureCameras(): Promise<void> {}
34
34
 
35
35
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
36
36
  public async onFormSubmit(actionId: string, payload: any): Promise<FormSubmitResponse | void> {}
@@ -1,10 +0,0 @@
1
- const mode = process.env.MODE || 'production';
2
-
3
- const config = {
4
- input: ['src/index.js'],
5
- mode: mode === 'development' ? 'development' : 'production',
6
- external: [],
7
- additionalFiles: [],
8
- };
9
-
10
- export default config;
@@ -1,15 +0,0 @@
1
- root = true
2
-
3
- [*]
4
- # Change these settings to your own preference
5
- indent_style = space
6
- indent_size = 2
7
-
8
- # I recommend you to keep these unchanged
9
- end_of_line = lf
10
- charset = utf-8
11
- trim_trailing_whitespace = true
12
- insert_final_newline = true
13
-
14
- [*.md]
15
- trim_trailing_whitespace = false
@@ -1,62 +0,0 @@
1
- import jsLint from '@eslint/js';
2
- import stylistic from '@stylistic/eslint-plugin';
3
- import globals from 'globals';
4
-
5
- export default [
6
- {
7
- files: ['**/*.{js,mjs,cjs,ts,mts}'],
8
- },
9
- {
10
- ignores: ['**/dist/**', '**/node_modules/**', '**/public/**', '**/build/**', '**/bundle/**', '**/test/**', '**/wasm/**', '**/example/**'],
11
- },
12
- jsLint.configs.recommended,
13
- stylistic.configs['disable-legacy'],
14
- stylistic.configs.customize({
15
- indent: 2,
16
- quotes: 'single',
17
- semi: true,
18
- commaDangle: 'always-multiline',
19
- jsx: false,
20
- arrowParens: true,
21
- braceStyle: '1tbs',
22
- blockSpacing: true,
23
- quoteProps: 'as-needed',
24
- }),
25
- {
26
- languageOptions: {
27
- globals: { ...globals.node },
28
- },
29
-
30
- rules: {
31
- // Stylistic specific rules
32
- '@stylistic/max-len': ['error', { code: 170, tabWidth: 2 }],
33
- '@stylistic/quotes': ['error', 'single', { avoidEscape: true }],
34
- '@stylistic/operator-linebreak': 'off',
35
- '@stylistic/comma-dangle': [
36
- 'error',
37
- {
38
- arrays: 'always-multiline',
39
- objects: 'always-multiline',
40
- imports: 'always-multiline',
41
- exports: 'only-multiline',
42
- functions: 'always-multiline',
43
- enums: 'always-multiline',
44
- generics: 'always-multiline',
45
- tuples: 'always-multiline',
46
- },
47
- ],
48
-
49
- semi: [1, 'always'],
50
- // quotes: ['error', 'single'],
51
- 'comma-dangle': ['error', 'only-multiline'],
52
- 'no-multiple-empty-lines': ['warn', { max: 1, maxEOF: 0 }],
53
- 'eol-last': ['error', 'always'],
54
- 'space-before-function-paren': ['error', { named: 'never' }],
55
-
56
- 'no-unused-vars': 'off',
57
- 'no-case-declarations': 'off',
58
- 'no-async-promise-executor': 'off',
59
- 'no-control-regex': 'off',
60
- },
61
- },
62
- ];
@@ -1,31 +0,0 @@
1
- # Logs
2
- logs
3
- *.log
4
- npm-debug.log*
5
- yarn-debug.log*
6
- yarn-error.log*
7
- pnpm-debug.log*
8
- lerna-debug.log*
9
-
10
- node_modules
11
- .DS_Store
12
- dist
13
- bundle
14
- coverage
15
- *.local
16
- test
17
- __pycache__
18
- .dockerignore
19
- python-*
20
- requirements.dev.txt
21
- requirements-lock.txt
22
-
23
- .idea
24
- *.suo
25
- *.ntvs*
26
- *.njsproj
27
- *.sln
28
- *.sw?
29
- *.egg-info
30
- .venv
31
- .mypy_cache
@@ -1,19 +0,0 @@
1
- .editorconfig
2
- .eslintignore
3
- .eslintrc.*
4
- eslint.config.*
5
- .gitignore
6
- .npmignore
7
- .prettierignore
8
- .prettierrc.*
9
- tsconfig.json
10
- updates.config.*
11
- cameraui.config.*
12
- ruff.toml
13
-
14
- node_modules
15
- .github
16
- .vscode
17
-
18
-
19
- src
@@ -1,10 +0,0 @@
1
- coverage/
2
- dist/
3
- __snapshots__/
4
- media/
5
- package-lock.json
6
- *.md
7
- interface/
8
- node_modules/
9
- bundle/
10
- build/
@@ -1,40 +0,0 @@
1
- export default class SamplePlugin {
2
- constructor(logger, api) {
3
- this.logger = logger;
4
- this.api = api;
5
-
6
- this.camera = new Map();
7
-
8
- this.api.on('finishLaunching', this.start.bind(this));
9
- this.api.on('shutdown', this.stop.bind(this));
10
-
11
- this.api.deviceManager.on('cameraSelected', (cameraDevice) => {
12
- this.logger.log('Camera selected:', cameraDevice.name);
13
-
14
- if (!this.cameras.has(cameraDevice.id)) {
15
- this.cameras.set(cameraDevice.id, cameraDevice);
16
- }
17
- });
18
-
19
- this.api.deviceManager.on('cameraDeselected', (cameraId) => {
20
- const cameraDevice = this.cameras.get(cameraId);
21
- if (cameraDevice) {
22
- this.logger.log('Camera deselected:', cameraDevice.name);
23
- this.cameras.delete(cameraId);
24
- }
25
- });
26
- }
27
-
28
- configureCameras() {}
29
-
30
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
31
- async onFormSubmit(actionId, payload) {}
32
-
33
- async start() {
34
- this.logger.log('Finished launching plugin');
35
- }
36
-
37
- stop() {
38
- this.logger.log('Shutting down plugin');
39
- }
40
- }
@@ -1,3 +0,0 @@
1
- export default {
2
- exclude: [],
3
- };