@camera.ui/common 0.0.1

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.
package/CHANGELOG.md ADDED
@@ -0,0 +1,8 @@
1
+ All notable changes to this project will be documented in this file.
2
+
3
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
4
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
5
+
6
+ ## [X.X.X] - ???
7
+
8
+ - Initial Release
@@ -0,0 +1 @@
1
+ # Contributing
package/LICENSE.md ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023-2024 seydx <dev@seydx.com>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
package/README.md ADDED
@@ -0,0 +1 @@
1
+ # @camera.ui/common
@@ -0,0 +1 @@
1
+ export * from '../../../server/src/utils/utils.js';
@@ -0,0 +1,2 @@
1
+ export * from '../../../server/src/utils/utils.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAC"}
@@ -0,0 +1,10 @@
1
+ export type Customizer<TObject, TSource> = (objValue: any, srcValue: any, key: string, object: TObject, source: TSource, stack: any[]) => any;
2
+ export declare const toQuery: (data: any) => string;
3
+ export declare const toData: (query: string) => Record<string, any>;
4
+ export declare const isJson: (str: any) => boolean;
5
+ export declare const sleep: (ms: number) => Promise<void>;
6
+ export declare const isEqual: (first: any, second: any, ignoreOrder?: boolean) => boolean;
7
+ export declare const mergeWith: <TObject, TSource>(object: TObject, source: TSource, customizer: Customizer<TObject, TSource>, stack?: any[]) => TObject & TSource;
8
+ export declare const orderBy: (array: any[], keys: string[], orders: ("asc" | "desc")[]) => any[];
9
+ export declare const structuredClone: <T>(obj: T) => T;
10
+ export declare const createSourceName: (cameraName: string, sourceName: string) => string;
@@ -0,0 +1,169 @@
1
+ export const toQuery = (data) => {
2
+ let query = '';
3
+ if (typeof data === 'object' && !Array.isArray(data)) {
4
+ for (const [key, value] of Object.entries(data)) {
5
+ if (query === '') {
6
+ query += `?${key}=${value}`;
7
+ }
8
+ else {
9
+ query += `&${key}=${value}`;
10
+ }
11
+ }
12
+ }
13
+ return query;
14
+ };
15
+ export const toData = (query) => {
16
+ const params = new URLSearchParams(query);
17
+ const result = {};
18
+ params.forEach((value, key) => {
19
+ if (value === 'true' || value === 'false' || value === '') {
20
+ result[key] = value === 'true' || value === '';
21
+ }
22
+ else if (value === 'null') {
23
+ result[key] = null;
24
+ }
25
+ else if (value === 'undefined') {
26
+ result[key] = undefined;
27
+ }
28
+ else if (!isNaN(Number(value))) {
29
+ result[key] = Number(value);
30
+ }
31
+ else {
32
+ result[key] = value;
33
+ }
34
+ });
35
+ return result;
36
+ };
37
+ export const isJson = (str) => {
38
+ try {
39
+ JSON.parse(str);
40
+ }
41
+ catch {
42
+ return false;
43
+ }
44
+ return true;
45
+ };
46
+ export const sleep = (ms) => new Promise((_resolve) => setTimeout(_resolve, ms));
47
+ export const isEqual = (first, second, ignoreOrder = false) => {
48
+ if (first === second) {
49
+ return true;
50
+ }
51
+ if ((first === undefined || second === undefined || first === null || second === null) && (first || second)) {
52
+ return false;
53
+ }
54
+ const firstType = first?.constructor.name;
55
+ const secondType = second?.constructor.name;
56
+ if (firstType !== secondType) {
57
+ return false;
58
+ }
59
+ if (firstType === 'Array' && secondType === 'Array') {
60
+ if (first.length !== second.length) {
61
+ return false;
62
+ }
63
+ if (ignoreOrder) {
64
+ const secondCopy = [...second];
65
+ return first.every((item) => {
66
+ const index = secondCopy.findIndex((secondItem) => isEqual(item, secondItem, ignoreOrder));
67
+ if (index === -1)
68
+ return false;
69
+ secondCopy.splice(index, 1);
70
+ return true;
71
+ });
72
+ }
73
+ else {
74
+ let equal = true;
75
+ for (let i = 0; i < first.length; i++) {
76
+ if (!isEqual(first[i], second[i], ignoreOrder)) {
77
+ equal = false;
78
+ break;
79
+ }
80
+ }
81
+ return equal;
82
+ }
83
+ }
84
+ if (firstType === 'Object' && secondType === 'Object') {
85
+ let equal = true;
86
+ const fKeys = Object.keys(first);
87
+ const sKeys = Object.keys(second);
88
+ if (fKeys.length !== sKeys.length) {
89
+ return false;
90
+ }
91
+ for (let i = 0; i < fKeys.length; i++) {
92
+ if (first[fKeys[i]] && second[fKeys[i]]) {
93
+ if (first[fKeys[i]] === second[fKeys[i]]) {
94
+ continue; // eslint-disable-line
95
+ }
96
+ if (first[fKeys[i]] && (first[fKeys[i]].constructor.name === 'Array' || first[fKeys[i]].constructor.name === 'Object')) {
97
+ equal = isEqual(first[fKeys[i]], second[fKeys[i]], ignoreOrder);
98
+ if (!equal) {
99
+ break;
100
+ }
101
+ }
102
+ else if (first[fKeys[i]] !== second[fKeys[i]]) {
103
+ equal = false;
104
+ break;
105
+ }
106
+ }
107
+ else if ((first[fKeys[i]] && !second[fKeys[i]]) || (!first[fKeys[i]] && second[fKeys[i]])) {
108
+ equal = false;
109
+ break;
110
+ }
111
+ }
112
+ return equal;
113
+ }
114
+ return first === second;
115
+ };
116
+ export const mergeWith = (object, source, customizer, stack = []) => {
117
+ for (const key in source) {
118
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
119
+ const objValue = object[key];
120
+ const srcValue = source[key];
121
+ stack.push({ key, object, source });
122
+ const customizedValue = customizer(objValue, srcValue, key, object, source, stack);
123
+ if (customizedValue !== undefined) {
124
+ object[key] = customizedValue;
125
+ }
126
+ else if (Array.isArray(objValue) && Array.isArray(srcValue)) {
127
+ object[key] = mergeWith(objValue, srcValue, customizer, stack);
128
+ }
129
+ else if (Array.isArray(srcValue)) {
130
+ object[key] = mergeWith([], srcValue, customizer, stack);
131
+ }
132
+ else if (typeof objValue === 'object' && objValue !== null && typeof srcValue === 'object' && srcValue !== null) {
133
+ object[key] = mergeWith({ ...objValue }, srcValue, customizer, stack);
134
+ }
135
+ else if (typeof srcValue === 'object' && srcValue !== null) {
136
+ object[key] = mergeWith({}, srcValue, customizer, stack);
137
+ }
138
+ else {
139
+ object[key] = srcValue !== undefined ? srcValue : objValue;
140
+ }
141
+ stack.pop();
142
+ }
143
+ }
144
+ return object;
145
+ };
146
+ export const orderBy = (array, keys, orders) => {
147
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
148
+ let cb = (a, b) => 0;
149
+ keys = [...keys].reverse();
150
+ orders = [...orders].reverse();
151
+ for (let i = 0; i < keys.length; i++) {
152
+ const key = keys[i];
153
+ const order = orders[i];
154
+ if (order === 'asc') {
155
+ cb = (b, a) => (a[key] > b[key] ? 1 : b[key] > a[key] ? -1 : cb(b, a));
156
+ }
157
+ else if (order === 'desc') {
158
+ cb = (b, a) => (a[key] > b[key] ? 1 : b[key] > a[key] ? -1 : cb(b, a));
159
+ }
160
+ }
161
+ return structuredClone(array).sort(cb);
162
+ };
163
+ export const structuredClone = (obj) => {
164
+ return JSON.parse(JSON.stringify(obj));
165
+ };
166
+ export const createSourceName = (cameraName, sourceName) => {
167
+ return `${cameraName.replace(/ /g, '_').toLowerCase()}_${sourceName.replace(/ /g, '_').toLowerCase()}`;
168
+ };
169
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../server/src/utils/utils.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,52 @@
1
+ {
2
+ "name": "@camera.ui/common",
3
+ "version": "0.0.1",
4
+ "description": "camera.ui common",
5
+ "main": "./dist/packages/common/src/index.js",
6
+ "types": "./dist/packages/common/src/index.d.ts",
7
+ "type": "module",
8
+ "exports": {
9
+ ".": {
10
+ "default": "./dist/packages/common/src/index.js",
11
+ "types": "./dist/packages/common/src/index.d.ts"
12
+ }
13
+ },
14
+ "scripts": {
15
+ "build": "rimraf dist && tsc",
16
+ "format": "prettier --write 'src/' --ignore-unknown --no-error-on-unmatched-pattern",
17
+ "lint": "eslint --fix --ext .js,.ts .",
18
+ "update": "updates --update ./",
19
+ "install-updates": "npm i --save",
20
+ "prepublishOnly": "npm i --package-lock-only && npm run lint && npm run format && npm run build"
21
+ },
22
+ "dependencies": {},
23
+ "devDependencies": {
24
+ "@rushstack/eslint-patch": "^1.10.3",
25
+ "@types/node": "^20.14.12",
26
+ "@typescript-eslint/eslint-plugin": "^7.17.0",
27
+ "@typescript-eslint/parser": "^7.17.0",
28
+ "eslint": "8.57.0",
29
+ "eslint-config-prettier": "^9.1.0",
30
+ "eslint-plugin-prettier": "^5.2.1",
31
+ "prettier": "^3.3.3",
32
+ "rimraf": "^6.0.1",
33
+ "tsyringe": "^4.8.0",
34
+ "typescript": "^5.5.4",
35
+ "updates": "^16.2.1"
36
+ },
37
+ "author": "seydx (https://github.com/seydx/camera.ui)",
38
+ "bugs": {
39
+ "url": "https://github.com/seydx/camera.ui/issues"
40
+ },
41
+ "homepage": "https://github.com/seydx/camera.ui#readme",
42
+ "license": "MIT",
43
+ "repository": {
44
+ "type": "git",
45
+ "url": "git+https://github.com/seydx/camera.ui.git"
46
+ },
47
+ "keywords": [
48
+ "camera.ui",
49
+ "common",
50
+ "utils"
51
+ ]
52
+ }