@datapos/datapos-shared 0.3.413 → 0.3.415

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.
@@ -4,41 +4,30 @@
4
4
  * Defines the configuration metadata for a connector. Used for validation
5
5
  * of connector manifests and capability discovery at runtime.
6
6
  */
7
- /** Authentication method identifiers supported by a connector implementation. */
8
- export declare const connectorAuthMethodIdSchema: import('valibot').UnionSchema<readonly [import('valibot').LiteralSchema<"apiKey", undefined>, import('valibot').LiteralSchema<"disabled", undefined>, import('valibot').LiteralSchema<"oAuth2", undefined>, import('valibot').LiteralSchema<"none", undefined>], undefined>;
9
- /** A connector implementation variant. A single connector may expose multiple
10
- * implementations differing by auth method, limits, or vendor-specific behavior.
11
- */
12
- export declare const connectorImplementationSchema: import('valibot').ObjectSchema<{
13
- readonly authMethodId: import('valibot').UnionSchema<readonly [import('valibot').LiteralSchema<"apiKey", undefined>, import('valibot').LiteralSchema<"disabled", undefined>, import('valibot').LiteralSchema<"oAuth2", undefined>, import('valibot').LiteralSchema<"none", undefined>], undefined>;
14
- readonly activeConnectionCount: import('valibot').OptionalSchema<import('valibot').NumberSchema<undefined>, undefined>;
15
- readonly canDescribe: import('valibot').OptionalSchema<import('valibot').BooleanSchema<undefined>, undefined>;
16
- readonly id: import('valibot').OptionalSchema<import('valibot').StringSchema<undefined>, undefined>;
17
- readonly label: import('valibot').OptionalSchema<import('valibot').ObjectSchema<{
18
- readonly 'en-au': import('valibot').StringSchema<undefined>;
19
- readonly 'en-gb': import('valibot').StringSchema<undefined>;
20
- readonly 'en-us': import('valibot').StringSchema<undefined>;
21
- readonly 'es-es': import('valibot').StringSchema<undefined>;
22
- }, undefined>, undefined>;
23
- readonly maxConnectionCount: import('valibot').OptionalSchema<import('valibot').NumberSchema<undefined>, undefined>;
24
- readonly params: import('valibot').OptionalSchema<import('valibot').ArraySchema<import('valibot').RecordSchema<import('valibot').StringSchema<undefined>, import('valibot').StringSchema<undefined>, undefined>, undefined>, undefined>;
25
- }, undefined>;
26
- /** Category identifiers used for grouping and filtering connectors. */
27
- export declare const connectorCategoryIdSchema: import('valibot').UnionSchema<readonly [import('valibot').LiteralSchema<"application", undefined>, import('valibot').LiteralSchema<"curatedDataset", undefined>, import('valibot').LiteralSchema<"database", undefined>, import('valibot').LiteralSchema<"fileStore", undefined>], undefined>;
28
7
  /** Operation names a connector may support. */
29
- export declare const connectorOperationNameSchema: import('valibot').UnionSchema<readonly [import('valibot').LiteralSchema<"abortOperation", undefined>, import('valibot').LiteralSchema<"authenticateConnection", undefined>, import('valibot').LiteralSchema<"createObject", undefined>, import('valibot').LiteralSchema<"describeConnection", undefined>, import('valibot').LiteralSchema<"dropObject", undefined>, import('valibot').LiteralSchema<"findObjectFolderPath", undefined>, import('valibot').LiteralSchema<"getReadableStream", undefined>, import('valibot').LiteralSchema<"getRecord", undefined>, import('valibot').LiteralSchema<"listNodes", undefined>, import('valibot').LiteralSchema<"previewObject", undefined>, import('valibot').LiteralSchema<"removeRecords", undefined>, import('valibot').LiteralSchema<"retrieveChunks", undefined>, import('valibot').LiteralSchema<"retrieveRecords", undefined>, import('valibot').LiteralSchema<"upsertRecords", undefined>], undefined>;
8
+ declare const connectorOperationNameSchema: import('valibot').UnionSchema<readonly [import('valibot').LiteralSchema<"abortOperation", undefined>, import('valibot').LiteralSchema<"authenticateConnection", undefined>, import('valibot').LiteralSchema<"createObject", undefined>, import('valibot').LiteralSchema<"describeConnection", undefined>, import('valibot').LiteralSchema<"dropObject", undefined>, import('valibot').LiteralSchema<"findObjectFolderPath", undefined>, import('valibot').LiteralSchema<"getReadableStream", undefined>, import('valibot').LiteralSchema<"getRecord", undefined>, import('valibot').LiteralSchema<"listNodes", undefined>, import('valibot').LiteralSchema<"previewObject", undefined>, import('valibot').LiteralSchema<"removeRecords", undefined>, import('valibot').LiteralSchema<"retrieveChunks", undefined>, import('valibot').LiteralSchema<"retrieveRecords", undefined>, import('valibot').LiteralSchema<"upsertRecords", undefined>], undefined>;
30
9
  /** Connector data pipeline usage identifiers. */
