@adaptware/eagles-db 0.1.88 → 0.1.89

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.
Files changed (31) hide show
  1. package/client/edge.js +7 -6
  2. package/client/index-browser.js +2 -1
  3. package/client/index.d.ts +2 -1
  4. package/client/index.js +7 -6
  5. package/client/package.json +1 -1
  6. package/client/schema.prisma +1 -0
  7. package/client/wasm.js +2 -1
  8. package/dist/index.d.ts +5 -5
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +6 -8
  11. package/dist/index.js.map +1 -1
  12. package/package.json +1 -1
  13. package/prisma/.DS_Store +0 -0
  14. package/prisma/migrations/20260415120000_remove_job_profile_current_phase/migration.sql +2 -0
  15. package/prisma/migrations/20260422120000_add_integration_provider_zoom/migration.sql +2 -0
  16. package/prisma/migrations/20260422140000_add_zoom_meeting_tables/migration.sql +57 -0
  17. package/prisma/migrations/20260422180000_add_zoom_webhook_event/migration.sql +18 -0
  18. package/prisma/migrations/20260423140000_add_interview_platform/migration.sql +6 -0
  19. package/prisma/migrations/20260423150000_remove_interview_zoom_topic/migration.sql +2 -0
  20. package/prisma/migrations/20260423160000_zoom_meeting_uuid/migration.sql +4 -0
  21. package/prisma/migrations/20260424120000_auth_module_user_provider_unique/migration.sql +5 -0
  22. package/prisma/migrations/20260424130000_zoom_meeting_zoom_host_user_id/migration.sql +6 -0
  23. package/prisma/migrations/20260425100000_zoom_participant_user_enum/migration.sql +22 -0
  24. package/prisma/migrations/20260425110000_zoom_participant_zoom_id_required/migration.sql +13 -0
  25. package/prisma/migrations/20260425120000_zoom_participant_id_nullable/migration.sql +4 -0
  26. package/prisma/migrations/20260429140000_drop_evaluation_plan_job_order_unique/migration.sql +5 -0
  27. package/prisma/migrations/20260429180000_eval_plan_timeline_optional_ongoing_duration/migration.sql +15 -0
  28. package/prisma/migrations/20260430120000_drop_assessment_library_metadata_fields/migration.sql +8 -0
  29. package/prisma/migrations/20260430140000_drop_question_question_type/migration.sql +5 -0
  30. package/prisma/migrations/migration_lock.toml +3 -0
  31. package/client/libquery_engine-darwin.dylib.node +0 -0
