ngx-dev-toolbar 1.0.3 → 1.0.4

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 (130) hide show
  1. package/components/button/button.component.d.ts +12 -0
  2. package/components/card/card.component.d.ts +8 -0
  3. package/components/clickable-card/clickable-card.component.d.ts +11 -0
  4. package/components/icons/angular-icon.component.d.ts +5 -0
  5. package/components/icons/bug-icon.component.d.ts +6 -0
  6. package/components/icons/code-icon.component.d.ts +6 -0
  7. package/components/icons/database-icon.component.d.ts +6 -0
  8. package/components/icons/discord-icon.component.d.ts +6 -0
  9. package/components/icons/docs-icon.component.d.ts +6 -0
  10. package/components/icons/export-icon.component.d.ts +6 -0
  11. package/components/icons/gauge-icon.component.d.ts +6 -0
  12. package/components/icons/gear-icon.component.d.ts +6 -0
  13. package/components/icons/git-branch-icon.component.d.ts +6 -0
  14. package/components/icons/icon.component.d.ts +9 -0
  15. package/components/icons/icon.models.d.ts +1 -0
  16. package/components/icons/import-icon.component.d.ts +6 -0
  17. package/components/icons/layout-icon.component.d.ts +6 -0
  18. package/components/icons/lightbulb-icon.component.d.ts +6 -0
  19. package/components/icons/lighting-icon.component.d.ts +6 -0
  20. package/components/icons/moon-icon.component.d.ts +6 -0
  21. package/components/icons/network-icon.component.d.ts +6 -0
  22. package/components/icons/puzzle-icon.component.d.ts +6 -0
  23. package/components/icons/refresh-icon.component.d.ts +6 -0
  24. package/components/icons/star-icon.component.d.ts +6 -0
  25. package/components/icons/sun-icon.component.d.ts +6 -0
  26. package/components/icons/terminal-icon.component.d.ts +6 -0
  27. package/components/icons/toggle-left-icon.component.d.ts +6 -0
  28. package/components/icons/translate-icon.component.d.ts +6 -0
  29. package/components/icons/trash-icon.component.d.ts +6 -0
  30. package/components/icons/users-icon.component.d.ts +6 -0
  31. package/components/input/input.component.d.ts +10 -0
  32. package/components/link-button/link-button.component.d.ts +8 -0
  33. package/components/select/select.component.d.ts +25 -0
  34. package/components/tool-button/tool-button.component.d.ts +23 -0
  35. package/components/toolbar-tool/toolbar-tool.component.d.ts +30 -0
  36. package/components/toolbar-tool/toolbar-tool.models.d.ts +25 -0
  37. package/components/window/window.component.d.ts +16 -0
  38. package/dev-toolbar-state.service.d.ts +21 -0
  39. package/dev-toolbar.component.d.ts +18 -0
  40. package/fesm2022/ngx-dev-toolbar.mjs +3039 -0
  41. package/fesm2022/ngx-dev-toolbar.mjs.map +1 -0
  42. package/models/dev-tools.interface.d.ts +17 -0
  43. package/package.json +32 -9
  44. package/tools/feature-flags-tool/feature-flags-internal.service.d.ts +21 -0
  45. package/tools/feature-flags-tool/feature-flags-tool.component.d.ts +27 -0
  46. package/tools/feature-flags-tool/feature-flags.models.d.ts +9 -0
  47. package/tools/feature-flags-tool/feature-flags.service.d.ts +19 -0
  48. package/tools/home-tool/home-tool.component.d.ts +38 -0
  49. package/{src/tools/home-tool/settings.models.ts → tools/home-tool/settings.models.d.ts} +1 -1
  50. package/tools/home-tool/settings.service.d.ts +10 -0
  51. package/tools/language-tool/language-internal.service.d.ts +19 -0
  52. package/tools/language-tool/language-tool.component.d.ts +14 -0
  53. package/tools/language-tool/language.models.d.ts +4 -0
  54. package/tools/language-tool/language.service.d.ts +19 -0
  55. package/utils/storage.service.d.ts +18 -0
  56. package/eslint.config.cjs +0 -47
  57. package/ng-package.json +0 -7
  58. package/project.json +0 -37
  59. package/src/components/button/button.component.scss +0 -49
  60. package/src/components/button/button.component.ts +0 -36
  61. package/src/components/card/card.component.scss +0 -18
  62. package/src/components/card/card.component.ts +0 -30
  63. package/src/components/clickable-card/clickable-card.component.scss +0 -39
  64. package/src/components/clickable-card/clickable-card.component.ts +0 -34
  65. package/src/components/icons/angular-icon.component.ts +0 -35
  66. package/src/components/icons/bug-icon.component.ts +0 -23
  67. package/src/components/icons/code-icon.component.ts +0 -24
  68. package/src/components/icons/database-icon.component.ts +0 -27
  69. package/src/components/icons/discord-icon.component.ts +0 -23
  70. package/src/components/icons/docs-icon.component.ts +0 -23
  71. package/src/components/icons/export-icon.component.ts +0 -23
  72. package/src/components/icons/gauge-icon.component.ts +0 -27
  73. package/src/components/icons/gear-icon.component.ts +0 -27
  74. package/src/components/icons/git-branch-icon.component.ts +0 -27
  75. package/src/components/icons/icon.component.ts +0 -129
  76. package/src/components/icons/icon.models.ts +0 -27
  77. package/src/components/icons/import-icon.component.ts +0 -23
  78. package/src/components/icons/layout-icon.component.ts +0 -24
  79. package/src/components/icons/lightbulb-icon.component.ts +0 -23
  80. package/src/components/icons/lighting-icon.component.ts +0 -24
  81. package/src/components/icons/moon-icon.component.ts +0 -27
  82. package/src/components/icons/network-icon.component.ts +0 -27
  83. package/src/components/icons/puzzle-icon.component.ts +0 -27
  84. package/src/components/icons/refresh-icon.component.ts +0 -27
  85. package/src/components/icons/star-icon.component.ts +0 -27
  86. package/src/components/icons/sun-icon.component.ts +0 -27
  87. package/src/components/icons/terminal-icon.component.ts +0 -27
  88. package/src/components/icons/toggle-left-icon.component.ts +0 -27
  89. package/src/components/icons/translate-icon.component.ts +0 -23
  90. package/src/components/icons/trash-icon.component.ts +0 -23
  91. package/src/components/icons/users-icon.component.ts +0 -27
  92. package/src/components/input/input.component.ts +0 -67
  93. package/src/components/link-button/link-button.component.scss +0 -36
  94. package/src/components/link-button/link-button.component.ts +0 -29
  95. package/src/components/select/select.component.scss +0 -162
  96. package/src/components/select/select.component.ts +0 -127
  97. package/src/components/tool-button/tool-button.component.scss +0 -67
  98. package/src/components/tool-button/tool-button.component.ts +0 -126
  99. package/src/components/toolbar-tool/toolbar-tool.component.scss +0 -9
  100. package/src/components/toolbar-tool/toolbar-tool.component.ts +0 -169
  101. package/src/components/toolbar-tool/toolbar-tool.models.ts +0 -33
  102. package/src/components/window/window.component.scss +0 -95
  103. package/src/components/window/window.component.ts +0 -69
  104. package/src/dev-toolbar-state.service.ts +0 -89
  105. package/src/dev-toolbar.component.scss +0 -22
  106. package/src/dev-toolbar.component.ts +0 -105
  107. package/src/models/dev-tools.interface.ts +0 -19
  108. package/src/styles.scss +0 -342
  109. package/src/test-setup.ts +0 -12
  110. package/src/tools/feature-flags-tool/feature-flags-internal.service.ts +0 -96
  111. package/src/tools/feature-flags-tool/feature-flags-tool.component.ts +0 -261
  112. package/src/tools/feature-flags-tool/feature-flags.models.ts +0 -10
  113. package/src/tools/feature-flags-tool/feature-flags.service.ts +0 -28
  114. package/src/tools/home-tool/home-tool.component.scss +0 -67
  115. package/src/tools/home-tool/home-tool.component.ts +0 -197
  116. package/src/tools/home-tool/settings.service.spec.ts +0 -59
  117. package/src/tools/home-tool/settings.service.ts +0 -21
  118. package/src/tools/language-tool/language-internal.service.ts +0 -51
  119. package/src/tools/language-tool/language-tool.component.scss +0 -7
  120. package/src/tools/language-tool/language-tool.component.ts +0 -71
  121. package/src/tools/language-tool/language.models.ts +0 -4
  122. package/src/tools/language-tool/language.service.ts +0 -26
  123. package/src/utils/storage.service.spec.ts +0 -179
  124. package/src/utils/storage.service.ts +0 -80
  125. package/tsconfig.json +0 -28
  126. package/tsconfig.lib.json +0 -28
  127. package/tsconfig.lib.prod.json +0 -9
  128. package/tsconfig.spec.json +0 -29
  129. package/vite.config.mts +0 -27
  130. /package/{src/index.ts → index.d.ts} +0 -0
