@principal-ade/code-quality-panels 0.1.28 → 0.2.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.
@@ -1,9 +1,56 @@
1
1
  import React from "react";
2
- import type { PanelComponentProps, PanelContextValue, PanelActions, PanelEventEmitter } from "../types";
2
+ import type { PanelComponentProps, PanelContextValue, PanelActions, PanelEventEmitter, DataSlice } from "../types";
3
+ /**
4
+ * Create a mock DataSlice
5
+ */
6
+ export declare const createMockSlice: <T>(name: string, data: T, scope?: "workspace" | "repository" | "global") => DataSlice<T>;
7
+ /**
8
+ * Default mock slices for convenience
9
+ */
10
+ export declare const defaultMockSlices: {
11
+ git: DataSlice<{
12
+ staged: string[];
13
+ unstaged: string[];
14
+ untracked: string[];
15
+ deleted: never[];
16
+ }>;
17
+ markdown: DataSlice<{
18
+ path: string;
19
+ title: string;
20
+ lastModified: number;
21
+ }[]>;
22
+ fileTree: DataSlice<{
23
+ name: string;
24
+ path: string;
25
+ type: string;
26
+ children: {
27
+ name: string;
28
+ path: string;
29
+ type: string;
30
+ }[];
31
+ }>;
32
+ packages: DataSlice<{
33
+ name: string;
34
+ version: string;
35
+ path: string;
36
+ }[]>;
37
+ quality: DataSlice<{
38
+ metrics: {
39
+ tests: number;
40
+ deadCode: number;
41
+ linting: number;
42
+ formatting: number;
43
+ types: number;
44
+ documentation: number;
45
+ };
46
+ lastUpdated: string;
47
+ }>;
48
+ };
3
49
  /**
4
50
  * Mock Panel Context for Storybook
51
+ * Now uses the new generic-based PanelContextValue API
5
52
  */
6
- export declare const createMockContext: (overrides?: Partial<PanelContextValue>) => PanelContextValue;
53
+ export declare const createMockContext: <TData extends object = object>(overrides?: Partial<PanelContextValue<TData>> & Partial<TData>) => PanelContextValue<TData>;
7
54
  /**
8
55
  * Mock Panel Actions for Storybook
9
56
  */
@@ -15,20 +62,25 @@ export declare const createMockEvents: () => PanelEventEmitter;
15
62
  /**
16
63
  * Mock Panel Props Provider
17
64
  * Wraps components with mock context for Storybook
65
+ *
66
+ * @template TData - The typed data slices to include in the context
67
+ * @template TActions - The actions type for the panel
18
68
  */
19
- export declare const MockPanelProvider: React.FC<{
20
- children: (props: PanelComponentProps) => React.ReactNode;
21
- contextOverrides?: Partial<PanelContextValue>;
22
- actionsOverrides?: Partial<PanelActions>;
69
+ export declare const MockPanelProvider: <TData extends object = object, TActions extends PanelActions = PanelActions>({ children, contextOverrides, actionsOverrides, eventsOverride, }: {
70
+ children: (props: PanelComponentProps<TActions, TData>) => React.ReactNode;
71
+ contextOverrides?: Partial<PanelContextValue<TData>> & Partial<TData>;
72
+ actionsOverrides?: TActions;
23
73
  eventsOverride?: PanelEventEmitter;
24
- }>;
74
+ }) => React.ReactElement;
25
75
  /**
26
76
  * Create mock panel props with custom overrides
27
77
  * Useful for Storybook stories
78
+ *
79
+ * @template TData - The typed data slices to include in the context
28
80
  */
29
- export declare const createMockPanelProps: (options?: {
81
+ export declare const createMockPanelProps: <TData extends object = object>(options?: {
30
82
  repositoryPath?: string;
31
83
  repositoryName?: string;
32
- slices?: Record<string, unknown>;
33
- }) => PanelComponentProps;
84
+ slices?: Partial<TData>;
85
+ }) => PanelComponentProps<PanelActions, TData>;
34
86
  //# sourceMappingURL=panelContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"panelContext.d.ts","sourceRoot":"","sources":["../../src/mocks/panelContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EAIlB,MAAM,UAAU,CAAC;AA+BlB;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,YAAY,OAAO,CAAC,iBAAiB,CAAC,KACrC,iBAqHF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,YAAY,OAAO,CAAC,YAAY,CAAC,KAChC,YAkBD,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB,QAAO,iBAwCnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IACvC,QAAQ,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,KAAK,CAAC,SAAS,CAAC;IAC1D,gBAAgB,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9C,gBAAgB,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACzC,cAAc,CAAC,EAAE,iBAAiB,CAAC;CACpC,CAwCA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAI,UAAU;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,KAAG,mBAwCH,CAAC"}
