@the-inkwell/shared 0.2.85 → 0.2.87

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,14 @@
1
+ import { z } from 'zod/v4';
2
+ export declare const PublicApplyCreateSchema: z.ZodObject<{
3
+ candidate: z.ZodObject<{
4
+ email: z.ZodEmail;
5
+ firstName: z.ZodString;
6
+ lastName: z.ZodString;
7
+ linkedInUrl: z.ZodURL;
8
+ phone: z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>;
9
+ }, z.core.$strict>;
10
+ positionId: z.ZodUUID;
11
+ isSignedIn: z.ZodLiteral<false>;
12
+ affiliateIdNano: z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>;
13
+ }, z.core.$strict>;
14
+ export type PublicApplyCreateInput = z.infer<typeof PublicApplyCreateSchema>;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PublicApplyCreateSchema = void 0;
4
+ const drizzle_zod_1 = require("drizzle-zod");
5
+ const core_1 = require("../../core");
6
+ const v4_1 = require("zod/v4");
7
+ const utils_1 = require("../../../utils");
8
+ //// validators
9
+ exports.PublicApplyCreateSchema = v4_1.z.strictObject({
10
+ candidate: v4_1.z.strictObject({
11
+ ...(0, drizzle_zod_1.createInsertSchema)(core_1.person, {
12
+ firstName: utils_1.PersonFirstNameSchema,
13
+ lastName: utils_1.PersonLastNameSchema,
14
+ phone: utils_1.OptionalPhoneSchema,
15
+ email: utils_1.EmailSchema,
16
+ linkedInUrl: utils_1.LinkedInUrlSchema
17
+ }).pick({
18
+ firstName: true,
19
+ lastName: true,
20
+ email: true,
21
+ phone: true,
22
+ linkedInUrl: true
23
+ }).shape
24
+ }),
25
+ positionId: v4_1.z.uuid(),
26
+ isSignedIn: v4_1.z.literal(false),
27
+ affiliateIdNano: utils_1.OptionalStringSchema
28
+ });
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schema/public/apply/index.ts"],"names":[],"mappings":";;;AAAA,6CAAgD;AAChD,qCAAmC;AACnC,+BAA0B;AAC1B,0CAOuB;AAEvB,eAAe;AAEF,QAAA,uBAAuB,GAAG,MAAC,CAAC,YAAY,CAAC;IACpD,SAAS,EAAE,MAAC,CAAC,YAAY,CAAC;QACxB,GAAG,IAAA,gCAAkB,EAAC,aAAM,EAAE;YAC5B,SAAS,EAAE,6BAAqB;YAChC,QAAQ,EAAE,4BAAoB;YAC9B,KAAK,EAAE,2BAAmB;YAC1B,KAAK,EAAE,mBAAW;YAClB,WAAW,EAAE,yBAAiB;SAC/B,CAAC,CAAC,IAAI,CAAC;YACN,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC,KAAK;KACT,CAAC;IACF,UAAU,EAAE,MAAC,CAAC,IAAI,EAAE;IACpB,UAAU,EAAE,MAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IAC5B,eAAe,EAAE,4BAAoB;CACtC,CAAC,CAAA","sourcesContent":["import { createInsertSchema } from 'drizzle-zod'\nimport { person } from '../../core'\nimport { z } from 'zod/v4'\nimport {\n EmailSchema,\n LinkedInUrlSchema,\n OptionalPhoneSchema,\n OptionalStringSchema,\n PersonFirstNameSchema,\n PersonLastNameSchema\n} from '../../../utils'\n\n//// validators\n\nexport const PublicApplyCreateSchema = z.strictObject({\n candidate: z.strictObject({\n ...createInsertSchema(person, {\n firstName: PersonFirstNameSchema,\n lastName: PersonLastNameSchema,\n phone: OptionalPhoneSchema,\n email: EmailSchema,\n linkedInUrl: LinkedInUrlSchema\n }).pick({\n firstName: true,\n lastName: true,\n email: true,\n phone: true,\n linkedInUrl: true\n }).shape\n }),\n positionId: z.uuid(),\n isSignedIn: z.literal(false),\n affiliateIdNano: OptionalStringSchema\n})\n\n//// types\n\nexport type PublicApplyCreateInput = z.infer<typeof PublicApplyCreateSchema>\n"]}
@@ -11,7 +11,7 @@ exports.PublicHireCreateSchema = v4_1.z.strictObject({
11
11
  ...(0, drizzle_zod_1.createInsertSchema)(core_1.person, {
12
12
  firstName: utils_1.PersonFirstNameSchema,
13
13
  lastName: utils_1.PersonLastNameSchema,
14
- phone: utils_1.PhoneSchema.optional().or(v4_1.z.literal('')),
14
+ phone: utils_1.OptionalPhoneSchema,
15
15
  email: utils_1.EmailSchema,
16
16
  linkedInUrl: utils_1.LinkedInUrlSchema
17
17
  }).pick({
@@ -23,7 +23,7 @@ exports.PublicHireCreateSchema = v4_1.z.strictObject({
23
23
  }).shape
24
24
  }),
25
25
  positionDetails: v4_1.z.string().min(1, 'Position details are required'),
26
- affiliateIdNano: v4_1.z.string().optional().or(v4_1.z.literal('')),
26
+ affiliateIdNano: utils_1.OptionalStringSchema,
27
27
  company: v4_1.z.strictObject({
28
28
  name: v4_1.z.string().min(1, 'Company name is required'),
29
29
  websiteUrl: v4_1.z.url('Invalid URL')
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schema/public/hire/index.ts"],"names":[],"mappings":";;;AAAA,6CAAgD;AAChD,qCAAmC;AACnC,+BAA0B;AAC1B,0CAMuB;AAEvB,eAAe;AAEF,QAAA,sBAAsB,GAAG,MAAC,CAAC,YAAY,CAAC;IACnD,OAAO,EAAE,MAAC,CAAC,YAAY,CAAC;QACtB,GAAG,IAAA,gCAAkB,EAAC,aAAM,EAAE;YAC5B,SAAS,EAAE,6BAAqB;YAChC,QAAQ,EAAE,4BAAoB;YAC9B,KAAK,EAAE,mBAAW,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,MAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC/C,KAAK,EAAE,mBAAW;YAClB,WAAW,EAAE,yBAAiB;SAC/B,CAAC,CAAC,IAAI,CAAC;YACN,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC,KAAK;KACT,CAAC;IACF,eAAe,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,+BAA+B,CAAC;IACnE,eAAe,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,MAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxD,OAAO,EAAE,MAAC,CAAC,YAAY,CAAC;QACtB,IAAI,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;QACnD,UAAU,EAAE,MAAC,CAAC,GAAG,CAAC,aAAa,CAAC;KACjC,CAAC;CACH,CAAC,CAAA","sourcesContent":["import { createInsertSchema } from 'drizzle-zod'\nimport { person } from '../../core'\nimport { z } from 'zod/v4'\nimport {\n EmailSchema,\n LinkedInUrlSchema,\n PersonFirstNameSchema,\n PersonLastNameSchema,\n PhoneSchema\n} from '../../../utils'\n\n//// validators\n\nexport const PublicHireCreateSchema = z.strictObject({\n contact: z.strictObject({\n ...createInsertSchema(person, {\n firstName: PersonFirstNameSchema,\n lastName: PersonLastNameSchema,\n phone: PhoneSchema.optional().or(z.literal('')),\n email: EmailSchema,\n linkedInUrl: LinkedInUrlSchema\n }).pick({\n firstName: true,\n lastName: true,\n email: true,\n phone: true,\n linkedInUrl: true\n }).shape\n }),\n positionDetails: z.string().min(1, 'Position details are required'),\n affiliateIdNano: z.string().optional().or(z.literal('')),\n company: z.strictObject({\n name: z.string().min(1, 'Company name is required'),\n websiteUrl: z.url('Invalid URL')\n })\n})\n\n//// types\n\nexport type PublicHireCreateInput = z.infer<typeof PublicHireCreateSchema>\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schema/public/hire/index.ts"],"names":[],"mappings":";;;AAAA,6CAAgD;AAChD,qCAAmC;AACnC,+BAA0B;AAC1B,0CAQuB;AAEvB,eAAe;AAEF,QAAA,sBAAsB,GAAG,MAAC,CAAC,YAAY,CAAC;IACnD,OAAO,EAAE,MAAC,CAAC,YAAY,CAAC;QACtB,GAAG,IAAA,gCAAkB,EAAC,aAAM,EAAE;YAC5B,SAAS,EAAE,6BAAqB;YAChC,QAAQ,EAAE,4BAAoB;YAC9B,KAAK,EAAE,2BAAmB;YAC1B,KAAK,EAAE,mBAAW;YAClB,WAAW,EAAE,yBAAiB;SAC/B,CAAC,CAAC,IAAI,CAAC;YACN,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC,KAAK;KACT,CAAC;IACF,eAAe,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,+BAA+B,CAAC;IACnE,eAAe,EAAE,4BAAoB;IACrC,OAAO,EAAE,MAAC,CAAC,YAAY,CAAC;QACtB,IAAI,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;QACnD,UAAU,EAAE,MAAC,CAAC,GAAG,CAAC,aAAa,CAAC;KACjC,CAAC;CACH,CAAC,CAAA","sourcesContent":["import { createInsertSchema } from 'drizzle-zod'\nimport { person } from '../../core'\nimport { z } from 'zod/v4'\nimport {\n EmailSchema,\n LinkedInUrlSchema,\n OptionalPhoneSchema,\n OptionalStringSchema,\n PersonFirstNameSchema,\n PersonLastNameSchema,\n PhoneSchema\n} from '../../../utils'\n\n//// validators\n\nexport const PublicHireCreateSchema = z.strictObject({\n contact: z.strictObject({\n ...createInsertSchema(person, {\n firstName: PersonFirstNameSchema,\n lastName: PersonLastNameSchema,\n phone: OptionalPhoneSchema,\n email: EmailSchema,\n linkedInUrl: LinkedInUrlSchema\n }).pick({\n firstName: true,\n lastName: true,\n email: true,\n phone: true,\n linkedInUrl: true\n }).shape\n }),\n positionDetails: z.string().min(1, 'Position details are required'),\n affiliateIdNano: OptionalStringSchema,\n company: z.strictObject({\n name: z.string().min(1, 'Company name is required'),\n websiteUrl: z.url('Invalid URL')\n })\n})\n\n//// types\n\nexport type PublicHireCreateInput = z.infer<typeof PublicHireCreateSchema>\n"]}
@@ -1,2 +1,3 @@
1
+ export * from './apply';
1
2
  export * from './join';
2
3
  export * from './hire';
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./apply"), exports);
17
18
  __exportStar(require("./join"), exports);
18
19
  __exportStar(require("./hire"), exports);
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema/public/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AACtB,yCAAsB","sourcesContent":["export * from './join'\nexport * from './hire'\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema/public/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,yCAAsB;AACtB,yCAAsB","sourcesContent":["export * from './apply'\nexport * from './join'\nexport * from './hire'\n"]}
package/dist/utils.d.ts CHANGED
@@ -26,3 +26,6 @@ export declare const PersonLastNameSchema: z.ZodString;
26
26
  export declare const EmailSchema: z.ZodEmail;
27
27
  export declare const PhoneSchema: z.ZodString;
28
28
  export declare const LinkedInUrlSchema: z.ZodURL;
29
+ export declare const OptionalStringSchema: z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>;
30
+ export declare const OptionalPhoneSchema: z.ZodUnion<[z.ZodOptional<z.ZodString>, z.ZodLiteral<"">]>;
31
+ export declare const OptionalUUIDSchema: z.ZodUnion<[z.ZodOptional<z.ZodUUID>, z.ZodLiteral<"">]>;
package/dist/utils.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LinkedInUrlSchema = exports.PhoneSchema = exports.EmailSchema = exports.PersonLastNameSchema = exports.PersonFirstNameSchema = exports.makeEnumFromObj = exports.ListQuerySchema = void 0;
3
+ exports.OptionalUUIDSchema = exports.OptionalPhoneSchema = exports.OptionalStringSchema = exports.LinkedInUrlSchema = exports.PhoneSchema = exports.EmailSchema = exports.PersonLastNameSchema = exports.PersonFirstNameSchema = exports.makeEnumFromObj = exports.ListQuerySchema = void 0;
4
4
  const v4_1 = require("zod/v4");
5
5
  exports.ListQuerySchema = v4_1.z.object({
6
6
  limit: v4_1.z.number().max(1000).optional(),
@@ -24,4 +24,7 @@ exports.LinkedInUrlSchema = v4_1.z.url({
24
24
  hostname: /^www\.linkedin\.com$/,
25
25
  error: 'Enter a valid LinkedIn URL'
26
26
  });
27
+ exports.OptionalStringSchema = v4_1.z.string().optional().or(v4_1.z.literal(''));
28
+ exports.OptionalPhoneSchema = exports.PhoneSchema.optional().or(v4_1.z.literal(''));
29
+ exports.OptionalUUIDSchema = v4_1.z.uuid().optional().or(v4_1.z.literal(''));
27
30
  //# sourceMappingURL=utils.js.map
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,+BAA0B;AAkBb,QAAA,eAAe,GAAG,MAAC,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IACtC,MAAM,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,IAAI,EAAE,MAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,MAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAA;AAEK,MAAM,eAAe,GAAG,CAQ7B,GAAM,EACN,EAAE;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACpC,OAAO,CACL,GAAG,CAAC,CAAqB,CAAE,CAAC,QAAQ;YACpC,GAAG,CAAC,CAAqB,CAAE,CAAC,QAAQ,CACrC,CAAA;IACH,CAAC,CAAuB,CAAA;AAC1B,CAAC,CAAA;AAhBY,QAAA,eAAe,mBAgB3B;AAEY,QAAA,qBAAqB,GAAG,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC,CAAA;AACnE,QAAA,oBAAoB,GAAG,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAA;AAEjE,QAAA,WAAW,GAAG,MAAC,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAA;AACxD,QAAA,WAAW,GAAG,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAA;AAC3D,QAAA,iBAAiB,GAAG,MAAC,CAAC,GAAG,CAAC;IACrC,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,sBAAsB;IAChC,KAAK,EAAE,4BAA4B;CACpC,CAAC,CAAA","sourcesContent":["import { z } from 'zod/v4'\n\nexport type ListResponse<T> = {\n count: number\n results: T[]\n}\n\nexport type ListRequest<\n TSort = unknown,\n TFilter = unknown,\n TAdditional = unknown\n> = TAdditional & {\n limit?: number\n offset?: number\n sort?: TSort\n filter?: TFilter\n}\n\nexport const ListQuerySchema = z.object({\n limit: z.number().max(1000).optional(),\n offset: z.number().optional(),\n sort: z.object({}).optional(),\n filter: z.object({}).optional()\n})\n\nexport const makeEnumFromObj = <\n T extends {\n [key: string]: {\n name: string\n position: number\n }\n }\n>(\n obj: T\n) => {\n return Object.keys(obj).sort((a, b) => {\n return (\n obj[a as keyof typeof obj]!.position -\n obj[b as keyof typeof obj]!.position\n )\n }) as [keyof typeof obj]\n}\n\nexport const PersonFirstNameSchema = z.string().min(1, 'First name is required')\nexport const PersonLastNameSchema = z.string().min(1, 'Last name is required')\n\nexport const EmailSchema = z.email('Valid email address is required')\nexport const PhoneSchema = z.string().min(1, 'Phone number is required')\nexport const LinkedInUrlSchema = z.url({\n protocol: /^https$/,\n hostname: /^www\\.linkedin\\.com$/,\n error: 'Enter a valid LinkedIn URL'\n})\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,+BAA0B;AAkBb,QAAA,eAAe,GAAG,MAAC,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IACtC,MAAM,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,IAAI,EAAE,MAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,MAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAA;AAEK,MAAM,eAAe,GAAG,CAQ7B,GAAM,EACN,EAAE;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACpC,OAAO,CACL,GAAG,CAAC,CAAqB,CAAE,CAAC,QAAQ;YACpC,GAAG,CAAC,CAAqB,CAAE,CAAC,QAAQ,CACrC,CAAA;IACH,CAAC,CAAuB,CAAA;AAC1B,CAAC,CAAA;AAhBY,QAAA,eAAe,mBAgB3B;AAEY,QAAA,qBAAqB,GAAG,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC,CAAA;AACnE,QAAA,oBAAoB,GAAG,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAA;AAEjE,QAAA,WAAW,GAAG,MAAC,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAA;AACxD,QAAA,WAAW,GAAG,MAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAA;AAC3D,QAAA,iBAAiB,GAAG,MAAC,CAAC,GAAG,CAAC;IACrC,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,sBAAsB;IAChC,KAAK,EAAE,4BAA4B;CACpC,CAAC,CAAA;AACW,QAAA,oBAAoB,GAAG,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,MAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;AAC9D,QAAA,mBAAmB,GAAG,mBAAW,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,MAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;AAC9D,QAAA,kBAAkB,GAAG,MAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,MAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA","sourcesContent":["import { z } from 'zod/v4'\n\nexport type ListResponse<T> = {\n count: number\n results: T[]\n}\n\nexport type ListRequest<\n TSort = unknown,\n TFilter = unknown,\n TAdditional = unknown\n> = TAdditional & {\n limit?: number\n offset?: number\n sort?: TSort\n filter?: TFilter\n}\n\nexport const ListQuerySchema = z.object({\n limit: z.number().max(1000).optional(),\n offset: z.number().optional(),\n sort: z.object({}).optional(),\n filter: z.object({}).optional()\n})\n\nexport const makeEnumFromObj = <\n T extends {\n [key: string]: {\n name: string\n position: number\n }\n }\n>(\n obj: T\n) => {\n return Object.keys(obj).sort((a, b) => {\n return (\n obj[a as keyof typeof obj]!.position -\n obj[b as keyof typeof obj]!.position\n )\n }) as [keyof typeof obj]\n}\n\nexport const PersonFirstNameSchema = z.string().min(1, 'First name is required')\nexport const PersonLastNameSchema = z.string().min(1, 'Last name is required')\n\nexport const EmailSchema = z.email('Valid email address is required')\nexport const PhoneSchema = z.string().min(1, 'Phone number is required')\nexport const LinkedInUrlSchema = z.url({\n protocol: /^https$/,\n hostname: /^www\\.linkedin\\.com$/,\n error: 'Enter a valid LinkedIn URL'\n})\nexport const OptionalStringSchema = z.string().optional().or(z.literal(''))\nexport const OptionalPhoneSchema = PhoneSchema.optional().or(z.literal(''))\nexport const OptionalUUIDSchema = z.uuid().optional().or(z.literal(''))\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@the-inkwell/shared",
3
- "version": "0.2.85",
3
+ "version": "0.2.87",
4
4
  "description": "Shared code for Inkwell",
5
5
  "license": "ISC",
6
6
  "author": "Inkwell (Rob Yedlin & Saimon Alam)",