@shipeasy/devtools-core 1.0.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 (55) hide show
  1. package/LICENSE +40 -0
  2. package/README.md +19 -0
  3. package/dist/api.d.mts +143 -0
  4. package/dist/api.d.ts +143 -0
  5. package/dist/api.js +10 -0
  6. package/dist/api.mjs +10 -0
  7. package/dist/auth.d.mts +57 -0
  8. package/dist/auth.d.ts +57 -0
  9. package/dist/auth.js +12 -0
  10. package/dist/auth.mjs +12 -0
  11. package/dist/chunk-2B75JLTX.js +25 -0
  12. package/dist/chunk-5VQLXGNR.mjs +101 -0
  13. package/dist/chunk-6SU5REDK.mjs +2848 -0
  14. package/dist/chunk-7NO55TFC.mjs +25 -0
  15. package/dist/chunk-GUTBZI2O.js +2848 -0
  16. package/dist/chunk-I2KLQ2HA.js +22 -0
  17. package/dist/chunk-KPO3R7ND.js +28 -0
  18. package/dist/chunk-LCRTLHGL.js +101 -0
  19. package/dist/chunk-LZDNBMH6.mjs +1394 -0
  20. package/dist/chunk-MK56AKZR.js +178 -0
  21. package/dist/chunk-RANNOC72.js +72 -0
  22. package/dist/chunk-RH6X24HG.mjs +28 -0
  23. package/dist/chunk-U5DDQYSF.mjs +22 -0
  24. package/dist/chunk-VHYOR3XA.mjs +178 -0
  25. package/dist/chunk-WP2TWHG3.mjs +72 -0
  26. package/dist/chunk-YQHCUZGP.js +1394 -0
  27. package/dist/feedback-state.d.mts +29 -0
  28. package/dist/feedback-state.d.ts +29 -0
  29. package/dist/feedback-state.js +9 -0
  30. package/dist/feedback-state.mjs +9 -0
  31. package/dist/forms.d.mts +95 -0
  32. package/dist/forms.d.ts +95 -0
  33. package/dist/forms.js +21 -0
  34. package/dist/forms.mjs +21 -0
  35. package/dist/gate-flow.d.mts +41 -0
  36. package/dist/gate-flow.d.ts +41 -0
  37. package/dist/gate-flow.js +17 -0
  38. package/dist/gate-flow.mjs +17 -0
  39. package/dist/index.d.mts +10 -0
  40. package/dist/index.d.ts +10 -0
  41. package/dist/index.js +86 -0
  42. package/dist/index.mjs +86 -0
  43. package/dist/public-report.d.mts +56 -0
  44. package/dist/public-report.d.ts +56 -0
  45. package/dist/public-report.js +12 -0
  46. package/dist/public-report.mjs +12 -0
  47. package/dist/self-report.d.mts +25 -0
  48. package/dist/self-report.d.ts +25 -0
  49. package/dist/self-report.js +73 -0
  50. package/dist/self-report.mjs +73 -0
  51. package/dist/types-D0sroUDD.d.mts +278 -0
  52. package/dist/types-D0sroUDD.d.ts +278 -0
  53. package/dist/zod.gen-DTKpgw-T.d.mts +64 -0
  54. package/dist/zod.gen-DTKpgw-T.d.ts +64 -0
  55. package/package.json +58 -0
