@happyvertical/smrt-projects 0.57.31 → 0.57.33
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/README.md +39 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +88 -8
- package/dist/index.js.map +1 -1
- package/dist/manifest.json +99 -9
- package/dist/models/ProjectGovernanceEvent.d.ts +5 -1
- package/dist/models/ProjectGovernanceEvent.d.ts.map +1 -1
- package/dist/models/ProjectQuestion.d.ts +8 -1
- package/dist/models/ProjectQuestion.d.ts.map +1 -1
- package/dist/models/project-governance-validation.d.ts +4 -1
- package/dist/models/project-governance-validation.d.ts.map +1 -1
- package/dist/project-governance-types.d.ts +16 -0
- package/dist/project-governance-types.d.ts.map +1 -1
- package/dist/services/project-governance-service.d.ts +3 -0
- package/dist/services/project-governance-service.d.ts.map +1 -1
- package/dist/smrt-knowledge.json +64 -5
- package/dist/svelte/ProjectQuestionsAndDecisions.svelte +39 -3
- package/dist/svelte/ProjectQuestionsAndDecisions.svelte.d.ts.map +1 -1
- package/dist/svelte/i18n.d.ts +3 -0
- package/dist/svelte/i18n.d.ts.map +1 -1
- package/dist/svelte/i18n.js +3 -0
- package/dist/svelte/project-governance-types.d.ts +4 -1
- package/dist/svelte/project-governance-types.d.ts.map +1 -1
- package/package.json +12 -13
package/dist/manifest.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"version": "1.0.0",
|
|
3
3
|
"timestamp": 0,
|
|
4
4
|
"packageName": "@happyvertical/smrt-projects",
|
|
5
|
-
"packageVersion": "0.57.
|
|
5
|
+
"packageVersion": "0.57.33",
|
|
6
6
|
"objects": {
|
|
7
7
|
"@happyvertical/smrt-projects:CommentCollection": {
|
|
8
8
|
"name": "commentcollection",
|
|
@@ -1234,7 +1234,7 @@
|
|
|
1234
1234
|
"collectionExportName": "ProjectGovernanceEventCollectionCollection",
|
|
1235
1235
|
"schema": {
|
|
1236
1236
|
"tableName": "project_governance_events",
|
|
1237
|
-
"ddl": "CREATE TABLE IF NOT EXISTS \"project_governance_events\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"meta_type\" TEXT NOT NULL,\n \"meta_id\" TEXT NOT NULL,\n \"role\" TEXT NOT NULL,\n \"sort_order\" INTEGER DEFAULT 0,\n \"tenant_id\" UUID NOT NULL,\n \"record_kind\" TEXT NOT NULL DEFAULT 'question',\n \"action\" TEXT NOT NULL DEFAULT 'created',\n \"actor_type\" TEXT NOT NULL DEFAULT 'system',\n \"actor_id\" TEXT NOT NULL,\n \"from_status\" TEXT,\n \"to_status\" TEXT NOT NULL,\n \"note\" TEXT,\n \"value\" TEXT,\n \"rationale\" TEXT,\n \"revision\" INTEGER NOT NULL DEFAULT 1,\n \"from_owner_type\" TEXT DEFAULT '',\n \"from_owner_id\" TEXT,\n \"to_owner_type\" TEXT DEFAULT '',\n \"to_owner_id\" TEXT\n);",
|
|
1237
|
+
"ddl": "CREATE TABLE IF NOT EXISTS \"project_governance_events\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"meta_type\" TEXT NOT NULL,\n \"meta_id\" TEXT NOT NULL,\n \"role\" TEXT NOT NULL,\n \"sort_order\" INTEGER DEFAULT 0,\n \"tenant_id\" UUID NOT NULL,\n \"record_kind\" TEXT NOT NULL DEFAULT 'question',\n \"action\" TEXT NOT NULL DEFAULT 'created',\n \"actor_type\" TEXT NOT NULL DEFAULT 'system',\n \"actor_id\" TEXT NOT NULL,\n \"from_status\" TEXT,\n \"to_status\" TEXT NOT NULL,\n \"note\" TEXT,\n \"value\" TEXT,\n \"rationale\" TEXT,\n \"answer_selection\" TEXT DEFAULT '',\n \"revision\" INTEGER NOT NULL DEFAULT 1,\n \"from_owner_type\" TEXT DEFAULT '',\n \"from_owner_id\" TEXT,\n \"to_owner_type\" TEXT DEFAULT '',\n \"to_owner_id\" TEXT\n);",
|
|
1238
1238
|
"columns": {
|
|
1239
1239
|
"id": {
|
|
1240
1240
|
"type": "UUID",
|
|
@@ -1336,6 +1336,12 @@
|
|
|
1336
1336
|
"notNull": false,
|
|
1337
1337
|
"unique": false
|
|
1338
1338
|
},
|
|
1339
|
+
"answer_selection": {
|
|
1340
|
+
"type": "TEXT",
|
|
1341
|
+
"notNull": false,
|
|
1342
|
+
"unique": false,
|
|
1343
|
+
"default": ""
|
|
1344
|
+
},
|
|
1339
1345
|
"revision": {
|
|
1340
1346
|
"type": "INTEGER",
|
|
1341
1347
|
"notNull": true,
|
|
@@ -1399,7 +1405,7 @@
|
|
|
1399
1405
|
]
|
|
1400
1406
|
}
|
|
1401
1407
|
],
|
|
1402
|
-
"version": "
|
|
1408
|
+
"version": "e903aea4"
|
|
1403
1409
|
},
|
|
1404
1410
|
"importPath": "@happyvertical/smrt-projects"
|
|
1405
1411
|
},
|
|
@@ -1838,7 +1844,7 @@
|
|
|
1838
1844
|
"collectionExportName": "ProjectQuestionCollectionCollection",
|
|
1839
1845
|
"schema": {
|
|
1840
1846
|
"tableName": "project_questions",
|
|
1841
|
-
"ddl": "CREATE TABLE IF NOT EXISTS \"project_questions\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"meta_type\" TEXT NOT NULL,\n \"meta_id\" TEXT NOT NULL,\n \"role\" TEXT NOT NULL,\n \"sort_order\" INTEGER DEFAULT 0,\n \"tenant_id\" UUID NOT NULL,\n \"prompt\" TEXT NOT NULL,\n \"answer\" TEXT,\n \"status\" TEXT NOT NULL DEFAULT 'open',\n \"owner_type\" TEXT DEFAULT '',\n \"owner_id\" TEXT,\n \"visibility\" TEXT DEFAULT 'internal',\n \"context_references\" TEXT,\n \"revision\" INTEGER NOT NULL DEFAULT 1,\n \"answered_at\" TIMESTAMP\n);",
|
|
1847
|
+
"ddl": "CREATE TABLE IF NOT EXISTS \"project_questions\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"meta_type\" TEXT NOT NULL,\n \"meta_id\" TEXT NOT NULL,\n \"role\" TEXT NOT NULL,\n \"sort_order\" INTEGER DEFAULT 0,\n \"tenant_id\" UUID NOT NULL,\n \"prompt\" TEXT NOT NULL,\n \"answer\" TEXT,\n \"question_options\" TEXT DEFAULT '[]',\n \"selected_option_id\" TEXT DEFAULT '',\n \"status\" TEXT NOT NULL DEFAULT 'open',\n \"owner_type\" TEXT DEFAULT '',\n \"owner_id\" TEXT,\n \"visibility\" TEXT DEFAULT 'internal',\n \"context_references\" TEXT,\n \"revision\" INTEGER NOT NULL DEFAULT 1,\n \"answered_at\" TIMESTAMP\n);",
|
|
1842
1848
|
"columns": {
|
|
1843
1849
|
"id": {
|
|
1844
1850
|
"type": "UUID",
|
|
@@ -1902,6 +1908,18 @@
|
|
|
1902
1908
|
"notNull": false,
|
|
1903
1909
|
"unique": false
|
|
1904
1910
|
},
|
|
1911
|
+
"question_options": {
|
|
1912
|
+
"type": "TEXT",
|
|
1913
|
+
"notNull": false,
|
|
1914
|
+
"unique": false,
|
|
1915
|
+
"default": "[]"
|
|
1916
|
+
},
|
|
1917
|
+
"selected_option_id": {
|
|
1918
|
+
"type": "TEXT",
|
|
1919
|
+
"notNull": false,
|
|
1920
|
+
"unique": false,
|
|
1921
|
+
"default": ""
|
|
1922
|
+
},
|
|
1905
1923
|
"status": {
|
|
1906
1924
|
"type": "TEXT",
|
|
1907
1925
|
"notNull": true,
|
|
@@ -1986,7 +2004,7 @@
|
|
|
1986
2004
|
]
|
|
1987
2005
|
}
|
|
1988
2006
|
],
|
|
1989
|
-
"version": "
|
|
2007
|
+
"version": "9bf3b915"
|
|
1990
2008
|
},
|
|
1991
2009
|
"importPath": "@happyvertical/smrt-projects"
|
|
1992
2010
|
},
|
|
@@ -5850,6 +5868,14 @@
|
|
|
5850
5868
|
"type": "text",
|
|
5851
5869
|
"required": false
|
|
5852
5870
|
},
|
|
5871
|
+
"answerSelection": {
|
|
5872
|
+
"type": "text",
|
|
5873
|
+
"required": false,
|
|
5874
|
+
"default": "",
|
|
5875
|
+
"_meta": {
|
|
5876
|
+
"default": ""
|
|
5877
|
+
}
|
|
5878
|
+
},
|
|
5853
5879
|
"revision": {
|
|
5854
5880
|
"type": "integer",
|
|
5855
5881
|
"required": true,
|
|
@@ -5895,6 +5921,14 @@
|
|
|
5895
5921
|
"isStatic": false,
|
|
5896
5922
|
"isPublic": true
|
|
5897
5923
|
},
|
|
5924
|
+
"getAnswerSelection": {
|
|
5925
|
+
"name": "getAnswerSelection",
|
|
5926
|
+
"async": false,
|
|
5927
|
+
"parameters": [],
|
|
5928
|
+
"returnType": "ProjectQuestionAnswerSelection | null",
|
|
5929
|
+
"isStatic": false,
|
|
5930
|
+
"isPublic": true
|
|
5931
|
+
},
|
|
5898
5932
|
"beforeDelete": {
|
|
5899
5933
|
"name": "beforeDelete",
|
|
5900
5934
|
"async": true,
|
|
@@ -5984,7 +6018,7 @@
|
|
|
5984
6018
|
],
|
|
5985
6019
|
"schema": {
|
|
5986
6020
|
"tableName": "project_governance_events",
|
|
5987
|
-
"ddl": "CREATE TABLE IF NOT EXISTS \"project_governance_events\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"meta_type\" TEXT NOT NULL,\n \"meta_id\" TEXT NOT NULL,\n \"role\" TEXT NOT NULL,\n \"sort_order\" INTEGER DEFAULT 0,\n \"tenant_id\" UUID NOT NULL,\n \"record_kind\" TEXT NOT NULL DEFAULT 'question',\n \"action\" TEXT NOT NULL DEFAULT 'created',\n \"actor_type\" TEXT NOT NULL DEFAULT 'system',\n \"actor_id\" TEXT NOT NULL,\n \"from_status\" TEXT,\n \"to_status\" TEXT NOT NULL,\n \"note\" TEXT,\n \"value\" TEXT,\n \"rationale\" TEXT,\n \"revision\" INTEGER NOT NULL DEFAULT 1,\n \"from_owner_type\" TEXT DEFAULT '',\n \"from_owner_id\" TEXT,\n \"to_owner_type\" TEXT DEFAULT '',\n \"to_owner_id\" TEXT\n);",
|
|
6021
|
+
"ddl": "CREATE TABLE IF NOT EXISTS \"project_governance_events\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"meta_type\" TEXT NOT NULL,\n \"meta_id\" TEXT NOT NULL,\n \"role\" TEXT NOT NULL,\n \"sort_order\" INTEGER DEFAULT 0,\n \"tenant_id\" UUID NOT NULL,\n \"record_kind\" TEXT NOT NULL DEFAULT 'question',\n \"action\" TEXT NOT NULL DEFAULT 'created',\n \"actor_type\" TEXT NOT NULL DEFAULT 'system',\n \"actor_id\" TEXT NOT NULL,\n \"from_status\" TEXT,\n \"to_status\" TEXT NOT NULL,\n \"note\" TEXT,\n \"value\" TEXT,\n \"rationale\" TEXT,\n \"answer_selection\" TEXT DEFAULT '',\n \"revision\" INTEGER NOT NULL DEFAULT 1,\n \"from_owner_type\" TEXT DEFAULT '',\n \"from_owner_id\" TEXT,\n \"to_owner_type\" TEXT DEFAULT '',\n \"to_owner_id\" TEXT\n);",
|
|
5988
6022
|
"columns": {
|
|
5989
6023
|
"id": {
|
|
5990
6024
|
"type": "UUID",
|
|
@@ -6086,6 +6120,12 @@
|
|
|
6086
6120
|
"notNull": false,
|
|
6087
6121
|
"unique": false
|
|
6088
6122
|
},
|
|
6123
|
+
"answer_selection": {
|
|
6124
|
+
"type": "TEXT",
|
|
6125
|
+
"notNull": false,
|
|
6126
|
+
"unique": false,
|
|
6127
|
+
"default": ""
|
|
6128
|
+
},
|
|
6089
6129
|
"revision": {
|
|
6090
6130
|
"type": "INTEGER",
|
|
6091
6131
|
"notNull": true,
|
|
@@ -6149,7 +6189,7 @@
|
|
|
6149
6189
|
]
|
|
6150
6190
|
}
|
|
6151
6191
|
],
|
|
6152
|
-
"version": "
|
|
6192
|
+
"version": "e903aea4"
|
|
6153
6193
|
},
|
|
6154
6194
|
"importPath": "@happyvertical/smrt-projects"
|
|
6155
6195
|
},
|
|
@@ -6597,6 +6637,22 @@
|
|
|
6597
6637
|
"type": "text",
|
|
6598
6638
|
"required": false
|
|
6599
6639
|
},
|
|
6640
|
+
"questionOptions": {
|
|
6641
|
+
"type": "text",
|
|
6642
|
+
"required": false,
|
|
6643
|
+
"default": "[]",
|
|
6644
|
+
"_meta": {
|
|
6645
|
+
"default": "[]"
|
|
6646
|
+
}
|
|
6647
|
+
},
|
|
6648
|
+
"selectedOptionId": {
|
|
6649
|
+
"type": "text",
|
|
6650
|
+
"required": false,
|
|
6651
|
+
"default": "",
|
|
6652
|
+
"_meta": {
|
|
6653
|
+
"default": ""
|
|
6654
|
+
}
|
|
6655
|
+
},
|
|
6600
6656
|
"status": {
|
|
6601
6657
|
"type": "text",
|
|
6602
6658
|
"required": true,
|
|
@@ -6661,6 +6717,28 @@
|
|
|
6661
6717
|
"isStatic": false,
|
|
6662
6718
|
"isPublic": true
|
|
6663
6719
|
},
|
|
6720
|
+
"getOptions": {
|
|
6721
|
+
"name": "getOptions",
|
|
6722
|
+
"async": false,
|
|
6723
|
+
"parameters": [],
|
|
6724
|
+
"returnType": "ProjectQuestionOption[]",
|
|
6725
|
+
"isStatic": false,
|
|
6726
|
+
"isPublic": true
|
|
6727
|
+
},
|
|
6728
|
+
"setOptions": {
|
|
6729
|
+
"name": "setOptions",
|
|
6730
|
+
"async": false,
|
|
6731
|
+
"parameters": [
|
|
6732
|
+
{
|
|
6733
|
+
"name": "value",
|
|
6734
|
+
"type": "ProjectQuestionOption[]",
|
|
6735
|
+
"optional": false
|
|
6736
|
+
}
|
|
6737
|
+
],
|
|
6738
|
+
"returnType": "void",
|
|
6739
|
+
"isStatic": false,
|
|
6740
|
+
"isPublic": true
|
|
6741
|
+
},
|
|
6664
6742
|
"getContextReferences": {
|
|
6665
6743
|
"name": "getContextReferences",
|
|
6666
6744
|
"async": false,
|
|
@@ -6756,7 +6834,7 @@
|
|
|
6756
6834
|
],
|
|
6757
6835
|
"schema": {
|
|
6758
6836
|
"tableName": "project_questions",
|
|
6759
|
-
"ddl": "CREATE TABLE IF NOT EXISTS \"project_questions\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"meta_type\" TEXT NOT NULL,\n \"meta_id\" TEXT NOT NULL,\n \"role\" TEXT NOT NULL,\n \"sort_order\" INTEGER DEFAULT 0,\n \"tenant_id\" UUID NOT NULL,\n \"prompt\" TEXT NOT NULL,\n \"answer\" TEXT,\n \"status\" TEXT NOT NULL DEFAULT 'open',\n \"owner_type\" TEXT DEFAULT '',\n \"owner_id\" TEXT,\n \"visibility\" TEXT DEFAULT 'internal',\n \"context_references\" TEXT,\n \"revision\" INTEGER NOT NULL DEFAULT 1,\n \"answered_at\" TIMESTAMP\n);",
|
|
6837
|
+
"ddl": "CREATE TABLE IF NOT EXISTS \"project_questions\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"meta_type\" TEXT NOT NULL,\n \"meta_id\" TEXT NOT NULL,\n \"role\" TEXT NOT NULL,\n \"sort_order\" INTEGER DEFAULT 0,\n \"tenant_id\" UUID NOT NULL,\n \"prompt\" TEXT NOT NULL,\n \"answer\" TEXT,\n \"question_options\" TEXT DEFAULT '[]',\n \"selected_option_id\" TEXT DEFAULT '',\n \"status\" TEXT NOT NULL DEFAULT 'open',\n \"owner_type\" TEXT DEFAULT '',\n \"owner_id\" TEXT,\n \"visibility\" TEXT DEFAULT 'internal',\n \"context_references\" TEXT,\n \"revision\" INTEGER NOT NULL DEFAULT 1,\n \"answered_at\" TIMESTAMP\n);",
|
|
6760
6838
|
"columns": {
|
|
6761
6839
|
"id": {
|
|
6762
6840
|
"type": "UUID",
|
|
@@ -6820,6 +6898,18 @@
|
|
|
6820
6898
|
"notNull": false,
|
|
6821
6899
|
"unique": false
|
|
6822
6900
|
},
|
|
6901
|
+
"question_options": {
|
|
6902
|
+
"type": "TEXT",
|
|
6903
|
+
"notNull": false,
|
|
6904
|
+
"unique": false,
|
|
6905
|
+
"default": "[]"
|
|
6906
|
+
},
|
|
6907
|
+
"selected_option_id": {
|
|
6908
|
+
"type": "TEXT",
|
|
6909
|
+
"notNull": false,
|
|
6910
|
+
"unique": false,
|
|
6911
|
+
"default": ""
|
|
6912
|
+
},
|
|
6823
6913
|
"status": {
|
|
6824
6914
|
"type": "TEXT",
|
|
6825
6915
|
"notNull": true,
|
|
@@ -6904,7 +6994,7 @@
|
|
|
6904
6994
|
]
|
|
6905
6995
|
}
|
|
6906
6996
|
],
|
|
6907
|
-
"version": "
|
|
6997
|
+
"version": "9bf3b915"
|
|
6908
6998
|
},
|
|
6909
6999
|
"importPath": "@happyvertical/smrt-projects"
|
|
6910
7000
|
},
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SmrtPolymorphicAssociation, type SmrtPolymorphicAssociationOptions } from '@happyvertical/smrt-core';
|
|
2
|
-
import type { ProjectGovernanceAction, ProjectGovernanceActorType, ProjectGovernanceRecordKind } from '../project-governance-types.js';
|
|
2
|
+
import type { ProjectGovernanceAction, ProjectGovernanceActorType, ProjectGovernanceRecordKind, ProjectQuestionAnswerSelection } from '../project-governance-types.js';
|
|
3
3
|
export interface ProjectGovernanceEventOptions extends SmrtPolymorphicAssociationOptions {
|
|
4
4
|
tenantId?: string;
|
|
5
5
|
recordKind?: ProjectGovernanceRecordKind;
|
|
@@ -11,6 +11,7 @@ export interface ProjectGovernanceEventOptions extends SmrtPolymorphicAssociatio
|
|
|
11
11
|
note?: string;
|
|
12
12
|
value?: string;
|
|
13
13
|
rationale?: string;
|
|
14
|
+
answerSelection?: string;
|
|
14
15
|
revision?: number;
|
|
15
16
|
fromOwnerType?: ProjectGovernanceActorType | '';
|
|
16
17
|
fromOwnerId?: string;
|
|
@@ -28,12 +29,15 @@ export declare class ProjectGovernanceEvent extends SmrtPolymorphicAssociation {
|
|
|
28
29
|
note: string;
|
|
29
30
|
value: string;
|
|
30
31
|
rationale: string;
|
|
32
|
+
/** JSON answer snapshot; empty for events written before structured questions. */
|
|
33
|
+
answerSelection: string;
|
|
31
34
|
revision: number;
|
|
32
35
|
fromOwnerType: ProjectGovernanceActorType | '';
|
|
33
36
|
fromOwnerId: string;
|
|
34
37
|
toOwnerType: ProjectGovernanceActorType | '';
|
|
35
38
|
toOwnerId: string;
|
|
36
39
|
constructor(options?: ProjectGovernanceEventOptions);
|
|
40
|
+
getAnswerSelection(): ProjectQuestionAnswerSelection | null;
|
|
37
41
|
beforeDelete(): Promise<void>;
|
|
38
42
|
protected validateBeforeSave(): Promise<void>;
|
|
39
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectGovernanceEvent.d.ts","sourceRoot":"","sources":["../../src/models/ProjectGovernanceEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,0BAA0B,EAC1B,KAAK,iCAAiC,EAEvC,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,
|
|
1
|
+
{"version":3,"file":"ProjectGovernanceEvent.d.ts","sourceRoot":"","sources":["../../src/models/ProjectGovernanceEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,0BAA0B,EAC1B,KAAK,iCAAiC,EAEvC,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,8BAA8B,EAC/B,MAAM,gCAAgC,CAAC;AAExC,MAAM,WAAW,6BACf,SAAQ,iCAAiC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,2BAA2B,CAAC;IACzC,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,SAAS,CAAC,EAAE,0BAA0B,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,0BAA0B,GAAG,EAAE,CAAC;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,0BAA0B,GAAG,EAAE,CAAC;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAca,sBAAuB,SAAQ,0BAA0B;IAEpE,QAAQ,SAAM;IAGd,UAAU,EAAE,2BAA2B,CAAc;IAGrD,MAAM,EAAE,uBAAuB,CAAa;IAG5C,SAAS,EAAE,0BAA0B,CAAY;IAGjD,OAAO,SAAM;IAEb,UAAU,SAAM;IAGhB,QAAQ,SAAU;IAElB,IAAI,SAAM;IAEV,KAAK,SAAM;IAEX,SAAS,SAAM;IAEf,kFAAkF;IAElF,eAAe,SAAM;IAErB,QAAQ,SAAK;IAEb,aAAa,EAAE,0BAA0B,GAAG,EAAE,CAAM;IACpD,WAAW,SAAM;IACjB,WAAW,EAAE,0BAA0B,GAAG,EAAE,CAAM;IAClD,SAAS,SAAM;gBAEH,OAAO,GAAE,6BAAkC;IAwBvD,kBAAkB,IAAI,8BAA8B,GAAG,IAAI;IAoBrD,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;cAIV,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;CAa7D"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { SmrtPolymorphicAssociation, type SmrtPolymorphicAssociationOptions } from '@happyvertical/smrt-core';
|
|
2
|
-
import type { ProjectContextReference, ProjectGovernanceActorType, ProjectGovernanceVisibility, ProjectQuestionStatus } from '../project-governance-types.js';
|
|
2
|
+
import type { ProjectContextReference, ProjectGovernanceActorType, ProjectGovernanceVisibility, ProjectQuestionOption, ProjectQuestionStatus } from '../project-governance-types.js';
|
|
3
3
|
export interface ProjectQuestionOptions extends SmrtPolymorphicAssociationOptions {
|
|
4
4
|
tenantId?: string;
|
|
5
5
|
visibility?: ProjectGovernanceVisibility;
|
|
6
6
|
prompt?: string;
|
|
7
7
|
answer?: string;
|
|
8
|
+
questionOptions?: ProjectQuestionOption[] | string;
|
|
9
|
+
selectedOptionId?: string;
|
|
8
10
|
status?: ProjectQuestionStatus;
|
|
9
11
|
ownerType?: ProjectGovernanceActorType | '';
|
|
10
12
|
ownerId?: string;
|
|
@@ -16,6 +18,9 @@ export declare class ProjectQuestion extends SmrtPolymorphicAssociation {
|
|
|
16
18
|
tenantId: string;
|
|
17
19
|
prompt: string;
|
|
18
20
|
answer: string;
|
|
21
|
+
/** JSON authored choices; getOptions() includes implicit Other. */
|
|
22
|
+
questionOptions: string;
|
|
23
|
+
selectedOptionId: string;
|
|
19
24
|
status: ProjectQuestionStatus;
|
|
20
25
|
ownerType: ProjectGovernanceActorType | '';
|
|
21
26
|
ownerId: string;
|
|
@@ -25,6 +30,8 @@ export declare class ProjectQuestion extends SmrtPolymorphicAssociation {
|
|
|
25
30
|
revision: number;
|
|
26
31
|
answeredAt: Date | null;
|
|
27
32
|
constructor(options?: ProjectQuestionOptions);
|
|
33
|
+
getOptions(): ProjectQuestionOption[];
|
|
34
|
+
setOptions(value: ProjectQuestionOption[]): void;
|
|
28
35
|
getContextReferences(): ProjectContextReference[];
|
|
29
36
|
setContextReferences(value: ProjectContextReference[]): void;
|
|
30
37
|
protected validateBeforeSave(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectQuestion.d.ts","sourceRoot":"","sources":["../../src/models/ProjectQuestion.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,0BAA0B,EAC1B,KAAK,iCAAiC,EAEvC,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,qBAAqB,EACtB,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"ProjectQuestion.d.ts","sourceRoot":"","sources":["../../src/models/ProjectQuestion.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,0BAA0B,EAC1B,KAAK,iCAAiC,EAEvC,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,gCAAgC,CAAC;AAQxC,MAAM,WAAW,sBACf,SAAQ,iCAAiC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,2BAA2B,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAAC;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,SAAS,CAAC,EAAE,0BAA0B,GAAG,EAAE,CAAC;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,uBAAuB,EAAE,GAAG,MAAM,CAAC;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CAC1B;AAED,qBAiBa,eAAgB,SAAQ,0BAA0B;IAE7D,QAAQ,SAAM;IAGd,MAAM,SAAM;IAEZ,MAAM,SAAM;IAEZ,mEAAmE;IAEnE,eAAe,SAAQ;IAGvB,gBAAgB,SAAM;IAGtB,MAAM,EAAE,qBAAqB,CAAU;IAEvC,SAAS,EAAE,0BAA0B,GAAG,EAAE,CAAM;IAEhD,OAAO,SAAM;IAEb,UAAU,EAAE,2BAA2B,CAAc;IAErD,qEAAqE;IACrE,iBAAiB,SAAQ;IAEzB,QAAQ,SAAK;IAGb,UAAU,EAAE,IAAI,GAAG,IAAI,CAAQ;gBAEnB,OAAO,GAAE,sBAA2B;IAwBhD,UAAU,IAAI,qBAAqB,EAAE;IAKrC,UAAU,CAAC,KAAK,EAAE,qBAAqB,EAAE,GAAG,IAAI;IAIhD,oBAAoB,IAAI,uBAAuB,EAAE;IAIjD,oBAAoB,CAAC,KAAK,EAAE,uBAAuB,EAAE,GAAG,IAAI;cAInC,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;CAqC7D"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
import type { ProjectContextReference, ProjectDecisionOption } from '../project-governance-types.js';
|
|
1
|
+
import type { ProjectContextReference, ProjectDecisionOption, ProjectQuestionOption } from '../project-governance-types.js';
|
|
2
2
|
export declare function parseContextReferences(value: string): ProjectContextReference[];
|
|
3
3
|
export declare function serializeContextReferences(value: readonly ProjectContextReference[]): string;
|
|
4
4
|
export declare function parseDecisionOptions(value: string): ProjectDecisionOption[];
|
|
5
5
|
export declare function serializeDecisionOptions(value: readonly ProjectDecisionOption[]): string;
|
|
6
|
+
/** Normalize authored choices; the reserved Other entry is never caller-authored. */
|
|
7
|
+
export declare function parseQuestionOptions(value: string): ProjectQuestionOption[];
|
|
8
|
+
export declare function serializeQuestionOptions(value: readonly ProjectQuestionOption[]): string;
|
|
6
9
|
//# sourceMappingURL=project-governance-validation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-governance-validation.d.ts","sourceRoot":"","sources":["../../src/models/project-governance-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,gCAAgC,CAAC;AAWxC,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,GACZ,uBAAuB,EAAE,CA2B3B;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,SAAS,uBAAuB,EAAE,GACxC,MAAM,CAER;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB,EAAE,CA6B3E;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,SAAS,qBAAqB,EAAE,GACtC,MAAM,CAER"}
|
|
1
|
+
{"version":3,"file":"project-governance-validation.d.ts","sourceRoot":"","sources":["../../src/models/project-governance-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,gCAAgC,CAAC;AAWxC,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,GACZ,uBAAuB,EAAE,CA2B3B;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,SAAS,uBAAuB,EAAE,GACxC,MAAM,CAER;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB,EAAE,CA6B3E;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,SAAS,qBAAqB,EAAE,GACtC,MAAM,CAER;AAED,qFAAqF;AACrF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAyB3E;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,SAAS,qBAAqB,EAAE,GACtC,MAAM,CAER"}
|
|
@@ -26,6 +26,8 @@ export interface ProjectGovernanceOwner {
|
|
|
26
26
|
}
|
|
27
27
|
export interface ProjectQuestionCreateInput extends ProjectGovernanceScope {
|
|
28
28
|
prompt: string;
|
|
29
|
+
/** Single-choice suggestions; Other is supplied by the service. */
|
|
30
|
+
options?: ProjectQuestionOption[];
|
|
29
31
|
owner?: ProjectGovernanceOwner | null;
|
|
30
32
|
contextReferences?: ProjectContextReference[];
|
|
31
33
|
visibility?: ProjectGovernanceVisibility;
|
|
@@ -46,4 +48,18 @@ export interface ProjectDecisionCreateInput extends ProjectGovernanceScope {
|
|
|
46
48
|
}
|
|
47
49
|
export type ProjectGovernanceRecordKind = 'question' | 'decision';
|
|
48
50
|
export type ProjectGovernanceAction = 'created' | 'assigned' | 'answered' | 'decided' | 'deferred' | 'reopened' | 'superseded';
|
|
51
|
+
/** Reserved identity for the always-available free-text choice. */
|
|
52
|
+
export declare const PROJECT_QUESTION_OTHER_OPTION_ID = "other";
|
|
53
|
+
/** Recommendation is display guidance only, never a selected answer. */
|
|
54
|
+
export interface ProjectQuestionOption extends ProjectDecisionOption {
|
|
55
|
+
recommended?: boolean;
|
|
56
|
+
}
|
|
57
|
+
/** Immutable answer provenance; absent on historical free-text events. */
|
|
58
|
+
export interface ProjectQuestionAnswerSelection {
|
|
59
|
+
answer: string;
|
|
60
|
+
selectedOptionId?: string;
|
|
61
|
+
optionLabel?: string;
|
|
62
|
+
expectedRevision: number;
|
|
63
|
+
idempotencyKey?: string;
|
|
64
|
+
}
|
|
49
65
|
//# sourceMappingURL=project-governance-types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-governance-types.d.ts","sourceRoot":"","sources":["../src/project-governance-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,UAAU,GACV,UAAU,GACV,YAAY,CAAC;AAEjB,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,SAAS,GACT,UAAU,GACV,YAAY,CAAC;AAEjB,MAAM,MAAM,2BAA2B,GAAG,UAAU,GAAG,QAAQ,CAAC;AAEhE,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAErE,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,0BAA0B,CAAC;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,qFAAqF;IACrF,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,2BAA2B,GACnC,MAAM,GACN,UAAU,GACV,cAAc,GACd,OAAO,GACP,KAAK,GACL,OAAO,CAAC;AAEZ,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,2BAA2B,CAAC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,0BAA0B,CAAC;IACjC,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACxE,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,iBAAiB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAC9C,UAAU,CAAC,EAAE,2BAA2B,CAAC;IACzC,KAAK,EAAE,sBAAsB,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACxE,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAClC,KAAK,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,iBAAiB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAC9C,UAAU,CAAC,EAAE,2BAA2B,CAAC;IACzC,KAAK,EAAE,sBAAsB,CAAC;CAC/B;AAED,MAAM,MAAM,2BAA2B,GAAG,UAAU,GAAG,UAAU,CAAC;AAElE,MAAM,MAAM,uBAAuB,GAC/B,SAAS,GACT,UAAU,GACV,UAAU,GACV,SAAS,GACT,UAAU,GACV,UAAU,GACV,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"project-governance-types.d.ts","sourceRoot":"","sources":["../src/project-governance-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,UAAU,GACV,UAAU,GACV,YAAY,CAAC;AAEjB,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,SAAS,GACT,UAAU,GACV,YAAY,CAAC;AAEjB,MAAM,MAAM,2BAA2B,GAAG,UAAU,GAAG,QAAQ,CAAC;AAEhE,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAErE,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,0BAA0B,CAAC;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,qFAAqF;IACrF,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,2BAA2B,GACnC,MAAM,GACN,UAAU,GACV,cAAc,GACd,OAAO,GACP,KAAK,GACL,OAAO,CAAC;AAEZ,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,2BAA2B,CAAC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,0BAA0B,CAAC;IACjC,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACxE,MAAM,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAClC,KAAK,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,iBAAiB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAC9C,UAAU,CAAC,EAAE,2BAA2B,CAAC;IACzC,KAAK,EAAE,sBAAsB,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACxE,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAClC,KAAK,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,iBAAiB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAC9C,UAAU,CAAC,EAAE,2BAA2B,CAAC;IACzC,KAAK,EAAE,sBAAsB,CAAC;CAC/B;AAED,MAAM,MAAM,2BAA2B,GAAG,UAAU,GAAG,UAAU,CAAC;AAElE,MAAM,MAAM,uBAAuB,GAC/B,SAAS,GACT,UAAU,GACV,UAAU,GACV,SAAS,GACT,UAAU,GACV,UAAU,GACV,YAAY,CAAC;AAEjB,mEAAmE;AACnE,eAAO,MAAM,gCAAgC,UAAU,CAAC;AAExD,wEAAwE;AACxE,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAClE,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,0EAA0E;AAC1E,MAAM,WAAW,8BAA8B;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
|
|
@@ -27,7 +27,10 @@ export declare class ProjectGovernanceService {
|
|
|
27
27
|
createDecision(input: ProjectDecisionCreateInput): Promise<ProjectDecision>;
|
|
28
28
|
answerQuestion(input: ProjectGovernanceScope & {
|
|
29
29
|
questionId: string;
|
|
30
|
+
/** Required for old clients too; choices do not silently generate an answer. */
|
|
30
31
|
answer: string;
|
|
32
|
+
selectedOptionId?: string;
|
|
33
|
+
idempotencyKey?: string;
|
|
31
34
|
note?: string;
|
|
32
35
|
expectedRevision: number;
|
|
33
36
|
actor: ProjectGovernanceActor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-governance-service.d.ts","sourceRoot":"","sources":["../../src/services/project-governance-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAKjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,gCAAgC,EAAE,MAAM,2CAA2C,CAAC;AAC7F,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"project-governance-service.d.ts","sourceRoot":"","sources":["../../src/services/project-governance-service.ts"],"names":[],"mappings":"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"}
|
package/dist/smrt-knowledge.json
CHANGED
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
"sensitiveFieldsExcluded": true,
|
|
4
4
|
"generatedAt": "1970-01-01T00:00:00.000Z",
|
|
5
5
|
"packageName": "@happyvertical/smrt-projects",
|
|
6
|
-
"packageVersion": "0.57.
|
|
6
|
+
"packageVersion": "0.57.33",
|
|
7
7
|
"sourceManifestPath": "dist/manifest.json",
|
|
8
8
|
"agentDocPath": "AGENTS.md",
|
|
9
9
|
"sourceHashes": {
|
|
10
|
-
"manifest": "
|
|
11
|
-
"packageJson": "
|
|
10
|
+
"manifest": "dfc35fb64bef553c95b65b4b5c886efcc8164a545586be8616bb8c2f1de78e87",
|
|
11
|
+
"packageJson": "d0fe20e30b7d91e45cc2271c28915a75a10d18ab69f88e2eb744abc0cd14d894",
|
|
12
12
|
"agents": "2879830c12902195bd4f887cf00bdabbe8e7216ebafe2a9b2d007a00d137435c"
|
|
13
13
|
},
|
|
14
14
|
"exports": [
|
|
@@ -40,7 +40,6 @@
|
|
|
40
40
|
"@sveltejs/package": "^2.5.8",
|
|
41
41
|
"@sveltejs/vite-plugin-svelte": "^7.3.0",
|
|
42
42
|
"@types/node": "24.13.6",
|
|
43
|
-
"fast-glob": "3.3.3",
|
|
44
43
|
"svelte": "^5.57.0",
|
|
45
44
|
"svelte-check": "^4.7.6",
|
|
46
45
|
"typescript": "6.0.3",
|
|
@@ -3392,6 +3391,13 @@
|
|
|
3392
3391
|
"required": false,
|
|
3393
3392
|
"columnType": "TEXT"
|
|
3394
3393
|
},
|
|
3394
|
+
{
|
|
3395
|
+
"name": "answerSelection",
|
|
3396
|
+
"type": "text",
|
|
3397
|
+
"required": false,
|
|
3398
|
+
"columnType": "TEXT",
|
|
3399
|
+
"default": ""
|
|
3400
|
+
},
|
|
3395
3401
|
{
|
|
3396
3402
|
"name": "revision",
|
|
3397
3403
|
"type": "integer",
|
|
@@ -3429,6 +3435,7 @@
|
|
|
3429
3435
|
"relationships": [],
|
|
3430
3436
|
"methods": [
|
|
3431
3437
|
"beforeDelete",
|
|
3438
|
+
"getAnswerSelection",
|
|
3432
3439
|
"hydrate"
|
|
3433
3440
|
],
|
|
3434
3441
|
"methodSignatures": [
|
|
@@ -3437,6 +3444,10 @@
|
|
|
3437
3444
|
"async": true,
|
|
3438
3445
|
"returns": "Promise<void>"
|
|
3439
3446
|
},
|
|
3447
|
+
{
|
|
3448
|
+
"name": "getAnswerSelection",
|
|
3449
|
+
"returns": "ProjectQuestionAnswerSelection | null"
|
|
3450
|
+
},
|
|
3440
3451
|
{
|
|
3441
3452
|
"name": "hydrate",
|
|
3442
3453
|
"async": true,
|
|
@@ -3462,6 +3473,13 @@
|
|
|
3462
3473
|
"reason": "api is disabled",
|
|
3463
3474
|
"objectName": "@happyvertical/smrt-projects:ProjectGovernanceEvent"
|
|
3464
3475
|
},
|
|
3476
|
+
{
|
|
3477
|
+
"kind": "api",
|
|
3478
|
+
"operation": "getAnswerSelection",
|
|
3479
|
+
"code": "api-disabled",
|
|
3480
|
+
"reason": "api is disabled",
|
|
3481
|
+
"objectName": "@happyvertical/smrt-projects:ProjectGovernanceEvent"
|
|
3482
|
+
},
|
|
3465
3483
|
{
|
|
3466
3484
|
"kind": "api",
|
|
3467
3485
|
"operation": "hydrate",
|
|
@@ -3733,6 +3751,20 @@
|
|
|
3733
3751
|
"required": false,
|
|
3734
3752
|
"columnType": "TEXT"
|
|
3735
3753
|
},
|
|
3754
|
+
{
|
|
3755
|
+
"name": "questionOptions",
|
|
3756
|
+
"type": "text",
|
|
3757
|
+
"required": false,
|
|
3758
|
+
"columnType": "TEXT",
|
|
3759
|
+
"default": "[]"
|
|
3760
|
+
},
|
|
3761
|
+
{
|
|
3762
|
+
"name": "selectedOptionId",
|
|
3763
|
+
"type": "text",
|
|
3764
|
+
"required": false,
|
|
3765
|
+
"columnType": "TEXT",
|
|
3766
|
+
"default": ""
|
|
3767
|
+
},
|
|
3736
3768
|
{
|
|
3737
3769
|
"name": "status",
|
|
3738
3770
|
"type": "text",
|
|
@@ -3783,14 +3815,20 @@
|
|
|
3783
3815
|
"relationships": [],
|
|
3784
3816
|
"methods": [
|
|
3785
3817
|
"getContextReferences",
|
|
3818
|
+
"getOptions",
|
|
3786
3819
|
"hydrate",
|
|
3787
|
-
"setContextReferences"
|
|
3820
|
+
"setContextReferences",
|
|
3821
|
+
"setOptions"
|
|
3788
3822
|
],
|
|
3789
3823
|
"methodSignatures": [
|
|
3790
3824
|
{
|
|
3791
3825
|
"name": "getContextReferences",
|
|
3792
3826
|
"returns": "ProjectContextReference[]"
|
|
3793
3827
|
},
|
|
3828
|
+
{
|
|
3829
|
+
"name": "getOptions",
|
|
3830
|
+
"returns": "ProjectQuestionOption[]"
|
|
3831
|
+
},
|
|
3794
3832
|
{
|
|
3795
3833
|
"name": "hydrate",
|
|
3796
3834
|
"async": true,
|
|
@@ -3802,6 +3840,13 @@
|
|
|
3802
3840
|
"value: ProjectContextReference[]"
|
|
3803
3841
|
],
|
|
3804
3842
|
"returns": "void"
|
|
3843
|
+
},
|
|
3844
|
+
{
|
|
3845
|
+
"name": "setOptions",
|
|
3846
|
+
"params": [
|
|
3847
|
+
"value: ProjectQuestionOption[]"
|
|
3848
|
+
],
|
|
3849
|
+
"returns": "void"
|
|
3805
3850
|
}
|
|
3806
3851
|
],
|
|
3807
3852
|
"tenant": {
|
|
@@ -3823,6 +3868,13 @@
|
|
|
3823
3868
|
"reason": "api is disabled",
|
|
3824
3869
|
"objectName": "@happyvertical/smrt-projects:ProjectQuestion"
|
|
3825
3870
|
},
|
|
3871
|
+
{
|
|
3872
|
+
"kind": "api",
|
|
3873
|
+
"operation": "getOptions",
|
|
3874
|
+
"code": "api-disabled",
|
|
3875
|
+
"reason": "api is disabled",
|
|
3876
|
+
"objectName": "@happyvertical/smrt-projects:ProjectQuestion"
|
|
3877
|
+
},
|
|
3826
3878
|
{
|
|
3827
3879
|
"kind": "api",
|
|
3828
3880
|
"operation": "hydrate",
|
|
@@ -3836,6 +3888,13 @@
|
|
|
3836
3888
|
"code": "api-disabled",
|
|
3837
3889
|
"reason": "api is disabled",
|
|
3838
3890
|
"objectName": "@happyvertical/smrt-projects:ProjectQuestion"
|
|
3891
|
+
},
|
|
3892
|
+
{
|
|
3893
|
+
"kind": "api",
|
|
3894
|
+
"operation": "setOptions",
|
|
3895
|
+
"code": "api-disabled",
|
|
3896
|
+
"reason": "api is disabled",
|
|
3897
|
+
"objectName": "@happyvertical/smrt-projects:ProjectQuestion"
|
|
3839
3898
|
}
|
|
3840
3899
|
],
|
|
3841
3900
|
"relationshipFeatures": [
|
|
@@ -48,15 +48,27 @@ $effect(() =>
|
|
|
48
48
|
observeDecisions(decisions, 'open', { decided: 'project_decision_resolved' }),
|
|
49
49
|
);
|
|
50
50
|
|
|
51
|
+
let selections = $state<Record<string, string>>({});
|
|
52
|
+
|
|
51
53
|
function submitAnswer(event: SubmitEvent, question: ProjectQuestionView) {
|
|
52
54
|
event.preventDefault();
|
|
53
55
|
const form = new FormData(event.currentTarget as HTMLFormElement);
|
|
54
|
-
const
|
|
56
|
+
const selectedOptionId = String(form.get('selectedOptionId') ?? '');
|
|
57
|
+
const option = question.options?.find(
|
|
58
|
+
(entry) => entry.id === selectedOptionId,
|
|
59
|
+
);
|
|
60
|
+
const structured = Boolean(question.options?.length);
|
|
61
|
+
if (structured && !selectedOptionId) return;
|
|
62
|
+
const answer =
|
|
63
|
+
structured && selectedOptionId !== 'other'
|
|
64
|
+
? (option?.label ?? '')
|
|
65
|
+
: String(form.get('answer') ?? '').trim();
|
|
55
66
|
if (answer)
|
|
56
67
|
onanswer?.({
|
|
57
68
|
id: question.id,
|
|
58
69
|
answer,
|
|
59
70
|
expectedRevision: question.revision,
|
|
71
|
+
...(structured ? { selectedOptionId } : {}),
|
|
60
72
|
});
|
|
61
73
|
}
|
|
62
74
|
|
|
@@ -106,8 +118,28 @@ function submitDecision(event: SubmitEvent, decision: ProjectDecisionView) {
|
|
|
106
118
|
{/if}
|
|
107
119
|
{#if question.status === 'open' && question.canResolve}
|
|
108
120
|
<Form onsubmit={(event) => submitAnswer(event, question)}>
|
|
109
|
-
|
|
110
|
-
|
|
121
|
+
{#if question.options?.length}
|
|
122
|
+
<fieldset disabled={busy}>
|
|
123
|
+
<legend>{t(M['projects.governance.answer'])}</legend>
|
|
124
|
+
{#each question.options.filter((option) => option.id !== 'other') as option (option.id)}
|
|
125
|
+
<label class="choice">
|
|
126
|
+
<Input type="radio" name="selectedOptionId" value={option.id} required interaction={false} checked={selections[question.id] === option.id} onchange={() => selections[question.id] = option.id} />
|
|
127
|
+
<span>{option.label}{#if option.recommended} <strong>{t(M['projects.governance.recommended'])}</strong>{/if}
|
|
128
|
+
{#if option.description}<small>{option.description}</small>{/if}
|
|
129
|
+
</span>
|
|
130
|
+
</label>
|
|
131
|
+
{/each}
|
|
132
|
+
<label class="choice">
|
|
133
|
+
<Input type="radio" name="selectedOptionId" value="other" required interaction={false} checked={selections[question.id] === 'other'} onchange={() => selections[question.id] = 'other'} />
|
|
134
|
+
<span>{t(M['projects.governance.other'])}</span>
|
|
135
|
+
</label>
|
|
136
|
+
<label for={`answer-${question.id}`}>{t(M['projects.governance.other_answer'])}</label>
|
|
137
|
+
<Textarea id={`answer-${question.id}`} name="answer" required={selections[question.id] === 'other'}></Textarea>
|
|
138
|
+
</fieldset>
|
|
139
|
+
{:else}
|
|
140
|
+
<label for={`answer-${question.id}`}>{t(M['projects.governance.answer'])}</label>
|
|
141
|
+
<Textarea id={`answer-${question.id}`} name="answer" required></Textarea>
|
|
142
|
+
{/if}
|
|
111
143
|
<Button type="submit" disabled={busy}>{t(M['projects.governance.save_answer'])}</Button>
|
|
112
144
|
</Form>
|
|
113
145
|
{/if}
|
|
@@ -188,6 +220,10 @@ function submitDecision(event: SubmitEvent, decision: ProjectDecisionView) {
|
|
|
188
220
|
article { border: var(--smrt-hairline); border-radius: var(--smrt-radius-medium); display: grid; gap: var(--smrt-spacing-3); padding: var(--smrt-spacing-4); }
|
|
189
221
|
article header { align-items: start; display: flex; justify-content: space-between; gap: var(--smrt-spacing-3); }
|
|
190
222
|
article header > div, article :global(form), .response { display: grid; gap: var(--smrt-spacing-2); }
|
|
223
|
+
fieldset { display: grid; gap: var(--smrt-spacing-2); border: 0; padding: 0; min-width: 0; }
|
|
224
|
+
.choice { display: flex; align-items: start; gap: var(--smrt-spacing-2); }
|
|
225
|
+
.choice :global(input[type='radio']) { width: auto; min-height: auto; padding: 0; }
|
|
226
|
+
.choice small { display: block; }
|
|
191
227
|
.status { font-size: var(--smrt-typography-label-medium-size); text-transform: capitalize; }
|
|
192
228
|
.references { display: flex; flex-wrap: wrap; gap: var(--smrt-spacing-2); list-style: none; margin: 0; padding: 0; }
|
|
193
229
|
.references li { background: var(--smrt-color-surface-container); border-radius: var(--smrt-radius-small); padding: var(--smrt-spacing-1) var(--smrt-spacing-2); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectQuestionsAndDecisions.svelte.d.ts","sourceRoot":"","sources":["../../src/svelte/ProjectQuestionsAndDecisions.svelte.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,2BAA2B,EAC3B,mBAAmB,EACnB,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,+BAA+B,CAAC;AAGvC,MAAM,WAAW,KAAK;IACpB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAClC,oEAAoE;IACpE,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAClC,oEAAoE;IACpE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gEAAgE;IAChE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,wEAAwE;IACxE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,2BAA2B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzE;
|
|
1
|
+
{"version":3,"file":"ProjectQuestionsAndDecisions.svelte.d.ts","sourceRoot":"","sources":["../../src/svelte/ProjectQuestionsAndDecisions.svelte.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,2BAA2B,EAC3B,mBAAmB,EACnB,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,+BAA+B,CAAC;AAGvC,MAAM,WAAW,KAAK;IACpB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAClC,oEAAoE;IACpE,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAClC,oEAAoE;IACpE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gEAAgE;IAChE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,wEAAwE;IACxE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,2BAA2B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzE;AAkMD,QAAA,MAAM,4BAA4B,2CAAwC,CAAC;AAC3E,KAAK,4BAA4B,GAAG,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC;AACpF,eAAe,4BAA4B,CAAC"}
|
package/dist/svelte/i18n.d.ts
CHANGED
|
@@ -10,6 +10,9 @@ export declare const M: {
|
|
|
10
10
|
readonly 'projects.governance.question_context': "projects.governance.question_context";
|
|
11
11
|
readonly 'projects.governance.decision_context': "projects.governance.decision_context";
|
|
12
12
|
readonly 'projects.governance.answer': "projects.governance.answer";
|
|
13
|
+
readonly 'projects.governance.other': "projects.governance.other";
|
|
14
|
+
readonly 'projects.governance.other_answer': "projects.governance.other_answer";
|
|
15
|
+
readonly 'projects.governance.recommended': "projects.governance.recommended";
|
|
13
16
|
readonly 'projects.governance.save_answer': "projects.governance.save_answer";
|
|
14
17
|
readonly 'projects.governance.outcome': "projects.governance.outcome";
|
|
15
18
|
readonly 'projects.governance.choose_option': "projects.governance.choose_option";
|