@myrjfa/state 1.0.6 → 1.0.8

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 (67) hide show
  1. package/dist/index.d.ts +9 -4
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +9 -4
  4. package/dist/lib/QueryProvider.d.ts +1 -1
  5. package/dist/lib/QueryProvider.d.ts.map +1 -1
  6. package/dist/lib/actions/actions.d.ts +141 -0
  7. package/dist/lib/actions/actions.d.ts.map +1 -0
  8. package/dist/lib/actions/actions.js +307 -0
  9. package/dist/lib/actions/auth.d.ts +150 -0
  10. package/dist/lib/actions/auth.d.ts.map +1 -0
  11. package/dist/lib/actions/auth.js +125 -0
  12. package/dist/lib/actions/chat.d.ts +48 -0
  13. package/dist/lib/actions/chat.d.ts.map +1 -0
  14. package/dist/lib/actions/chat.js +303 -0
  15. package/dist/lib/actions/fetcher.d.ts +9 -0
  16. package/dist/lib/actions/fetcher.d.ts.map +1 -0
  17. package/dist/lib/actions/fetcher.js +84 -0
  18. package/dist/lib/actions/severActions.d.ts +3 -0
  19. package/dist/lib/actions/severActions.d.ts.map +1 -0
  20. package/dist/lib/actions/severActions.js +19 -0
  21. package/dist/lib/actions/socket.d.ts +7 -0
  22. package/dist/lib/actions/socket.d.ts.map +1 -0
  23. package/dist/lib/actions/socket.js +22 -0
  24. package/dist/lib/actions.d.ts +3 -3
  25. package/dist/lib/actions.d.ts.map +1 -1
  26. package/dist/lib/actions.js +2 -2
  27. package/dist/lib/authSessionManager.js +1 -1
  28. package/dist/lib/context/ChatContext.d.ts +25 -0
  29. package/dist/lib/context/ChatContext.d.ts.map +1 -0
  30. package/dist/lib/context/ChatContext.js +229 -0
  31. package/dist/lib/data/countryStates.d.ts +8 -0
  32. package/dist/lib/data/countryStates.d.ts.map +1 -1
  33. package/dist/lib/data/countryStates.js +24 -0
  34. package/dist/lib/hooks/useChatSocket.d.ts +6 -0
  35. package/dist/lib/hooks/useChatSocket.d.ts.map +1 -0
  36. package/dist/lib/hooks/useChatSocket.js +35 -0
  37. package/dist/lib/models/application.d.ts +1 -0
  38. package/dist/lib/models/application.d.ts.map +1 -1
  39. package/dist/lib/models/blog.d.ts +4 -4
  40. package/dist/lib/models/chat.d.ts +122 -0
  41. package/dist/lib/models/chat.d.ts.map +1 -0
  42. package/dist/lib/models/chat.js +1 -0
  43. package/dist/lib/models/opportunities/freelance.d.ts +499 -0
  44. package/dist/lib/models/opportunities/freelance.d.ts.map +1 -0
  45. package/dist/lib/models/opportunities/freelance.js +12 -0
  46. package/dist/lib/models/opportunities/internship.d.ts +476 -0
  47. package/dist/lib/models/opportunities/internship.d.ts.map +1 -0
  48. package/dist/lib/models/opportunities/internship.js +7 -0
  49. package/dist/lib/models/opportunities/job.d.ts +612 -0
  50. package/dist/lib/models/opportunities/job.d.ts.map +1 -0
  51. package/dist/lib/models/opportunities/job.js +26 -0
  52. package/dist/lib/models/opportunities/opportunity.d.ts +582 -0
  53. package/dist/lib/models/opportunities/opportunity.d.ts.map +1 -0
  54. package/dist/lib/models/opportunities/opportunity.js +227 -0
  55. package/dist/lib/models/opportunities/volunteerJob.d.ts +453 -0
  56. package/dist/lib/models/opportunities/volunteerJob.d.ts.map +1 -0
  57. package/dist/lib/models/opportunities/volunteerJob.js +5 -0
  58. package/dist/lib/models/portfolio.d.ts +2 -2
  59. package/dist/lib/models/props.d.ts.map +1 -1
  60. package/dist/lib/models/props.js +1 -0
  61. package/dist/lib/models/tile.d.ts +3 -0
  62. package/dist/lib/models/tile.d.ts.map +1 -1
  63. package/dist/lib/socket.d.ts +7 -0
  64. package/dist/lib/socket.d.ts.map +1 -0
  65. package/dist/lib/socket.js +22 -0
  66. package/dist/lib/userAtom.js +2 -2
  67. package/package.json +4 -2