@@ -1,179 +0,0 @@
1
- import { TestBed } from '@angular/core/testing';
2
- import { DevToolsStorageService } from './storage.service';
3
-
4
- describe('DevToolsStorageService', () => {
5
- let service: DevToolsStorageService;
6
- let storageMock: { [key: string]: string };
7
-
8
- beforeAll(() => {
9
- storageMock = {};
10
- const mockLocalStorage = {
11
- getItem: (key: string): string | null => storageMock[key] || null,
12
- setItem: (key: string, value: string): void => {
13
- storageMock[key] = value;
14
- },
15
- removeItem: (key: string): void => {
16
- delete storageMock[key];
17
- },
18
- clear: (): void => {
19
- storageMock = {};
20
- },
21
- length: 0,
22
- key: (): string => '',
23
- };
24
-
25
- Object.defineProperty(window, 'localStorage', {
26
- value: mockLocalStorage,
27
- });
28
- });
29
-
30
- beforeEach(() => {
31
- storageMock = {};
32
- TestBed.configureTestingModule({
33
- providers: [DevToolsStorageService],
34
- });
35
- service = TestBed.inject(DevToolsStorageService);
36
- });
37
-
38
- describe('set', () => {
39
- it('should store value in localStorage with prefix', () => {
40
- const key = 'testKey';
41
- const value = { test: 'value' };
42
-
43
- service.set(key, value);
44
-
45
- const storedValue = JSON.parse(
46
- storageMock['AngularDevTools.testKey'] ?? '{}'
47
- );
48
- expect(storedValue).toEqual(value);
49
- });
50
-
51
- it('should add key to tool keys', () => {
52
- const key = 'testKey';
53
- const value = { test: 'value' };
54
-
55
- service.set(key, value);
56
-
57
- const toolKeys = JSON.parse(storageMock['AngularDevTools.keys'] ?? '[]');
58
- expect(toolKeys).toContain('AngularDevTools.testKey');
59
- });
60
- });
61
-
62
- describe('get', () => {
63
- it('should retrieve stored value', () => {
64
- const key = 'testKey';
65
- const value = { test: 'value' };
66
- service.set(key, value);
67
-
68
- const result = service.get<{ test: string }>(key);
69
-
70
- expect(result).toEqual(value);
71
- });
72
-
73
- it('should return null for non-existent key', () => {
74
- const key = 'nonExistentKey';
75
-
76
- const result = service.get(key);
77
-
78
- expect(result).toBeNull();
79
- });
80
- });
81
-
82
- describe('remove', () => {
83
- it('should remove value from localStorage', () => {
84
- const key = 'testKey';
85
- const value = { test: 'value' };
86
- service.set(key, value);
87
-
88
- service.remove(key);
89
-
90
- expect(storageMock['ndt-testKey']).toBeUndefined();
91
- });
92
-
93
- it('should keep other values in localStorage', () => {
94
- const key1 = 'key1';
95
- const key2 = 'key2';
96
- service.set(key1, { value: 1 });
97
- service.set(key2, { value: 2 });
98
-
99
- service.remove(key1);
100
-
101
- expect(service.get(key2)).toEqual({ value: 2 });
102
- });
103
- });
104
-
105
- describe('getAllSettings', () => {
106
- it('should return all stored settings', () => {
107
- const settings = {
108
- key1: { value: 1 },
109
- key2: { value: 2 },
110
- };
111
- Object.entries(settings).forEach(([key, value]) => {
112
- service.set(key, value);
113
- });
114
-
115
- const result = service.getAllSettings();
116
-
117
- const settingsWithPrefix = {
118
- 'AngularDevTools.key1': { value: 1 },
119
- 'AngularDevTools.key2': { value: 2 },
120
- };
121
- expect(result).toEqual(settingsWithPrefix);
122
- });
123
- });
124
-
125
- describe('setAllSettings', () => {
126
- it('should store multiple settings at once', () => {
127
- const settings = {
128
- 'AngularDevTools.key1': { value: 1 },
129
- 'AngularDevTools.key2': { value: 2 },
130
- };
131
-
132
- service.setAllSettings(settings);
133
-
134
- const valueOne = service.get('AngularDevTools.key1');
135
- const valueTwo = service.get('AngularDevTools.key2');
136
- expect(valueOne).toEqual({ value: 1 });
137
- expect(valueTwo).toEqual({ value: 2 });
138
- });
139
-
140
- it('should preserve existing keys not included in settings', () => {
141
- service.set('key1', { value: 1 });
142
- service.set('key2', { value: 2 });
143
-
144
- service.setAllSettings({ key1: { value: 3 } });
145
-
146
- expect(service.get('key2')).toEqual({ value: 2 });
147
- });
148
- });
149
-
150
- describe('clearAllSettings', () => {
151
- it('should remove all stored settings', () => {
152
- service.set('featureFlagsTool', { value: 1 });
153
- service.set('i18nTool2', { value: 2 });
154
-
155
- service.clearAllSettings();
156
-
157
- const allSettings = service.getAllSettings();
158
- expect(allSettings).toEqual({});
159
- });
160
-
161
- it('should only clear tool settings', () => {
162
- service.set('key1', { value: 1 });
163
- storageMock['other-key'] = JSON.stringify({ value: 2 });
164
-
165
- service.clearAllSettings();
166
-
167
- expect(storageMock['other-key']).toBeDefined();
168
- });
169
-
170
- it('should remove tool keys', () => {
171
- service.set('featureFlagsTool', { value: 1 });
172
- service.set('i18nTool2', { value: 2 });
173
-
174
- service.clearAllSettings();
175
-
176
- expect(service.getToolKeys()).toEqual([]);
177
- });
178
- });
179
- });
@@ -1,80 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
-
3
- @Injectable({ providedIn: 'root' })
4
- export class DevToolsStorageService {
5
- private readonly PREFIX = 'AngularDevTools.';
6
- private readonly TOOLS_KEY = `${this.PREFIX}keys`;
7
- private readonly SETTINGS_KEY = `${this.PREFIX}settings`;
8
-
9
- public set<T>(key: string, value: T): void {
10
- const toolKey = this.getToolKey(key);
11
- this.addToolKey(toolKey);
12
- localStorage.setItem(toolKey, JSON.stringify(value));
13
- }
14
-
15
- public get<T>(key: string): T | null {
16
- const toolKey = this.getToolKey(key);
17
- const item = localStorage.getItem(toolKey);
18
- return item ? JSON.parse(item) : null;
19
- }
20
-
21
- public remove(key: string): void {
22
- const toolKey = this.getToolKey(key);
23
- localStorage.removeItem(toolKey);
24
- this.removeToolKey(toolKey);
25
- }
26
-
27
- public getAllSettings(): Record<string, unknown> {
28
- const settings: Record<string, unknown> = {};
29
-
30
- const keys = this.getToolKeys();
31
- keys.forEach((key) => {
32
- const value = this.get(key);
33
- if (value !== null) {
34
- settings[key] = value;
35
- }
36
- });
37
-
38
- return settings;
39
- }
40
-
41
- public setAllSettings(settings: Record<string, unknown>): void {
42
- Object.entries(settings).forEach(([key, value]) => {
43
- this.set(key, value);
44
- });
45
- }
46
-
47
- public clearAllSettings(): void {
48
- const keys = this.getToolKeys();
49
- keys.forEach((key) => {
50
- this.remove(key);
51
- });
52
- }
53
-
54
- public getToolKeys(): string[] {
55
- return JSON.parse(localStorage.getItem(this.TOOLS_KEY) ?? '[]');
56
- }
57
-
58
- private addToolKey(key: string) {
59
- const currentKeys = this.getToolKeys();
60
- if (currentKeys.includes(key)) {
61
- return;
62
- }
63
- currentKeys.push(key);
64
- localStorage.setItem(this.TOOLS_KEY, JSON.stringify(currentKeys));
65
- }
66
-
67
- private removeToolKey(key: string): void {
68
- const currentKeys = this.getToolKeys();
69
- const index = currentKeys.indexOf(key);
70
- if (index !== -1) {
71
- currentKeys.splice(index, 1);
72
- }
73
- localStorage.setItem(this.TOOLS_KEY, JSON.stringify(currentKeys));
74
- }
75
-
76
- private getToolKey(key: string): string {
77
- return key.includes(this.PREFIX) ? key : this.PREFIX + key;
78
- }
79
-
80
- }
package/tsconfig.json DELETED
@@ -1,28 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "es2022",
4
- "forceConsistentCasingInFileNames": true,
5
- "strict": true,
6
- "noImplicitOverride": true,
7
- "noPropertyAccessFromIndexSignature": true,
8
- "noImplicitReturns": true,
9
- "noFallthroughCasesInSwitch": true
10
- },
11
- "files": [],
12
- "include": [],
13
- "references": [
14
- {
15
- "path": "./tsconfig.lib.json"
16
- },
17
- {
18
- "path": "./tsconfig.spec.json"
19
- }
20
- ],
21
- "extends": "../../tsconfig.base.json",
22
- "angularCompilerOptions": {
23
- "enableI18nLegacyMessageIdFormat": false,
24
- "strictInjectionParameters": true,
25
- "strictInputAccessModifiers": true,
26
- "strictTemplates": true
27
- }
28
- }
package/tsconfig.lib.json DELETED
@@ -1,28 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "compilerOptions": {
4
- "outDir": "../../dist/out-tsc",
5
- "declaration": true,
6
- "declarationMap": true,
7
- "inlineSources": true,
8
- "types": []
9
- },
10
- "exclude": [
11
- "src/**/*.spec.ts",
12
- "src/test-setup.ts",
13
- "jest.config.ts",
14
- "src/**/*.test.ts",
15
- "vite.config.ts",
16
- "vite.config.mts",
17
- "vitest.config.ts",
18
- "vitest.config.mts",
19
- "src/**/*.test.tsx",
20
- "src/**/*.spec.tsx",
21
- "src/**/*.test.js",
22
- "src/**/*.spec.js",
23
- "src/**/*.test.jsx",
24
- "src/**/*.spec.jsx",
25
- "src/test-setup.ts"
26
- ],
27
- "include": ["src/**/*.ts"]
28
- }
@@ -1,9 +0,0 @@
1
- {
2
- "extends": "./tsconfig.lib.json",
3
- "compilerOptions": {
4
- "declarationMap": false
5
- },
6
- "angularCompilerOptions": {
7
- "compilationMode": "partial"
8
- }
9
- }
@@ -1,29 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "compilerOptions": {
4
- "outDir": "../../dist/out-tsc",
5
- "types": [
6
- "vitest/globals",
7
- "vitest/importMeta",
8
- "vite/client",
9
- "node",
10
- "vitest"
11
- ]
12
- },
13
- "include": [
14
- "vite.config.ts",
15
- "vite.config.mts",
16
- "vitest.config.ts",
17
- "vitest.config.mts",
18
- "src/**/*.test.ts",
19
- "src/**/*.spec.ts",
20
- "src/**/*.test.tsx",
21
- "src/**/*.spec.tsx",
22
- "src/**/*.test.js",
23
- "src/**/*.spec.js",
24
- "src/**/*.test.jsx",
25
- "src/**/*.spec.jsx",
26
- "src/**/*.d.ts"
27
- ],
28
- "files": ["src/test-setup.ts"]
29
- }
package/vite.config.mts DELETED
@@ -1,27 +0,0 @@
1
- /// <reference types='vitest' />
2
- import { defineConfig } from 'vite';
3
- import angular from '@analogjs/vite-plugin-angular';
4
- import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
5
- import { nxCopyAssetsPlugin } from '@nx/vite/plugins/nx-copy-assets.plugin';
6
-
7
- export default defineConfig({
8
- root: __dirname,
9
- cacheDir: '../../node_modules/.vite/libs/ngx-dev-toolbar',
10
- plugins: [angular(), nxViteTsPaths(), nxCopyAssetsPlugin(['*.md'])],
11
- // Uncomment this if you are using workers.
12
- // worker: {
13
- // plugins: [ nxViteTsPaths() ],
14
- // },
15
- test: {
16
- watch: false,
17
- globals: true,
18
- environment: 'jsdom',
19
- include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
20
- setupFiles: ['src/test-setup.ts'],
21
- reporters: ['default'],
22
- coverage: {
23
- reportsDirectory: '../../coverage/libs/ngx-dev-toolbar',
24
- provider: 'v8',
25
- },
26
- },
27
- });
File without changes