@@ -0,0 +1,29 @@
1
+ import { i as FeedbackConnectorData } from './types-D0sroUDD.mjs';
2
+
3
+ type FeedbackAgentState =
4
+ /** The linked PR merged — the fix landed. */
5
+ "pr_landed"
6
+ /** The AI ran and posted a question back; waiting on a human reply. */
7
+ | "question"
8
+ /** The AI ran and opened a PR that's ready for review. */
9
+ | "pr_ready";
10
+ interface FeedbackAgentInfo {
11
+ state: FeedbackAgentState;
12
+ /** The linked PR, when the state is PR-related (for the row's PR link). */
13
+ pr?: {
14
+ number: number;
15
+ url: string;
16
+ };
17
+ }
18
+ /**
19
+ * The item's AI/PR state, or null when the AI hasn't produced a signal yet.
20
+ * Precedence: a landed PR wins (terminal), then an open question, then a
21
+ * ready-for-review PR.
22
+ */
23
+ declare function feedbackAgentInfo(item: {
24
+ connectorData?: FeedbackConnectorData | null;
25
+ }): FeedbackAgentInfo | null;
26
+ /** Short row-badge label per state. */
27
+ declare const FEEDBACK_AGENT_LABEL: Record<FeedbackAgentState, string>;
28
+
29
+ export { FEEDBACK_AGENT_LABEL, type FeedbackAgentInfo, type FeedbackAgentState, feedbackAgentInfo };
@@ -0,0 +1,29 @@
1
+ import { i as FeedbackConnectorData } from './types-D0sroUDD.js';
2
+
3
+ type FeedbackAgentState =
4
+ /** The linked PR merged — the fix landed. */
5
+ "pr_landed"
6
+ /** The AI ran and posted a question back; waiting on a human reply. */
7
+ | "question"
8
+ /** The AI ran and opened a PR that's ready for review. */
9
+ | "pr_ready";
10
+ interface FeedbackAgentInfo {
11
+ state: FeedbackAgentState;
12
+ /** The linked PR, when the state is PR-related (for the row's PR link). */
13
+ pr?: {
14
+ number: number;
15
+ url: string;
16
+ };
17
+ }
18
+ /**
19
+ * The item's AI/PR state, or null when the AI hasn't produced a signal yet.
20
+ * Precedence: a landed PR wins (terminal), then an open question, then a
21
+ * ready-for-review PR.
22
+ */
23
+ declare function feedbackAgentInfo(item: {
24
+ connectorData?: FeedbackConnectorData | null;
25
+ }): FeedbackAgentInfo | null;
26
+ /** Short row-badge label per state. */
27
+ declare const FEEDBACK_AGENT_LABEL: Record<FeedbackAgentState, string>;
28
+
29
+ export { FEEDBACK_AGENT_LABEL, type FeedbackAgentInfo, type FeedbackAgentState, feedbackAgentInfo };
@@ -0,0 +1,9 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+ var _chunk2B75JLTXjs = require('./chunk-2B75JLTX.js');
5
+ require('./chunk-I2KLQ2HA.js');
6
+
7
+
8
+
9
+ exports.FEEDBACK_AGENT_LABEL = _chunk2B75JLTXjs.FEEDBACK_AGENT_LABEL; exports.feedbackAgentInfo = _chunk2B75JLTXjs.feedbackAgentInfo;
@@ -0,0 +1,9 @@
1
+ import {
2
+ FEEDBACK_AGENT_LABEL,
3
+ feedbackAgentInfo
4
+ } from "./chunk-7NO55TFC.mjs";
5
+ import "./chunk-U5DDQYSF.mjs";
6
+ export {
7
+ FEEDBACK_AGENT_LABEL,
8
+ feedbackAgentInfo
9
+ };
@@ -0,0 +1,95 @@
1
+ import { z } from 'zod';
2
+ import { C as CreateBugRequestInput, a as CreateFeatureRequestRequestInput } from './zod.gen-DTKpgw-T.mjs';
3
+ export { z as zCreateBugRequest, b as zCreateFeatureRequestRequest } from './zod.gen-DTKpgw-T.mjs';
4
+ import { PublicBugInput, PublicFeatureInput } from './public-report.mjs';
5
+
6
+ /** The editable bug-form fields (the `type` discriminator is injected at
7
+ * submit time; auto-captured context is layered on separately). */
8
+ declare const bugFormSchema: z.ZodObject<{
9
+ title: z.ZodString;
10
+ priority: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
11
+ nice_to_have: "nice_to_have";
12
+ medium: "medium";
13
+ high: "high";
14
+ critical: "critical";
15
+ }>>>;
16
+ pageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
17
+ userAgent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
18
+ viewport: z.ZodOptional<z.ZodNullable<z.ZodString>>;
19
+ reporterEmail: z.ZodOptional<z.ZodNullable<z.ZodEmail>>;
20
+ stepsToReproduce: z.ZodDefault<z.ZodOptional<z.ZodString>>;
21
+ actualResult: z.ZodDefault<z.ZodOptional<z.ZodString>>;
22
+ expectedResult: z.ZodDefault<z.ZodOptional<z.ZodString>>;
23
+ context: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
24
+ notify: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodObject<{
25
+ slackChannel: z.ZodOptional<z.ZodNullable<z.ZodObject<{
26
+ id: z.ZodString;
27
+ name: z.ZodString;
28
+ }, z.core.$strip>>>;
29
+ email: z.ZodOptional<z.ZodNullable<z.ZodEmail>>;
30
+ }, z.core.$strip>>>>;
31
+ }, z.core.$strip>;
32
+ type BugFormValues = Omit<CreateBugRequestInput, "type">;
33
+ /** Pre-parse shape (defaults not yet applied) — what a form editor holds. */
34
+ type BugFormInput = z.input<typeof bugFormSchema>;
35
+ /** The editable feature-request-form fields. */
36
+ declare const featureFormSchema: z.ZodObject<{
37
+ description: z.ZodDefault<z.ZodOptional<z.ZodString>>;
38
+ title: z.ZodString;
39
+ priority: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
40
+ nice_to_have: "nice_to_have";
41
+ medium: "medium";
42
+ high: "high";
43
+ critical: "critical";
44
+ }>>>;
45
+ pageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
46
+ userAgent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
47
+ reporterEmail: z.ZodOptional<z.ZodNullable<z.ZodEmail>>;
48
+ useCase: z.ZodDefault<z.ZodOptional<z.ZodString>>;
49
+ context: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
50
+ notify: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodObject<{
51
+ slackChannel: z.ZodOptional<z.ZodNullable<z.ZodObject<{
52
+ id: z.ZodString;
53
+ name: z.ZodString;
54
+ }, z.core.$strip>>>;
55
+ email: z.ZodOptional<z.ZodNullable<z.ZodEmail>>;
56
+ }, z.core.$strip>>>>;
57
+ }, z.core.$strip>;
58
+ type FeatureFormValues = Omit<CreateFeatureRequestRequestInput, "type">;
59
+ /** Pre-parse shape (defaults not yet applied) — what a form editor holds. */
60
+ type FeatureFormInput = z.input<typeof featureFormSchema>;
61
+ /** Field-keyed validation errors (first issue per field), ready for inline
62
+ * display under each input. */
63
+ type FormErrors<T> = Partial<Record<keyof T & string, string>>;
64
+ /** Validate bug-form values. Returns `{ ok: true, value }` with parsed/defaulted
65
+ * values, or `{ ok: false, errors }` keyed by field for inline display. */
66
+ declare function validateBugForm(values: unknown): {
67
+ ok: true;
68
+ value: BugFormValues;
69
+ } | {
70
+ ok: false;
71
+ errors: FormErrors<BugFormValues>;
72
+ };
73
+ /** Validate feature-request-form values (same contract as {@link validateBugForm}). */
74
+ declare function validateFeatureForm(values: unknown): {
75
+ ok: true;
76
+ value: FeatureFormValues;
77
+ } | {
78
+ ok: false;
79
+ errors: FormErrors<FeatureFormValues>;
80
+ };
81
+ /** Project validated bug-form values onto the public `/cli/report` body shape
82
+ * (the public endpoint takes no attachments/priority/viewport; steps map to
83
+ * `description`, actual result maps to `error`). */
84
+ declare function bugFormToPublicInput(value: BugFormValues, extra?: {
85
+ step?: string;
86
+ context?: Record<string, unknown>;
87
+ }): PublicBugInput;
88
+ /** Project validated feature-form values onto the public `/cli/report` body
89
+ * shape (`type: "feature"` — no priority/notify on the public path). */
90
+ declare function featureFormToPublicInput(value: FeatureFormValues, extra?: {
91
+ step?: string;
92
+ context?: Record<string, unknown>;
93
+ }): PublicFeatureInput;
94
+
95
+ export { type BugFormInput, type BugFormValues, CreateBugRequestInput, CreateFeatureRequestRequestInput, type FeatureFormInput, type FeatureFormValues, type FormErrors, bugFormSchema, bugFormToPublicInput, featureFormSchema, featureFormToPublicInput, validateBugForm, validateFeatureForm };
@@ -0,0 +1,95 @@
1
+ import { z } from 'zod';
2
+ import { C as CreateBugRequestInput, a as CreateFeatureRequestRequestInput } from './zod.gen-DTKpgw-T.js';
3
+ export { z as zCreateBugRequest, b as zCreateFeatureRequestRequest } from './zod.gen-DTKpgw-T.js';
4
+ import { PublicBugInput, PublicFeatureInput } from './public-report.js';
5
+
6
+ /** The editable bug-form fields (the `type` discriminator is injected at
7
+ * submit time; auto-captured context is layered on separately). */
8
+ declare const bugFormSchema: z.ZodObject<{
9
+ title: z.ZodString;
10
+ priority: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
11
+ nice_to_have: "nice_to_have";
12
+ medium: "medium";
13
+ high: "high";
14
+ critical: "critical";
15
+ }>>>;
16
+ pageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
17
+ userAgent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
18
+ viewport: z.ZodOptional<z.ZodNullable<z.ZodString>>;
19
+ reporterEmail: z.ZodOptional<z.ZodNullable<z.ZodEmail>>;
20
+ stepsToReproduce: z.ZodDefault<z.ZodOptional<z.ZodString>>;
21
+ actualResult: z.ZodDefault<z.ZodOptional<z.ZodString>>;
22
+ expectedResult: z.ZodDefault<z.ZodOptional<z.ZodString>>;
23
+ context: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
24
+ notify: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodObject<{
25
+ slackChannel: z.ZodOptional<z.ZodNullable<z.ZodObject<{
26
+ id: z.ZodString;
27
+ name: z.ZodString;
28
+ }, z.core.$strip>>>;
29
+ email: z.ZodOptional<z.ZodNullable<z.ZodEmail>>;
30
+ }, z.core.$strip>>>>;
31
+ }, z.core.$strip>;
32
+ type BugFormValues = Omit<CreateBugRequestInput, "type">;
33
+ /** Pre-parse shape (defaults not yet applied) — what a form editor holds. */
34
+ type BugFormInput = z.input<typeof bugFormSchema>;
35
+ /** The editable feature-request-form fields. */
36
+ declare const featureFormSchema: z.ZodObject<{
37
+ description: z.ZodDefault<z.ZodOptional<z.ZodString>>;
38
+ title: z.ZodString;
39
+ priority: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
40
+ nice_to_have: "nice_to_have";
41
+ medium: "medium";
42
+ high: "high";
43
+ critical: "critical";
44
+ }>>>;
45
+ pageUrl: z.ZodOptional<z.ZodNullable<z.ZodURL>>;
46
+ userAgent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
47
+ reporterEmail: z.ZodOptional<z.ZodNullable<z.ZodEmail>>;
48
+ useCase: z.ZodDefault<z.ZodOptional<z.ZodString>>;
49
+ context: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
50
+ notify: z.ZodOptional<z.ZodNullable<z.ZodNullable<z.ZodObject<{
51
+ slackChannel: z.ZodOptional<z.ZodNullable<z.ZodObject<{
52
+ id: z.ZodString;
53
+ name: z.ZodString;
54
+ }, z.core.$strip>>>;
55
+ email: z.ZodOptional<z.ZodNullable<z.ZodEmail>>;
56
+ }, z.core.$strip>>>>;
57
+ }, z.core.$strip>;
58
+ type FeatureFormValues = Omit<CreateFeatureRequestRequestInput, "type">;
59
+ /** Pre-parse shape (defaults not yet applied) — what a form editor holds. */
60
+ type FeatureFormInput = z.input<typeof featureFormSchema>;
61
+ /** Field-keyed validation errors (first issue per field), ready for inline
62
+ * display under each input. */
63
+ type FormErrors<T> = Partial<Record<keyof T & string, string>>;
64
+ /** Validate bug-form values. Returns `{ ok: true, value }` with parsed/defaulted
65
+ * values, or `{ ok: false, errors }` keyed by field for inline display. */
66
+ declare function validateBugForm(values: unknown): {
67
+ ok: true;
68
+ value: BugFormValues;
69
+ } | {
70
+ ok: false;
71
+ errors: FormErrors<BugFormValues>;
72
+ };
73
+ /** Validate feature-request-form values (same contract as {@link validateBugForm}). */
74
+ declare function validateFeatureForm(values: unknown): {
75
+ ok: true;
76
+ value: FeatureFormValues;
77
+ } | {
78
+ ok: false;
79
+ errors: FormErrors<FeatureFormValues>;
80
+ };
81
+ /** Project validated bug-form values onto the public `/cli/report` body shape
82
+ * (the public endpoint takes no attachments/priority/viewport; steps map to
83
+ * `description`, actual result maps to `error`). */
84
+ declare function bugFormToPublicInput(value: BugFormValues, extra?: {
85
+ step?: string;
86
+ context?: Record<string, unknown>;
87
+ }): PublicBugInput;
88
+ /** Project validated feature-form values onto the public `/cli/report` body
89
+ * shape (`type: "feature"` — no priority/notify on the public path). */
90
+ declare function featureFormToPublicInput(value: FeatureFormValues, extra?: {
91
+ step?: string;
92
+ context?: Record<string, unknown>;
93
+ }): PublicFeatureInput;
94
+
95
+ export { type BugFormInput, type BugFormValues, CreateBugRequestInput, CreateFeatureRequestRequestInput, type FeatureFormInput, type FeatureFormValues, type FormErrors, bugFormSchema, bugFormToPublicInput, featureFormSchema, featureFormToPublicInput, validateBugForm, validateFeatureForm };
package/dist/forms.js ADDED
@@ -0,0 +1,21 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+ var _chunkGUTBZI2Ojs = require('./chunk-GUTBZI2O.js');
11
+ require('./chunk-I2KLQ2HA.js');
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+
21
+ exports.bugFormSchema = _chunkGUTBZI2Ojs.bugFormSchema; exports.bugFormToPublicInput = _chunkGUTBZI2Ojs.bugFormToPublicInput; exports.featureFormSchema = _chunkGUTBZI2Ojs.featureFormSchema; exports.featureFormToPublicInput = _chunkGUTBZI2Ojs.featureFormToPublicInput; exports.validateBugForm = _chunkGUTBZI2Ojs.validateBugForm; exports.validateFeatureForm = _chunkGUTBZI2Ojs.validateFeatureForm; exports.zCreateBugRequest = _chunkGUTBZI2Ojs.zCreateBugRequest; exports.zCreateFeatureRequestRequest = _chunkGUTBZI2Ojs.zCreateFeatureRequestRequest;
package/dist/forms.mjs ADDED
@@ -0,0 +1,21 @@
1
+ import {
2
+ bugFormSchema,
3
+ bugFormToPublicInput,
4
+ featureFormSchema,
5
+ featureFormToPublicInput,
6
+ validateBugForm,
7
+ validateFeatureForm,
8
+ zCreateBugRequest,
9
+ zCreateFeatureRequestRequest
10
+ } from "./chunk-6SU5REDK.mjs";
11
+ import "./chunk-U5DDQYSF.mjs";
12
+ export {
13
+ bugFormSchema,
14
+ bugFormToPublicInput,
15
+ featureFormSchema,
16
+ featureFormToPublicInput,
17
+ validateBugForm,
18
+ validateFeatureForm,
19
+ zCreateBugRequest,
20
+ zCreateFeatureRequestRequest
21
+ };
@@ -0,0 +1,41 @@
1
+ import { j as GateRule, G as GateRecord } from './types-D0sroUDD.mjs';
2
+
3
+ type StepSource = "user" | "auto" | "whitelist" | "public";
4
+ /** Whether the current user satisfies a step's predicate. `n/a` = not an
5
+ * attribute condition (rollout / public floor — outcome comes from the edge). */
6
+ type StepMatch = "pass" | "fail" | "n/a";
7
+ interface GateFlowStep {
8
+ key: string;
9
+ type: "condition" | "rollout";
10
+ title: string;
11
+ rules: GateRule[];
12
+ /** all rules must match ("all", default) vs any ("any"). */
13
+ pass: "all" | "any";
14
+ /** 0–10000 basis points. Conditions with no explicit ramp admit everyone. */
15
+ rolloutPct: number;
16
+ bucketBy: string;
17
+ source: StepSource;
18
+ /** The always-last locked public floor. */
19
+ isPublicFloor: boolean;
20
+ /** Listed identities when the step is a whitelist. */
21
+ whitelist: string[] | null;
22
+ }
23
+ /** Operator → human phrasing (mirrors OP_LABELS in the gate editor). */
24
+ declare const OP_LABELS: Record<string, string>;
25
+ declare function fmtValue(value: unknown): string;
26
+ /** Normalize a gate (stacked or legacy flat rules + rolloutPct) into an ordered
27
+ * list of flow steps — checked top-to-bottom, first match returns the gate ON. */
28
+ declare function buildGateFlow(gate: GateRecord): GateFlowStep[];
29
+ /** One-line plain-text summary of a step's predicate. */
30
+ declare function ruleSummary(step: GateFlowStep): string;
31
+ /** Evaluate one predicate against a user attribute bag. Missing attribute →
32
+ * false for positive ops, true for negative (`neq`/`not_in`), matching the
33
+ * usual "absent means not-in-set" semantics. */
34
+ declare function evalRule(rule: GateRule, user: Record<string, unknown>): boolean;
35
+ /** Whether the current user satisfies a step's attribute predicate. Rollout /
36
+ * public / whitelist steps return `n/a` (no local attribute decision —
37
+ * whitelist membership and bucketing are the edge's call). `pass`/`any` mode
38
+ * comes from the raw stack entry, defaulting to all-must-match. */
39
+ declare function evalStepMatch(step: GateFlowStep, user: Record<string, unknown> | null, passOverride?: "all" | "any"): StepMatch;
40
+
41
+ export { type GateFlowStep, OP_LABELS, type StepMatch, type StepSource, buildGateFlow, evalRule, evalStepMatch, fmtValue, ruleSummary };
@@ -0,0 +1,41 @@
1
+ import { j as GateRule, G as GateRecord } from './types-D0sroUDD.js';
2
+
3
+ type StepSource = "user" | "auto" | "whitelist" | "public";
4
+ /** Whether the current user satisfies a step's predicate. `n/a` = not an
5
+ * attribute condition (rollout / public floor — outcome comes from the edge). */
6
+ type StepMatch = "pass" | "fail" | "n/a";
7
+ interface GateFlowStep {
8
+ key: string;
9
+ type: "condition" | "rollout";
10
+ title: string;
11
+ rules: GateRule[];
12
+ /** all rules must match ("all", default) vs any ("any"). */
13
+ pass: "all" | "any";
14
+ /** 0–10000 basis points. Conditions with no explicit ramp admit everyone. */
15
+ rolloutPct: number;
16
+ bucketBy: string;
17
+ source: StepSource;
18
+ /** The always-last locked public floor. */
19
+ isPublicFloor: boolean;
20
+ /** Listed identities when the step is a whitelist. */
21
+ whitelist: string[] | null;
22
+ }
23
+ /** Operator → human phrasing (mirrors OP_LABELS in the gate editor). */
24
+ declare const OP_LABELS: Record<string, string>;
25
+ declare function fmtValue(value: unknown): string;
26
+ /** Normalize a gate (stacked or legacy flat rules + rolloutPct) into an ordered
27
+ * list of flow steps — checked top-to-bottom, first match returns the gate ON. */
28
+ declare function buildGateFlow(gate: GateRecord): GateFlowStep[];
29
+ /** One-line plain-text summary of a step's predicate. */
30
+ declare function ruleSummary(step: GateFlowStep): string;
31
+ /** Evaluate one predicate against a user attribute bag. Missing attribute →
32
+ * false for positive ops, true for negative (`neq`/`not_in`), matching the
33
+ * usual "absent means not-in-set" semantics. */
34
+ declare function evalRule(rule: GateRule, user: Record<string, unknown>): boolean;
35
+ /** Whether the current user satisfies a step's attribute predicate. Rollout /
36
+ * public / whitelist steps return `n/a` (no local attribute decision —
37
+ * whitelist membership and bucketing are the edge's call). `pass`/`any` mode
38
+ * comes from the raw stack entry, defaulting to all-must-match. */
39
+ declare function evalStepMatch(step: GateFlowStep, user: Record<string, unknown> | null, passOverride?: "all" | "any"): StepMatch;
40
+
41
+ export { type GateFlowStep, OP_LABELS, type StepMatch, type StepSource, buildGateFlow, evalRule, evalStepMatch, fmtValue, ruleSummary };
@@ -0,0 +1,17 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+
8
+ var _chunkMK56AKZRjs = require('./chunk-MK56AKZR.js');
9
+ require('./chunk-I2KLQ2HA.js');
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+ exports.OP_LABELS = _chunkMK56AKZRjs.OP_LABELS; exports.buildGateFlow = _chunkMK56AKZRjs.buildGateFlow; exports.evalRule = _chunkMK56AKZRjs.evalRule; exports.evalStepMatch = _chunkMK56AKZRjs.evalStepMatch; exports.fmtValue = _chunkMK56AKZRjs.fmtValue; exports.ruleSummary = _chunkMK56AKZRjs.ruleSummary;
@@ -0,0 +1,17 @@
1
+ import {
2
+ OP_LABELS,
3
+ buildGateFlow,
4
+ evalRule,
5
+ evalStepMatch,
6
+ fmtValue,
7
+ ruleSummary
8
+ } from "./chunk-VHYOR3XA.mjs";
9
+ import "./chunk-U5DDQYSF.mjs";
10
+ export {
11
+ OP_LABELS,
12
+ buildGateFlow,
13
+ evalRule,
14
+ evalStepMatch,
15
+ fmtValue,
16
+ ruleSummary
17
+ };
@@ -0,0 +1,10 @@
1
+ export { A as AttachmentRecord, a as AttachmentUploadResult, B as BugDetail, b as BugPriority, c as BugRecord, d as BugStatus, C as ConfigRecord, D as DEFAULT_ADMIN_BASE_URL, e as DEFAULT_EDGE_BASE_URL, f as DevtoolsSession, g as DraftRecord, E as ExperimentRecord, F as FeatureRequestDetail, h as FeatureRequestRecord, i as FeedbackConnectorData, G as GateRecord, j as GateRule, k as GateStackEntry, K as KeyRecord, O as OpsItemDetail, l as OpsItemType, P as PERMISSIVE_CONFIG_SCHEMA, m as ProfileRecord, n as ProjectModules, o as ProjectRecord, U as UniverseRecord } from './types-D0sroUDD.mjs';
2
+ export { AuthError, DevtoolsClient, DevtoolsClientOptions } from './api.mjs';
3
+ export { CapabilitiesBridge, DevtoolsCapabilities, DevtoolsEngineBridge, DevtoolsOverridesSnapshot, DevtoolsStateEvent, ENGINE_BRIDGE_KEY, readDevtoolsCapabilities, readEngineBridge, watchDevtoolsCapabilities, watchEngineBridge } from '@shipeasy/sdk/devtools-contract';
4
+ export { AuthSessionResult, DeviceAuthAdapters, DeviceAuthOptions, LoginCancelled, parseDeepLinkQuery, startDeviceAuth } from './auth.mjs';
5
+ export { PublicBugInput, PublicBugResult, PublicFeatureInput, PublicTicketsDisabled, SubmitPublicBugOptions, submitPublicBug, submitPublicFeature } from './public-report.mjs';
6
+ export { BugFormValues, FeatureFormValues, FormErrors, bugFormSchema, bugFormToPublicInput, featureFormSchema, featureFormToPublicInput, validateBugForm, validateFeatureForm } from './forms.mjs';
7
+ export { GateFlowStep, OP_LABELS, StepMatch, StepSource, buildGateFlow, evalRule, evalStepMatch, fmtValue, ruleSummary } from './gate-flow.mjs';
8
+ export { FEEDBACK_AGENT_LABEL, FeedbackAgentInfo, FeedbackAgentState, feedbackAgentInfo } from './feedback-state.mjs';
9
+ export { C as CreateBugRequestInput, a as CreateFeatureRequestRequestInput, z as zCreateBugRequest, b as zCreateFeatureRequestRequest } from './zod.gen-DTKpgw-T.mjs';
10
+ import 'zod';
@@ -0,0 +1,10 @@
1
+ export { A as AttachmentRecord, a as AttachmentUploadResult, B as BugDetail, b as BugPriority, c as BugRecord, d as BugStatus, C as ConfigRecord, D as DEFAULT_ADMIN_BASE_URL, e as DEFAULT_EDGE_BASE_URL, f as DevtoolsSession, g as DraftRecord, E as ExperimentRecord, F as FeatureRequestDetail, h as FeatureRequestRecord, i as FeedbackConnectorData, G as GateRecord, j as GateRule, k as GateStackEntry, K as KeyRecord, O as OpsItemDetail, l as OpsItemType, P as PERMISSIVE_CONFIG_SCHEMA, m as ProfileRecord, n as ProjectModules, o as ProjectRecord, U as UniverseRecord } from './types-D0sroUDD.js';
2
+ export { AuthError, DevtoolsClient, DevtoolsClientOptions } from './api.js';
3
+ export { CapabilitiesBridge, DevtoolsCapabilities, DevtoolsEngineBridge, DevtoolsOverridesSnapshot, DevtoolsStateEvent, ENGINE_BRIDGE_KEY, readDevtoolsCapabilities, readEngineBridge, watchDevtoolsCapabilities, watchEngineBridge } from '@shipeasy/sdk/devtools-contract';
4
+ export { AuthSessionResult, DeviceAuthAdapters, DeviceAuthOptions, LoginCancelled, parseDeepLinkQuery, startDeviceAuth } from './auth.js';
5
+ export { PublicBugInput, PublicBugResult, PublicFeatureInput, PublicTicketsDisabled, SubmitPublicBugOptions, submitPublicBug, submitPublicFeature } from './public-report.js';
6
+ export { BugFormValues, FeatureFormValues, FormErrors, bugFormSchema, bugFormToPublicInput, featureFormSchema, featureFormToPublicInput, validateBugForm, validateFeatureForm } from './forms.js';
7
+ export { GateFlowStep, OP_LABELS, StepMatch, StepSource, buildGateFlow, evalRule, evalStepMatch, fmtValue, ruleSummary } from './gate-flow.js';
8
+ export { FEEDBACK_AGENT_LABEL, FeedbackAgentInfo, FeedbackAgentState, feedbackAgentInfo } from './feedback-state.js';
9
+ export { C as CreateBugRequestInput, a as CreateFeatureRequestRequestInput, z as zCreateBugRequest, b as zCreateFeatureRequestRequest } from './zod.gen-DTKpgw-T.js';
10
+ import 'zod';
package/dist/index.js ADDED
@@ -0,0 +1,86 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+ var _chunkYQHCUZGPjs = require('./chunk-YQHCUZGP.js');
5
+
6
+
7
+
8
+
9
+ var _chunkLCRTLHGLjs = require('./chunk-LCRTLHGL.js');
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+ var _chunkGUTBZI2Ojs = require('./chunk-GUTBZI2O.js');
20
+
21
+
22
+
23
+
24
+
25
+
26
+
27
+ var _chunkMK56AKZRjs = require('./chunk-MK56AKZR.js');
28
+
29
+
30
+
31
+ var _chunk2B75JLTXjs = require('./chunk-2B75JLTX.js');
32
+
33
+
34
+
35
+
36
+ var _chunkRANNOC72js = require('./chunk-RANNOC72.js');
37
+
38
+
39
+
40
+
41
+
42
+ var _chunkKPO3R7NDjs = require('./chunk-KPO3R7ND.js');
43
+ require('./chunk-I2KLQ2HA.js');
44
+
45
+ // src/index.ts
46
+
47
+
48
+
49
+
50
+
51
+
52
+ var _devtoolscontract = require('@shipeasy/sdk/devtools-contract');
53
+
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+
62
+
63
+
64
+
65
+
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+ exports.AuthError = _chunkYQHCUZGPjs.AuthError; exports.DEFAULT_ADMIN_BASE_URL = _chunkKPO3R7NDjs.DEFAULT_ADMIN_BASE_URL; exports.DEFAULT_EDGE_BASE_URL = _chunkKPO3R7NDjs.DEFAULT_EDGE_BASE_URL; exports.DevtoolsClient = _chunkYQHCUZGPjs.DevtoolsClient; exports.ENGINE_BRIDGE_KEY = _devtoolscontract.ENGINE_BRIDGE_KEY; exports.FEEDBACK_AGENT_LABEL = _chunk2B75JLTXjs.FEEDBACK_AGENT_LABEL; exports.LoginCancelled = _chunkLCRTLHGLjs.LoginCancelled; exports.OP_LABELS = _chunkMK56AKZRjs.OP_LABELS; exports.PERMISSIVE_CONFIG_SCHEMA = _chunkKPO3R7NDjs.PERMISSIVE_CONFIG_SCHEMA; exports.PublicTicketsDisabled = _chunkRANNOC72js.PublicTicketsDisabled; exports.bugFormSchema = _chunkGUTBZI2Ojs.bugFormSchema; exports.bugFormToPublicInput = _chunkGUTBZI2Ojs.bugFormToPublicInput; exports.buildGateFlow = _chunkMK56AKZRjs.buildGateFlow; exports.evalRule = _chunkMK56AKZRjs.evalRule; exports.evalStepMatch = _chunkMK56AKZRjs.evalStepMatch; exports.featureFormSchema = _chunkGUTBZI2Ojs.featureFormSchema; exports.featureFormToPublicInput = _chunkGUTBZI2Ojs.featureFormToPublicInput; exports.feedbackAgentInfo = _chunk2B75JLTXjs.feedbackAgentInfo; exports.fmtValue = _chunkMK56AKZRjs.fmtValue; exports.parseDeepLinkQuery = _chunkLCRTLHGLjs.parseDeepLinkQuery; exports.readDevtoolsCapabilities = _devtoolscontract.readDevtoolsCapabilities; exports.readEngineBridge = _devtoolscontract.readEngineBridge; exports.ruleSummary = _chunkMK56AKZRjs.ruleSummary; exports.startDeviceAuth = _chunkLCRTLHGLjs.startDeviceAuth; exports.submitPublicBug = _chunkRANNOC72js.submitPublicBug; exports.submitPublicFeature = _chunkRANNOC72js.submitPublicFeature; exports.validateBugForm = _chunkGUTBZI2Ojs.validateBugForm; exports.validateFeatureForm = _chunkGUTBZI2Ojs.validateFeatureForm; exports.watchDevtoolsCapabilities = _devtoolscontract.watchDevtoolsCapabilities; exports.watchEngineBridge = _devtoolscontract.watchEngineBridge; exports.zCreateBugRequest = _chunkGUTBZI2Ojs.zCreateBugRequest; exports.zCreateFeatureRequestRequest = _chunkGUTBZI2Ojs.zCreateFeatureRequestRequest;
package/dist/index.mjs ADDED
@@ -0,0 +1,86 @@
1
+ import {
2
+ AuthError,
3
+ DevtoolsClient
4
+ } from "./chunk-LZDNBMH6.mjs";
5
+ import {
6
+ LoginCancelled,
7
+ parseDeepLinkQuery,
8
+ startDeviceAuth
9
+ } from "./chunk-5VQLXGNR.mjs";
10
+ import {
11
+ bugFormSchema,
12
+ bugFormToPublicInput,
13
+ featureFormSchema,
14
+ featureFormToPublicInput,
15
+ validateBugForm,
16
+ validateFeatureForm,
17
+ zCreateBugRequest,
18
+ zCreateFeatureRequestRequest
19
+ } from "./chunk-6SU5REDK.mjs";
20
+ import {
21
+ OP_LABELS,
22
+ buildGateFlow,
23
+ evalRule,
24
+ evalStepMatch,
25
+ fmtValue,
26
+ ruleSummary
27
+ } from "./chunk-VHYOR3XA.mjs";
28
+ import {
29
+ FEEDBACK_AGENT_LABEL,
30
+ feedbackAgentInfo
31
+ } from "./chunk-7NO55TFC.mjs";
32
+ import {
33
+ PublicTicketsDisabled,
34
+ submitPublicBug,
35
+ submitPublicFeature
36
+ } from "./chunk-WP2TWHG3.mjs";
37
+ import {
38
+ DEFAULT_ADMIN_BASE_URL,
39
+ DEFAULT_EDGE_BASE_URL,
40
+ PERMISSIVE_CONFIG_SCHEMA,
41
+ types_exports
42
+ } from "./chunk-RH6X24HG.mjs";
43
+ import "./chunk-U5DDQYSF.mjs";
44
+
45
+ // src/index.ts
46
+ import {
47
+ readDevtoolsCapabilities,
48
+ watchDevtoolsCapabilities,
49
+ ENGINE_BRIDGE_KEY,
50
+ readEngineBridge,
51
+ watchEngineBridge
52
+ } from "@shipeasy/sdk/devtools-contract";
53
+ export {
54
+ AuthError,
55
+ DEFAULT_ADMIN_BASE_URL,
56
+ DEFAULT_EDGE_BASE_URL,
57
+ DevtoolsClient,
58
+ ENGINE_BRIDGE_KEY,
59
+ FEEDBACK_AGENT_LABEL,
60
+ LoginCancelled,
61
+ OP_LABELS,
62
+ PERMISSIVE_CONFIG_SCHEMA,
63
+ PublicTicketsDisabled,
64
+ bugFormSchema,
65
+ bugFormToPublicInput,
66
+ buildGateFlow,
67
+ evalRule,
68
+ evalStepMatch,
69
+ featureFormSchema,
70
+ featureFormToPublicInput,
71
+ feedbackAgentInfo,
72
+ fmtValue,
73
+ parseDeepLinkQuery,
74
+ readDevtoolsCapabilities,
75
+ readEngineBridge,
76
+ ruleSummary,
77
+ startDeviceAuth,
78
+ submitPublicBug,
79
+ submitPublicFeature,
80
+ validateBugForm,
81
+ validateFeatureForm,
82
+ watchDevtoolsCapabilities,
83
+ watchEngineBridge,
84
+ zCreateBugRequest,
85
+ zCreateFeatureRequestRequest
86
+ };