@principal-ai/alexandria-collections 0.1.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.
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +70 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +9 -0
- package/dist/types.js.map +1 -0
- package/package.json +51 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,UAAU,EACV,oBAAoB,EACpB,eAAe,EACf,yBAAyB,GAC1B,MAAM,SAAS,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Collection types
|
|
3
|
+
*
|
|
4
|
+
* Collections organize repositories without requiring local clones.
|
|
5
|
+
* This enables tracking remote repositories you're interested in
|
|
6
|
+
* alongside locally cloned ones.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* A collection for organizing repositories
|
|
10
|
+
* Does not require local clones - can reference remote repositories
|
|
11
|
+
*/
|
|
12
|
+
export interface Collection {
|
|
13
|
+
/** Unique identifier (UUID) */
|
|
14
|
+
id: string;
|
|
15
|
+
/** Display name (e.g., "Active Projects", "Reading List") */
|
|
16
|
+
name: string;
|
|
17
|
+
/** Optional description */
|
|
18
|
+
description?: string;
|
|
19
|
+
/** Optional theme identifier */
|
|
20
|
+
theme?: string;
|
|
21
|
+
/** Optional icon identifier */
|
|
22
|
+
icon?: string;
|
|
23
|
+
/** Default collection for new clones */
|
|
24
|
+
isDefault?: boolean;
|
|
25
|
+
/** Unix timestamp */
|
|
26
|
+
createdAt: number;
|
|
27
|
+
/** Unix timestamp */
|
|
28
|
+
updatedAt: number;
|
|
29
|
+
/** Optional path hint for clone suggestions */
|
|
30
|
+
suggestedClonePath?: string;
|
|
31
|
+
/** Extensible metadata */
|
|
32
|
+
metadata?: Record<string, unknown>;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Maps repositories to collections (many-to-many)
|
|
36
|
+
*
|
|
37
|
+
* Uses repository identity so all local clones of a repository
|
|
38
|
+
* share the same collection memberships
|
|
39
|
+
*/
|
|
40
|
+
export interface CollectionMembership {
|
|
41
|
+
/** Repository identity (e.g., "owner/name" for GitHub repos) */
|
|
42
|
+
repositoryId: string;
|
|
43
|
+
/** Collection identifier */
|
|
44
|
+
collectionId: string;
|
|
45
|
+
/** Unix timestamp when added */
|
|
46
|
+
addedAt: number;
|
|
47
|
+
/** Collection-specific metadata for this repository */
|
|
48
|
+
metadata?: {
|
|
49
|
+
/** Pin to top of collection */
|
|
50
|
+
pinned?: boolean;
|
|
51
|
+
/** Collection-specific notes */
|
|
52
|
+
notes?: string;
|
|
53
|
+
[key: string]: unknown;
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Storage structure for collections.json
|
|
58
|
+
*/
|
|
59
|
+
export interface CollectionsData {
|
|
60
|
+
version: string;
|
|
61
|
+
collections: Collection[];
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Storage structure for collection-memberships.json
|
|
65
|
+
*/
|
|
66
|
+
export interface CollectionMembershipsData {
|
|
67
|
+
version: string;
|
|
68
|
+
memberships: CollectionMembership[];
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,QAAQ,CAAC,EAAE;QACT,+BAA+B;QAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,gCAAgC;QAChC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACrC"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
package/package.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@principal-ai/alexandria-collections",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"author": "Principal AI Team",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "git+https://github.com/principal-ai/alexandria-collections.git"
|
|
8
|
+
},
|
|
9
|
+
"main": "dist/index.js",
|
|
10
|
+
"types": "dist/index.d.ts",
|
|
11
|
+
"exports": {
|
|
12
|
+
".": {
|
|
13
|
+
"types": "./dist/index.d.ts",
|
|
14
|
+
"import": "./dist/index.js",
|
|
15
|
+
"default": "./dist/index.js"
|
|
16
|
+
},
|
|
17
|
+
"./types": {
|
|
18
|
+
"types": "./dist/types.d.ts",
|
|
19
|
+
"default": "./dist/types.d.ts"
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"devDependencies": {
|
|
23
|
+
"@types/bun": "^1.1.20",
|
|
24
|
+
"@types/node": "^22.15.26",
|
|
25
|
+
"typescript": "^5.6.3"
|
|
26
|
+
},
|
|
27
|
+
"description": "Collection management for Principal AI Alexandria ecosystem",
|
|
28
|
+
"engines": {
|
|
29
|
+
"node": ">=18"
|
|
30
|
+
},
|
|
31
|
+
"files": [
|
|
32
|
+
"dist",
|
|
33
|
+
"README.md",
|
|
34
|
+
"LICENSE"
|
|
35
|
+
],
|
|
36
|
+
"keywords": [
|
|
37
|
+
"principal-ai",
|
|
38
|
+
"alexandria",
|
|
39
|
+
"collections",
|
|
40
|
+
"repositories"
|
|
41
|
+
],
|
|
42
|
+
"license": "Apache-2.0",
|
|
43
|
+
"private": false,
|
|
44
|
+
"scripts": {
|
|
45
|
+
"build": "bun run clean && tsc",
|
|
46
|
+
"clean": "rm -rf dist",
|
|
47
|
+
"test": "bun test",
|
|
48
|
+
"typecheck": "tsc --noEmit"
|
|
49
|
+
},
|
|
50
|
+
"type": "module"
|
|
51
|
+
}
|