@proletariat/cli 0.3.102 → 0.3.104
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/dist/commands/project/configure.d.ts +13 -0
- package/dist/commands/project/configure.js +149 -0
- package/dist/commands/project/configure.js.map +1 -0
- package/dist/commands/session/attach.d.ts +6 -1
- package/dist/commands/session/attach.js +82 -28
- package/dist/commands/session/attach.js.map +1 -1
- package/dist/commands/session/report.d.ts +5 -0
- package/dist/commands/session/report.js +53 -0
- package/dist/commands/session/report.js.map +1 -1
- package/dist/commands/ticket/delete.js +15 -7
- package/dist/commands/ticket/delete.js.map +1 -1
- package/dist/commands/ticket/move.js +21 -10
- package/dist/commands/ticket/move.js.map +1 -1
- package/dist/commands/ticket/update.js +18 -9
- package/dist/commands/ticket/update.js.map +1 -1
- package/dist/commands/update.js +12 -6
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/work/ship.js +39 -57
- package/dist/commands/work/ship.js.map +1 -1
- package/dist/commands/work/start.js +62 -77
- package/dist/commands/work/start.js.map +1 -1
- package/dist/lib/events/events.d.ts +2 -0
- package/dist/lib/execution/devcontainer.d.ts +1 -0
- package/dist/lib/execution/devcontainer.js +1 -0
- package/dist/lib/execution/devcontainer.js.map +1 -1
- package/dist/lib/execution/runners/docker-management.d.ts +22 -3
- package/dist/lib/execution/runners/docker-management.js +102 -14
- package/dist/lib/execution/runners/docker-management.js.map +1 -1
- package/dist/lib/execution/runners/prompt-builder.d.ts +12 -0
- package/dist/lib/execution/runners/prompt-builder.js +44 -0
- package/dist/lib/execution/runners/prompt-builder.js.map +1 -1
- package/dist/lib/orchestrate/actions.js +68 -1
- package/dist/lib/orchestrate/actions.js.map +1 -1
- package/dist/lib/orchestrate/engine.d.ts +19 -39
- package/dist/lib/orchestrate/engine.js +51 -215
- package/dist/lib/orchestrate/engine.js.map +1 -1
- package/dist/lib/orchestrate/poller.d.ts +4 -1
- package/dist/lib/orchestrate/poller.js +63 -13
- package/dist/lib/orchestrate/poller.js.map +1 -1
- package/dist/lib/orchestrate/presets.js +18 -3
- package/dist/lib/orchestrate/presets.js.map +1 -1
- package/dist/lib/orchestrate/simple-poller.js +33 -11
- package/dist/lib/orchestrate/simple-poller.js.map +1 -1
- package/dist/lib/orchestrate/types.d.ts +5 -13
- package/dist/lib/orchestrate/types.js +4 -2
- package/dist/lib/orchestrate/types.js.map +1 -1
- package/dist/lib/pmo/base-command.js +12 -2
- package/dist/lib/pmo/base-command.js.map +1 -1
- package/dist/lib/pmo/templates-builtin.d.ts +2 -0
- package/dist/lib/pmo/templates-builtin.js +13 -0
- package/dist/lib/pmo/templates-builtin.js.map +1 -1
- package/dist/lib/pr/index.d.ts +9 -0
- package/dist/lib/pr/index.js +22 -0
- package/dist/lib/pr/index.js.map +1 -1
- package/dist/lib/providers/linear-provider.d.ts +11 -12
- package/dist/lib/providers/linear-provider.js +150 -177
- package/dist/lib/providers/linear-provider.js.map +1 -1
- package/dist/lib/providers/resolver.d.ts +5 -5
- package/dist/lib/providers/resolver.js +25 -31
- package/dist/lib/providers/resolver.js.map +1 -1
- package/dist/lib/sync/engine.js +15 -6
- package/dist/lib/sync/engine.js.map +1 -1
- package/dist/lib/sync/reconciler.d.ts +11 -2
- package/dist/lib/sync/reconciler.js +30 -12
- package/dist/lib/sync/reconciler.js.map +1 -1
- package/dist/lib/update-check.d.ts +24 -0
- package/dist/lib/update-check.js +85 -0
- package/dist/lib/update-check.js.map +1 -1
- package/dist/lib/update-prompt.js +10 -5
- package/dist/lib/update-prompt.js.map +1 -1
- package/dist/lib/work-lifecycle/hooks/executor.js +2 -0
- package/dist/lib/work-lifecycle/hooks/executor.js.map +1 -1
- package/dist/lib/work-lifecycle/hooks/index.d.ts +5 -3
- package/dist/lib/work-lifecycle/hooks/index.js +3 -2
- package/dist/lib/work-lifecycle/hooks/index.js.map +1 -1
- package/dist/lib/work-lifecycle/hooks/manager.d.ts +93 -8
- package/dist/lib/work-lifecycle/hooks/manager.js +248 -20
- package/dist/lib/work-lifecycle/hooks/manager.js.map +1 -1
- package/dist/lib/work-lifecycle/hooks/storage.d.ts +1 -0
- package/dist/lib/work-lifecycle/hooks/storage.js +28 -6
- package/dist/lib/work-lifecycle/hooks/storage.js.map +1 -1
- package/dist/lib/work-lifecycle/hooks/types.d.ts +38 -1
- package/dist/lib/work-lifecycle/hooks/types.js +4 -0
- package/dist/lib/work-lifecycle/hooks/types.js.map +1 -1
- package/dist/lib/work-lifecycle/index.d.ts +2 -1
- package/dist/lib/work-lifecycle/index.js +1 -1
- package/dist/lib/work-lifecycle/index.js.map +1 -1
- package/dist/lib/work-lifecycle/settings.d.ts +42 -0
- package/dist/lib/work-lifecycle/settings.js +65 -0
- package/dist/lib/work-lifecycle/settings.js.map +1 -1
- package/dist/lib/work-lifecycle/transition.js +45 -31
- package/dist/lib/work-lifecycle/transition.js.map +1 -1
- package/oclif.manifest.json +818 -754
- package/package.json +1 -1
|
@@ -7,7 +7,8 @@
|
|
|
7
7
|
*/
|
|
8
8
|
export type { WorkEventSource, WorkStartedEvent, WorkStatusChangedEvent, WorkPRCreatedEvent, WorkCompletedEvent, } from './events.js';
|
|
9
9
|
export { WorkLifecycleAdapter, initWorkLifecycleAdapter, stopWorkLifecycleAdapter, } from './adapter.js';
|
|
10
|
-
export { initHookManager, stopHookManager, } from './hooks/index.js';
|
|
10
|
+
export { initHookManager, stopHookManager, HookManager, } from './hooks/index.js';
|
|
11
|
+
export type { HookManagerOptions } from './hooks/index.js';
|
|
11
12
|
export { handlePostExecutionTransition, type PostExecutionContext, type PostExecutionResult, } from './post-execution.js';
|
|
12
13
|
export { validateCommits, tryValidateCommits, type CommitValidationResult, } from '../execution/commit-validation.js';
|
|
13
14
|
export { WorkflowRuleEvaluator, initWorkflowRuleEvaluator, stopWorkflowRuleEvaluator, } from './rule-evaluator.js';
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* GitHub PRs, Linear issues, etc.) into these domain events.
|
|
7
7
|
*/
|
|
8
8
|
export { WorkLifecycleAdapter, initWorkLifecycleAdapter, stopWorkLifecycleAdapter, } from './adapter.js';
|
|
9
|
-
export { initHookManager, stopHookManager, } from './hooks/index.js';
|
|
9
|
+
export { initHookManager, stopHookManager, HookManager, } from './hooks/index.js';
|
|
10
10
|
export { handlePostExecutionTransition, } from './post-execution.js';
|
|
11
11
|
export { validateCommits, tryValidateCommits, } from '../execution/commit-validation.js';
|
|
12
12
|
export { WorkflowRuleEvaluator, initWorkflowRuleEvaluator, stopWorkflowRuleEvaluator, } from './rule-evaluator.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/work-lifecycle/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAUH,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,cAAc,CAAA;AAErB,OAAO,EACL,eAAe,EACf,eAAe,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/work-lifecycle/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAUH,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,cAAc,CAAA;AAErB,OAAO,EACL,eAAe,EACf,eAAe,EACf,WAAW,GACZ,MAAM,kBAAkB,CAAA;AAIzB,OAAO,EACL,6BAA6B,GAG9B,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACL,eAAe,EACf,kBAAkB,GAEnB,MAAM,mCAAmC,CAAA;AAE1C,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,6BAA6B,CAAA"}
|
|
@@ -25,8 +25,20 @@ export declare const DEFAULT_WORK_COLUMNS: {
|
|
|
25
25
|
readonly in_progress: "In Progress";
|
|
26
26
|
readonly review: "Review";
|
|
27
27
|
readonly done: "Done";
|
|
28
|
+
readonly backlog: "Backlog";
|
|
28
29
|
};
|
|
29
30
|
export type WorkColumnType = keyof typeof DEFAULT_WORK_COLUMNS;
|
|
31
|
+
/**
|
|
32
|
+
* Full workflow configuration — the resolved column names for each lifecycle stage.
|
|
33
|
+
* Read from pmo_settings with fallback to DEFAULT_WORK_COLUMNS.
|
|
34
|
+
*/
|
|
35
|
+
export interface WorkflowConfig {
|
|
36
|
+
planned: string;
|
|
37
|
+
in_progress: string;
|
|
38
|
+
review: string;
|
|
39
|
+
done: string;
|
|
40
|
+
backlog: string;
|
|
41
|
+
}
|
|
30
42
|
/**
|
|
31
43
|
* Get a work column setting from pmo_settings with fallback to default.
|
|
32
44
|
* Column matching is case-insensitive.
|
|
@@ -58,6 +70,36 @@ export declare function setWorkColumnSetting(db: DatabaseLike, columnType: WorkC
|
|
|
58
70
|
* @returns The matching column name, or null if not found
|
|
59
71
|
*/
|
|
60
72
|
export declare function findColumnByName(columnNames: string[], targetColumn: string): string | null;
|
|
73
|
+
/**
|
|
74
|
+
* Read the full workflow configuration from pmo_settings.
|
|
75
|
+
* Returns configured column names for each lifecycle stage, falling back
|
|
76
|
+
* to DEFAULT_WORK_COLUMNS for any that aren't set.
|
|
77
|
+
*
|
|
78
|
+
* @param db - Database instance
|
|
79
|
+
* @returns WorkflowConfig with resolved column names
|
|
80
|
+
*/
|
|
81
|
+
export declare function getWorkflowConfig(db: DatabaseLike): WorkflowConfig;
|
|
82
|
+
/**
|
|
83
|
+
* Save a full workflow configuration to pmo_settings.
|
|
84
|
+
*
|
|
85
|
+
* @param db - Database instance
|
|
86
|
+
* @param config - Partial workflow config — only provided keys are saved
|
|
87
|
+
*/
|
|
88
|
+
export declare function setWorkflowConfig(db: DatabaseLike, config: Partial<WorkflowConfig>): void;
|
|
89
|
+
/**
|
|
90
|
+
* Resolve a workflow target name to the configured column name.
|
|
91
|
+
*
|
|
92
|
+
* Used by the move-ticket action to translate intent-like targets
|
|
93
|
+
* (e.g. 'done', 'review') into the actual column name configured
|
|
94
|
+
* for the workspace (e.g. 'Shipped', 'QA').
|
|
95
|
+
*
|
|
96
|
+
* If the target is not a known intent, returns it unchanged.
|
|
97
|
+
*
|
|
98
|
+
* @param db - Database instance
|
|
99
|
+
* @param target - Target name from preset/action config
|
|
100
|
+
* @returns Resolved column name
|
|
101
|
+
*/
|
|
102
|
+
export declare function resolveWorkflowTarget(db: DatabaseLike, target: string): string;
|
|
61
103
|
/**
|
|
62
104
|
* Default priority scale (backwards compatible with hardcoded P0-P3).
|
|
63
105
|
*/
|
|
@@ -18,6 +18,7 @@ export const DEFAULT_WORK_COLUMNS = {
|
|
|
18
18
|
in_progress: 'In Progress',
|
|
19
19
|
review: 'Review',
|
|
20
20
|
done: 'Done',
|
|
21
|
+
backlog: 'Backlog',
|
|
21
22
|
};
|
|
22
23
|
/**
|
|
23
24
|
* Get a work column setting from pmo_settings with fallback to default.
|
|
@@ -70,6 +71,70 @@ export function findColumnByName(columnNames, targetColumn) {
|
|
|
70
71
|
targetLower.includes(col.toLowerCase()));
|
|
71
72
|
return partialMatch || null;
|
|
72
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* Read the full workflow configuration from pmo_settings.
|
|
76
|
+
* Returns configured column names for each lifecycle stage, falling back
|
|
77
|
+
* to DEFAULT_WORK_COLUMNS for any that aren't set.
|
|
78
|
+
*
|
|
79
|
+
* @param db - Database instance
|
|
80
|
+
* @returns WorkflowConfig with resolved column names
|
|
81
|
+
*/
|
|
82
|
+
export function getWorkflowConfig(db) {
|
|
83
|
+
return {
|
|
84
|
+
planned: getWorkColumnSetting(db, 'planned'),
|
|
85
|
+
in_progress: getWorkColumnSetting(db, 'in_progress'),
|
|
86
|
+
review: getWorkColumnSetting(db, 'review'),
|
|
87
|
+
done: getWorkColumnSetting(db, 'done'),
|
|
88
|
+
backlog: getWorkColumnSetting(db, 'backlog'),
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Save a full workflow configuration to pmo_settings.
|
|
93
|
+
*
|
|
94
|
+
* @param db - Database instance
|
|
95
|
+
* @param config - Partial workflow config — only provided keys are saved
|
|
96
|
+
*/
|
|
97
|
+
export function setWorkflowConfig(db, config) {
|
|
98
|
+
for (const [key, value] of Object.entries(config)) {
|
|
99
|
+
if (value !== undefined) {
|
|
100
|
+
setWorkColumnSetting(db, key, value);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Map from short target names (used in presets/actions) to WorkColumnType.
|
|
106
|
+
* Allows presets to use human-friendly names like 'done' or 'review'
|
|
107
|
+
* that resolve to the user's actual column names.
|
|
108
|
+
*/
|
|
109
|
+
const TARGET_TO_COLUMN_TYPE = {
|
|
110
|
+
'done': 'done',
|
|
111
|
+
'review': 'review',
|
|
112
|
+
'in-progress': 'in_progress',
|
|
113
|
+
'in_progress': 'in_progress',
|
|
114
|
+
'ready': 'planned',
|
|
115
|
+
'planned': 'planned',
|
|
116
|
+
'backlog': 'backlog',
|
|
117
|
+
};
|
|
118
|
+
/**
|
|
119
|
+
* Resolve a workflow target name to the configured column name.
|
|
120
|
+
*
|
|
121
|
+
* Used by the move-ticket action to translate intent-like targets
|
|
122
|
+
* (e.g. 'done', 'review') into the actual column name configured
|
|
123
|
+
* for the workspace (e.g. 'Shipped', 'QA').
|
|
124
|
+
*
|
|
125
|
+
* If the target is not a known intent, returns it unchanged.
|
|
126
|
+
*
|
|
127
|
+
* @param db - Database instance
|
|
128
|
+
* @param target - Target name from preset/action config
|
|
129
|
+
* @returns Resolved column name
|
|
130
|
+
*/
|
|
131
|
+
export function resolveWorkflowTarget(db, target) {
|
|
132
|
+
const columnType = TARGET_TO_COLUMN_TYPE[target.toLowerCase()];
|
|
133
|
+
if (columnType) {
|
|
134
|
+
return getWorkColumnSetting(db, columnType);
|
|
135
|
+
}
|
|
136
|
+
return target;
|
|
137
|
+
}
|
|
73
138
|
// =============================================================================
|
|
74
139
|
// Workspace Priority Settings
|
|
75
140
|
// =============================================================================
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/lib/work-lifecycle/settings.ts"],"names":[],"mappings":"AAAA;;GAEG;AAcH,gFAAgF;AAChF,uBAAuB;AACvB,gFAAgF;AAEhF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,aAAa;IAC1B,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/lib/work-lifecycle/settings.ts"],"names":[],"mappings":"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"}
|
|
@@ -88,49 +88,63 @@ export async function moveTicketByIntent(opts) {
|
|
|
88
88
|
if (previousColumn && previousColumn.toLowerCase() === targetColumn.toLowerCase()) {
|
|
89
89
|
return { moved: false, targetColumn, previousColumn, message: 'Already in target state' };
|
|
90
90
|
}
|
|
91
|
-
//
|
|
92
|
-
let
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
91
|
+
// Determine which provider handles this ticket
|
|
92
|
+
let resolvedProvider = null;
|
|
93
|
+
if (resolveProvider) {
|
|
94
|
+
try {
|
|
95
|
+
resolvedProvider = await resolveProvider(ticket.id, ticket.projectId);
|
|
96
|
+
}
|
|
97
|
+
catch {
|
|
98
|
+
// Fall through to local PMO
|
|
99
|
+
}
|
|
96
100
|
}
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
if (
|
|
103
|
-
|
|
101
|
+
const isExternalProvider = resolvedProvider && resolvedProvider.name !== 'pmo';
|
|
102
|
+
// For external providers (Linear, etc.), go directly to the provider — no local PMO mirror
|
|
103
|
+
if (isExternalProvider && resolvedProvider) {
|
|
104
|
+
try {
|
|
105
|
+
const result = await resolvedProvider.moveTicket(ticket.id, targetColumn);
|
|
106
|
+
if (result.success) {
|
|
107
|
+
if (log)
|
|
108
|
+
log(`Moved via ${result.provider}: ${targetColumn}`);
|
|
109
|
+
return { moved: true, targetColumn, previousColumn };
|
|
110
|
+
}
|
|
111
|
+
return {
|
|
112
|
+
moved: false,
|
|
113
|
+
targetColumn,
|
|
114
|
+
previousColumn,
|
|
115
|
+
message: `Provider move failed: ${result.error}`,
|
|
116
|
+
};
|
|
104
117
|
}
|
|
105
|
-
|
|
118
|
+
catch (error) {
|
|
106
119
|
return {
|
|
107
120
|
moved: false,
|
|
108
121
|
targetColumn,
|
|
109
122
|
previousColumn,
|
|
110
|
-
message: `Failed to move: ${error instanceof Error ? error.message : String(error)}`,
|
|
123
|
+
message: `Failed to move via provider: ${error instanceof Error ? error.message : String(error)}`,
|
|
111
124
|
};
|
|
112
125
|
}
|
|
113
126
|
}
|
|
114
|
-
//
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
catch {
|
|
129
|
-
// Non-fatal — don't block work commands for provider sync failures
|
|
127
|
+
// For local PMO provider, move in local storage
|
|
128
|
+
try {
|
|
129
|
+
await storage.moveTicket(ticket.projectId, ticket.id, targetColumn);
|
|
130
|
+
}
|
|
131
|
+
catch (error) {
|
|
132
|
+
const code = error.code;
|
|
133
|
+
if (code === 'SQLITE_READONLY') {
|
|
134
|
+
// PRLT-1183: In container environments the HQ database is mounted read-only.
|
|
135
|
+
if (log)
|
|
136
|
+
log('Local PMO update skipped (read-only database)');
|
|
137
|
+
return { moved: false, targetColumn, previousColumn, message: 'Read-only database' };
|
|
130
138
|
}
|
|
139
|
+
return {
|
|
140
|
+
moved: false,
|
|
141
|
+
targetColumn,
|
|
142
|
+
previousColumn,
|
|
143
|
+
message: `Failed to move: ${error instanceof Error ? error.message : String(error)}`,
|
|
144
|
+
};
|
|
131
145
|
}
|
|
132
146
|
return {
|
|
133
|
-
moved:
|
|
147
|
+
moved: true,
|
|
134
148
|
targetColumn,
|
|
135
149
|
previousColumn,
|
|
136
150
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transition.js","sourceRoot":"","sources":["../../../src/lib/work-lifecycle/transition.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAcH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAuB,MAAM,eAAe,CAAA;AAgB3F;;;GAGG;AACH,MAAM,qBAAqB,GAAsD;IAC/E,OAAO,EAAE,aAAa;IACtB,YAAY,EAAE,QAAQ;IACtB,SAAS,EAAE,MAAM;IACjB,KAAK,EAAE,SAAS;CACjB,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CACnC,EAAqB,EACrB,MAAwB,EACxB,YAAoB,EACpB,WAAqB;IAErB,8BAA8B;IAC9B,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC,EAAE,CAAC,CAAA;QACxC,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QAC5D,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,gBAAgB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;YACvD,IAAI,KAAK;gBAAE,OAAO,KAAK,CAAA;QACzB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,yCAAyC;IAC3C,CAAC;IAED,yCAAyC;IACzC,MAAM,UAAU,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;IAChD,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,WAAW,GAAG,oBAAoB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAA;QACxD,MAAM,KAAK,GAAG,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;QACxD,IAAI,KAAK;YAAE,OAAO,KAAK,CAAA;IACzB,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAQxC;IACC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;IAEhF,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAA;IAC3D,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC7D,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAEnE,MAAM,YAAY,GAAG,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;IACjF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,+BAA+B,MAAM,GAAG,EAAE,CAAA;IAC5E,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAA;IAExC,kCAAkC;IAClC,IAAI,cAAc,IAAI,cAAc,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC;QAClF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAA;IAC3F,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"transition.js","sourceRoot":"","sources":["../../../src/lib/work-lifecycle/transition.ts"],"names":[],"mappings":"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"}
|