@quadrokit/shared 0.1.0 → 0.2.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.
@@ -0,0 +1,57 @@
1
+ /** 4D REST catalog JSON (subset used by QuadroKit). */
2
+ export type CatalogAttributeKind = 'storage' | 'relatedEntity' | 'relatedEntities' | 'calculated' | 'alias';
3
+ export interface CatalogAttribute {
4
+ name: string;
5
+ kind: CatalogAttributeKind;
6
+ type?: string;
7
+ exposed?: boolean;
8
+ path?: string;
9
+ foreignKey?: string;
10
+ inverseName?: string;
11
+ reversePath?: boolean;
12
+ readOnly?: boolean;
13
+ behavior?: string;
14
+ simpleDate?: boolean;
15
+ not_null?: boolean;
16
+ identifying?: boolean;
17
+ }
18
+ export interface CatalogMethod {
19
+ name: string;
20
+ applyTo?: string;
21
+ scope?: string;
22
+ from?: string;
23
+ allowedOnHTTPGET?: boolean;
24
+ exposed?: boolean;
25
+ }
26
+ export interface CatalogDataClass {
27
+ name: string;
28
+ className: string;
29
+ collectionName: string;
30
+ exposed: boolean;
31
+ attributes: CatalogAttribute[];
32
+ methods?: CatalogMethod[];
33
+ key?: {
34
+ name: string;
35
+ }[];
36
+ }
37
+ export interface CatalogSingletonMethod {
38
+ name: string;
39
+ allowedOnHTTPGET?: boolean;
40
+ exposed?: boolean;
41
+ }
42
+ export interface CatalogSingleton {
43
+ name: string;
44
+ exposed: boolean;
45
+ methods: CatalogSingletonMethod[];
46
+ }
47
+ export interface CatalogJson {
48
+ __UNIQID?: string;
49
+ __BASEID?: string;
50
+ __NAME?: string;
51
+ properties?: Record<string, unknown>;
52
+ singletons?: CatalogSingleton[];
53
+ methods?: CatalogMethod[];
54
+ dataClasses?: CatalogDataClass[];
55
+ }
56
+ export declare function sessionCookieName(catalog: Pick<CatalogJson, '__NAME'>): string;
57
+ //# sourceMappingURL=catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,MAAM,MAAM,oBAAoB,GAC5B,SAAS,GACT,eAAe,GACf,iBAAiB,GACjB,YAAY,GACZ,OAAO,CAAA;AAEX,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,oBAAoB,CAAA;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,gBAAgB,EAAE,CAAA;IAC9B,OAAO,CAAC,EAAE,aAAa,EAAE,CAAA;IACzB,GAAG,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,sBAAsB,EAAE,CAAA;CAClC;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC/B,OAAO,CAAC,EAAE,aAAa,EAAE,CAAA;IACzB,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAA;CACjC;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,GAAG,MAAM,CAG9E"}
@@ -0,0 +1,5 @@
1
+ /** 4D REST catalog JSON (subset used by QuadroKit). */
2
+ export function sessionCookieName(catalog) {
3
+ const db = catalog.__NAME ?? 'default';
4
+ return `4DSID_${db}`;
5
+ }
@@ -0,0 +1,3 @@
1
+ export type { CatalogAttribute, CatalogAttributeKind, CatalogDataClass, CatalogJson, CatalogMethod, CatalogSingleton, CatalogSingletonMethod, } from './catalog.js';
2
+ export { sessionCookieName } from './catalog.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA"}
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ export { sessionCookieName } from './catalog.js';
package/package.json CHANGED
@@ -1,15 +1,22 @@
1
1
  {
2
2
  "name": "@quadrokit/shared",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "private": false,
5
5
  "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
6
8
  "exports": {
7
9
  ".": {
8
- "types": "./src/index.ts",
9
- "import": "./src/index.ts"
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
10
12
  }
11
13
  },
14
+ "files": [
15
+ "dist"
16
+ ],
12
17
  "scripts": {
18
+ "build": "tsc -p tsconfig.build.json",
19
+ "prepublishOnly": "bun run build",
13
20
  "typecheck": "tsc -p tsconfig.json --noEmit"
14
21
  },
15
22
  "devDependencies": {
package/src/catalog.ts DELETED
@@ -1,70 +0,0 @@
1
- /** 4D REST catalog JSON (subset used by QuadroKit). */
2
-
3
- export type CatalogAttributeKind =
4
- | 'storage'
5
- | 'relatedEntity'
6
- | 'relatedEntities'
7
- | 'calculated'
8
- | 'alias'
9
-
10
- export interface CatalogAttribute {
11
- name: string
12
- kind: CatalogAttributeKind
13
- type?: string
14
- exposed?: boolean
15
- path?: string
16
- foreignKey?: string
17
- inverseName?: string
18
- reversePath?: boolean
19
- readOnly?: boolean
20
- behavior?: string
21
- simpleDate?: boolean
22
- not_null?: boolean
23
- identifying?: boolean
24
- }
25
-
26
- export interface CatalogMethod {
27
- name: string
28
- applyTo?: string
29
- scope?: string
30
- from?: string
31
- allowedOnHTTPGET?: boolean
32
- exposed?: boolean
33
- }
34
-
35
- export interface CatalogDataClass {
36
- name: string
37
- className: string
38
- collectionName: string
39
- exposed: boolean
40
- attributes: CatalogAttribute[]
41
- methods?: CatalogMethod[]
42
- key?: { name: string }[]
43
- }
44
-
45
- export interface CatalogSingletonMethod {
46
- name: string
47
- allowedOnHTTPGET?: boolean
48
- exposed?: boolean
49
- }
50
-
51
- export interface CatalogSingleton {
52
- name: string
53
- exposed: boolean
54
- methods: CatalogSingletonMethod[]
55
- }
56
-
57
- export interface CatalogJson {
58
- __UNIQID?: string
59
- __BASEID?: string
60
- __NAME?: string
61
- properties?: Record<string, unknown>
62
- singletons?: CatalogSingleton[]
63
- methods?: CatalogMethod[]
64
- dataClasses?: CatalogDataClass[]
65
- }
66
-
67
- export function sessionCookieName(catalog: Pick<CatalogJson, '__NAME'>): string {
68
- const db = catalog.__NAME ?? 'default'
69
- return `4DSID_${db}`
70
- }
package/src/index.ts DELETED
@@ -1,10 +0,0 @@
1
- export type {
2
- CatalogAttribute,
3
- CatalogAttributeKind,
4
- CatalogDataClass,
5
- CatalogJson,
6
- CatalogMethod,
7
- CatalogSingleton,
8
- CatalogSingletonMethod,
9
- } from './catalog.js'
10
- export { sessionCookieName } from './catalog.js'
package/tsconfig.json DELETED
@@ -1,8 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.base.json",
3
- "compilerOptions": {
4
- "rootDir": "src",
5
- "noEmit": true
6
- },
7
- "include": ["src/**/*.ts"]
8
- }