@armoyu/ui 1.1.22 → 1.1.24

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 (133) hide show
  1. package/dist/app/etkinlikler/[eventId]/page.d.ts +2 -0
  2. package/dist/app/etkinlikler/[eventId]/page.d.ts.map +1 -0
  3. package/dist/app/etkinlikler/[eventId]/page.js +15 -0
  4. package/dist/app/etkinlikler/[eventId]/page.js.map +1 -0
  5. package/dist/app/etkinlikler/page.d.ts +2 -0
  6. package/dist/app/etkinlikler/page.d.ts.map +1 -0
  7. package/dist/app/etkinlikler/page.js +35 -0
  8. package/dist/app/etkinlikler/page.js.map +1 -0
  9. package/dist/app/page.d.ts.map +1 -1
  10. package/dist/app/page.js +6 -2
  11. package/dist/app/page.js.map +1 -1
  12. package/dist/components/common/Mentions/HashtagLink.d.ts +7 -0
  13. package/dist/components/common/Mentions/HashtagLink.d.ts.map +1 -0
  14. package/dist/components/common/Mentions/HashtagLink.js +14 -0
  15. package/dist/components/common/Mentions/HashtagLink.js.map +1 -0
  16. package/dist/components/common/Mentions/MentionLink.d.ts +7 -0
  17. package/dist/components/common/Mentions/MentionLink.d.ts.map +1 -0
  18. package/dist/components/common/Mentions/MentionLink.js +40 -0
  19. package/dist/components/common/Mentions/MentionLink.js.map +1 -0
  20. package/dist/components/common/Mentions/MentionText.d.ts +8 -0
  21. package/dist/components/common/Mentions/MentionText.d.ts.map +1 -0
  22. package/dist/components/common/Mentions/MentionText.js +63 -0
  23. package/dist/components/common/Mentions/MentionText.js.map +1 -0
  24. package/dist/components/modules/auth/widgets/InviteWidget.d.ts +6 -0
  25. package/dist/components/modules/auth/widgets/InviteWidget.d.ts.map +1 -0
  26. package/dist/components/modules/auth/widgets/InviteWidget.js +71 -0
  27. package/dist/components/modules/auth/widgets/InviteWidget.js.map +1 -0
  28. package/dist/components/modules/cloud/CloudModal.d.ts.map +1 -1
  29. package/dist/components/modules/cloud/CloudModal.js +8 -1
  30. package/dist/components/modules/cloud/CloudModal.js.map +1 -1
  31. package/dist/components/modules/education/pages/EducationPage.js +1 -1
  32. package/dist/components/modules/education/pages/EducationPage.js.map +1 -1
  33. package/dist/components/modules/events/DetailPage.d.ts.map +1 -1
  34. package/dist/components/modules/events/DetailPage.js +21 -6
  35. package/dist/components/modules/events/DetailPage.js.map +1 -1
  36. package/dist/components/modules/events/EventsPage.d.ts +4 -1
  37. package/dist/components/modules/events/EventsPage.d.ts.map +1 -1
  38. package/dist/components/modules/events/EventsPage.js +8 -8
  39. package/dist/components/modules/events/EventsPage.js.map +1 -1
  40. package/dist/components/modules/events/index.d.ts +1 -1
  41. package/dist/components/modules/events/index.d.ts.map +1 -1
  42. package/dist/components/modules/events/index.js +2 -1
  43. package/dist/components/modules/events/index.js.map +1 -1
  44. package/dist/components/modules/events/widgets/EventCard.d.ts +2 -1
  45. package/dist/components/modules/events/widgets/EventCard.d.ts.map +1 -1
  46. package/dist/components/modules/events/widgets/EventCard.js +2 -2
  47. package/dist/components/modules/events/widgets/EventCard.js.map +1 -1
  48. package/dist/components/modules/events/widgets/EventList.d.ts +2 -1
  49. package/dist/components/modules/events/widgets/EventList.d.ts.map +1 -1
  50. package/dist/components/modules/events/widgets/EventList.js +2 -2
  51. package/dist/components/modules/events/widgets/EventList.js.map +1 -1
  52. package/dist/components/modules/posts/widgets/MediaLightbox.d.ts +8 -2
  53. package/dist/components/modules/posts/widgets/MediaLightbox.d.ts.map +1 -1
  54. package/dist/components/modules/posts/widgets/MediaLightbox.js +94 -12
  55. package/dist/components/modules/posts/widgets/MediaLightbox.js.map +1 -1
  56. package/dist/components/modules/posts/widgets/PostCard.d.ts.map +1 -1
  57. package/dist/components/modules/posts/widgets/PostCard.js +29 -12
  58. package/dist/components/modules/posts/widgets/PostCard.js.map +1 -1
  59. package/dist/components/modules/posts/widgets/SocialFeed.d.ts.map +1 -1
  60. package/dist/components/modules/posts/widgets/SocialFeed.js +19 -20
  61. package/dist/components/modules/posts/widgets/SocialFeed.js.map +1 -1
  62. package/dist/components/modules/profile/tabs/MediaTab.d.ts.map +1 -1
  63. package/dist/components/modules/profile/tabs/MediaTab.js +6 -1
  64. package/dist/components/modules/profile/tabs/MediaTab.js.map +1 -1
  65. package/dist/components/modules/profile/widgets/EditProfileModal.d.ts.map +1 -1
  66. package/dist/components/modules/profile/widgets/EditProfileModal.js +2 -0
  67. package/dist/components/modules/profile/widgets/EditProfileModal.js.map +1 -1
  68. package/dist/components/modules/social/SocialLayout.d.ts.map +1 -1
  69. package/dist/components/modules/social/SocialLayout.js +2 -2
  70. package/dist/components/modules/social/SocialLayout.js.map +1 -1
  71. package/dist/components/modules/social/widgets/NewMembersWidget.d.ts +2 -0
  72. package/dist/components/modules/social/widgets/NewMembersWidget.d.ts.map +1 -0
  73. package/dist/components/modules/social/widgets/NewMembersWidget.js +42 -0
  74. package/dist/components/modules/social/widgets/NewMembersWidget.js.map +1 -0
  75. package/dist/components/modules/social/widgets/PostComposer.d.ts.map +1 -1
  76. package/dist/components/modules/social/widgets/PostComposer.js +104 -2
  77. package/dist/components/modules/social/widgets/PostComposer.js.map +1 -1
  78. package/dist/components/modules/social/widgets/TrendingWidget.d.ts +3 -0
  79. package/dist/components/modules/social/widgets/TrendingWidget.d.ts.map +1 -0
  80. package/dist/components/modules/social/widgets/TrendingWidget.js +41 -0
  81. package/dist/components/modules/social/widgets/TrendingWidget.js.map +1 -0
  82. package/dist/components/modules/stories/widgets/Stories.d.ts.map +1 -1
  83. package/dist/components/modules/stories/widgets/Stories.js +65 -35
  84. package/dist/components/modules/stories/widgets/Stories.js.map +1 -1
  85. package/dist/components/modules/stories/widgets/StoryOverlay.d.ts.map +1 -1
  86. package/dist/components/modules/stories/widgets/StoryOverlay.js +198 -18
  87. package/dist/components/modules/stories/widgets/StoryOverlay.js.map +1 -1
  88. package/dist/components/shared/Header.d.ts.map +1 -1
  89. package/dist/components/shared/Header.js +37 -68
  90. package/dist/components/shared/Header.js.map +1 -1
  91. package/dist/components/shared/UserDrawer.d.ts +23 -0
  92. package/dist/components/shared/UserDrawer.d.ts.map +1 -0
  93. package/dist/components/shared/UserDrawer.js +71 -0
  94. package/dist/components/shared/UserDrawer.js.map +1 -0
  95. package/dist/components/showcase/MyPostsTab.d.ts +2 -0
  96. package/dist/components/showcase/MyPostsTab.d.ts.map +1 -0
  97. package/dist/components/showcase/MyPostsTab.js +15 -0
  98. package/dist/components/showcase/MyPostsTab.js.map +1 -0
  99. package/dist/components/showcase/ShowcaseNavigation.d.ts.map +1 -1
  100. package/dist/components/showcase/ShowcaseNavigation.js +43 -7
  101. package/dist/components/showcase/ShowcaseNavigation.js.map +1 -1
  102. package/dist/components/showcase/SocialTab.d.ts.map +1 -1
  103. package/dist/components/showcase/SocialTab.js +23 -22
  104. package/dist/components/showcase/SocialTab.js.map +1 -1
  105. package/dist/index.d.ts +1 -0
  106. package/dist/index.d.ts.map +1 -1
  107. package/dist/index.js +5 -3
  108. package/dist/index.js.map +1 -1
  109. package/dist/lib/utils/postUtils.js +1 -1
  110. package/dist/lib/utils/postUtils.js.map +1 -1
  111. package/dist/models/community/ArmoyuEvent.js +1 -1
  112. package/dist/models/community/ArmoyuEvent.js.map +1 -1
  113. package/dist/models/social/feed/Comment.d.ts.map +1 -1
  114. package/dist/models/social/feed/Comment.js +5 -4
  115. package/dist/models/social/feed/Comment.js.map +1 -1
  116. package/dist/models/social/feed/Post.d.ts +4 -1
  117. package/dist/models/social/feed/Post.d.ts.map +1 -1
  118. package/dist/models/social/feed/Post.js +11 -3
  119. package/dist/models/social/feed/Post.js.map +1 -1
  120. package/dist/models/social/feed/Story.d.ts +14 -1
  121. package/dist/models/social/feed/Story.d.ts.map +1 -1
  122. package/dist/models/social/feed/Story.js +38 -9
  123. package/dist/models/social/feed/Story.js.map +1 -1
  124. package/dist/models/social/feed/StoryAuthor.d.ts +1 -0
  125. package/dist/models/social/feed/StoryAuthor.d.ts.map +1 -1
  126. package/dist/models/social/feed/StoryAuthor.js +3 -1
  127. package/dist/models/social/feed/StoryAuthor.js.map +1 -1
  128. package/dist/utils/text/MentionUtils.d.ts +8 -0
  129. package/dist/utils/text/MentionUtils.d.ts.map +1 -0
  130. package/dist/utils/text/MentionUtils.js +30 -0
  131. package/dist/utils/text/MentionUtils.js.map +1 -0
  132. package/package.json +2 -2
  133. package/src/globals.css +51 -0