31
- export declare const connectorUsageIdSchema: import('valibot').UnionSchema<readonly [import('valibot').LiteralSchema<"bidirectional", undefined>, import('valibot').LiteralSchema<"destination", undefined>, import('valibot').LiteralSchema<"source", undefined>, import('valibot').LiteralSchema<"unknown", undefined>], undefined>;
32
- export declare const connectorCategorySchema: import('valibot').ObjectSchema<{
10
+ declare const connectorUsageIdSchema: import('valibot').UnionSchema<readonly [import('valibot').LiteralSchema<"bidirectional", undefined>, import('valibot').LiteralSchema<"destination", undefined>, import('valibot').LiteralSchema<"source", undefined>, import('valibot').LiteralSchema<"unknown", undefined>], undefined>;
11
+ declare const connectorCategoryConfigSchema: import('valibot').ObjectSchema<{
33
12
  readonly id: import('valibot').StringSchema<undefined>;
34
- readonly label: import('valibot').StringSchema<undefined>;
13
+ readonly label: import('valibot').ObjectSchema<{
14
+ readonly 'en-au': import('valibot').OptionalSchema<import('valibot').StringSchema<undefined>, undefined>;
15
+ readonly 'en-gb': import('valibot').OptionalSchema<import('valibot').StringSchema<undefined>, undefined>;
16
+ readonly 'en-us': import('valibot').OptionalSchema<import('valibot').StringSchema<undefined>, undefined>;
17
+ readonly 'es-es': import('valibot').OptionalSchema<import('valibot').StringSchema<undefined>, undefined>;
18
+ }, undefined>;
35
19
  }, undefined>;
36
20
  /** Top-level connector configuration object. */
37
- export declare const connectorConfigSchema: import('valibot').ObjectSchema<{
21
+ declare const connectorConfigSchema: import('valibot').ObjectSchema<{
38
22
  readonly typeId: import('valibot').LiteralSchema<"connector", undefined>;
39
23
  readonly category: import('valibot').NullableSchema<import('valibot').ObjectSchema<{
40
24
  readonly id: import('valibot').StringSchema<undefined>;
41
- readonly label: import('valibot').StringSchema<undefined>;
25
+ readonly label: import('valibot').ObjectSchema<{
26
+ readonly 'en-au': import('valibot').OptionalSchema<import('valibot').StringSchema<undefined>, undefined>;
27
+ readonly 'en-gb': import('valibot').OptionalSchema<import('valibot').StringSchema<undefined>, undefined>;
28
+ readonly 'en-us': import('valibot').OptionalSchema<import('valibot').StringSchema<undefined>, undefined>;
29
+ readonly 'es-es': import('valibot').OptionalSchema<import('valibot').StringSchema<undefined>, undefined>;
30
+ }, undefined>;
42
31
  }, undefined>, undefined>;
43
32
  readonly categoryId: import('valibot').UnionSchema<readonly [import('valibot').LiteralSchema<"application", undefined>, import('valibot').LiteralSchema<"curatedDataset", undefined>, import('valibot').LiteralSchema<"database", undefined>, import('valibot').LiteralSchema<"fileStore", undefined>], undefined>;
44
33
  readonly implementations: import('valibot').RecordSchema<import('valibot').StringSchema<undefined>, import('valibot').ObjectSchema<{
@@ -85,3 +74,5 @@ export declare const connectorConfigSchema: import('valibot').ObjectSchema<{
85
74
  }, undefined>, undefined>;
86
75
  readonly statusId: import('valibot').UnionSchema<readonly [import('valibot').LiteralSchema<"alpha", undefined>, import('valibot').LiteralSchema<"beta", undefined>, import('valibot').LiteralSchema<"generalAvailability", undefined>, import('valibot').LiteralSchema<"notApplicable", undefined>, import('valibot').LiteralSchema<"preAlpha", undefined>, import('valibot').LiteralSchema<"proposed", undefined>, import('valibot').LiteralSchema<"releaseCandidate", undefined>, import('valibot').LiteralSchema<"unavailable", undefined>, import('valibot').LiteralSchema<"underReview", undefined>], undefined>;
87
76
  }, undefined>;
77
+ /** Exports. */
78
+ export { connectorCategoryConfigSchema, connectorConfigSchema, connectorOperationNameSchema, connectorUsageIdSchema };
@@ -3,20 +3,7 @@ import { Component } from '..';
3
3
  import { ToolConfig } from '../tool';
4
4
  import { ValueDelimiterId } from '../dataView';
5
5
  import { ConnectionConfig, ConnectionDescription, ConnectionNodeConfig } from './connection';
6
- import { connectorCategorySchema, connectorConfigSchema, connectorOperationNameSchema, connectorUsageIdSchema } from './connectorConfig.schema';
7
- /** Authentication method identifiers supported by a connector implementation. */
8
- /** Connector implementation. */
9
- /** Category identifiers used for grouping and filtering connectors. */
10
- /** Operation names a connector may support. */
11
- type ConnectorOperationName = InferOutput<typeof connectorOperationNameSchema>;
12
- /** Connector data pipeline usage identifiers. */
13
- type ConnectorUsageId = InferOutput<typeof connectorUsageIdSchema>;
14
- /** Connector configuration. */
15
- type ConnectorConfig = InferOutput<typeof connectorConfigSchema>;
16
- type ConnectorLocalisedConfig = Omit<ConnectorConfig, 'label' | 'description'> & {
17
- label: string;
18
- description: string;
19
- };
6
+ import { connectorCategoryConfigSchema, connectorConfigSchema, connectorOperationNameSchema, connectorUsageIdSchema } from './connectorConfig.schema';
20
7
  /** Connector runtime interface. */
21
8
  interface ConnectorInterface extends Component {
22
9
  abortController: AbortController | undefined;
@@ -38,6 +25,16 @@ interface ConnectorInterface extends Component {
38
25
  retrieveRecords?(connector: ConnectorInterface, options: RetrieveRecordsOptions, chunk: (records: (string[] | Record<string, unknown>)[]) => void, complete: (result: RetrieveRecordsSummary) => void): Promise<void>;
39
26
  upsertRecords?(connector: ConnectorInterface, options: UpsertRecordsOptions): Promise<void>;
40
27
  }
28
+ /** Operation names a connector may support. */
29
+ type ConnectorOperationName = InferOutput<typeof connectorOperationNameSchema>;
30
+ /** Connector data pipeline usage identifiers. */
31
+ type ConnectorUsageId = InferOutput<typeof connectorUsageIdSchema>;
32
+ /** Connector configuration. */
33
+ type ConnectorConfig = InferOutput<typeof connectorConfigSchema>;
34
+ type ConnectorLocalisedConfig = Omit<ConnectorConfig, 'label' | 'description'> & {
35
+ label: string;
36
+ description: string;
37
+ };
41
38
  /** Connector operation options. */
42
39
  interface ConnectorOperationOptions {
43
40
  accountId?: string;
@@ -131,11 +128,15 @@ interface UpsertRecordsOptions extends ConnectorOperationOptions {
131
128
  records: Record<string, unknown>[];
132
129
  path: string;
133
130
  }
134
- /** Types/Interfaces/Operations - Connector category. */
135
- type ConnectorCategory = InferOutput<typeof connectorCategorySchema>;
136
- declare const getConnectorCategory: (id: string, localeId?: import('../../index').LocaleCode) => ConnectorCategory;
131
+ /** Connector category configuration. */
132
+ type ConnectorCategoryConfig = InferOutput<typeof connectorCategoryConfigSchema>;
133
+ type ConnectorCategoryLocalisedConfig = Omit<ConnectorCategoryConfig, 'label'> & {
134
+ label: string;
135
+ };
136
+ /** Construct connector category configuration. */
137
+ declare const constructConnectorCategoryConfig: (id: string, localeId?: import('../../locale').LocaleCode) => ConnectorCategoryLocalisedConfig;
137
138
  /** Exports. */
138
139
  export { connectorConfigSchema } from './connectorConfig.schema';
139
- export { getConnectorCategory };
140
+ export { constructConnectorCategoryConfig };
140
141
  export type { ConnectionColumnConfig, ConnectionConfig, ConnectionNodeConfig, Encoding, UsageTypeId } from './connection';
141
142
  export type { ConnectorConfig, ConnectorInterface, ConnectorLocalisedConfig, ConnectorOperationName, ConnectorOperationOptions, ConnectorUsageId, CreateObjectOptions, DropObjectOptions, FindObjectFolderPathOptions, GetReadableStreamOptions, GetRecordResult, GetRecordOptions, ListNodesResult, ListNodesOptions, PreviewObjectResult, PreviewObjectOptions, RemoveRecordsOptions, RetrieveChunksOptions, RetrieveRecordsOptions, RetrieveRecordsSummary, UpsertRecordsOptions };
@@ -1,13 +1,13 @@
1
1
  import { InferOutput } from 'valibot';
2
2
  import { contextConfigSchema } from './contextConfig.schema';
3
- import { LocalisedString } from '../../index';
3
+ import { LocalisedString } from '../../locale';
4
4
  import { ModuleConfig } from '../module';
5
5
  import { Component, ComponentConfig, ComponentReference } from '..';
6
6
  export interface Context extends Component {
7
7
  readonly config: ContextConfig;
8
8
  list(settings?: ContextListSettings): Promise<ContextListResult>;
9
9
  }
10
- export type ContextOperationSettings = object;
10
+ export type ContextOperationOptions = object;
11
11
  export type ContextListSettings = object;
12
12
  export interface ContextListResult {
13
13
  models: ContextModelGroupConfig[];
@@ -54,20 +54,20 @@ interface DataFormat {
54
54
  id: string;
55
55
  label: string;
56
56
  }
57
- export declare const getDataFormat: (id: string, localeId?: import('../../index').LocaleCode) => DataFormat;
58
- export declare const getDataFormats: (localeId?: import('../../index').LocaleCode) => DataFormat[];
57
+ export declare const getDataFormat: (id: string, localeId?: import('../../locale').LocaleCode) => DataFormat;
58
+ export declare const getDataFormats: (localeId?: import('../../locale').LocaleCode) => DataFormat[];
59
59
  interface RecordDelimiter {
60
60
  id: string;
61
61
  label: string;
62
62
  }
63
- export declare const getRecordDelimiter: (id: string, localeId?: import('../../index').LocaleCode) => RecordDelimiter;
64
- export declare const getRecordDelimiters: (localeId?: import('../../index').LocaleCode) => RecordDelimiter[];
63
+ export declare const getRecordDelimiter: (id: string, localeId?: import('../../locale').LocaleCode) => RecordDelimiter;
64
+ export declare const getRecordDelimiters: (localeId?: import('../../locale').LocaleCode) => RecordDelimiter[];
65
65
  interface ValueDelimiter {
66
66
  id: string;
67
67
  label: string;
68
68
  }
69
- export declare const getValueDelimiter: (id: string, localeId?: import('../../index').LocaleCode) => ValueDelimiter;
70
- export declare const getValueDelimiters: (localeId?: import('../../index').LocaleCode) => ValueDelimiter[];
69
+ export declare const getValueDelimiter: (id: string, localeId?: import('../../locale').LocaleCode) => ValueDelimiter;
70
+ export declare const getValueDelimiters: (localeId?: import('../../locale').LocaleCode) => ValueDelimiter[];
71
71
  export type ParsedValue = bigint | boolean | number | string | null;
72
72
  export type DataFormatId = 'dtv' | 'e/e' | 'jsonArray' | 'spss' | 'xls' | 'xlsx' | 'xml';
73
73
  export type RecordDelimiterId = '\n' | '\r' | '\r\n';
@@ -1,15 +1,16 @@
1
1
  import { InferOutput } from 'valibot';
2
- import { componentConfigSchema, componentStatusSchema } from './componentConfig.schema';
3
- import { LocaleCode } from '../index';
2
+ import { componentConfigSchema, componentReferenceSchema, componentStatusSchema } from './componentConfig.schema';
3
+ import { LocaleCode } from '../locale';
4
4
  /** Component. */
5
5
  interface Component {
6
6
  readonly config: ComponentConfig;
7
7
  }
8
8
  type ComponentConfig = InferOutput<typeof componentConfigSchema>;
9
+ type ComponentReference = InferOutput<typeof componentReferenceSchema>;
9
10
  type ComponentStatus = InferOutput<typeof componentStatusSchema>;
10
11
  declare function getComponentStatus(id: string, localeId?: LocaleCode): ComponentStatus;
11
12
  /** Exports */
12
13
  export { getComponentStatus };
13
14
  export { componentConfigSchema } from './componentConfig.schema';
14
- export type { Component, ComponentConfig };
15
+ export type { Component, ComponentConfig, ComponentReference };
15
16
  export type { ModuleConfig, ModuleTypeId } from './module';
@@ -2,35 +2,44 @@ import { ConnectionConfig } from '../component/connector/connection';
2
2
  import { ConnectorOperationOptions } from '../component/connector';
3
3
  import { ModuleConfig } from '../component/module';
4
4
  import { ToolConfig } from '../component/tool';
5
- import { ContextCallbackData, ContextConfig, ContextOperationSettings } from '../component/context';
5
+ import { ContextCallbackData, ContextConfig, ContextOperationOptions } from '../component/context';
6
6
  import { DataViewContentAuditConfig, EncodingConfig, ValueDelimiterId } from '../component/dataView';
7
+ /** Engine runtime interface. */
8
+ interface EngineRuntimeInterface {
9
+ getEncodingConfigs: (localeId: string) => EncodingConfig[];
10
+ invokeWorker(errorEventCallback: (errorEvent: ErrorEvent) => void): EngineWorkerInterface;
11
+ }
12
+ /** Engine worker interface. */
13
+ interface EngineWorkerInterface {
14
+ initialise: (options: EngineWorkerInitialiseOptions) => Promise<void>;
15
+ processConnectorRequest: (id: string, connectionConfig: ConnectionConfig, options: ConnectorOperationOptions, callback?: (callbackData: ConnectorCallbackData) => void) => Promise<unknown>;
16
+ processContextRequest: (id: string, contextConfig: ContextConfig, options: ContextOperationOptions, callback?: (callbackData: ContextCallbackData) => void) => Promise<unknown>;
17
+ processTestRequest: (settings: TestSettings) => Promise<Record<string, unknown>>;
18
+ }
19
+ /** Engine worker initialise options. */
20
+ interface EngineWorkerInitialiseOptions {
21
+ connectorStorageURLPrefix: string;
22
+ toolConfigs: ToolConfig[];
23
+ }
7
24
  /** Engine configuration. */
8
25
  interface EngineConfig extends ModuleConfig {
9
26
  typeId: 'engine';
10
27
  }
11
- /** Engine initialise settings. */
12
- interface EngineInitialiseSettings {
13
- connectorStorageURLPrefix: string;
14
- toolConfigs: ToolConfig[];
28
+ /** Connector callback data. */
29
+ interface ConnectorCallbackData {
30
+ typeId: string;
31
+ properties: Record<string, unknown>;
15
32
  }
16
- type InitialiseEngine = (settings: EngineInitialiseSettings) => Promise<void>;
17
- type ProcessConnectorRequest = (id: string, connectionConfig: ConnectionConfig, settings: ConnectorOperationOptions, callback?: (callbackData: ContextCallbackData) => void) => Promise<unknown>;
18
- interface AuditContentSettings extends ConnectorOperationOptions {
33
+ /** Audit object content options and result. */
34
+ interface AuditObjectContentOptions extends ConnectorOperationOptions {
19
35
  chunkSize?: number;
20
36
  encodingId: string;
21
37
  path: string;
22
38
  valueDelimiterId: ValueDelimiterId;
23
39
  }
24
- interface AuditContentResult {
40
+ interface AuditObjectContentResult {
25
41
  contentAuditConfig: DataViewContentAuditConfig;
26
42
  }
27
- /** Connector callback data. */
28
- interface ConnectorCallbackData {
29
- typeId: string;
30
- properties: Record<string, unknown>;
31
- }
32
- type ProcessContextRequest = (id: string, contextConfig: ContextConfig, settings: ContextOperationSettings, callback?: (callbackData: ConnectorCallbackData) => void) => Promise<unknown>;
33
- type ProcessTestRequest = (settings: TestSettings) => Promise<Record<string, unknown>>;
34
43
  interface TestSettings {
35
44
  action?: string;
36
45
  delimiter?: string;
@@ -38,15 +47,5 @@ interface TestSettings {
38
47
  hasHeaders?: boolean;
39
48
  readable: ReadableStream<Uint8Array>;
40
49
  }
41
- interface EngineInterface {
42
- getEncodingConfigs: (localeId: string) => EncodingConfig[];
43
- invokeWorker(errorEventCallback: (errorEvent: ErrorEvent) => void): EngineWorker;
44
- }
45
- interface EngineWorker {
46
- initialise: InitialiseEngine;
47
- processConnectorRequest: ProcessConnectorRequest;
48
- processContextRequest: ProcessContextRequest;
49
- processTestRequest: ProcessTestRequest;
50
- }
51
50
  /** Exports. */
52
- export type { AuditContentSettings, AuditContentResult, ConnectorCallbackData, EngineConfig, EngineInterface, EngineWorker, EngineInitialiseSettings, TestSettings };
51
+ export type { AuditObjectContentOptions, AuditObjectContentResult, ConnectorCallbackData, EngineConfig, EngineRuntimeInterface, EngineWorkerInitialiseOptions, EngineWorkerInterface, TestSettings };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Error classes and utilities.
2
+ * Error constants, type declarations, classes, runtime utilities and local helpers.
3
3
  */
4
4
  /** Serializable representation of an error and its cause chain.
5
5
  * Used for logging, reporting, and transport across process or network boundaries.
@@ -2,8 +2,6 @@
2
2
  * Shared composables, constants, errors, interfaces, schemas, types and utilities.
3
3
  */
4
4
  /** Interfaces/Types */
5
- export type LocaleCode = 'en-au' | 'en-gb' | 'en-us' | 'es-es';
6
- export type LocalisedString = Record<LocaleCode, string>;
7
5
  /** Interfaces/Types - Context. */
8
6
  export { contextConfigSchema } from './component/context';
9
7
  export type { Context, ContextConfig, ContextLocalisedConfig, ContextListSettings, ContextListResult, ContextOperation, ContextCallbackData } from './component/context';
@@ -41,6 +39,5 @@ export type { PresentationCategoryId, PresentationCartesianTypeId, PresentationP
41
39
  export { type CytoscapeJSView, useCytoscapeJS } from './composables/useCytoscapeJS';
42
40
  export { useDataTable } from './composables/useDataTable';
43
41
  /** Constants */
44
- export declare const DEFAULT_LOCALE_CODE: LocaleCode;
45
42
  /** Utilities */
46
43
  export { getDataFormats, getRecordDelimiters, getValueDelimiters } from './component/dataView';
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Locale constants and type declarations.
3
+ */
4
+ /** Constants */
5
+ declare const DEFAULT_LOCALE_CODE: LocaleCode;
6
+ /** Locale codes. */
7
+ type LocaleCode = 'en-au' | 'en-gb' | 'en-us' | 'es-es';
8
+ /** Localised string. */
9
+ type LocalisedString = Record<LocaleCode, string>;
10
+ /** Exports. */
11
+ export { DEFAULT_LOCALE_CODE };
12
+ export type { LocaleCode, LocalisedString };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@datapos/datapos-shared",
3
- "version": "0.3.413",
3
+ "version": "0.3.415",
4
4
  "description": "A library containing common constants, types and utilities used across all Data Positioning projects.",
5
5
  "license": "MIT",
6
6
  "author": "Jonathan Terrell <terrell.jm@gmail.com>",