anton-bakker-feedback 0.2.0 → 0.3.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.
Files changed (66) hide show
  1. package/dist/react/admin/FeedbackDetailPage.d.ts +7 -25
  2. package/dist/react/admin/FeedbackDetailPage.d.ts.map +1 -1
  3. package/dist/react/admin/FeedbackListPage.d.ts +20 -0
  4. package/dist/react/admin/FeedbackListPage.d.ts.map +1 -0
  5. package/dist/react/admin/FeedbackUpdatePage.d.ts +8 -30
  6. package/dist/react/admin/FeedbackUpdatePage.d.ts.map +1 -1
  7. package/dist/react/admin/__tests__/FeedbackListPage.test.d.ts.map +1 -0
  8. package/dist/react/admin/index.d.ts +3 -2
  9. package/dist/react/admin/index.d.ts.map +1 -1
  10. package/dist/react/admin/index.js +352 -1259
  11. package/dist/react/admin/index.js.map +1 -1
  12. package/dist/react/admin/types.d.ts +20 -14
  13. package/dist/react/admin/types.d.ts.map +1 -1
  14. package/dist/react.js +6 -6
  15. package/dist/react.js.map +1 -1
  16. package/package.json +7 -1
  17. package/dist/react/admin/__tests__/FeedbackUpdatePage.integration.test.d.ts +0 -2
  18. package/dist/react/admin/__tests__/FeedbackUpdatePage.integration.test.d.ts.map +0 -1
  19. package/dist/react/admin/components/BrowserContext.d.ts +0 -32
  20. package/dist/react/admin/components/BrowserContext.d.ts.map +0 -1
  21. package/dist/react/admin/components/DataTable.d.ts +0 -55
  22. package/dist/react/admin/components/DataTable.d.ts.map +0 -1
  23. package/dist/react/admin/components/DialogueHistory.d.ts +0 -27
  24. package/dist/react/admin/components/DialogueHistory.d.ts.map +0 -1
  25. package/dist/react/admin/components/EditableFields.d.ts +0 -126
  26. package/dist/react/admin/components/EditableFields.d.ts.map +0 -1
  27. package/dist/react/admin/components/FeedbackListPage.d.ts +0 -19
  28. package/dist/react/admin/components/FeedbackListPage.d.ts.map +0 -1
  29. package/dist/react/admin/components/FeedbackListPage.test.d.ts.map +0 -1
  30. package/dist/react/admin/components/FilterControls.d.ts +0 -28
  31. package/dist/react/admin/components/FilterControls.d.ts.map +0 -1
  32. package/dist/react/admin/components/NavigationLink.d.ts +0 -31
  33. package/dist/react/admin/components/NavigationLink.d.ts.map +0 -1
  34. package/dist/react/admin/components/QuickActions.d.ts +0 -43
  35. package/dist/react/admin/components/QuickActions.d.ts.map +0 -1
  36. package/dist/react/admin/components/ScreenshotViewer.d.ts +0 -38
  37. package/dist/react/admin/components/ScreenshotViewer.d.ts.map +0 -1
  38. package/dist/react/admin/components/SortControls.d.ts +0 -29
  39. package/dist/react/admin/components/SortControls.d.ts.map +0 -1
  40. package/dist/react/admin/components/StatusBadge.d.ts +0 -23
  41. package/dist/react/admin/components/StatusBadge.d.ts.map +0 -1
  42. package/dist/react/admin/components/TypeBadge.d.ts +0 -23
  43. package/dist/react/admin/components/TypeBadge.d.ts.map +0 -1
  44. package/dist/react/admin/components/__tests__/BrowserContext.test.d.ts +0 -2
  45. package/dist/react/admin/components/__tests__/BrowserContext.test.d.ts.map +0 -1
  46. package/dist/react/admin/components/__tests__/DialogueHistory.test.d.ts +0 -2
  47. package/dist/react/admin/components/__tests__/DialogueHistory.test.d.ts.map +0 -1
  48. package/dist/react/admin/components/__tests__/EditableFields.test.d.ts +0 -2
  49. package/dist/react/admin/components/__tests__/EditableFields.test.d.ts.map +0 -1
  50. package/dist/react/admin/components/__tests__/QuickActions.test.d.ts +0 -2
  51. package/dist/react/admin/components/__tests__/QuickActions.test.d.ts.map +0 -1
  52. package/dist/react/admin/components/__tests__/ScreenshotViewer.test.d.ts +0 -2
  53. package/dist/react/admin/components/__tests__/ScreenshotViewer.test.d.ts.map +0 -1
  54. package/dist/react/admin/components/__tests__/badges.test.d.ts +0 -2
  55. package/dist/react/admin/components/__tests__/badges.test.d.ts.map +0 -1
  56. package/dist/react/admin/components/__tests__/controls.test.d.ts +0 -2
  57. package/dist/react/admin/components/__tests__/controls.test.d.ts.map +0 -1
  58. package/dist/react/admin/components/__tests__/table-navigation.test.d.ts +0 -2
  59. package/dist/react/admin/components/__tests__/table-navigation.test.d.ts.map +0 -1
  60. package/dist/react/admin/components/index.d.ts +0 -13
  61. package/dist/react/admin/components/index.d.ts.map +0 -1
  62. package/dist/react/admin/hooks/useFeedbackFilters.d.ts +0 -31
  63. package/dist/react/admin/hooks/useFeedbackFilters.d.ts.map +0 -1
  64. package/dist/react/admin/hooks/useFeedbackSort.d.ts +0 -42
  65. package/dist/react/admin/hooks/useFeedbackSort.d.ts.map +0 -1
  66. /package/dist/react/admin/{components → __tests__}/FeedbackListPage.test.d.ts +0 -0