@@ -4,11 +4,14 @@ exports.Story = void 0;
4
4
  const StoryAuthor_1 = require("./StoryAuthor");
5
5
  /**
6
6
  * Represents a Social Story in the UI.
7
+ * A Story can have multiple media items from the same author.
7
8
  */
8
9
  class Story {
9
10
  id = '';
10
11
  author = null;
11
12
  media = '';
13
+ /** All media items for this story group (multiple stories from same author) */
14
+ items = [];
12
15
  timestamp = '';
13
16
  isViewed = false;
14
17
  isRead = false;
@@ -16,21 +19,47 @@ class Story {
16
19
  Object.assign(this, data);
17
20
  }
18
21
  /**
19
- * Instantiates a Story object from an API response.
22
+ * Instantiates a Story object from a Core StoryResponse.
23
+ * Maps the nested items array into a flat Story with all media.
20
24
  */
21
25
  static fromAPI(json) {
22
26
  if (!json)
23
27
  return new Story({});
24
- const isRead = json.isRead === true || json.izlendi === 1 || json.isViewed === true || false;
25
- // From Core StoryResponse: items, authorName, authorAvatar
26
- const firstItem = Array.isArray(json.items) && json.items.length > 0 ? json.items[0] : null;
28
+ const isReadStatus = json.isRead === true || json.isSeen === true || false;
29
+ // Core StoryResponse: { authorId, authorName, authorUsername, authorAvatar, items: [...] }
30
+ const coreItems = Array.isArray(json.items) ? json.items : [];
31
+ // Her item'ı basit bir yapıya dönüştür
32
+ const storyItems = coreItems.map((item) => {
33
+ // Detect type
34
+ let type = 'image';
35
+ const url = item.mediaUrl || '';
36
+ const ext = url.split('.').pop()?.toLowerCase();
37
+ if (['mp4', 'webm', 'ogg', 'mov'].includes(ext || '')) {
38
+ type = 'video';
39
+ }
40
+ else if (['mp3', 'wav', 'mpeg'].includes(ext || '')) {
41
+ type = 'audio';
42
+ }
43
+ return {
44
+ id: String(item.id || 0),
45
+ media: url,
46
+ type,
47
+ timestamp: item.createdAt || '',
48
+ isRead: item.isSeen === true || item.isMe === true || false,
49
+ isLiked: item.isLiked === true || false,
50
+ likeCount: item.likeCount || 0,
51
+ viewCount: item.viewCount || 0
52
+ };
53
+ });
54
+ const firstItem = coreItems.length > 0 ? coreItems[0] : null;
27
55
  return new Story({
28
- id: String(firstItem?.id || json.id || json.hikayeid || json.hikayeID || ''),
56
+ id: String(firstItem?.id || json.id || ''),
29
57
  author: StoryAuthor_1.StoryAuthor.fromAPI(json),
30
- media: firstItem?.mediaUrl || json.media || json.resim || json.url || json.hikayemedya || '',
31
- timestamp: firstItem?.createdAt || json.timestamp || json.tarih || json.hikayezaman || '',
32
- isViewed: isRead,
33
- isRead: isRead
58
+ media: firstItem?.mediaUrl || '',
59
+ items: storyItems,
60
+ timestamp: firstItem?.createdAt || '',
61
+ isViewed: isReadStatus,
62
+ isRead: isReadStatus
34
63
  });
35
64
  }
36
65
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Story.js","sourceRoot":"","sources":["../../../../src/models/social/feed/Story.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C;;GAEG;AACH,MAAa,KAAK;IAChB,EAAE,GAAW,EAAE,CAAC;IAChB,MAAM,GAAuB,IAAI,CAAC;IAClC,KAAK,GAAW,EAAE,CAAC;IACnB,SAAS,GAAW,EAAE,CAAC;IACvB,QAAQ,GAAY,KAAK,CAAC;IAC1B,MAAM,GAAY,KAAK,CAAC;IAExB,YAAY,IAAoB;QAC9B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,IAAyB;QACtC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC;QAEhC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,KAAK,CAAC;QAE7F,2DAA2D;QAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE5F,OAAO,IAAI,KAAK,CAAC;YACf,EAAE,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;YAC5E,MAAM,EAAE,yBAAW,CAAC,OAAO,CAAC,IAAI,CAAC;YACjC,KAAK,EAAE,SAAS,EAAE,QAAQ,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE;YAC5F,SAAS,EAAE,SAAS,EAAE,SAAS,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE;YACzF,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;IACL,CAAC;CACF;AAhCD,sBAgCC"}
1
+ {"version":3,"file":"Story.js","sourceRoot":"","sources":["../../../../src/models/social/feed/Story.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C;;;GAGG;AACH,MAAa,KAAK;IAChB,EAAE,GAAW,EAAE,CAAC;IAChB,MAAM,GAAuB,IAAI,CAAC;IAClC,KAAK,GAAW,EAAE,CAAC;IACnB,+EAA+E;IAC/E,KAAK,GASC,EAAE,CAAC;IACT,SAAS,GAAW,EAAE,CAAC;IACvB,QAAQ,GAAY,KAAK,CAAC;IAC1B,MAAM,GAAY,KAAK,CAAC;IAExB,YAAY,IAAoB;QAC9B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,IAAyB;QACtC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC;QAEhC,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC;QAE3E,2FAA2F;QAC3F,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAE9D,uCAAuC;QACvC,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;YAC7C,cAAc;YACd,IAAI,IAAI,GAAgC,OAAO,CAAC;YAChD,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,CAAC;YAChD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC;gBACtD,IAAI,GAAG,OAAO,CAAC;YACjB,CAAC;iBAAM,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC;gBACtD,IAAI,GAAG,OAAO,CAAC;YACjB,CAAC;YAED,OAAO;gBACL,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;gBACxB,KAAK,EAAE,GAAG;gBACV,IAAI;gBACJ,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;gBAC/B,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK;gBAC3D,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,KAAK;gBACvC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC;gBAC9B,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC;aAC/B,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE7D,OAAO,IAAI,KAAK,CAAC;YACf,EAAE,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;YAC1C,MAAM,EAAE,yBAAW,CAAC,OAAO,CAAC,IAAI,CAAC;YACjC,KAAK,EAAE,SAAS,EAAE,QAAQ,IAAI,EAAE;YAChC,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,SAAS,EAAE,SAAS,IAAI,EAAE;YACrC,QAAQ,EAAE,YAAY;YACtB,MAAM,EAAE,YAAY;SACrB,CAAC,CAAC;IACL,CAAC;CACF;AAvED,sBAuEC"}
@@ -2,6 +2,7 @@
2
2
  * Minimal user model specifically for Story displays.
3
3
  */
4
4
  export declare class StoryAuthor {
5
+ id: number;
5
6
  username: string;
6
7
  displayName: string;
7
8
  avatar: string;
@@ -1 +1 @@
1
- {"version":3,"file":"StoryAuthor.d.ts","sourceRoot":"","sources":["../../../../src/models/social/feed/StoryAuthor.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,WAAW;IACtB,QAAQ,EAAE,MAAM,CAAM;IACtB,WAAW,EAAE,MAAM,CAAM;IACzB,MAAM,EAAE,MAAM,CAAM;IACpB,IAAI,EAAE,OAAO,CAAS;gBAEV,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC;IAItC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,WAAW;CAUvD"}
1
+ {"version":3,"file":"StoryAuthor.d.ts","sourceRoot":"","sources":["../../../../src/models/social/feed/StoryAuthor.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,WAAW;IACtB,EAAE,EAAE,MAAM,CAAK;IACf,QAAQ,EAAE,MAAM,CAAM;IACtB,WAAW,EAAE,MAAM,CAAM;IACzB,MAAM,EAAE,MAAM,CAAM;IACpB,IAAI,EAAE,OAAO,CAAS;gBAEV,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC;IAItC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,WAAW;CAWvD"}
@@ -5,6 +5,7 @@ exports.StoryAuthor = void 0;
5
5
  * Minimal user model specifically for Story displays.
6
6
  */
7
7
  class StoryAuthor {
8
+ id = 0;
8
9
  username = '';
9
10
  displayName = '';
10
11
  avatar = '';
@@ -16,10 +17,11 @@ class StoryAuthor {
16
17
  if (!json)
17
18
  return new StoryAuthor({});
18
19
  return new StoryAuthor({
20
+ id: Number(json.authorId || json.ownerId || json.oyuncu_ID || 0),
19
21
  username: json.authorUsername || json.oyuncuadi || json.kullaniciadi || json.username || '',
20
22
  displayName: json.authorName || json.oyuncuadi || json.adsoyad || json.displayname || json.username || '',
21
23
  avatar: json.authorAvatar || json.oyuncuavatar || json.avatar || json.oyuncu_avatar || '',
22
- isMe: json.hikayeben === 1 || json.isMe === true || false
24
+ isMe: json.isMe === true || json.hikayeben === 1 || false
23
25
  });
24
26
  }
25
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"StoryAuthor.js","sourceRoot":"","sources":["../../../../src/models/social/feed/StoryAuthor.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,WAAW;IACtB,QAAQ,GAAW,EAAE,CAAC;IACtB,WAAW,GAAW,EAAE,CAAC;IACzB,MAAM,GAAW,EAAE,CAAC;IACpB,IAAI,GAAY,KAAK,CAAC;IAEtB,YAAY,IAA0B;QACpC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,IAAyB;QACtC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;QAEtC,OAAO,IAAI,WAAW,CAAC;YACrB,QAAQ,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE;YAC3F,WAAW,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE;YACzG,MAAM,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,IAAI,EAAE;YACzF,IAAI,EAAE,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK;SAC1D,CAAC,CAAC;IACL,CAAC;CACF;AApBD,kCAoBC"}
1
+ {"version":3,"file":"StoryAuthor.js","sourceRoot":"","sources":["../../../../src/models/social/feed/StoryAuthor.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,WAAW;IACtB,EAAE,GAAW,CAAC,CAAC;IACf,QAAQ,GAAW,EAAE,CAAC;IACtB,WAAW,GAAW,EAAE,CAAC;IACzB,MAAM,GAAW,EAAE,CAAC;IACpB,IAAI,GAAY,KAAK,CAAC;IAEtB,YAAY,IAA0B;QACpC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,IAAyB;QACtC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;QAEtC,OAAO,IAAI,WAAW,CAAC;YACrB,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC;YAChE,QAAQ,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE;YAC3F,WAAW,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE;YACzG,MAAM,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,IAAI,EAAE;YACzF,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,KAAK;SAC1D,CAAC,CAAC;IACL,CAAC;CACF;AAtBD,kCAsBC"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ /**
3
+ * Metin içindeki @kullaniciadi ve #hashtag ifadelerini bulur ve tıkalanabilir yapılara dönüştürür.
4
+ * @param text İşlenecek ham metin
5
+ * @returns JSX Element dizisi
6
+ */
7
+ export declare const parseMentions: (text: string) => React.ReactNode;
8
+ //# sourceMappingURL=MentionUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MentionUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/text/MentionUtils.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,KAAK,CAAC,SA8BlD,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.parseMentions = void 0;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const react_1 = __importDefault(require("react"));
9
+ const MentionLink_1 = require("../../components/common/Mentions/MentionLink");
10
+ const HashtagLink_1 = require("../../components/common/Mentions/HashtagLink");
11
+ /**
12
+ * Metin içindeki @kullaniciadi ve #hashtag ifadelerini bulur ve tıkalanabilir yapılara dönüştürür.
13
+ * @param text İşlenecek ham metin
14
+ * @returns JSX Element dizisi
15
+ */
16
+ const parseMentions = (text) => {
17
+ if (!text)
18
+ return null;
19
+ // Regex: Hem @ hem de # ile başlayan kelimeleri yakalar
20
+ const regex = /(@\w+|#\w+)/g;
21
+ const parts = text.split(regex);
22
+ const matches = text.match(regex);
23
+ let matchIndex = 0;
24
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: parts.map((part, i) => {
25
+ const currentMatch = matches && i < parts.length - 1 ? matches[matchIndex++] : null;
26
+ return ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [part, currentMatch && (currentMatch.startsWith('@') ? ((0, jsx_runtime_1.jsx)(MentionLink_1.MentionLink, { username: currentMatch.substring(1) })) : ((0, jsx_runtime_1.jsx)(HashtagLink_1.HashtagLink, { tag: currentMatch.substring(1) })))] }, i));
27
+ }) }));
28
+ };
29
+ exports.parseMentions = parseMentions;
30
+ //# sourceMappingURL=MentionUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MentionUtils.js","sourceRoot":"","sources":["../../../src/utils/text/MentionUtils.tsx"],"names":[],"mappings":";;;;;;;AAAA,kDAA0B;AAC1B,8EAA2E;AAC3E,8EAA2E;AAE3E;;;;GAIG;AACI,MAAM,aAAa,GAAG,CAAC,IAAY,EAAmB,EAAE;IAC7D,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,wDAAwD;IACxD,MAAM,KAAK,GAAG,cAAc,CAAC;IAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAElC,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,OAAO,CACL,2DACG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACrB,MAAM,YAAY,GAAG,OAAO,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAEpF,OAAO,CACL,wBAAC,eAAK,CAAC,QAAQ,eACZ,IAAI,EACJ,YAAY,IAAI,CACf,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAC7B,uBAAC,yBAAW,IAAC,QAAQ,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,GAAI,CACrD,CAAC,CAAC,CAAC,CACF,uBAAC,yBAAW,IAAC,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,GAAI,CAChD,CACF,KARkB,CAAC,CASL,CAClB,CAAC;QACJ,CAAC,CAAC,GACD,CACJ,CAAC;AACJ,CAAC,CAAC;AA9BW,QAAA,aAAa,iBA8BxB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@armoyu/ui",
3
- "version": "1.1.22",
3
+ "version": "1.1.24",
4
4
  "description": "Premium UI component library for ARMOYU platforms.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -19,7 +19,7 @@
19
19
  "dev": "next dev"
20
20
  },
21
21
  "dependencies": {
22
- "@armoyu/core": "^1.1.59",
22
+ "@armoyu/core": "^1.1.60",
23
23
  "plyr": "^3.8.4",
24
24
  "plyr-react": "^6.0.0"
25
25
  },
package/src/globals.css CHANGED
@@ -1,4 +1,18 @@
1
1
  @import "tailwindcss";
2
+ @import "plyr-react/plyr.css";
3
+
4
+ /* Plyr Custom Theme */
5
+ :root {
6
+ --plyr-color-main: #3b82f6; /* Armoyu Blue */
7
+ }
8
+
9
+ .plyr {
10
+ border-radius: inherit;
11
+ }
12
+
13
+ .plyr--video {
14
+ background: transparent;
15
+ }
2
16
  @source "./components/**/*.{js,ts,jsx,tsx}";
3
17
  @source "./app/**/*.{js,ts,jsx,tsx}";
4
18
 
@@ -185,3 +199,40 @@
185
199
  width: 100%;
186
200
  }
187
201
  }
202
+
203
+ /* Slide Animations for Lightbox */
204
+ @keyframes slideInRight {
205
+ from {
206
+ transform: translateX(100px);
207
+ opacity: 0;
208
+ }
209
+ to {
210
+ transform: translateX(0);
211
+ opacity: 1;
212
+ }
213
+ }
214
+
215
+ @keyframes slideInLeft {
216
+ from {
217
+ transform: translateX(-100px);
218
+ opacity: 0;
219
+ }
220
+ to {
221
+ transform: translateX(0);
222
+ opacity: 1;
223
+ }
224
+ }
225
+
226
+ .animate-slide-right {
227
+ animation: slideInRight 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
228
+ }
229
+
230
+ .animate-slide-left {
231
+ animation: slideInLeft 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
232
+ }
233
+
234
+ /* Mask Fade Bottom for text truncation */
235
+ .mask-fade-bottom {
236
+ mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
237
+ -webkit-mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
238
+ }