1
+ {"version":3,"file":"panelContext.d.ts","sourceRoot":"","sources":["../../src/mocks/panelContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EAGjB,SAAS,EACV,MAAM,UAAU,CAAC;AAYlB;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,EAC/B,MAAM,MAAM,EACZ,MAAM,CAAC,EACP,QAAO,WAAW,GAAG,YAAY,GAAG,QAAuB,KAC1D,SAAS,CAAC,CAAC,CAUZ,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkD7B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,SAAS,MAAM,GAAG,MAAM,EAC7D,YAAY,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,KAC7D,iBAAiB,CAAC,KAAK,CAuBzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,YAAY,OAAO,CAAC,YAAY,CAAC,KAChC,YAkBD,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB,QAAO,iBAwCnC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,SAAS,MAAM,GAAG,MAAM,EAAE,QAAQ,SAAS,YAAY,GAAG,YAAY,EAAE,mEAK5G;IACD,QAAQ,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IAC3E,gBAAgB,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACtE,gBAAgB,CAAC,EAAE,QAAQ,CAAC;IAC5B,cAAc,CAAC,EAAE,iBAAiB,CAAC;CACpC,KAAG,KAAK,CAAC,YAgCT,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAAI,KAAK,SAAS,MAAM,GAAG,MAAM,EAAE,UAAU;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;CACzB,KAAG,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAqC1C,CAAC"}
package/package.json CHANGED
@@ -1,20 +1,20 @@
1
1
  {
2
2
  "name": "@principal-ade/code-quality-panels",
3
- "version": "0.1.28",
3
+ "version": "0.2.0",
4
4
  "description": "Code quality visualization panels including QualityHexagon components",
5
5
  "type": "module",
6
6
  "main": "dist/panels.bundle.js",
7
7
  "module": "dist/panels.bundle.js",
8
- "types": "dist/src/index.d.ts",
8
+ "types": "dist/index.d.ts",
9
9
  "exports": {
10
10
  ".": {
11
- "types": "./dist/src/index.d.ts",
11
+ "types": "./dist/index.d.ts",
12
12
  "import": "./dist/panels.bundle.js",
13
13
  "require": "./dist/panels.bundle.js",
14
14
  "default": "./dist/panels.bundle.js"
15
15
  },
16
16
  "./tools": {
17
- "types": "./dist/src/tools/index.d.ts",
17
+ "types": "./dist/tools/index.d.ts",
18
18
  "import": "./dist/tools.bundle.js",
19
19
  "require": "./dist/tools.bundle.js",
20
20
  "default": "./dist/tools.bundle.js"
@@ -43,20 +43,16 @@
43
43
  "build-storybook": "storybook build"
44
44
  },
45
45
  "peerDependencies": {
46
+ "@principal-ade/industry-theme": ">=0.1.8",
47
+ "@principal-ade/panel-framework-core": ">=0.5.1",
48
+ "@principal-ade/panel-layouts": ">=0.4.0",
49
+ "@principal-ade/utcp-panel-event": ">=0.1.0",
50
+ "@principal-ai/codebase-composition": ">=0.2.25",
51
+ "@principal-ai/quality-lens-registry": ">=0.3.3",
46
52
  "react": ">=19.0.0",
47
53
  "react-dom": ">=19.0.0"
48
54
  },
49
- "peerDependenciesMeta": {
50
- "@principal-ade/panel-framework-core": {
51
- "optional": true
52
- }
53
- },
54
55
  "dependencies": {
55
- "@principal-ade/industry-theme": "^0.1.4",
56
- "@principal-ade/panel-framework-core": "^0.1.10",
57
- "@principal-ade/utcp-panel-event": "^0.1.0",
58
- "@principal-ai/codebase-composition": "^0.2.25",
59
- "@principal-ai/quality-lens-registry": "^0.3.3",
60
56
  "clsx": "^2.1.1",
61
57
  "lucide-react": "^0.552.0"
62
58
  },