@@ -1,30 +1,12 @@
1
- import { default as React } from 'react';
2
1
  import { FeedbackDetailPageProps } from './types.js';
3
-
4
2
  /**
5
- * FeedbackDetailPage — headless single-item feedback detail component.
3
+ * FeedbackDetailPage.tsx
4
+ * Location: src/react/admin/FeedbackDetailPage.tsx
6
5
  *
7
- * Uses Inversion of Control: consumer provides data fetching and navigation
8
- * via props. The component owns loading/error state and rendering logic only.
9
- *
10
- * Renders:
11
- * - Header: title (content truncated), type badge, status badge, priority
12
- * - Metadata grid: environment, submitted date, reporter count, assignee
13
- * - Description / full content
14
- * - Dialogue history (conversation turns)
15
- * - Screenshot viewer
16
- * - Browser context
17
- * - Quick actions (status transitions, edit, back to list)
18
- *
19
- * No styling applied — consumer provides CSS via `className` prop.
20
- *
21
- * @example
22
- * <FeedbackDetailPage
23
- * feedbackId="FB-2026-07-28-abc12345"
24
- * fetchItem={(id) => api.getFeedback(id)}
25
- * onNavigate={(path) => router.push(path)}
26
- * currentUser={{ userId: 'user-1', name: 'Alice' }}
27
- * />
6
+ * Admin detail page for viewing a single feedback item.
7
+ * Uses DetailPage + DetailSection + DetailRow from anton-bakker-tailwind-components.
28
8
  */
29
- export declare function FeedbackDetailPage({ feedbackId, fetchItem, onNavigate, currentUser, className, generateScreenshotUrl, }: FeedbackDetailPageProps): React.JSX.Element;
9
+ import * as React from 'react';
10
+ declare const FeedbackDetailPage: React.ForwardRefExoticComponent<FeedbackDetailPageProps & React.RefAttributes<HTMLDivElement>>;
11
+ export { FeedbackDetailPage };
30
12
  //# sourceMappingURL=FeedbackDetailPage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FeedbackDetailPage.d.ts","sourceRoot":"","sources":["../../../src/react/admin/FeedbackDetailPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAQ1D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,UAAU,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,SAAS,EACT,qBAAqB,GACtB,EAAE,uBAAuB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAiP7C"}
