@nemigo/helpers 0.0.1 → 0.0.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nemigo/helpers",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "private": false,
5
5
  "author": {
6
6
  "name": "Vlad Logvin",
package/.prettierignore DELETED
@@ -1,51 +0,0 @@
1
- # OS
2
- .DS_Store
3
- Thumbs.db
4
- .fuse_hidden*
5
- .nfs*
6
-
7
- # IDEs
8
- .idea
9
- .fleet
10
- .vscode
11
- *.code-workspace
12
- *.bak
13
- *.swp
14
- *.swo
15
-
16
- # DEV
17
- .git
18
- migrations
19
- node_modules
20
- trash
21
-
22
- *-lock.*
23
- *.lock
24
- *.lockb
25
-
26
- # TEMP
27
- .turbo
28
- .svelte-kit
29
- vite.config.*.timestamp-*
30
- coverage
31
- test-results
32
- temp-*
33
- logs
34
- *.log*
35
-
36
- # BUILD
37
- .deploy
38
- .output
39
- .vercel
40
- .netlify
41
- .wrangler
42
- build
43
- dist
44
-
45
- # ETC
46
- static
47
- *.min.*
48
- *.html
49
-
50
- # CUSTOM
51
- # ...
@@ -1,5 +0,0 @@
1
-
2
- > @nemigo/helpers@0.0.1 build D:\workspace\nemigo\packages\helpers
3
- > svelte-package && rimraf .svelte-kit
4
-
5
- src -> dist
@@ -1 +0,0 @@
1
- export {};
@@ -1,136 +0,0 @@
1
- import { decode, encode } from "./msgpack.js";
2
- import { describe, expect, it } from "vitest";
3
- describe("msgpack helpers", () => {
4
- describe("Primitive values", () => {
5
- it("should encode/decode numbers", () => {
6
- const original = 42;
7
- const encoded = encode(original);
8
- const decoded = decode(encoded);
9
- expect(decoded).toBe(original);
10
- });
11
- it("should encode/decode strings", () => {
12
- const original = "Hello, World!";
13
- const encoded = encode(original);
14
- const decoded = decode(encoded);
15
- expect(decoded).toBe(original);
16
- });
17
- it("should encode/decode booleans", () => {
18
- const original = true;
19
- const encoded = encode(original);
20
- const decoded = decode(encoded);
21
- expect(decoded).toBe(original);
22
- });
23
- it("should encode/decode null", () => {
24
- const original = null;
25
- const encoded = encode(original);
26
- const decoded = decode(encoded);
27
- expect(decoded).toBe(original);
28
- });
29
- it("should handle special number values", () => {
30
- const original = {
31
- nan: NaN,
32
- infinity: Infinity,
33
- negativeInfinity: -Infinity,
34
- };
35
- const encoded = encode(original);
36
- const decoded = decode(encoded);
37
- expect(decoded.nan).toBeNaN();
38
- expect(decoded.infinity).toBe(Infinity);
39
- expect(decoded.negativeInfinity).toBe(-Infinity);
40
- });
41
- });
42
- describe("Arrays", () => {
43
- it("should encode/decode simple arrays", () => {
44
- const original = [
45
- 1,
46
- "two",
47
- true,
48
- null,
49
- ];
50
- const encoded = encode(original);
51
- const decoded = decode(encoded);
52
- expect(decoded).toEqual(original);
53
- });
54
- it("should encode/decode nested arrays", () => {
55
- const original = [
56
- [1, 2],
57
- [3, [4, 5]],
58
- ];
59
- const encoded = encode(original);
60
- const decoded = decode(encoded);
61
- expect(decoded).toEqual(original);
62
- });
63
- it("should encode/decode empty arrays", () => {
64
- const original = [];
65
- const encoded = encode(original);
66
- const decoded = decode(encoded);
67
- expect(decoded).toEqual(original);
68
- });
69
- it("should encode/decode arrays with objects", () => {
70
- const original = [{ a: 1 }, { b: 2 }];
71
- const encoded = encode(original);
72
- const decoded = decode(encoded);
73
- expect(decoded).toEqual(original);
74
- });
75
- });
76
- describe("Objects", () => {
77
- it("should encode/decode simple objects", () => {
78
- const original = { name: "John", age: 30, isActive: true };
79
- const encoded = encode(original);
80
- const decoded = decode(encoded);
81
- expect(decoded).toEqual(original);
82
- });
83
- it("should encode/decode nested objects", () => {
84
- const original = {
85
- user: {
86
- name: "Alice",
87
- address: {
88
- city: "Moscow",
89
- zip: 123456,
90
- },
91
- },
92
- };
93
- const encoded = encode(original);
94
- const decoded = decode(encoded);
95
- expect(decoded).toEqual(original);
96
- });
97
- it("should encode/decode empty objects", () => {
98
- const original = {};
99
- const encoded = encode(original);
100
- const decoded = decode(encoded);
101
- expect(decoded).toEqual(original);
102
- });
103
- it("should encode/decode objects with arrays", () => {
104
- const original = {
105
- numbers: [1, 2, 3],
106
- users: [{ name: "Bob" }, { name: "Alice" }],
107
- };
108
- const encoded = encode(original);
109
- const decoded = decode(encoded);
110
- expect(decoded).toEqual(original);
111
- });
112
- it("should encode/decode complex nested structures", () => {
113
- const original = {
114
- users: [
115
- {
116
- id: 1,
117
- name: "John",
118
- roles: ["admin", "user"],
119
- },
120
- {
121
- id: 2,
122
- name: "Jane",
123
- roles: ["user"],
124
- },
125
- ],
126
- settings: {
127
- theme: "dark",
128
- notifications: true,
129
- },
130
- };
131
- const encoded = encode(original);
132
- const decoded = decode(encoded);
133
- expect(decoded).toEqual(original);
134
- });
135
- });
136
- });
package/eslint.config.js DELETED
@@ -1,4 +0,0 @@
1
- import { defineConfig } from "@nemigo/configs/eslint";
2
- import svelte from "./svelte.config.js";
3
-
4
- export default defineConfig(svelte);
@@ -1,3 +0,0 @@
1
- import { defineConfig } from "@nemigo/configs/prettier";
2
-
3
- export default defineConfig();
@@ -1,153 +0,0 @@
1
- import { decode, encode } from "#/msgpack.js";
2
- import { describe, expect, it } from "vitest";
3
-
4
- describe("msgpack helpers", () => {
5
- describe("Primitive values", () => {
6
- it("should encode/decode numbers", () => {
7
- const original = 42;
8
- const encoded = encode(original);
9
- const decoded = decode(encoded);
10
- expect(decoded).toBe(original);
11
- });
12
-
13
- it("should encode/decode strings", () => {
14
- const original = "Hello, World!";
15
- const encoded = encode(original);
16
- const decoded = decode(encoded);
17
- expect(decoded).toBe(original);
18
- });
19
-
20
- it("should encode/decode booleans", () => {
21
- const original = true;
22
- const encoded = encode(original);
23
- const decoded = decode(encoded);
24
- expect(decoded).toBe(original);
25
- });
26
-
27
- it("should encode/decode null", () => {
28
- const original = null;
29
- const encoded = encode(original);
30
- const decoded = decode(encoded);
31
- expect(decoded).toBe(original);
32
- });
33
-
34
- it("should handle special number values", () => {
35
- const original = {
36
- nan: NaN,
37
- infinity: Infinity,
38
- negativeInfinity: -Infinity,
39
- };
40
-
41
- const encoded = encode(original);
42
- const decoded = decode(encoded);
43
-
44
- expect(decoded.nan).toBeNaN();
45
- expect(decoded.infinity).toBe(Infinity);
46
- expect(decoded.negativeInfinity).toBe(-Infinity);
47
- });
48
- });
49
-
50
- describe("Arrays", () => {
51
- it("should encode/decode simple arrays", () => {
52
- const original = [
53
- 1,
54
- "two",
55
- true,
56
- null,
57
- ];
58
- const encoded = encode(original);
59
- const decoded = decode(encoded);
60
- expect(decoded).toEqual(original);
61
- });
62
-
63
- it("should encode/decode nested arrays", () => {
64
- const original = [
65
- [1, 2],
66
- [3, [4, 5]],
67
- ];
68
- const encoded = encode(original);
69
- const decoded = decode(encoded);
70
- expect(decoded).toEqual(original);
71
- });
72
-
73
- it("should encode/decode empty arrays", () => {
74
- const original = [];
75
- const encoded = encode(original);
76
- const decoded = decode(encoded);
77
- expect(decoded).toEqual(original);
78
- });
79
-
80
- it("should encode/decode arrays with objects", () => {
81
- const original = [{ a: 1 }, { b: 2 }];
82
- const encoded = encode(original);
83
- const decoded = decode(encoded);
84
- expect(decoded).toEqual(original);
85
- });
86
- });
87
-
88
- describe("Objects", () => {
89
- it("should encode/decode simple objects", () => {
90
- const original = { name: "John", age: 30, isActive: true };
91
- const encoded = encode(original);
92
- const decoded = decode(encoded);
93
- expect(decoded).toEqual(original);
94
- });
95
-
96
- it("should encode/decode nested objects", () => {
97
- const original = {
98
- user: {
99
- name: "Alice",
100
- address: {
101
- city: "Moscow",
102
- zip: 123456,
103
- },
104
- },
105
- };
106
- const encoded = encode(original);
107
- const decoded = decode(encoded);
108
- expect(decoded).toEqual(original);
109
- });
110
-
111
- it("should encode/decode empty objects", () => {
112
- const original = {};
113
- const encoded = encode(original);
114
- const decoded = decode(encoded);
115
- expect(decoded).toEqual(original);
116
- });
117
-
118
- it("should encode/decode objects with arrays", () => {
119
- const original = {
120
- numbers: [1, 2, 3],
121
- users: [{ name: "Bob" }, { name: "Alice" }],
122
- };
123
- const encoded = encode(original);
124
- const decoded = decode(encoded);
125
- expect(decoded).toEqual(original);
126
- });
127
-
128
- it("should encode/decode complex nested structures", () => {
129
- const original = {
130
- users: [
131
- {
132
- id: 1,
133
- name: "John",
134
- roles: ["admin", "user"],
135
- },
136
- {
137
- id: 2,
138
- name: "Jane",
139
- roles: ["user"],
140
- },
141
- ],
142
- settings: {
143
- theme: "dark",
144
- notifications: true,
145
- },
146
- };
147
-
148
- const encoded = encode(original);
149
- const decoded = decode(encoded);
150
- expect(decoded).toEqual(original);
151
- });
152
- });
153
- });
package/src/msgpack.ts DELETED
@@ -1,44 +0,0 @@
1
- import { decode as _decode, encode as _encode } from "@std/msgpack";
2
-
3
- /**
4
- * Данные в формате MSGPACK
5
- *
6
- * @template Data - Исходный объект данных
7
- * @template Pack - Флаг, определяющий, упакованы данные или нет
8
- *
9
- * @remarks Поля __meta с исходными данными **НЕ** существует. Только для типизации
10
- *
11
- * @see https://jsr.io/@std/msgpack Документация используемого пакета
12
- * @see https://msgpack.org/ Документация стандарта MSGPACK
13
- */
14
- export type MSGPACK<Data, Pack extends boolean = true> = (Pack extends true ? number[] : Data) & { __meta: Data };
15
-
16
- /**
17
- * Декодирует данные из формата MSGPACK в исходный объект
18
- *
19
- * Использует функцию {@link _decode} из пакета `@std/msgpack` для декодирования
20
- *
21
- * @template Data - Тип исходного объекта
22
- * @param {MSGPACK<Data>} data - Данные в формате MSGPACK для декодирования
23
- * @returns {Data} Декодированный объект
24
- *
25
- * @see https://jsr.io/@std/msgpack Документация используемого пакета
26
- * @see https://msgpack.org/ Документация стандарта MSGPACK
27
- */
28
- export const decode = <Data>(data: MSGPACK<Data>): Data => _decode(new Uint8Array(data)) as Data;
29
-
30
- /**
31
- * Кодирует исходный объект в формат MSGPACK.
32
- * Объект **НЕ** должен содержать методы, `null` и `undefined`
33
- *
34
- * Использует функцию {@link _encode} из пакета `@std/msgpack` для кодирования
35
- *
36
- * @template Data - Тип исходного объекта
37
- * @param {Data} data - Объект для кодирования
38
- * @returns {MSGPACK<Data>} Объект, закодированный в формат MSGPACK
39
- * @throws {Error} Выбрасывает ошибку, если есть не поддерживаемые типы данных
40
- *
41
- * @see https://jsr.io/@std/msgpack Документация используемого пакета
42
- * @see https://msgpack.org/ Документация стандарта MSGPACK
43
- */
44
- export const encode = <Data>(data: Data): MSGPACK<Data> => Array.from(_encode(data as unknown as string)) as MSGPACK<Data>;
package/svelte.config.js DELETED
@@ -1,3 +0,0 @@
1
- import { definePackageConfig } from "@nemigo/configs/svelte";
2
-
3
- export default definePackageConfig();
package/tsconfig.json DELETED
@@ -1,15 +0,0 @@
1
- {
2
- "$schema": "https://json.schemastore.org/tsconfig",
3
- "extends": "@nemigo/configs/typescript.json",
4
- "compilerOptions": {
5
- "paths": { "#/*": ["./src/*"] }
6
- },
7
- "include": [
8
- "./src/**/*.svelte",
9
- "./src/**/*.ts",
10
- "./src/**/*.js",
11
- "./*.svelte",
12
- "./*.ts",
13
- "./*.js"
14
- ]
15
- }
package/vitest.config.ts DELETED
@@ -1,16 +0,0 @@
1
- import { defineConfig } from "vitest/config";
2
- import { dirname, join } from "node:path";
3
- import { fileURLToPath } from "node:url";
4
-
5
- const __dirname = dirname(fileURLToPath(import.meta.url));
6
-
7
- export default defineConfig({
8
- test: {
9
- include: ["./src/**/*.{test,spec}.{ts,js}"],
10
- },
11
- resolve: {
12
- alias: {
13
- "#": join(__dirname, "./src"),
14
- },
15
- },
16
- });