@experts_hub/shared 1.0.483 → 1.0.485
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/entities/dispute.entity.d.ts +4 -0
- package/dist/entities/index.d.ts +1 -0
- package/dist/entities/skill-catalog.entity.d.ts +14 -0
- package/dist/entities/user.entity.d.ts +2 -0
- package/dist/index.d.mts +21 -1
- package/dist/index.d.ts +21 -1
- package/dist/index.js +219 -134
- package/dist/index.mjs +154 -66
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -260,6 +260,7 @@ __export(index_exports, {
|
|
|
260
260
|
SignContractForFreelancerDto: () => SignContractForFreelancerDto,
|
|
261
261
|
Signature: () => Signature,
|
|
262
262
|
Skill: () => Skill,
|
|
263
|
+
SkillCatalog: () => SkillCatalog,
|
|
263
264
|
State: () => State,
|
|
264
265
|
Step: () => Step,
|
|
265
266
|
StripeLog: () => StripeLog,
|
|
@@ -4894,6 +4895,22 @@ var DisputeStatusEnum = /* @__PURE__ */ ((DisputeStatusEnum2) => {
|
|
|
4894
4895
|
})(DisputeStatusEnum || {});
|
|
4895
4896
|
var Dispute = class extends BaseEntity {
|
|
4896
4897
|
};
|
|
4898
|
+
__decorateClass([
|
|
4899
|
+
(0, import_typeorm54.Column)({ name: "client_id", type: "integer", nullable: true }),
|
|
4900
|
+
(0, import_typeorm54.Index)()
|
|
4901
|
+
], Dispute.prototype, "clientId", 2);
|
|
4902
|
+
__decorateClass([
|
|
4903
|
+
(0, import_typeorm54.ManyToOne)(() => User, (user) => user.clientDisputes),
|
|
4904
|
+
(0, import_typeorm54.JoinColumn)({ name: "client_id" })
|
|
4905
|
+
], Dispute.prototype, "client", 2);
|
|
4906
|
+
__decorateClass([
|
|
4907
|
+
(0, import_typeorm54.Column)({ name: "freelancer_id", type: "integer", nullable: true }),
|
|
4908
|
+
(0, import_typeorm54.Index)()
|
|
4909
|
+
], Dispute.prototype, "freelancerId", 2);
|
|
4910
|
+
__decorateClass([
|
|
4911
|
+
(0, import_typeorm54.ManyToOne)(() => User, (user) => user.freelancerDisputes),
|
|
4912
|
+
(0, import_typeorm54.JoinColumn)({ name: "freelancer_id" })
|
|
4913
|
+
], Dispute.prototype, "freelancer", 2);
|
|
4897
4914
|
__decorateClass([
|
|
4898
4915
|
(0, import_typeorm54.Column)({ name: "dispute_unique_id", type: "varchar", unique: true })
|
|
4899
4916
|
], Dispute.prototype, "disputeUniqueId", 2);
|
|
@@ -5477,6 +5494,12 @@ __decorateClass([
|
|
|
5477
5494
|
__decorateClass([
|
|
5478
5495
|
(0, import_typeorm58.OneToMany)(() => StripeTransaction, (stripeTransaction) => stripeTransaction.user, { cascade: true })
|
|
5479
5496
|
], User.prototype, "stripeTransactions", 2);
|
|
5497
|
+
__decorateClass([
|
|
5498
|
+
(0, import_typeorm58.OneToMany)(() => Dispute, (dispute) => dispute.client)
|
|
5499
|
+
], User.prototype, "clientDisputes", 2);
|
|
5500
|
+
__decorateClass([
|
|
5501
|
+
(0, import_typeorm58.OneToMany)(() => Dispute, (dispute) => dispute.freelancer)
|
|
5502
|
+
], User.prototype, "freelancerDisputes", 2);
|
|
5480
5503
|
User = __decorateClass([
|
|
5481
5504
|
(0, import_typeorm58.Entity)("users")
|
|
5482
5505
|
], User);
|
|
@@ -7443,88 +7466,149 @@ Skill = __decorateClass([
|
|
|
7443
7466
|
(0, import_typeorm62.Entity)("skills")
|
|
7444
7467
|
], Skill);
|
|
7445
7468
|
|
|
7446
|
-
// src/entities/
|
|
7469
|
+
// src/entities/skill-catalog.entity.ts
|
|
7447
7470
|
var import_typeorm63 = require("typeorm");
|
|
7471
|
+
var SkillCatalog = class extends BaseEntity {
|
|
7472
|
+
};
|
|
7473
|
+
__decorateClass([
|
|
7474
|
+
(0, import_typeorm63.Column)({ name: "canonical_name", type: "varchar", length: 100, unique: true }),
|
|
7475
|
+
(0, import_typeorm63.Index)()
|
|
7476
|
+
], SkillCatalog.prototype, "canonicalName", 2);
|
|
7477
|
+
__decorateClass([
|
|
7478
|
+
(0, import_typeorm63.Column)({
|
|
7479
|
+
name: "aliases",
|
|
7480
|
+
type: "text",
|
|
7481
|
+
array: true,
|
|
7482
|
+
default: "{}"
|
|
7483
|
+
})
|
|
7484
|
+
], SkillCatalog.prototype, "aliases", 2);
|
|
7485
|
+
__decorateClass([
|
|
7486
|
+
(0, import_typeorm63.Column)({
|
|
7487
|
+
name: "variations",
|
|
7488
|
+
type: "jsonb",
|
|
7489
|
+
default: "{}"
|
|
7490
|
+
})
|
|
7491
|
+
], SkillCatalog.prototype, "variations", 2);
|
|
7492
|
+
__decorateClass([
|
|
7493
|
+
(0, import_typeorm63.Column)({ name: "category", type: "varchar", length: 50, nullable: true })
|
|
7494
|
+
], SkillCatalog.prototype, "category", 2);
|
|
7495
|
+
__decorateClass([
|
|
7496
|
+
(0, import_typeorm63.Column)({ name: "parent_skill", type: "varchar", length: 100, nullable: true })
|
|
7497
|
+
], SkillCatalog.prototype, "parentSkill", 2);
|
|
7498
|
+
__decorateClass([
|
|
7499
|
+
(0, import_typeorm63.Column)({
|
|
7500
|
+
name: "related_skills",
|
|
7501
|
+
type: "text",
|
|
7502
|
+
array: true,
|
|
7503
|
+
default: "{}"
|
|
7504
|
+
})
|
|
7505
|
+
], SkillCatalog.prototype, "relatedSkills", 2);
|
|
7506
|
+
__decorateClass([
|
|
7507
|
+
(0, import_typeorm63.Column)({ name: "usage_count", type: "integer", default: 0 }),
|
|
7508
|
+
(0, import_typeorm63.Index)()
|
|
7509
|
+
], SkillCatalog.prototype, "usageCount", 2);
|
|
7510
|
+
__decorateClass([
|
|
7511
|
+
(0, import_typeorm63.Column)({ name: "is_verified", type: "boolean", default: false })
|
|
7512
|
+
], SkillCatalog.prototype, "isVerified", 2);
|
|
7513
|
+
__decorateClass([
|
|
7514
|
+
(0, import_typeorm63.Column)({ name: "first_seen_date", type: "date" })
|
|
7515
|
+
], SkillCatalog.prototype, "firstSeenDate", 2);
|
|
7516
|
+
__decorateClass([
|
|
7517
|
+
(0, import_typeorm63.Column)({ name: "last_updated_date", type: "date" })
|
|
7518
|
+
], SkillCatalog.prototype, "lastUpdatedDate", 2);
|
|
7519
|
+
__decorateClass([
|
|
7520
|
+
(0, import_typeorm63.Column)({
|
|
7521
|
+
name: "search_vector",
|
|
7522
|
+
type: "tsvector",
|
|
7523
|
+
nullable: true
|
|
7524
|
+
})
|
|
7525
|
+
], SkillCatalog.prototype, "searchVector", 2);
|
|
7526
|
+
SkillCatalog = __decorateClass([
|
|
7527
|
+
(0, import_typeorm63.Entity)("skill_catalogs")
|
|
7528
|
+
], SkillCatalog);
|
|
7529
|
+
|
|
7530
|
+
// src/entities/job-role.entity.ts
|
|
7531
|
+
var import_typeorm64 = require("typeorm");
|
|
7448
7532
|
var JobRoles = class extends BaseEntity {
|
|
7449
7533
|
};
|
|
7450
7534
|
__decorateClass([
|
|
7451
|
-
(0,
|
|
7535
|
+
(0, import_typeorm64.Column)({ name: "slug", type: "varchar", nullable: true, unique: true })
|
|
7452
7536
|
], JobRoles.prototype, "slug", 2);
|
|
7453
7537
|
__decorateClass([
|
|
7454
|
-
(0,
|
|
7538
|
+
(0, import_typeorm64.Column)({ name: "name", type: "varchar", nullable: true })
|
|
7455
7539
|
], JobRoles.prototype, "name", 2);
|
|
7456
7540
|
__decorateClass([
|
|
7457
|
-
(0,
|
|
7541
|
+
(0, import_typeorm64.Column)({ name: "is_active", type: "boolean", default: true })
|
|
7458
7542
|
], JobRoles.prototype, "isActive", 2);
|
|
7459
7543
|
JobRoles = __decorateClass([
|
|
7460
|
-
(0,
|
|
7544
|
+
(0, import_typeorm64.Entity)("job_roles")
|
|
7461
7545
|
], JobRoles);
|
|
7462
7546
|
|
|
7463
7547
|
// src/entities/plan.entity.ts
|
|
7464
|
-
var
|
|
7548
|
+
var import_typeorm66 = require("typeorm");
|
|
7465
7549
|
|
|
7466
7550
|
// src/entities/feature.entity.ts
|
|
7467
|
-
var
|
|
7551
|
+
var import_typeorm65 = require("typeorm");
|
|
7468
7552
|
var Feature = class extends BaseEntity {
|
|
7469
7553
|
};
|
|
7470
7554
|
__decorateClass([
|
|
7471
|
-
(0,
|
|
7555
|
+
(0, import_typeorm65.Column)({ name: "name", type: "varchar", unique: true })
|
|
7472
7556
|
], Feature.prototype, "name", 2);
|
|
7473
7557
|
__decorateClass([
|
|
7474
|
-
(0,
|
|
7558
|
+
(0, import_typeorm65.ManyToMany)(() => Plan, (plan) => plan.features)
|
|
7475
7559
|
], Feature.prototype, "plans", 2);
|
|
7476
7560
|
Feature = __decorateClass([
|
|
7477
|
-
(0,
|
|
7561
|
+
(0, import_typeorm65.Entity)("features")
|
|
7478
7562
|
], Feature);
|
|
7479
7563
|
|
|
7480
7564
|
// src/entities/plan.entity.ts
|
|
7481
7565
|
var Plan = class extends BaseEntity {
|
|
7482
7566
|
};
|
|
7483
7567
|
__decorateClass([
|
|
7484
|
-
(0,
|
|
7568
|
+
(0, import_typeorm66.Column)({ name: "name", type: "varchar", unique: true })
|
|
7485
7569
|
], Plan.prototype, "name", 2);
|
|
7486
7570
|
__decorateClass([
|
|
7487
|
-
(0,
|
|
7571
|
+
(0, import_typeorm66.Column)({ name: "description", type: "varchar", nullable: true })
|
|
7488
7572
|
], Plan.prototype, "description", 2);
|
|
7489
7573
|
__decorateClass([
|
|
7490
|
-
(0,
|
|
7574
|
+
(0, import_typeorm66.Column)({ name: "price", type: "decimal", precision: 10, scale: 2 })
|
|
7491
7575
|
], Plan.prototype, "price", 2);
|
|
7492
7576
|
__decorateClass([
|
|
7493
|
-
(0,
|
|
7577
|
+
(0, import_typeorm66.Column)({ name: "billing_period", type: "varchar" })
|
|
7494
7578
|
], Plan.prototype, "billingPeriod", 2);
|
|
7495
7579
|
__decorateClass([
|
|
7496
|
-
(0,
|
|
7580
|
+
(0, import_typeorm66.Column)({ name: "is_current", type: "boolean", default: false })
|
|
7497
7581
|
], Plan.prototype, "isCurrent", 2);
|
|
7498
7582
|
__decorateClass([
|
|
7499
|
-
(0,
|
|
7500
|
-
(0,
|
|
7583
|
+
(0, import_typeorm66.ManyToMany)(() => Feature, (feature) => feature.plans, { cascade: true }),
|
|
7584
|
+
(0, import_typeorm66.JoinTable)()
|
|
7501
7585
|
], Plan.prototype, "features", 2);
|
|
7502
7586
|
Plan = __decorateClass([
|
|
7503
|
-
(0,
|
|
7587
|
+
(0, import_typeorm66.Entity)("plans")
|
|
7504
7588
|
], Plan);
|
|
7505
7589
|
|
|
7506
7590
|
// src/entities/cms.entity.ts
|
|
7507
|
-
var
|
|
7591
|
+
var import_typeorm67 = require("typeorm");
|
|
7508
7592
|
var Cms = class extends BaseEntity {
|
|
7509
7593
|
};
|
|
7510
7594
|
__decorateClass([
|
|
7511
|
-
(0,
|
|
7595
|
+
(0, import_typeorm67.Column)({ name: "title", type: "varchar", nullable: true })
|
|
7512
7596
|
], Cms.prototype, "title", 2);
|
|
7513
7597
|
__decorateClass([
|
|
7514
|
-
(0,
|
|
7598
|
+
(0, import_typeorm67.Column)({ name: "slug", type: "varchar", nullable: true, unique: true })
|
|
7515
7599
|
], Cms.prototype, "slug", 2);
|
|
7516
7600
|
__decorateClass([
|
|
7517
|
-
(0,
|
|
7601
|
+
(0, import_typeorm67.Column)({ name: "content", type: "varchar", nullable: true })
|
|
7518
7602
|
], Cms.prototype, "content", 2);
|
|
7519
7603
|
__decorateClass([
|
|
7520
|
-
(0,
|
|
7604
|
+
(0, import_typeorm67.Column)({ name: "is_active", type: "boolean", default: true })
|
|
7521
7605
|
], Cms.prototype, "isActive", 2);
|
|
7522
7606
|
Cms = __decorateClass([
|
|
7523
|
-
(0,
|
|
7607
|
+
(0, import_typeorm67.Entity)("cms")
|
|
7524
7608
|
], Cms);
|
|
7525
7609
|
|
|
7526
7610
|
// src/entities/lead.entity.ts
|
|
7527
|
-
var
|
|
7611
|
+
var import_typeorm68 = require("typeorm");
|
|
7528
7612
|
var CategoryEmum = /* @__PURE__ */ ((CategoryEmum2) => {
|
|
7529
7613
|
CategoryEmum2["BUSINESS"] = "BUSINESS";
|
|
7530
7614
|
CategoryEmum2["FREELANCER"] = "FREELANCER";
|
|
@@ -7533,22 +7617,22 @@ var CategoryEmum = /* @__PURE__ */ ((CategoryEmum2) => {
|
|
|
7533
7617
|
var Lead = class extends BaseEntity {
|
|
7534
7618
|
};
|
|
7535
7619
|
__decorateClass([
|
|
7536
|
-
(0,
|
|
7620
|
+
(0, import_typeorm68.Column)({ name: "name", type: "varchar", nullable: true })
|
|
7537
7621
|
], Lead.prototype, "name", 2);
|
|
7538
7622
|
__decorateClass([
|
|
7539
|
-
(0,
|
|
7623
|
+
(0, import_typeorm68.Column)({ name: "mobile_code", type: "varchar", nullable: true })
|
|
7540
7624
|
], Lead.prototype, "mobileCode", 2);
|
|
7541
7625
|
__decorateClass([
|
|
7542
|
-
(0,
|
|
7626
|
+
(0, import_typeorm68.Column)({ name: "mobile", type: "varchar", nullable: true })
|
|
7543
7627
|
], Lead.prototype, "mobile", 2);
|
|
7544
7628
|
__decorateClass([
|
|
7545
|
-
(0,
|
|
7629
|
+
(0, import_typeorm68.Column)({ name: "email", type: "varchar", nullable: true })
|
|
7546
7630
|
], Lead.prototype, "email", 2);
|
|
7547
7631
|
__decorateClass([
|
|
7548
|
-
(0,
|
|
7632
|
+
(0, import_typeorm68.Column)({ name: "description", type: "varchar", nullable: true })
|
|
7549
7633
|
], Lead.prototype, "description", 2);
|
|
7550
7634
|
__decorateClass([
|
|
7551
|
-
(0,
|
|
7635
|
+
(0, import_typeorm68.Column)({
|
|
7552
7636
|
name: "category",
|
|
7553
7637
|
type: "enum",
|
|
7554
7638
|
enum: CategoryEmum,
|
|
@@ -7556,129 +7640,129 @@ __decorateClass([
|
|
|
7556
7640
|
})
|
|
7557
7641
|
], Lead.prototype, "category", 2);
|
|
7558
7642
|
Lead = __decorateClass([
|
|
7559
|
-
(0,
|
|
7643
|
+
(0, import_typeorm68.Entity)("leads")
|
|
7560
7644
|
], Lead);
|
|
7561
7645
|
|
|
7562
7646
|
// src/entities/job-freelancer-recommendation.entity.ts
|
|
7563
|
-
var
|
|
7647
|
+
var import_typeorm69 = require("typeorm");
|
|
7564
7648
|
var JobFreelancerRecommendation = class {
|
|
7565
7649
|
};
|
|
7566
7650
|
__decorateClass([
|
|
7567
|
-
(0,
|
|
7651
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_id" })
|
|
7568
7652
|
], JobFreelancerRecommendation.prototype, "jobId", 2);
|
|
7569
7653
|
__decorateClass([
|
|
7570
|
-
(0,
|
|
7654
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_uuid" })
|
|
7571
7655
|
], JobFreelancerRecommendation.prototype, "jobUuid", 2);
|
|
7572
7656
|
__decorateClass([
|
|
7573
|
-
(0,
|
|
7657
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_unique_id" })
|
|
7574
7658
|
], JobFreelancerRecommendation.prototype, "jobUniqueId", 2);
|
|
7575
7659
|
__decorateClass([
|
|
7576
|
-
(0,
|
|
7660
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_role" })
|
|
7577
7661
|
], JobFreelancerRecommendation.prototype, "jobRole", 2);
|
|
7578
7662
|
__decorateClass([
|
|
7579
|
-
(0,
|
|
7663
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_openings" })
|
|
7580
7664
|
], JobFreelancerRecommendation.prototype, "jobOpenings", 2);
|
|
7581
7665
|
__decorateClass([
|
|
7582
|
-
(0,
|
|
7666
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_location" })
|
|
7583
7667
|
], JobFreelancerRecommendation.prototype, "jobLocation", 2);
|
|
7584
7668
|
__decorateClass([
|
|
7585
|
-
(0,
|
|
7669
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_currency" })
|
|
7586
7670
|
], JobFreelancerRecommendation.prototype, "jobCurrency", 2);
|
|
7587
7671
|
__decorateClass([
|
|
7588
|
-
(0,
|
|
7672
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_salary_from" })
|
|
7589
7673
|
], JobFreelancerRecommendation.prototype, "jobSalaryFrom", 2);
|
|
7590
7674
|
__decorateClass([
|
|
7591
|
-
(0,
|
|
7675
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_salary_to" })
|
|
7592
7676
|
], JobFreelancerRecommendation.prototype, "jobSalaryTo", 2);
|
|
7593
7677
|
__decorateClass([
|
|
7594
|
-
(0,
|
|
7678
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_employment_type" })
|
|
7595
7679
|
], JobFreelancerRecommendation.prototype, "jobEmploymentType", 2);
|
|
7596
7680
|
__decorateClass([
|
|
7597
|
-
(0,
|
|
7681
|
+
(0, import_typeorm69.ViewColumn)({ name: "application_received" })
|
|
7598
7682
|
], JobFreelancerRecommendation.prototype, "applicationReceived", 2);
|
|
7599
7683
|
__decorateClass([
|
|
7600
|
-
(0,
|
|
7684
|
+
(0, import_typeorm69.ViewColumn)({ name: "job_posted_at" })
|
|
7601
7685
|
], JobFreelancerRecommendation.prototype, "jobPostedAt", 2);
|
|
7602
7686
|
__decorateClass([
|
|
7603
|
-
(0,
|
|
7687
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_id" })
|
|
7604
7688
|
], JobFreelancerRecommendation.prototype, "freelancerId", 2);
|
|
7605
7689
|
__decorateClass([
|
|
7606
|
-
(0,
|
|
7690
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_uuid" })
|
|
7607
7691
|
], JobFreelancerRecommendation.prototype, "freelancerUuid", 2);
|
|
7608
7692
|
__decorateClass([
|
|
7609
|
-
(0,
|
|
7693
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_unique_id" })
|
|
7610
7694
|
], JobFreelancerRecommendation.prototype, "freelancerUniqueId", 2);
|
|
7611
7695
|
__decorateClass([
|
|
7612
|
-
(0,
|
|
7696
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_first_name" })
|
|
7613
7697
|
], JobFreelancerRecommendation.prototype, "freelancerFirstName", 2);
|
|
7614
7698
|
__decorateClass([
|
|
7615
|
-
(0,
|
|
7699
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_last_name" })
|
|
7616
7700
|
], JobFreelancerRecommendation.prototype, "freelancerLastName", 2);
|
|
7617
7701
|
__decorateClass([
|
|
7618
|
-
(0,
|
|
7702
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_email" })
|
|
7619
7703
|
], JobFreelancerRecommendation.prototype, "freelancerEmail", 2);
|
|
7620
7704
|
__decorateClass([
|
|
7621
|
-
(0,
|
|
7705
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_profile_picture" })
|
|
7622
7706
|
], JobFreelancerRecommendation.prototype, "freelancerProfilePicture", 2);
|
|
7623
7707
|
__decorateClass([
|
|
7624
|
-
(0,
|
|
7708
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_is_social" })
|
|
7625
7709
|
], JobFreelancerRecommendation.prototype, "freelancerIsSocial", 2);
|
|
7626
7710
|
__decorateClass([
|
|
7627
|
-
(0,
|
|
7711
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_created_at" })
|
|
7628
7712
|
], JobFreelancerRecommendation.prototype, "freelancerCreatedAt", 2);
|
|
7629
7713
|
__decorateClass([
|
|
7630
|
-
(0,
|
|
7714
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_designation" })
|
|
7631
7715
|
], JobFreelancerRecommendation.prototype, "freelancerDesignation", 2);
|
|
7632
7716
|
__decorateClass([
|
|
7633
|
-
(0,
|
|
7717
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_experience" })
|
|
7634
7718
|
], JobFreelancerRecommendation.prototype, "freelancerExperience", 2);
|
|
7635
7719
|
__decorateClass([
|
|
7636
|
-
(0,
|
|
7720
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_expertshub_verified" })
|
|
7637
7721
|
], JobFreelancerRecommendation.prototype, "freelancerExpertshubVerified", 2);
|
|
7638
7722
|
__decorateClass([
|
|
7639
|
-
(0,
|
|
7723
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_hourly_compensation" })
|
|
7640
7724
|
], JobFreelancerRecommendation.prototype, "freelancerHourlyCompensation", 2);
|
|
7641
7725
|
__decorateClass([
|
|
7642
|
-
(0,
|
|
7726
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_country_name" })
|
|
7643
7727
|
], JobFreelancerRecommendation.prototype, "freelancerCountryName", 2);
|
|
7644
7728
|
__decorateClass([
|
|
7645
|
-
(0,
|
|
7729
|
+
(0, import_typeorm69.ViewColumn)({ name: "freelancer_country_iso_code" })
|
|
7646
7730
|
], JobFreelancerRecommendation.prototype, "freelancerCountryIsoCode", 2);
|
|
7647
7731
|
__decorateClass([
|
|
7648
|
-
(0,
|
|
7732
|
+
(0, import_typeorm69.ViewColumn)({ name: "client_id" })
|
|
7649
7733
|
], JobFreelancerRecommendation.prototype, "clientId", 2);
|
|
7650
7734
|
__decorateClass([
|
|
7651
|
-
(0,
|
|
7735
|
+
(0, import_typeorm69.ViewColumn)({ name: "client_uuid" })
|
|
7652
7736
|
], JobFreelancerRecommendation.prototype, "clientUuid", 2);
|
|
7653
7737
|
__decorateClass([
|
|
7654
|
-
(0,
|
|
7738
|
+
(0, import_typeorm69.ViewColumn)({ name: "client_first_name" })
|
|
7655
7739
|
], JobFreelancerRecommendation.prototype, "clientFirstName", 2);
|
|
7656
7740
|
__decorateClass([
|
|
7657
|
-
(0,
|
|
7741
|
+
(0, import_typeorm69.ViewColumn)({ name: "client_last_name" })
|
|
7658
7742
|
], JobFreelancerRecommendation.prototype, "clientLastName", 2);
|
|
7659
7743
|
__decorateClass([
|
|
7660
|
-
(0,
|
|
7744
|
+
(0, import_typeorm69.ViewColumn)({ name: "client_email" })
|
|
7661
7745
|
], JobFreelancerRecommendation.prototype, "clientEmail", 2);
|
|
7662
7746
|
__decorateClass([
|
|
7663
|
-
(0,
|
|
7747
|
+
(0, import_typeorm69.ViewColumn)({ name: "client_company_logo" })
|
|
7664
7748
|
], JobFreelancerRecommendation.prototype, "clientCompanyLogo", 2);
|
|
7665
7749
|
__decorateClass([
|
|
7666
|
-
(0,
|
|
7750
|
+
(0, import_typeorm69.ViewColumn)({ name: "client_company_name" })
|
|
7667
7751
|
], JobFreelancerRecommendation.prototype, "clientCompanyName", 2);
|
|
7668
7752
|
__decorateClass([
|
|
7669
|
-
(0,
|
|
7753
|
+
(0, import_typeorm69.ViewColumn)({ name: "matching_skills" })
|
|
7670
7754
|
], JobFreelancerRecommendation.prototype, "matchingSkills", 2);
|
|
7671
7755
|
__decorateClass([
|
|
7672
|
-
(0,
|
|
7756
|
+
(0, import_typeorm69.ViewColumn)({ name: "matching_skills_count" })
|
|
7673
7757
|
], JobFreelancerRecommendation.prototype, "matchingSkillsCount", 2);
|
|
7674
7758
|
__decorateClass([
|
|
7675
|
-
(0,
|
|
7759
|
+
(0, import_typeorm69.ViewColumn)({ name: "required_skills" })
|
|
7676
7760
|
], JobFreelancerRecommendation.prototype, "requiredSkills", 2);
|
|
7677
7761
|
__decorateClass([
|
|
7678
|
-
(0,
|
|
7762
|
+
(0, import_typeorm69.ViewColumn)({ name: "required_skills_count" })
|
|
7679
7763
|
], JobFreelancerRecommendation.prototype, "requiredSkillsCount", 2);
|
|
7680
7764
|
JobFreelancerRecommendation = __decorateClass([
|
|
7681
|
-
(0,
|
|
7765
|
+
(0, import_typeorm69.ViewEntity)({
|
|
7682
7766
|
name: "job_freelancer_recommendations",
|
|
7683
7767
|
materialized: true,
|
|
7684
7768
|
synchronize: false
|
|
@@ -7687,32 +7771,32 @@ JobFreelancerRecommendation = __decorateClass([
|
|
|
7687
7771
|
], JobFreelancerRecommendation);
|
|
7688
7772
|
|
|
7689
7773
|
// src/entities/job-freelancer-recommendation-v2.entity.ts
|
|
7690
|
-
var
|
|
7774
|
+
var import_typeorm70 = require("typeorm");
|
|
7691
7775
|
var JobFreelancerRecommendationV2 = class {
|
|
7692
7776
|
};
|
|
7693
7777
|
__decorateClass([
|
|
7694
|
-
(0,
|
|
7778
|
+
(0, import_typeorm70.ViewColumn)({ name: "job_id" })
|
|
7695
7779
|
], JobFreelancerRecommendationV2.prototype, "jobId", 2);
|
|
7696
7780
|
__decorateClass([
|
|
7697
|
-
(0,
|
|
7781
|
+
(0, import_typeorm70.ViewColumn)({ name: "job_owner_id" })
|
|
7698
7782
|
], JobFreelancerRecommendationV2.prototype, "jobOwnerId", 2);
|
|
7699
7783
|
__decorateClass([
|
|
7700
|
-
(0,
|
|
7784
|
+
(0, import_typeorm70.ViewColumn)({ name: "freelancer_id" })
|
|
7701
7785
|
], JobFreelancerRecommendationV2.prototype, "freelancerId", 2);
|
|
7702
7786
|
__decorateClass([
|
|
7703
|
-
(0,
|
|
7787
|
+
(0, import_typeorm70.ViewColumn)({ name: "matching_skills" })
|
|
7704
7788
|
], JobFreelancerRecommendationV2.prototype, "matchingSkills", 2);
|
|
7705
7789
|
__decorateClass([
|
|
7706
|
-
(0,
|
|
7790
|
+
(0, import_typeorm70.ViewColumn)({ name: "matching_skills_count" })
|
|
7707
7791
|
], JobFreelancerRecommendationV2.prototype, "matchingSkillsCount", 2);
|
|
7708
7792
|
__decorateClass([
|
|
7709
|
-
(0,
|
|
7793
|
+
(0, import_typeorm70.ViewColumn)({ name: "required_skills" })
|
|
7710
7794
|
], JobFreelancerRecommendationV2.prototype, "requiredSkills", 2);
|
|
7711
7795
|
__decorateClass([
|
|
7712
|
-
(0,
|
|
7796
|
+
(0, import_typeorm70.ViewColumn)({ name: "required_skills_count" })
|
|
7713
7797
|
], JobFreelancerRecommendationV2.prototype, "requiredSkillsCount", 2);
|
|
7714
7798
|
JobFreelancerRecommendationV2 = __decorateClass([
|
|
7715
|
-
(0,
|
|
7799
|
+
(0, import_typeorm70.ViewEntity)({
|
|
7716
7800
|
name: "job_freelancer_recommendations_v2",
|
|
7717
7801
|
materialized: true,
|
|
7718
7802
|
synchronize: false
|
|
@@ -7721,74 +7805,74 @@ JobFreelancerRecommendationV2 = __decorateClass([
|
|
|
7721
7805
|
], JobFreelancerRecommendationV2);
|
|
7722
7806
|
|
|
7723
7807
|
// src/entities/client-freelancer-recommendation.entity.ts
|
|
7724
|
-
var
|
|
7808
|
+
var import_typeorm71 = require("typeorm");
|
|
7725
7809
|
var ClientFreelancerRecommendation = class {
|
|
7726
7810
|
};
|
|
7727
7811
|
__decorateClass([
|
|
7728
|
-
(0,
|
|
7812
|
+
(0, import_typeorm71.ViewColumn)({ name: "client_id" })
|
|
7729
7813
|
], ClientFreelancerRecommendation.prototype, "clientId", 2);
|
|
7730
7814
|
__decorateClass([
|
|
7731
|
-
(0,
|
|
7815
|
+
(0, import_typeorm71.ViewColumn)({ name: "client_uuid" })
|
|
7732
7816
|
], ClientFreelancerRecommendation.prototype, "clientUuid", 2);
|
|
7733
7817
|
__decorateClass([
|
|
7734
|
-
(0,
|
|
7818
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_id" })
|
|
7735
7819
|
], ClientFreelancerRecommendation.prototype, "freelancerId", 2);
|
|
7736
7820
|
__decorateClass([
|
|
7737
|
-
(0,
|
|
7821
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_uuid" })
|
|
7738
7822
|
], ClientFreelancerRecommendation.prototype, "freelancerUuid", 2);
|
|
7739
7823
|
__decorateClass([
|
|
7740
|
-
(0,
|
|
7824
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_unique_id" })
|
|
7741
7825
|
], ClientFreelancerRecommendation.prototype, "freelancerUniqueId", 2);
|
|
7742
7826
|
__decorateClass([
|
|
7743
|
-
(0,
|
|
7827
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_first_name" })
|
|
7744
7828
|
], ClientFreelancerRecommendation.prototype, "freelancerFirstName", 2);
|
|
7745
7829
|
__decorateClass([
|
|
7746
|
-
(0,
|
|
7830
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_last_name" })
|
|
7747
7831
|
], ClientFreelancerRecommendation.prototype, "freelancerLastName", 2);
|
|
7748
7832
|
__decorateClass([
|
|
7749
|
-
(0,
|
|
7833
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_email" })
|
|
7750
7834
|
], ClientFreelancerRecommendation.prototype, "freelancerEmail", 2);
|
|
7751
7835
|
__decorateClass([
|
|
7752
|
-
(0,
|
|
7836
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_profile_picture" })
|
|
7753
7837
|
], ClientFreelancerRecommendation.prototype, "freelancerProfilePicture", 2);
|
|
7754
7838
|
__decorateClass([
|
|
7755
|
-
(0,
|
|
7839
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_is_social" })
|
|
7756
7840
|
], ClientFreelancerRecommendation.prototype, "freelancerIsSocial", 2);
|
|
7757
7841
|
__decorateClass([
|
|
7758
|
-
(0,
|
|
7842
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_created_at" })
|
|
7759
7843
|
], ClientFreelancerRecommendation.prototype, "freelancerCreatedAt", 2);
|
|
7760
7844
|
__decorateClass([
|
|
7761
|
-
(0,
|
|
7845
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_designation" })
|
|
7762
7846
|
], ClientFreelancerRecommendation.prototype, "freelancerDesignation", 2);
|
|
7763
7847
|
__decorateClass([
|
|
7764
|
-
(0,
|
|
7848
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_experience" })
|
|
7765
7849
|
], ClientFreelancerRecommendation.prototype, "freelancerExperience", 2);
|
|
7766
7850
|
__decorateClass([
|
|
7767
|
-
(0,
|
|
7851
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_expertshub_verified" })
|
|
7768
7852
|
], ClientFreelancerRecommendation.prototype, "freelancerExpertshubVerified", 2);
|
|
7769
7853
|
__decorateClass([
|
|
7770
|
-
(0,
|
|
7854
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_hourly_compensation" })
|
|
7771
7855
|
], ClientFreelancerRecommendation.prototype, "freelancerHourlyCompensation", 2);
|
|
7772
7856
|
__decorateClass([
|
|
7773
|
-
(0,
|
|
7857
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_country_name" })
|
|
7774
7858
|
], ClientFreelancerRecommendation.prototype, "freelancerCountryName", 2);
|
|
7775
7859
|
__decorateClass([
|
|
7776
|
-
(0,
|
|
7860
|
+
(0, import_typeorm71.ViewColumn)({ name: "freelancer_country_iso_code" })
|
|
7777
7861
|
], ClientFreelancerRecommendation.prototype, "freelancerCountryIsoCode", 2);
|
|
7778
7862
|
__decorateClass([
|
|
7779
|
-
(0,
|
|
7863
|
+
(0, import_typeorm71.ViewColumn)({ name: "matching_skills" })
|
|
7780
7864
|
], ClientFreelancerRecommendation.prototype, "matchingSkills", 2);
|
|
7781
7865
|
__decorateClass([
|
|
7782
|
-
(0,
|
|
7866
|
+
(0, import_typeorm71.ViewColumn)({ name: "matching_skills_count" })
|
|
7783
7867
|
], ClientFreelancerRecommendation.prototype, "matchingSkillsCount", 2);
|
|
7784
7868
|
__decorateClass([
|
|
7785
|
-
(0,
|
|
7869
|
+
(0, import_typeorm71.ViewColumn)({ name: "required_skills" })
|
|
7786
7870
|
], ClientFreelancerRecommendation.prototype, "requiredSkills", 2);
|
|
7787
7871
|
__decorateClass([
|
|
7788
|
-
(0,
|
|
7872
|
+
(0, import_typeorm71.ViewColumn)({ name: "required_skills_count" })
|
|
7789
7873
|
], ClientFreelancerRecommendation.prototype, "requiredSkillsCount", 2);
|
|
7790
7874
|
ClientFreelancerRecommendation = __decorateClass([
|
|
7791
|
-
(0,
|
|
7875
|
+
(0, import_typeorm71.ViewEntity)({
|
|
7792
7876
|
name: "client_freelancer_recommendations",
|
|
7793
7877
|
materialized: true,
|
|
7794
7878
|
synchronize: false
|
|
@@ -7797,7 +7881,7 @@ ClientFreelancerRecommendation = __decorateClass([
|
|
|
7797
7881
|
], ClientFreelancerRecommendation);
|
|
7798
7882
|
|
|
7799
7883
|
// src/entities/commission.entity.ts
|
|
7800
|
-
var
|
|
7884
|
+
var import_typeorm72 = require("typeorm");
|
|
7801
7885
|
var CommissionTypeEnum = /* @__PURE__ */ ((CommissionTypeEnum2) => {
|
|
7802
7886
|
CommissionTypeEnum2["PERCENTAGE"] = "PERCENTAGE";
|
|
7803
7887
|
CommissionTypeEnum2["FLAT"] = "FLAT";
|
|
@@ -7806,7 +7890,7 @@ var CommissionTypeEnum = /* @__PURE__ */ ((CommissionTypeEnum2) => {
|
|
|
7806
7890
|
var Commission = class extends BaseEntity {
|
|
7807
7891
|
};
|
|
7808
7892
|
__decorateClass([
|
|
7809
|
-
(0,
|
|
7893
|
+
(0, import_typeorm72.Column)({
|
|
7810
7894
|
name: "freelancer_commission_type",
|
|
7811
7895
|
type: "enum",
|
|
7812
7896
|
enum: CommissionTypeEnum,
|
|
@@ -7814,10 +7898,10 @@ __decorateClass([
|
|
|
7814
7898
|
})
|
|
7815
7899
|
], Commission.prototype, "freelancerCommissionType", 2);
|
|
7816
7900
|
__decorateClass([
|
|
7817
|
-
(0,
|
|
7901
|
+
(0, import_typeorm72.Column)({ name: "freelancer_commission", type: "integer", default: 0 })
|
|
7818
7902
|
], Commission.prototype, "freelancerCommission", 2);
|
|
7819
7903
|
__decorateClass([
|
|
7820
|
-
(0,
|
|
7904
|
+
(0, import_typeorm72.Column)({
|
|
7821
7905
|
name: "client_commission_type",
|
|
7822
7906
|
type: "enum",
|
|
7823
7907
|
enum: CommissionTypeEnum,
|
|
@@ -7825,93 +7909,93 @@ __decorateClass([
|
|
|
7825
7909
|
})
|
|
7826
7910
|
], Commission.prototype, "clientCommissionType", 2);
|
|
7827
7911
|
__decorateClass([
|
|
7828
|
-
(0,
|
|
7912
|
+
(0, import_typeorm72.Column)({ name: "client_commission", type: "integer", default: 0 })
|
|
7829
7913
|
], Commission.prototype, "clientCommission", 2);
|
|
7830
7914
|
Commission = __decorateClass([
|
|
7831
|
-
(0,
|
|
7915
|
+
(0, import_typeorm72.Entity)("commissions")
|
|
7832
7916
|
], Commission);
|
|
7833
7917
|
|
|
7834
7918
|
// src/entities/calendly-meeting-log.entity.ts
|
|
7835
|
-
var
|
|
7919
|
+
var import_typeorm73 = require("typeorm");
|
|
7836
7920
|
var CalendlyMeetingLog = class extends BaseEntity {
|
|
7837
7921
|
};
|
|
7838
7922
|
__decorateClass([
|
|
7839
|
-
(0,
|
|
7840
|
-
(0,
|
|
7923
|
+
(0, import_typeorm73.Column)({ name: "calendly_event_id", type: "varchar", nullable: true }),
|
|
7924
|
+
(0, import_typeorm73.Index)()
|
|
7841
7925
|
], CalendlyMeetingLog.prototype, "calendlyEventId", 2);
|
|
7842
7926
|
__decorateClass([
|
|
7843
|
-
(0,
|
|
7927
|
+
(0, import_typeorm73.Column)({ name: "calendly_event_type", type: "varchar", nullable: true })
|
|
7844
7928
|
], CalendlyMeetingLog.prototype, "calendlyEventType", 2);
|
|
7845
7929
|
__decorateClass([
|
|
7846
|
-
(0,
|
|
7930
|
+
(0, import_typeorm73.Column)({ name: "raw_webhook_data", type: "jsonb", nullable: true })
|
|
7847
7931
|
], CalendlyMeetingLog.prototype, "rawWebhookData", 2);
|
|
7848
7932
|
CalendlyMeetingLog = __decorateClass([
|
|
7849
|
-
(0,
|
|
7933
|
+
(0, import_typeorm73.Entity)("calendly_meeting_logs")
|
|
7850
7934
|
], CalendlyMeetingLog);
|
|
7851
7935
|
|
|
7852
7936
|
// src/entities/zoom-meeting-log.entity.ts
|
|
7853
|
-
var
|
|
7937
|
+
var import_typeorm74 = require("typeorm");
|
|
7854
7938
|
var ZoomMeetingLog = class extends BaseEntity {
|
|
7855
7939
|
};
|
|
7856
7940
|
__decorateClass([
|
|
7857
|
-
(0,
|
|
7858
|
-
(0,
|
|
7941
|
+
(0, import_typeorm74.Column)({ name: "zoom_meeting_id", type: "varchar", nullable: true }),
|
|
7942
|
+
(0, import_typeorm74.Index)()
|
|
7859
7943
|
], ZoomMeetingLog.prototype, "zoomMeetingId", 2);
|
|
7860
7944
|
__decorateClass([
|
|
7861
|
-
(0,
|
|
7945
|
+
(0, import_typeorm74.Column)({ name: "zoom_event_type", type: "varchar", nullable: true })
|
|
7862
7946
|
], ZoomMeetingLog.prototype, "zoomEventType", 2);
|
|
7863
7947
|
__decorateClass([
|
|
7864
|
-
(0,
|
|
7948
|
+
(0, import_typeorm74.Column)({ name: "raw_webhook_data", type: "jsonb", nullable: true })
|
|
7865
7949
|
], ZoomMeetingLog.prototype, "rawWebhookData", 2);
|
|
7866
7950
|
ZoomMeetingLog = __decorateClass([
|
|
7867
|
-
(0,
|
|
7951
|
+
(0, import_typeorm74.Entity)("zoom_meeting_logs")
|
|
7868
7952
|
], ZoomMeetingLog);
|
|
7869
7953
|
|
|
7870
7954
|
// src/entities/stripe-logs.entity.ts
|
|
7871
|
-
var
|
|
7955
|
+
var import_typeorm75 = require("typeorm");
|
|
7872
7956
|
var StripeLog = class extends BaseEntity {
|
|
7873
7957
|
};
|
|
7874
7958
|
__decorateClass([
|
|
7875
|
-
(0,
|
|
7959
|
+
(0, import_typeorm75.Column)({ name: "stripe_event_id", type: "varchar", nullable: true })
|
|
7876
7960
|
], StripeLog.prototype, "stripeEventId", 2);
|
|
7877
7961
|
__decorateClass([
|
|
7878
|
-
(0,
|
|
7962
|
+
(0, import_typeorm75.Column)({ name: "event_type", type: "varchar", nullable: true })
|
|
7879
7963
|
], StripeLog.prototype, "eventType", 2);
|
|
7880
7964
|
__decorateClass([
|
|
7881
|
-
(0,
|
|
7965
|
+
(0, import_typeorm75.Column)({ name: "stripe_account_id", type: "varchar", nullable: true })
|
|
7882
7966
|
], StripeLog.prototype, "stripeAccountId", 2);
|
|
7883
7967
|
__decorateClass([
|
|
7884
|
-
(0,
|
|
7968
|
+
(0, import_typeorm75.Column)({ name: "raw_webhook_data", type: "jsonb", nullable: true })
|
|
7885
7969
|
], StripeLog.prototype, "rawWebhookData", 2);
|
|
7886
7970
|
StripeLog = __decorateClass([
|
|
7887
|
-
(0,
|
|
7971
|
+
(0, import_typeorm75.Entity)("stripe_logs")
|
|
7888
7972
|
], StripeLog);
|
|
7889
7973
|
|
|
7890
7974
|
// src/entities/recommendation-weightage-config.entity.ts
|
|
7891
|
-
var
|
|
7975
|
+
var import_typeorm76 = require("typeorm");
|
|
7892
7976
|
var RecommendationWeightageConfig = class extends BaseEntity {
|
|
7893
7977
|
};
|
|
7894
7978
|
__decorateClass([
|
|
7895
|
-
(0,
|
|
7979
|
+
(0, import_typeorm76.Column)({
|
|
7896
7980
|
type: "varchar",
|
|
7897
7981
|
length: 100,
|
|
7898
7982
|
unique: true,
|
|
7899
7983
|
comment: "Unique key identifier (e.g., full_time_weights, hourly_weights)"
|
|
7900
7984
|
}),
|
|
7901
|
-
(0,
|
|
7985
|
+
(0, import_typeorm76.Index)()
|
|
7902
7986
|
], RecommendationWeightageConfig.prototype, "key", 2);
|
|
7903
7987
|
__decorateClass([
|
|
7904
|
-
(0,
|
|
7988
|
+
(0, import_typeorm76.Column)({
|
|
7905
7989
|
type: "jsonb",
|
|
7906
7990
|
comment: "JSON object containing weight values",
|
|
7907
7991
|
nullable: true
|
|
7908
7992
|
})
|
|
7909
7993
|
], RecommendationWeightageConfig.prototype, "value", 2);
|
|
7910
7994
|
__decorateClass([
|
|
7911
|
-
(0,
|
|
7995
|
+
(0, import_typeorm76.Column)({ name: "is_active", type: "boolean", default: true })
|
|
7912
7996
|
], RecommendationWeightageConfig.prototype, "isActive", 2);
|
|
7913
7997
|
RecommendationWeightageConfig = __decorateClass([
|
|
7914
|
-
(0,
|
|
7998
|
+
(0, import_typeorm76.Entity)("recommendation_weightage_configs")
|
|
7915
7999
|
], RecommendationWeightageConfig);
|
|
7916
8000
|
// Annotate the CommonJS export names for ESM import in node:
|
|
7917
8001
|
0 && (module.exports = {
|
|
@@ -8148,6 +8232,7 @@ RecommendationWeightageConfig = __decorateClass([
|
|
|
8148
8232
|
SignContractForFreelancerDto,
|
|
8149
8233
|
Signature,
|
|
8150
8234
|
Skill,
|
|
8235
|
+
SkillCatalog,
|
|
8151
8236
|
State,
|
|
8152
8237
|
Step,
|
|
8153
8238
|
StripeLog,
|