@@ -0,0 +1,5 @@
1
+ import { OpportunitySchema } from "./opportunity";
2
+ import { z } from "zod";
3
+ export const VolunteerOpportunitySchema = OpportunitySchema.extend({
4
+ opportunityType: z.literal("volunteer"),
5
+ });
@@ -19,9 +19,9 @@ export declare const PortfolioItemSchema: z.ZodObject<{
19
19
  createdAt: Date;
20
20
  updatedAt: Date;
21
21
  views: number;
22
+ shares: number;
22
23
  likes: number;
23
24
  comments: number;
24
- shares: number;
25
25
  mediaType: "image" | "video";
26
26
  caption: string;
27
27
  mainUrl?: string | undefined;
@@ -32,9 +32,9 @@ export declare const PortfolioItemSchema: z.ZodObject<{
32
32
  createdAt: Date;
33
33
  updatedAt: Date;
34
34
  views: number;
35
+ shares: number;
35
36
  likes: number;
36
37
  comments: number;
37
- shares: number;
38
38
  mediaType: "image" | "video";
39
39
  caption: string;
40
40
  mainUrl?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../../src/lib/models/props.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,cAAc;;;;;;;;;EAGhB,CAAC;AAEZ,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtD,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAEjD,eAAO,MAAM,UAAU;;;GA8BtB,CAAC;AAEF,eAAO,MAAM,aAAa;;GA+FzB,CAAC;AAEF,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,YAAY,qCAAqC,CAAA"}
1
+ {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../../src/lib/models/props.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,cAAc;;;;;;;;;EAGhB,CAAC;AAEZ,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtD,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAEjD,eAAO,MAAM,UAAU;;;GA8BtB,CAAC;AAEF,eAAO,MAAM,aAAa;;GA+FzB,CAAC;AAEF,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,YAAY,qCAAqC,CAAA"}
@@ -1,3 +1,4 @@
1
+ // @ts-nocheck
1
2
  import { Badge, BarChart, BookOpen, Box, Brain, Brush, Camera, Code, Cuboid, Film, Instagram, Layout, Link, Mail, Mic, Move, Music, Paintbrush, Palette, PenTool, Search, ShoppingCart, Target, Type, UserCheck, Users, Video, Workflow, Zap } from "lucide-react";
2
3
  import { z } from "zod";
3
4
  export const QuestionSchema = z.object({
@@ -1,3 +1,4 @@
1
+ import { OpportunityType } from "./opportunities/opportunity";
1
2
  export type tileType = "opportunities" | "blogs" | "packages";
2
3
  export interface TileProps {
3
4
  slug: string;
@@ -18,9 +19,11 @@ export interface TileProps {
18
19
  rating?: number;
19
20
  };
20
21
  duration?: number;
22
+ maxDuration?: number;
21
23
  price?: number;
22
24
  currency?: string;
23
25
  difficultyLevel?: "easy" | "medium" | "hard";
24
26
  includeHost?: boolean;
27
+ opportunityType?: OpportunityType;
25
28
  }
26
29
  //# sourceMappingURL=tile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tile.d.ts","sourceRoot":"","sources":["../../../src/lib/models/tile.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,eAAe,GAAG,OAAO,GAAG,UAAU,CAAC;AAE9D,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,IAAI,CAAC,EAAE;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC7C,WAAW,CAAC,EAAE,OAAO,CAAA;CACxB"}
1
+ {"version":3,"file":"tile.d.ts","sourceRoot":"","sources":["../../../src/lib/models/tile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,MAAM,MAAM,QAAQ,GAAG,eAAe,GAAG,OAAO,GAAG,UAAU,CAAC;AAE9D,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,IAAI,CAAC,EAAE;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC7C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,eAAe,CAAC;CACrC"}
@@ -0,0 +1,7 @@
1
+ import { Socket } from "socket.io-client";
2
+ import { type PrimitiveAtom } from "jotai";
3
+ export declare const socketAtom: PrimitiveAtom<Socket | null>;
4
+ export declare const isConnectedAtom: PrimitiveAtom<boolean>;
5
+ export declare const getSocket: () => Socket;
6
+ export declare const disconnectSocket: () => void;
7
+ //# sourceMappingURL=socket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../src/lib/socket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAQ,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAMjD,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,MAAM,GAAG,IAAI,CAA6B,CAAC;AAClF,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,OAAO,CAAwB,CAAC;AAE5E,eAAO,MAAM,SAAS,QAAO,MAS5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,YAK5B,CAAA"}
@@ -0,0 +1,22 @@
1
+ import { io } from "socket.io-client";
2
+ import { atom } from "jotai";
3
+ const SOCKET_URL = process.env.NEXT_PUBLIC_BACKEND_URL || "http://localhost:8000";
4
+ let socket = null;
5
+ export const socketAtom = atom(null);
6
+ export const isConnectedAtom = atom(false);
7
+ export const getSocket = () => {
8
+ if (!socket) {
9
+ socket = io(SOCKET_URL, {
10
+ autoConnect: false,
11
+ withCredentials: true,
12
+ transports: ["websocket", "polling"],
13
+ });
14
+ }
15
+ return socket;
16
+ };
17
+ export const disconnectSocket = () => {
18
+ if (socket?.connected) {
19
+ socket.disconnect();
20
+ }
21
+ socket = null;
22
+ };
@@ -2,8 +2,8 @@
2
2
  import CryptoJS from 'crypto-js';
3
3
  import { atom, getDefaultStore } from 'jotai';
4
4
  import { atomWithStorage } from 'jotai/utils';
5
- import { getCurrentUser } from './actions';
6
- import { validateSession } from './auth';
5
+ import { getCurrentUser } from './actions/actions';
6
+ import { validateSession } from './actions/auth';
7
7
  const STORAGE_KEY = process.env.NEXT_PUBLIC_USER_KEY;
8
8
  const LOGIN_KEY = process.env.NEXT_PUBLIC_LOGIN_KEY;
9
9
  const SECRET_KEY = process.env.NEXT_PUBLIC_RACE;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@myrjfa/state",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "Shared state management for myrjfa apps",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -9,10 +9,12 @@
9
9
  ],
10
10
  "dependencies": {
11
11
  "@tanstack/react-query": "^5.89.0",
12
+ "@types/socket.io-client": "^3.0.0",
12
13
  "cheerio": "^1.0.0",
13
14
  "clsx": "^2.1.1",
14
15
  "crypto-js": "^4.2.0",
15
16
  "he": "^1.2.0",
17
+ "socket.io-client": "^4.8.3",
16
18
  "tailwind-merge": "^3.0.2"
17
19
  },
18
20
  "peerDependencies": {
@@ -28,7 +30,7 @@
28
30
  "@types/crypto-js": "^4.2.2",
29
31
  "@types/he": "^1.2.3",
30
32
  "@types/node": "^22.13.10",
31
- "@types/react": "^19.0.10",
33
+ "@types/react": "19.0.10",
32
34
  "date-fns": "^3.0.0",
33
35
  "jotai": "^2.12.2",
34
36
  "lucide-react": "^0.482.0",