@@ -1,5 +1,5 @@
1
1
  {
2
- "name": "prisma-client-7ea14210ef898197a704ebe0c3225e71ec2e6f116fe2e1a030b6358d8c508f97",
2
+ "name": "prisma-client-7d4997fdd0ff01d2c55043d3b7bd0fede7c4bc49e2f37f9a62e0db934d404fa8",
3
3
  "main": "index.js",
4
4
  "types": "index.d.ts",
5
5
  "browser": "index-browser.js",
@@ -640,6 +640,7 @@ enum IntegrationProvider {
640
640
  GOOGLE
641
641
  MICROSOFT
642
642
  ZOOM
643
+ CALENDLY
643
644
  }
644
645
 
645
646
  enum IntegrationAuthType {
package/client/wasm.js CHANGED
@@ -1057,7 +1057,8 @@ exports.IntegrationProvider = exports.$Enums.IntegrationProvider = {
1057
1057
  LINKEDIN: 'LINKEDIN',
1058
1058
  GOOGLE: 'GOOGLE',
1059
1059
  MICROSOFT: 'MICROSOFT',
1060
- ZOOM: 'ZOOM'
1060
+ ZOOM: 'ZOOM',
1061
+ CALENDLY: 'CALENDLY'
1061
1062
  };
1062
1063
 
1063
1064
  exports.IntegrationAuthType = exports.$Enums.IntegrationAuthType = {
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { PrismaClient } from "../client/index.js";
1
+ import { PrismaClient } from '../client/index.js';
2
2
  export declare const prisma: PrismaClient<{
3
- log: ("error" | "warn")[] | ("error" | "query")[];
4
- }, "error" | "query" | "warn", import("../client/runtime/library.js").DefaultArgs>;
5
- export type { PrismaClient } from "../client/index.js";
6
- export * from "../client/index.js";
3
+ log: ("error" | "info" | "warn")[];
4
+ }, "error" | "info" | "warn", import("../client/runtime/library.js").DefaultArgs>;
5
+ export type { PrismaClient } from '../client/index.js';
6
+ export * from '../client/index.js';
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,eAAO,MAAM,MAAM;;kFAKjB,CAAC;AAGH,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,eAAO,MAAM,MAAM;;iFAEjB,CAAC;AAGH,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD,cAAc,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -1,21 +1,19 @@
1
- import { PrismaClient } from "../client/index.js";
1
+ import { PrismaClient } from '../client/index.js';
2
2
  // Never enable Prisma `query` logging — it prints full SQL to stdout.
3
3
  export const prisma = new PrismaClient({
4
- log: process.env.NODE_ENV === "development"
5
- ? ["error", "warn"]
6
- : ["error", "query"],
4
+ log: ['error', 'warn', 'info'],
7
5
  });
8
6
  // Export all Prisma types
9
- export * from "../client/index.js";
7
+ export * from '../client/index.js';
10
8
  // Graceful shutdown
11
- process.on("beforeExit", async () => {
9
+ process.on('beforeExit', async () => {
12
10
  await prisma.$disconnect();
13
11
  });
14
- process.on("SIGINT", async () => {
12
+ process.on('SIGINT', async () => {
15
13
  await prisma.$disconnect();
16
14
  process.exit(0);
17
15
  });
18
- process.on("SIGTERM", async () => {
16
+ process.on('SIGTERM', async () => {
19
17
  await prisma.$disconnect();
20
18
  process.exit(0);
21
19
  });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,sEAAsE;AACtE,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;IACrC,GAAG,EACD,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;QACpC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC;QACnB,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC;CACzB,CAAC,CAAC;AAKH,0BAA0B;AAC1B,cAAc,oBAAoB,CAAC;AAEnC,oBAAoB;AACpB,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;IAClC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;IAC9B,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;IAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;IAC/B,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;IAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,sEAAsE;AACtE,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;IACrC,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;CAC/B,CAAC,CAAC;AAKH,0BAA0B;AAC1B,cAAc,oBAAoB,CAAC;AAEnC,oBAAoB;AACpB,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;IAClC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;IAC9B,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;IAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;IAC/B,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;IAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaptware/eagles-db",
3
- "version": "0.1.88",
3
+ "version": "0.1.89",
4
4
  "description": "A Prisma client package for Treadspace database operations",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
Binary file
@@ -0,0 +1,2 @@
1
+ -- AlterTable
2
+ ALTER TABLE "JobProfile" DROP COLUMN IF EXISTS "current_phase";
@@ -0,0 +1,2 @@
1
+ -- AlterEnum (re-run safe only if your PG version supports IF NOT EXISTS; otherwise apply once)
2
+ ALTER TYPE "IntegrationProvider" ADD VALUE 'ZOOM';
@@ -0,0 +1,57 @@
1
+ -- CreateTable
2
+ CREATE TABLE "ZoomMeeting" (
3
+ "id" TEXT NOT NULL,
4
+ "interview_id" TEXT NOT NULL,
5
+ "zoom_meeting_id" TEXT NOT NULL,
6
+ "meeting_number" TEXT NOT NULL,
7
+ "join_url" TEXT NOT NULL,
8
+ "start_url" TEXT,
9
+ "password" TEXT,
10
+ "topic" TEXT,
11
+ "scheduled_start_time" TIMESTAMP(3),
12
+ "scheduled_end_time" TIMESTAMP(3),
13
+ "is_active" BOOLEAN NOT NULL DEFAULT true,
14
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
15
+ "updated_at" TIMESTAMP(3) NOT NULL,
16
+ "created_by" TEXT NOT NULL,
17
+ "updated_by" TEXT NOT NULL,
18
+
19
+ CONSTRAINT "ZoomMeeting_pkey" PRIMARY KEY ("id")
20
+ );
21
+
22
+ -- CreateTable
23
+ CREATE TABLE "ZoomMeetingParticipant" (
24
+ "id" TEXT NOT NULL,
25
+ "zoom_meeting_row_id" TEXT NOT NULL,
26
+ "zoom_participant_id" TEXT,
27
+ "user_name" TEXT,
28
+ "user_email" TEXT,
29
+ "role" TEXT,
30
+ "join_time" TIMESTAMP(3),
31
+ "leave_time" TIMESTAMP(3),
32
+ "is_active" BOOLEAN NOT NULL DEFAULT true,
33
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
34
+ "updated_at" TIMESTAMP(3) NOT NULL,
35
+ "created_by" TEXT NOT NULL,
36
+ "updated_by" TEXT NOT NULL,
37
+
38
+ CONSTRAINT "ZoomMeetingParticipant_pkey" PRIMARY KEY ("id")
39
+ );
40
+
41
+ -- CreateIndex
42
+ CREATE UNIQUE INDEX "ZoomMeeting_interview_id_key" ON "ZoomMeeting"("interview_id");
43
+
44
+ -- CreateIndex
45
+ CREATE INDEX "ZoomMeeting_interview_id_idx" ON "ZoomMeeting"("interview_id");
46
+
47
+ -- CreateIndex
48
+ CREATE INDEX "ZoomMeeting_zoom_meeting_id_idx" ON "ZoomMeeting"("zoom_meeting_id");
49
+
50
+ -- CreateIndex
51
+ CREATE INDEX "ZoomMeetingParticipant_zoom_meeting_row_id_idx" ON "ZoomMeetingParticipant"("zoom_meeting_row_id");
52
+
53
+ -- AddForeignKey
54
+ ALTER TABLE "ZoomMeeting" ADD CONSTRAINT "ZoomMeeting_interview_id_fkey" FOREIGN KEY ("interview_id") REFERENCES "Interview"("id") ON DELETE CASCADE ON UPDATE CASCADE;
55
+
56
+ -- AddForeignKey
57
+ ALTER TABLE "ZoomMeetingParticipant" ADD CONSTRAINT "ZoomMeetingParticipant_zoom_meeting_row_id_fkey" FOREIGN KEY ("zoom_meeting_row_id") REFERENCES "ZoomMeeting"("id") ON DELETE CASCADE ON UPDATE CASCADE;
@@ -0,0 +1,18 @@
1
+ -- CreateTable
2
+ CREATE TABLE "ZoomWebhookEvent" (
3
+ "id" TEXT NOT NULL,
4
+ "dedupe_key" TEXT NOT NULL,
5
+ "event" TEXT NOT NULL,
6
+ "created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
7
+
8
+ CONSTRAINT "ZoomWebhookEvent_pkey" PRIMARY KEY ("id")
9
+ );
10
+
11
+ -- CreateIndex
12
+ CREATE UNIQUE INDEX "ZoomWebhookEvent_dedupe_key_key" ON "ZoomWebhookEvent"("dedupe_key");
13
+
14
+ -- CreateIndex
15
+ CREATE INDEX "ZoomWebhookEvent_event_idx" ON "ZoomWebhookEvent"("event");
16
+
17
+ -- CreateIndex
18
+ CREATE INDEX "ZoomWebhookEvent_created_at_idx" ON "ZoomWebhookEvent"("created_at");
@@ -0,0 +1,6 @@
1
+ -- CreateEnum
2
+ CREATE TYPE "InterviewPlatform" AS ENUM ('TREADSPACE', 'ZOOM');
3
+
4
+ -- AlterTable
5
+ ALTER TABLE "Interview" ADD COLUMN "interview_platform" "InterviewPlatform" NOT NULL DEFAULT 'TREADSPACE';
6
+ ALTER TABLE "Interview" ADD COLUMN "zoom_topic" TEXT;
@@ -0,0 +1,2 @@
1
+ -- AlterTable
2
+ ALTER TABLE "Interview" DROP COLUMN IF EXISTS "zoom_topic";
@@ -0,0 +1,4 @@
1
+ -- Zoom meeting instance UUID for RTMS `meeting.rtms_started` correlation (webhook `meeting_uuid`).
2
+ ALTER TABLE "ZoomMeeting" ADD COLUMN IF NOT EXISTS "zoom_meeting_uuid" TEXT;
3
+
4
+ CREATE INDEX IF NOT EXISTS "ZoomMeeting_zoom_meeting_uuid_idx" ON "ZoomMeeting"("zoom_meeting_uuid");
@@ -0,0 +1,5 @@
1
+ -- AlterTable
2
+ ALTER TABLE "AuthModule" ADD COLUMN "metadata" JSONB NOT NULL DEFAULT '{}';
3
+
4
+ -- CreateIndex
5
+ CREATE UNIQUE INDEX "AuthModule_user_id_provider_key" ON "AuthModule"("user_id", "provider");
@@ -0,0 +1,6 @@
1
+ -- AlterTable
2
+ ALTER TABLE "ZoomMeeting" ADD COLUMN "zoom_host_user_id" TEXT;
3
+
4
+ UPDATE "ZoomMeeting" SET "zoom_host_user_id" = "created_by";
5
+
6
+ ALTER TABLE "ZoomMeeting" ALTER COLUMN "zoom_host_user_id" SET NOT NULL;
@@ -0,0 +1,22 @@
1
+ -- CreateEnum
2
+ CREATE TYPE "ZoomMeetingParticipantRole" AS ENUM ('CANDIDATE', 'INTERVIEWER');
3
+
4
+ -- Participant rows are re-derived on the next Zoom meeting upsert; old webhook denormalized rows are dropped.
5
+ TRUNCATE TABLE "ZoomMeetingParticipant";
6
+
7
+ -- AlterTable
8
+ ALTER TABLE "ZoomMeetingParticipant" DROP COLUMN "zoom_participant_id",
9
+ DROP COLUMN "user_name",
10
+ DROP COLUMN "user_email",
11
+ DROP COLUMN "join_time",
12
+ DROP COLUMN "leave_time",
13
+ DROP COLUMN "role";
14
+
15
+ ALTER TABLE "ZoomMeetingParticipant" ADD COLUMN "role" "ZoomMeetingParticipantRole" NOT NULL;
16
+ ALTER TABLE "ZoomMeetingParticipant" ADD COLUMN "user_id" TEXT NOT NULL;
17
+
18
+ -- AddForeignKey
19
+ ALTER TABLE "ZoomMeetingParticipant" ADD CONSTRAINT "ZoomMeetingParticipant_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
20
+
21
+ -- CreateIndex
22
+ CREATE INDEX "ZoomMeetingParticipant_user_id_idx" ON "ZoomMeetingParticipant"("user_id");
@@ -0,0 +1,13 @@
1
+ -- AlterTable
2
+ ALTER TABLE "ZoomMeetingParticipant" ADD COLUMN "zoom_participant_id" TEXT NOT NULL DEFAULT '';
3
+
4
+ UPDATE "ZoomMeetingParticipant" zmp
5
+ SET "zoom_participant_id" = COALESCE(NULLIF(TRIM(am."provider_account_id"), ''), '')
6
+ FROM "AuthModule" am
7
+ WHERE am."user_id" = zmp."user_id"
8
+ AND am."provider"::text = 'ZOOM'
9
+ AND am."is_active" = true;
10
+
11
+ ALTER TABLE "ZoomMeetingParticipant" ALTER COLUMN "zoom_participant_id" DROP DEFAULT;
12
+
13
+ CREATE INDEX "ZoomMeetingParticipant_zoom_participant_id_idx" ON "ZoomMeetingParticipant"("zoom_participant_id");
@@ -0,0 +1,4 @@
1
+ -- Optional: only present when that User has Zoom OAuth linked (typically interviewer; often unknown for candidate).
2
+ UPDATE "ZoomMeetingParticipant" SET "zoom_participant_id" = NULL WHERE "zoom_participant_id" = '';
3
+
4
+ ALTER TABLE "ZoomMeetingParticipant" ALTER COLUMN "zoom_participant_id" DROP NOT NULL;
@@ -0,0 +1,5 @@
1
+ -- DropUnique: allows reorder/swap without a two-phase order_no dance; ordering is enforced in app logic.
2
+ ALTER TABLE "EvaluationPlan" DROP CONSTRAINT IF EXISTS "EvaluationPlan_job_description_id_order_no_key";
3
+
4
+ -- Non-unique index for lookups by job + order (e.g. swap).
5
+ CREATE INDEX "EvaluationPlan_job_description_id_order_no_idx" ON "EvaluationPlan"("job_description_id", "order_no");
@@ -0,0 +1,15 @@
1
+ -- EvaluationPlan.timeline optional (legacy column; app uses duration/deadline/duration_unit).
2
+ ALTER TABLE "EvaluationPlan" ALTER COLUMN "timeline" DROP NOT NULL;
3
+
4
+ -- OngoingEvaluation: denormalized duration fields; migrate legacy timeline into duration (minutes) then drop timeline.
5
+ ALTER TABLE "OngoingEvaluation" ADD COLUMN "duration" INTEGER;
6
+ ALTER TABLE "OngoingEvaluation" ADD COLUMN "deadline" INTEGER;
7
+ ALTER TABLE "OngoingEvaluation" ADD COLUMN "duration_unit" "DurationUnit";
8
+
9
+ UPDATE "OngoingEvaluation"
10
+ SET
11
+ "duration" = "timeline",
12
+ "duration_unit" = 'MINUTES'::"DurationUnit"
13
+ WHERE "timeline" IS NOT NULL AND "duration" IS NULL;
14
+
15
+ ALTER TABLE "OngoingEvaluation" DROP COLUMN IF EXISTS "timeline";
@@ -0,0 +1,8 @@
1
+ -- Remove unused AssessmentLibrary metadata columns.
2
+ ALTER TABLE "AssessmentLibrary" DROP COLUMN IF EXISTS "assessment_type";
3
+ ALTER TABLE "AssessmentLibrary" DROP COLUMN IF EXISTS "description";
4
+ ALTER TABLE "AssessmentLibrary" DROP COLUMN IF EXISTS "assessment_category";
5
+ ALTER TABLE "AssessmentLibrary" DROP COLUMN IF EXISTS "created_by_ai";
6
+
7
+ -- Enum only referenced by dropped column.
8
+ DROP TYPE IF EXISTS "AssessmentCategory";
@@ -0,0 +1,5 @@
1
+ -- DropQuestion.question_type and enum QuestionType (replaced by structure-based inference in app code)
2
+
3
+ ALTER TABLE "Question" DROP COLUMN IF EXISTS "question_type";
4
+
5
+ DROP TYPE IF EXISTS "QuestionType";
@@ -0,0 +1,3 @@
1
+ # Please do not edit this file manually
2
+ # It should be added in your version-control system (e.g. Git)
3
+ provider = "postgresql"