1
+ {"version":3,"file":"FeedbackDetailPage.d.ts","sourceRoot":"","sources":["../../../src/react/admin/FeedbackDetailPage.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAG1D,QAAA,MAAM,kBAAkB,gGAoGvB,CAAC;AAGF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { FeedbackStatus, FeedbackType } from '../../core/types.js';
2
+ import { FeedbackListPageProps } from './types.js';
3
+ /**
4
+ * FeedbackListPage.tsx
5
+ * Location: src/react/admin/FeedbackListPage.tsx
6
+ *
7
+ * Admin list page for browsing and filtering feedback items.
8
+ * Thin wrapper around ListPage from anton-bakker-tailwind-components
9
+ * for visual consistency with sagrosoft20.
10
+ */
11
+ import * as React from 'react';
12
+ declare function StatusBadge({ status }: {
13
+ status: FeedbackStatus;
14
+ }): React.JSX.Element;
15
+ declare function TypeBadge({ type }: {
16
+ type: FeedbackType;
17
+ }): React.JSX.Element;
18
+ declare const FeedbackListPage: React.ForwardRefExoticComponent<FeedbackListPageProps & React.RefAttributes<HTMLDivElement>>;
19
+ export { FeedbackListPage, StatusBadge, TypeBadge };
20
+ //# sourceMappingURL=FeedbackListPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeedbackListPage.d.ts","sourceRoot":"","sources":["../../../src/react/admin/FeedbackListPage.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAsB,cAAc,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC5F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAiBxD,iBAAS,WAAW,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,cAAc,CAAA;CAAE,qBAE1D;AAED,iBAAS,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,qBAElD;AAED,QAAA,MAAM,gBAAgB,8FA0FrB,CAAC;AAGF,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC"}
@@ -1,34 +1,12 @@
1
- import { default as React } from 'react';
2
- import { StoredFeedbackItem } from '../../core/types.js';
3
-
4
- export interface FeedbackUpdatePageProps {
5
- /** The ID of the feedback item to edit */
6
- feedbackId: string;
7
- /** Fetches the item by ID; result populates the form */
8
- fetchItem: (id: string) => Promise<StoredFeedbackItem>;
9
- /** Persists the changed fields; receives only the diff-patch */
10
- updateItem: (id: string, patch: Partial<StoredFeedbackItem>) => Promise<void>;
11
- /** Called to navigate (back to detail, cancel, after save) */
12
- onNavigate: (path: string) => void;
13
- /** Optional current user for "Assign to me" and correction tracking */
14
- currentUser?: {
15
- userId: string;
16
- name?: string;
17
- };
18
- /** Optional CSS class on the root element */
19
- className?: string;
20
- }
1
+ import { FeedbackUpdatePageProps } from './types.js';
21
2
  /**
22
- * FeedbackUpdatePage — edit the mutable fields of a feedback item.
3
+ * FeedbackUpdatePage.tsx
4
+ * Location: src/react/admin/FeedbackUpdatePage.tsx
23
5
  *
24
- * @example
25
- * <FeedbackUpdatePage
26
- * feedbackId="FB-2026-07-28-abc12345"
27
- * fetchItem={api.getItem}
28
- * updateItem={api.updateItem}
29
- * onNavigate={navigate}
30
- * currentUser={{ userId: 'user-123' }}
31
- * />
6
+ * Admin update page for editing mutable fields of a feedback item.
7
+ * Uses UpdatePage + EnumField + TextField + TextareaField from anton-bakker-tailwind-components.
32
8
  */
33
- export declare function FeedbackUpdatePage({ feedbackId, fetchItem, updateItem, onNavigate, currentUser, className, }: FeedbackUpdatePageProps): React.JSX.Element;
9
+ import * as React from 'react';
10
+ declare const FeedbackUpdatePage: React.ForwardRefExoticComponent<FeedbackUpdatePageProps & React.RefAttributes<HTMLDivElement>>;
11
+ export { FeedbackUpdatePage };
34
12
  //# sourceMappingURL=FeedbackUpdatePage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FeedbackUpdatePage.d.ts","sourceRoot":"","sources":["../../../src/react/admin/FeedbackUpdatePage.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAA8B,MAAM,OAAO,CAAC;AACnD,OAAO,KAAK,EACV,kBAAkB,EAMnB,MAAM,qBAAqB,CAAC;AAQ7B,MAAM,WAAW,uBAAuB;IACtC,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACvD,gEAAgE;IAChE,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,kBAAkB,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,8DAA8D;IAC9D,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,uEAAuE;IACvE,WAAW,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,EACV,WAAW,EACX,SAAS,GACV,EAAE,uBAAuB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAqQ7C"}
1
+ {"version":3,"file":"FeedbackUpdatePage.d.ts","sourceRoot":"","sources":["../../../src/react/admin/FeedbackUpdatePage.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAiC1D,QAAA,MAAM,kBAAkB,gGAiMvB,CAAC;AAGF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeedbackListPage.test.d.ts","sourceRoot":"","sources":["../../../../src/react/admin/__tests__/FeedbackListPage.test.tsx"],"names":[],"mappings":""}
@@ -1,6 +1,7 @@
1
- export { FeedbackListPage } from './components/FeedbackListPage.js';
1
+ export { FeedbackListPage, StatusBadge, TypeBadge } from './FeedbackListPage.js';
2
2
  export { FeedbackDetailPage } from './FeedbackDetailPage.js';
3
3
  export { FeedbackUpdatePage } from './FeedbackUpdatePage.js';
4
- export type { AdminPageProps, FeedbackListPageProps, FeedbackDetailPageProps, FeedbackUpdatePageProps, AdminFilterState, AdminSortState, } from './types.js';
4
+ export { useStatusTransition } from './hooks/useStatusTransition.js';
5
+ export type { AdminPageProps, FeedbackListPageProps, FeedbackDetailPageProps, FeedbackUpdatePageProps, } from './types.js';
5
6
  export type { StoredFeedbackItem, FeedbackStatus, FeedbackType, FeedbackScope, FeedbackSize, FeedbackEnvironment, Reporter, DialogueEntry, CorrectionEntry, FeedbackContext, } from '../../core/types.js';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/admin/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,QAAQ,EACR,aAAa,EACb,eAAe,EACf,eAAe,GAChB,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/admin/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAGrE,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,YAAY,CAAC;AAGpB,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,QAAQ,EACR,aAAa,EACb,eAAe,EACf,eAAe,GAChB,MAAM,qBAAqB,CAAC"}