@kubun/store-connector 0.13.0 → 0.14.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/lib/api.d.ts CHANGED
@@ -26,9 +26,6 @@ export type PendingAuthRecord = {
26
26
  createdAt: number;
27
27
  };
28
28
  export type ConnectorStoreAPI = {
29
- getCredentialEntryID(providerName: string, ownerDID: string): Promise<string | null>;
30
- setCredentialEntryID(providerName: string, ownerDID: string, entryID: string): Promise<void>;
31
- deleteCredentialEntryID(providerName: string, ownerDID: string): Promise<void>;
32
29
  getSyncState(connectorName: string, ownerDID: string): Promise<SyncState | null>;
33
30
  setSyncState(connectorName: string, ownerDID: string, state: SyncState): Promise<void>;
34
31
  deleteSyncState(connectorName: string, ownerDID: string): Promise<void>;
package/lib/api.js CHANGED
@@ -20,27 +20,6 @@ function rowToSyncState(row) {
20
20
  // --- Factory function ---
21
21
  export function createConnectorStore(db, _adapter) {
22
22
  return {
23
- // --- Credential operations ---
24
- async getCredentialEntryID (providerName, ownerDID) {
25
- const row = await db.selectFrom('kubun_connector_credentials').select('entry_id').where('provider_name', '=', providerName).where('owner_did', '=', ownerDID).executeTakeFirst();
26
- if (row == null) return null;
27
- return row.entry_id;
28
- },
29
- async setCredentialEntryID (providerName, ownerDID, entryID) {
30
- await db.insertInto('kubun_connector_credentials').values({
31
- provider_name: providerName,
32
- owner_did: ownerDID,
33
- entry_id: entryID
34
- }).onConflict((oc)=>oc.columns([
35
- 'provider_name',
36
- 'owner_did'
37
- ]).doUpdateSet({
38
- entry_id: entryID
39
- })).execute();
40
- },
41
- async deleteCredentialEntryID (providerName, ownerDID) {
42
- await db.deleteFrom('kubun_connector_credentials').where('provider_name', '=', providerName).where('owner_did', '=', ownerDID).execute();
43
- },
44
23
  // --- Sync state operations ---
45
24
  async getSyncState (connectorName, ownerDID) {
46
25
  const row = await db.selectFrom('kubun_connector_sync_state').selectAll().where('connector_name', '=', connectorName).where('owner_did', '=', ownerDID).executeTakeFirst();
package/lib/index.d.ts CHANGED
@@ -5,4 +5,4 @@ export { createConnectorStore } from './api.js';
5
5
  export { connectorStoreDefinition } from './definition.js';
6
6
  export declare const CONNECTOR_STORE: "connector";
7
7
  export declare function getConnectorStore(provider: StoreProvider): Promise<ConnectorStoreAPI>;
8
- export type { ConnectorCredential, ConnectorCredentialTable, ConnectorSyncState, ConnectorSyncStateTable, ConnectorTables, } from './tables.js';
8
+ export type { ConnectorSyncState, ConnectorSyncStateTable, ConnectorTables, } from './tables.js';
package/lib/migrations.js CHANGED
@@ -11,11 +11,6 @@ export function getConnectorMigrations(ctx) {
11
11
  'connector_name',
12
12
  'owner_did'
13
13
  ]).execute();
14
- // Connector credentials
15
- await db.schema.createTable('kubun_connector_credentials').ifNotExists().addColumn('provider_name', t.text, (col)=>col.notNull()).addColumn('owner_did', t.text, (col)=>col.notNull()).addColumn('entry_id', t.text, (col)=>col.notNull()).addPrimaryKeyConstraint('kubun_connector_credentials_pkey', [
16
- 'provider_name',
17
- 'owner_did'
18
- ]).execute();
19
14
  // Pending OAuth authorizations: state + PKCE verifier persisted between the
20
15
  // authorize redirect and the callback. State is single-use, consumed on read.
21
16
  await db.schema.createTable('kubun_connector_pending_auth').ifNotExists().addColumn('state', t.text, (col)=>col.notNull().primaryKey()).addColumn('code_verifier', t.text, (col)=>col.notNull()).addColumn('provider', t.text, (col)=>col.notNull()).addColumn('owner_did', t.text, (col)=>col.notNull())// The wrappable spelling of owner_did, kept beside it rather than
@@ -28,7 +23,6 @@ export function getConnectorMigrations(ctx) {
28
23
  },
29
24
  async down (db) {
30
25
  await db.schema.dropTable('kubun_connector_pending_auth').ifExists().execute();
31
- await db.schema.dropTable('kubun_connector_credentials').ifExists().execute();
32
26
  await db.schema.dropTable('kubun_connector_sync_state').ifExists().execute();
33
27
  }
34
28
  };
package/lib/tables.d.ts CHANGED
@@ -10,16 +10,6 @@ export type ConnectorSyncStateTable = {
10
10
  lease_expires_at: number | null;
11
11
  };
12
12
  export type ConnectorSyncState = Selectable<ConnectorSyncStateTable>;
13
- /**
14
- * A pointer, not a secret. The token lives in a credential entry; this table
15
- * only records which entry holds the credential for a `(provider, owner)` pair.
16
- */
17
- export type ConnectorCredentialTable = {
18
- provider_name: string;
19
- owner_did: string;
20
- entry_id: string;
21
- };
22
- export type ConnectorCredential = Selectable<ConnectorCredentialTable>;
23
13
  export type ConnectorPendingAuthTable = {
24
14
  state: string;
25
15
  code_verifier: string;
@@ -42,6 +32,5 @@ export type ConnectorPendingAuthTable = {
42
32
  export type ConnectorPendingAuth = Selectable<ConnectorPendingAuthTable>;
43
33
  export type ConnectorTables = {
44
34
  kubun_connector_sync_state: ConnectorSyncStateTable;
45
- kubun_connector_credentials: ConnectorCredentialTable;
46
35
  kubun_connector_pending_auth: ConnectorPendingAuthTable;
47
36
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kubun/store-connector",
3
- "version": "0.13.0",
3
+ "version": "0.14.0",
4
4
  "keywords": [],
5
5
  "license": "see LICENSE.md",
6
6
  "sideEffects": false,
@@ -15,14 +15,14 @@
15
15
  "LICENSE.md"
16
16
  ],
17
17
  "dependencies": {
18
- "kysely": "^0.29.5",
19
- "@kubun/db-adapter": "^0.13.0",
20
- "@kubun/db": "^0.13.0"
18
+ "@kubun/db": "^0.14.0",
19
+ "@kubun/db-adapter": "^0.14.0",
20
+ "kysely": "^0.29.5"
21
21
  },
22
22
  "devDependencies": {
23
- "@testcontainers/postgresql": "^12.1.0",
24
- "@kubun/db-better-sqlite": "^0.13.0",
25
- "@kubun/db-postgres": "^0.13.0"
23
+ "@kubun/db-better-sqlite": "^0.14.0",
24
+ "@kubun/db-postgres": "^0.14.0",
25
+ "@testcontainers/postgresql": "^12.1.0"
26
26
  },
27
27
  "publishConfig": {
28
28
  "access": "public"