FaziHamza commited on
Commit
29c1ea0
·
1 Parent(s): f0051a5
apps/agent-service/apps/agent-service/src/agent/category-router.service.js CHANGED
@@ -133,7 +133,7 @@ let CategoryRouterService = CategoryRouterService_1 = class CategoryRouterServic
133
  /^(how|what|which|who|when|where|why|show|list|give me|tell me|do i|did i|can i|is there|are there)\b/i.test(m.trim());
134
  if (!interrogative)
135
  return false;
136
- return (/\b(how many|how much|show|list|what is my|what's my|who|when did|total|report|export|invoice|plan|subscription|winner|participant)\b/i.test(m) &&
137
  !/\b(should|would|do you (think|suggest|recommend))\b/i.test(m));
138
  }
139
  fastClassify(userMessage, categories) {
 
133
  /^(how|what|which|who|when|where|why|show|list|give me|tell me|do i|did i|can i|is there|are there)\b/i.test(m.trim());
134
  if (!interrogative)
135
  return false;
136
+ return (/\b(how many|how much|show|list|what is my|what's my|who|when did|total|reports?|export|invoices?|plans?|subscriptions?|winners?|participants?|joins?|redemptions?|points|most|highest|lowest|best|worst|average|top \d+)\b/i.test(m) &&
137
  !/\b(should|would|do you (think|suggest|recommend))\b/i.test(m));
138
  }
139
  fastClassify(userMessage, categories) {
apps/agent-service/apps/agent-service/src/agent/category-router.service.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"category-router.service.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/category-router.service.ts"],"names":[],"mappings":"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"}
 
1
+ {"version":3,"file":"category-router.service.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/category-router.service.ts"],"names":[],"mappings":"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"}
apps/agent-service/apps/agent-service/src/agent/chat-graph.d.ts CHANGED
@@ -62,6 +62,8 @@ export declare class ChatGraphService {
62
  private languageInstruction;
63
  private staleAmount;
64
  private foreignScript;
 
 
65
  private prizeSumMismatch;
66
  private uiBlockFault;
67
  private directResponse;
 
62
  private languageInstruction;
63
  private staleAmount;
64
  private foreignScript;
65
+ private creationClaim;
66
+ private briefDrift;
67
  private prizeSumMismatch;
68
  private uiBlockFault;
69
  private directResponse;
apps/agent-service/apps/agent-service/src/agent/chat-graph.js CHANGED
@@ -153,13 +153,13 @@ let ChatGraphService = ChatGraphService_1 = class ChatGraphService {
153
  if (state.useCategories && state.agentCategories?.length) {
154
  const pickedSlug = await this.categoryRouter.classifyDynamic(state.userMessage, state.agentCategories, { provider: state.aiProvider, apiKey: state.aiApiKey, model: state.model }, state.history ?? []);
155
  const { prompt: sqlPrompt } = this.categoryRouter.buildPromptDynamic(pickedSlug, state.agentCategories, state.contextParams ?? {}, { corePrompt: state.corePrompt });
156
- const NON_DATA_SLUGS = /greeting|smalltalk|chit.?chat|how.?to|navigation|feature|blocked|security|off.?topic|faq|policy|help|builder/i;
157
  const isNonData = NON_DATA_SLUGS.test(pickedSlug);
158
  const questionType = isNonData ? 'non_data' : 'data';
159
  const CONVERSATIONAL_SLUGS = /builder/i;
160
  const isConversational = CONVERSATIONAL_SLUGS.test(pickedSlug);
161
  const stylePicked = state.agentCategories.find(c => c.slug === pickedSlug) ?? state.agentCategories[0];
162
- const { prompt: chatPrompt } = this.categoryRouter.buildPromptDynamic(stylePicked.slug, [{ ...stylePicked, prompt: isConversational ? stylePicked.prompt : '' }], state.contextParams ?? {}, isConversational
163
  ? { corePrompt: state.corePrompt }
164
  : { corePrompt: state.corePrompt, stylePrompt: state.stylePrompt });
165
  this.logger.log(`[GRAPH:resolve_prompt] dynamic category=${pickedSlug} sqlChars=${sqlPrompt.length} ` +
@@ -467,34 +467,26 @@ SQL Rules:
467
  if (!settled.length)
468
  return '';
469
  const name = typeof ledger.name === 'string' ? ledger.name.trim() : '';
470
- let block = '\n\n### The brief so far — settled, from this conversation\n' +
471
- 'FOR YOUR EYES ONLY. This section is a working note to you. Never quote it,\n' +
472
- 'never summarise it, never list it back, and never use its wording in a\n' +
473
- 'reply. The client must not learn that a checklist exists.\n\n' +
474
- 'It is assembled from what the client has actually told you, and it is\n' +
475
- 'authoritative: treat every line as said out loud and agreed.\n\n' +
476
  (name ? `- Name: ${name.slice(0, 120)}\n` : '') +
477
  settled.join('\n') + '\n';
478
  if (missing.length) {
479
  block +=
480
- `\nNot yet settled: ${missing.join(', ')}.\n\n` +
481
- 'Ask about the first of those, and nothing else. Do NOT ask about anything\n' +
482
- 'on the settled list in any form — not as a fresh question, not as a\n' +
483
- 'confirmation, and not as a set of choices. Offering options for a settled\n' +
484
- 'slot is re-asking it.\n' +
485
- 'Ask in your own words, as one short question in prose. Do not name the\n' +
486
- 'slot list, do not say what is missing or how much is left, and do not\n' +
487
- 'count off what you still need.\n';
488
  }
489
  else {
490
  block +=
491
- '\nEverything required is settled. Ask no further question about the brief.\n' +
492
- 'Send the summary card and the two buttons, and say in one line that they\n' +
493
- 'can change anything before you create it.\n';
494
  }
495
- block +=
496
- '\nIf the client asks to change one of these, update it and acknowledge the\n' +
497
- 'change in half a sentence. Never restart the brief.\n';
498
  return block;
499
  }
500
  languageInstruction(state) {
@@ -537,6 +529,8 @@ SQL Rules:
537
  }
538
  foreignScript(prose, userMessage) {
539
  const mine = new Set((userMessage.match(/[A-Za-z][A-Za-z0-9'-]*/g) ?? []).map(w => w.toLowerCase()));
 
 
540
  const found = [];
541
  const OTHER_SCRIPTS = /[\u4E00-\u9FFF\u3040-\u30FF\u0400-\u04FF\u0900-\u097F\u0590-\u05FF]+/g;
542
  for (const run of prose.match(OTHER_SCRIPTS) ?? []) {
@@ -548,6 +542,54 @@ SQL Rules:
548
  }
549
  return [...new Set(found)].slice(0, 12);
550
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
551
  prizeSumMismatch(reply) {
552
  const block = reply.match(/```(?:chatbolt-ui|chatbolt_ui)\s*([\s\S]*?)```/i);
553
  if (!block)
@@ -647,7 +689,9 @@ SQL Rules:
647
  let reply = this.stripEmojis(result.reply);
648
  let tokens = result.tokens_used;
649
  const stale = state.conversational
650
- ? (this.staleAmount(reply, state.userMessage) ?? this.prizeSumMismatch(reply))
 
 
651
  : null;
652
  const fault = state.conversational
653
  ? (stale ? 'stale_amount' : this.uiBlockFault(reply, state.briefLedger))
@@ -673,8 +717,11 @@ SQL Rules:
673
  'Send the block again with the total the client asked for, and rebuild ' +
674
  'the individual prizes so their values add up to it **exactly** — same ' +
675
  'number of prizes and same shape of split unless they asked to change ' +
676
- 'that too. Add them up before you send. Every other value in the brief ' +
677
- 'stays as it was.\n'
 
 
 
678
  : fault === 'create_as_chip'
679
  ? 'You offered to create the contest as a suggestion chip. A chip only ' +
680
  'sends its text back to you as a message — it cannot create anything, ' +
@@ -781,6 +828,56 @@ SQL Rules:
781
  }
782
  }
783
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
784
  return {
785
  reply,
786
  tokensUsed: (state.tokensUsed || 0) + tokens,
 
153
  if (state.useCategories && state.agentCategories?.length) {
154
  const pickedSlug = await this.categoryRouter.classifyDynamic(state.userMessage, state.agentCategories, { provider: state.aiProvider, apiKey: state.aiApiKey, model: state.model }, state.history ?? []);
155
  const { prompt: sqlPrompt } = this.categoryRouter.buildPromptDynamic(pickedSlug, state.agentCategories, state.contextParams ?? {}, { corePrompt: state.corePrompt });
156
+ const NON_DATA_SLUGS = /greeting|smalltalk|chit.?chat|how.?to|navigation|feature|blocked|security|off.?topic|faq|policy|help|builder|capabilit/i;
157
  const isNonData = NON_DATA_SLUGS.test(pickedSlug);
158
  const questionType = isNonData ? 'non_data' : 'data';
159
  const CONVERSATIONAL_SLUGS = /builder/i;
160
  const isConversational = CONVERSATIONAL_SLUGS.test(pickedSlug);
161
  const stylePicked = state.agentCategories.find(c => c.slug === pickedSlug) ?? state.agentCategories[0];
162
+ const { prompt: chatPrompt } = this.categoryRouter.buildPromptDynamic(stylePicked.slug, [{ ...stylePicked, prompt: isNonData ? stylePicked.prompt : '' }], state.contextParams ?? {}, isConversational
163
  ? { corePrompt: state.corePrompt }
164
  : { corePrompt: state.corePrompt, stylePrompt: state.stylePrompt });
165
  this.logger.log(`[GRAPH:resolve_prompt] dynamic category=${pickedSlug} sqlChars=${sqlPrompt.length} ` +
 
467
  if (!settled.length)
468
  return '';
469
  const name = typeof ledger.name === 'string' ? ledger.name.trim() : '';
470
+ let block = '\n\n### The brief so far — settled (FOR YOUR EYES ONLY)\n' +
471
+ 'Never quote, list back or hint at this. It is authoritative: every line ' +
472
+ 'was said and agreed.\n' +
 
 
 
473
  (name ? `- Name: ${name.slice(0, 120)}\n` : '') +
474
  settled.join('\n') + '\n';
475
  if (missing.length) {
476
  block +=
477
+ `\nNot yet settled: ${missing.join(', ')}.\n` +
478
+ 'Ask about the first of those and nothing else, in your own words, as one ' +
479
+ 'short question. Never ask about a settled slot in any form — a question, ' +
480
+ 'a confirmation or a set of choices are all re-asking it. Do not say what ' +
481
+ 'is missing or how much is left.\n';
 
 
 
482
  }
483
  else {
484
  block +=
485
+ '\nNothing is missing. Ask no further question about the brief: send the ' +
486
+ 'card and the two buttons, and say in one line that they can change ' +
487
+ 'anything first.\n';
488
  }
489
+ block += 'A change to one of these is an update, not a restart.\n';
 
 
490
  return block;
491
  }
492
  languageInstruction(state) {
 
529
  }
530
  foreignScript(prose, userMessage) {
531
  const mine = new Set((userMessage.match(/[A-Za-z][A-Za-z0-9'-]*/g) ?? []).map(w => w.toLowerCase()));
532
+ for (const own of ['luqta', 'ai'])
533
+ mine.add(own);
534
  const found = [];
535
  const OTHER_SCRIPTS = /[\u4E00-\u9FFF\u3040-\u30FF\u0400-\u04FF\u0900-\u097F\u0590-\u05FF]+/g;
536
  for (const run of prose.match(OTHER_SCRIPTS) ?? []) {
 
542
  }
543
  return [...new Set(found)].slice(0, 12);
544
  }
545
+ creationClaim(reply, userMessage = '') {
546
+ if (/\b(earlier|before|yesterday|last (week|month|time)|already|previous|so far)\b|سابق|أمس|قبل|الماضي/i
547
+ .test(userMessage)) {
548
+ return null;
549
+ }
550
+ const prose = reply.replace(/```(?:chatbolt-ui|chatbolt_ui)\s*[\s\S]*?```/i, '');
551
+ const CLAIMS = [
552
+ [/\bi(?:'ve| have)?\s+created\b/i, 'I have created'],
553
+ [/\b(?:has|have) been created\b/i, 'has been created'],
554
+ [/\bis being created\b/i, 'is being created'],
555
+ [/\b(?:now |currently )?creating (?:it|your|the)\s+(?:contest|campaign)/i, 'creating your contest'],
556
+ [/\bit'?s (?:live|created|published)\b/i, "it's live"],
557
+ [/\bcreation (?:is|will) (?:underway|start|begin)/i, 'creation is underway'],
558
+ [/أنشأ/, 'أنشأتها'],
559
+ [/(?:^|[\s،.—-])(?:تم|يتم|سيتم|جار[يٍ]?|يجري|بدأ|سيبدأ|انتهى)(?=[\s،.—-])(?:(?!يمكنك|تستطيع|بإمكانك|اضغط|بالضغط|زر)[^.،!؟\n]){0,24}?(?:ال)?إنشا/,
560
+ 'تم / يتم إنشاء'],
561
+ [/قيد\s+(?:التجهيز|الإنشاء|التنفيذ|الإعداد)/, 'قيد التجهيز'],
562
+ ];
563
+ for (const [re, label] of CLAIMS) {
564
+ if (re.test(prose))
565
+ return label;
566
+ }
567
+ return null;
568
+ }
569
+ briefDrift(reply, userMessage, ledger) {
570
+ const settled = ledger?.levels;
571
+ if (!settled)
572
+ return null;
573
+ if (/\blevels?\b|\bstages?\b|\bsteps?\b|مرحل|مستوى|مستويات/i.test(userMessage))
574
+ return null;
575
+ const wantM = /^\s*(\d+)/.exec(settled);
576
+ if (!wantM)
577
+ return null;
578
+ const want = parseInt(wantM[1], 10);
579
+ if (!Number.isFinite(want) || want < 1)
580
+ return null;
581
+ const block = reply.match(/```(?:chatbolt-ui|chatbolt_ui)\s*([\s\S]*?)```/i);
582
+ if (!block)
583
+ return null;
584
+ const arr = /"levels"\s*:\s*\[([\s\S]*?)\]/.exec(block[1]);
585
+ if (!arr)
586
+ return null;
587
+ const got = (arr[1].match(/"type"\s*:/g) ?? []).length;
588
+ if (got === 0 || got === want)
589
+ return null;
590
+ return `The client settled on ${want} level(s) and has not mentioned levels ` +
591
+ `this turn, but this brief carries ${got}.`;
592
+ }
593
  prizeSumMismatch(reply) {
594
  const block = reply.match(/```(?:chatbolt-ui|chatbolt_ui)\s*([\s\S]*?)```/i);
595
  if (!block)
 
689
  let reply = this.stripEmojis(result.reply);
690
  let tokens = result.tokens_used;
691
  const stale = state.conversational
692
+ ? (this.staleAmount(reply, state.userMessage)
693
+ ?? this.prizeSumMismatch(reply)
694
+ ?? this.briefDrift(reply, state.userMessage, state.briefLedger))
695
  : null;
696
  const fault = state.conversational
697
  ? (stale ? 'stale_amount' : this.uiBlockFault(reply, state.briefLedger))
 
717
  'Send the block again with the total the client asked for, and rebuild ' +
718
  'the individual prizes so their values add up to it **exactly** — same ' +
719
  'number of prizes and same shape of split unless they asked to change ' +
720
+ 'that too. Add them up before you send.\n' +
721
+ '**Every other value in the brief stays exactly as it was** — the same ' +
722
+ 'level count, level types and names, the same dates, the same name and ' +
723
+ 'description. Take them from the settled list rather than re-deriving ' +
724
+ 'them. The client only asked you to change one thing.\n'
725
  : fault === 'create_as_chip'
726
  ? 'You offered to create the contest as a suggestion chip. A chip only ' +
727
  'sends its text back to you as a message — it cannot create anything, ' +
 
828
  }
829
  }
830
  }
831
+ if (state.conversational) {
832
+ const claim = this.creationClaim(reply, state.userMessage);
833
+ if (claim) {
834
+ this.logger.warn(`[GRAPH:direct_response] reply claimed the contest exists ("${claim}") ` +
835
+ 'while Create was still pending — asking for a reword');
836
+ const FENCE2 = /```(?:chatbolt-ui|chatbolt_ui)\s*[\s\S]*?```/i;
837
+ const prose = reply.replace(FENCE2, '').trim();
838
+ try {
839
+ const fix = await this.llmService.chat({
840
+ provider: state.aiProvider || 'groq',
841
+ apiKey: state.aiApiKey,
842
+ model: state.model,
843
+ messages: [
844
+ {
845
+ role: 'system',
846
+ content: 'Reword the message below.\n' +
847
+ `It says the contest has been created or is being created ("${claim}"), ` +
848
+ 'and that is not true — nothing is built until the client presses the ' +
849
+ 'Create button, which is still sitting there unpressed.\n' +
850
+ 'Say instead that it is ready and invite them to press Create, and that ' +
851
+ 'they can still change anything first.\n' +
852
+ 'Same language as the message you are given, same tone, one or two ' +
853
+ 'sentences. Do not describe the contest again — a card is already ' +
854
+ 'showing it.\n' +
855
+ 'Reply with the reworded message and nothing else.',
856
+ },
857
+ { role: 'user', content: prose },
858
+ ],
859
+ max_tokens: 1000,
860
+ });
861
+ const clean = this.stripEmojis((fix.reply || '').trim());
862
+ if (clean) {
863
+ const rebuilt = reply.match(FENCE2)
864
+ ? `${clean}\n\n${reply.match(FENCE2)[0]}`
865
+ : clean;
866
+ if (!this.creationClaim(rebuilt, state.userMessage)) {
867
+ reply = rebuilt;
868
+ this.logger.log('[GRAPH:direct_response] creation claim reworded');
869
+ }
870
+ else {
871
+ this.logger.warn('[GRAPH:direct_response] reword still claimed it — kept the original');
872
+ }
873
+ }
874
+ tokens += fix.tokens_used ?? 0;
875
+ }
876
+ catch (err) {
877
+ this.logger.warn(`[GRAPH:direct_response] creation-claim reword failed: ${err?.message ?? err}`);
878
+ }
879
+ }
880
+ }
881
  return {
882
  reply,
883
  tokensUsed: (state.tokensUsed || 0) + tokens,
apps/agent-service/apps/agent-service/src/agent/chat-graph.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"chat-graph.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/chat-graph.ts"],"names":[],"mappings":"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"}
 
1
+ {"version":3,"file":"chat-graph.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/chat-graph.ts"],"names":[],"mappings":"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"}
apps/agent-service/tsconfig.app.tsbuildinfo CHANGED
The diff for this file is too large to render. See raw diff
 
apps/api-gateway/apps/api-gateway/src/chat/chat.service.d.ts CHANGED
@@ -57,6 +57,10 @@ export declare class ChatService {
57
  }>;
58
  private extractChatUi;
59
  private static readonly CARD_TEXT;
 
 
 
 
60
  private cardLang;
61
  private static readonly EXCLUSION;
62
  private reconcileBriefWithRequest;
 
57
  }>;
58
  private extractChatUi;
59
  private static readonly CARD_TEXT;
60
+ private static readonly AUDIENCE_AR;
61
+ private static readonly COUNTRY_AR;
62
+ private audienceIn;
63
+ private countriesIn;
64
  private cardLang;
65
  private static readonly EXCLUSION;
66
  private reconcileBriefWithRequest;
apps/api-gateway/apps/api-gateway/src/chat/chat.service.js CHANGED
@@ -405,15 +405,15 @@ let ChatService = ChatService_1 = class ChatService {
405
  });
406
  }
407
  if (typeof brief.audience === 'string' && brief.audience.trim()) {
408
- fields.push({ label: T.audience, value: brief.audience.trim() });
409
  }
410
  if (typeof brief.country === 'string' && brief.country.trim()) {
411
- fields.push({ label: T.where, value: brief.country.trim() });
412
  }
413
  else if (typeof brief.country_exclude === 'string' && brief.country_exclude.trim()) {
414
  fields.push({
415
  label: T.where,
416
- value: T.everywhereExcept(brief.country_exclude.trim()),
417
  });
418
  }
419
  if (Number(brief.number_of_winners) > 0) {
@@ -562,6 +562,24 @@ let ChatService = ChatService_1 = class ChatService {
562
  }
563
  return { text, ui: hasUi ? clean : undefined, slots };
564
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
565
  cardLang(replyText, userMessage) {
566
  const ARABIC = /[؀-ۿ]/;
567
  if (ARABIC.test(replyText))
@@ -776,6 +794,49 @@ ChatService.CARD_TEXT = {
776
  },
777
  },
778
  };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
779
  ChatService.EXCLUSION = /\b(?:every ?where|all countries|any ?where|all over|globally|worldwide|all markets)\b[^.!?]{0,30}\b(?:except|excluding|apart from|other than|but not|but)\b\s+([^.!?;]{2,80})|\b(?:except|excluding|apart from|other than|not)\s+(?:in\s+|for\s+)?([A-Z][\w'-]*(?:\s+[A-Z][\w'-]*)*)/;
780
  ChatService.SLOT_KEYS = [
781
  'name', 'theme', 'levels', 'prizes', 'duration', 'audience', 'draw_type',
 
405
  });
406
  }
407
  if (typeof brief.audience === 'string' && brief.audience.trim()) {
408
+ fields.push({ label: T.audience, value: this.audienceIn(brief.audience.trim(), lang) });
409
  }
410
  if (typeof brief.country === 'string' && brief.country.trim()) {
411
+ fields.push({ label: T.where, value: this.countriesIn(brief.country.trim(), lang) });
412
  }
413
  else if (typeof brief.country_exclude === 'string' && brief.country_exclude.trim()) {
414
  fields.push({
415
  label: T.where,
416
+ value: T.everywhereExcept(this.countriesIn(brief.country_exclude.trim(), lang)),
417
  });
418
  }
419
  if (Number(brief.number_of_winners) > 0) {
 
562
  }
563
  return { text, ui: hasUi ? clean : undefined, slots };
564
  }
565
+ audienceIn(value, lang) {
566
+ if (lang !== 'ar' || !value)
567
+ return value;
568
+ let out = value;
569
+ for (const [re, ar] of ChatService_1.AUDIENCE_AR)
570
+ out = out.replace(re, ar);
571
+ return out.replace(/,/g, '،');
572
+ }
573
+ countriesIn(value, lang) {
574
+ if (lang !== 'ar' || !value)
575
+ return value;
576
+ return value
577
+ .split(',')
578
+ .map(c => c.trim())
579
+ .filter(Boolean)
580
+ .map(c => ChatService_1.COUNTRY_AR[c.toLowerCase()] ?? c)
581
+ .join('، ');
582
+ }
583
  cardLang(replyText, userMessage) {
584
  const ARABIC = /[؀-ۿ]/;
585
  if (ARABIC.test(replyText))
 
794
  },
795
  },
796
  };
797
+ ChatService.AUDIENCE_AR = [
798
+ [/\ball ages\b/gi, 'كل الأعمار'],
799
+ [/\ball genders\b/gi, 'كل الأجناس'],
800
+ [/\bboth genders\b/gi, 'الجنسان'],
801
+ [/\bmale and female\b/gi, 'ذكور وإناث'],
802
+ [/\bmales?\b/gi, 'ذكور'],
803
+ [/\bfemales?\b/gi, 'إناث'],
804
+ [/\bmen\b/gi, 'رجال'],
805
+ [/\bwomen\b/gi, 'نساء'],
806
+ [/\ball\b/gi, 'الكل'],
807
+ [/\bages?\b/gi, 'الأعمار'],
808
+ [/\byears? old\b/gi, 'سنة'],
809
+ [/\band\b/gi, 'و'],
810
+ [/\busers? aged\b/gi, 'مستخدمون بعمر'],
811
+ [/\baged\b/gi, 'بعمر'],
812
+ [/\bover\b/gi, 'أكثر من'],
813
+ [/\bunder\b/gi, 'أقل من'],
814
+ ];
815
+ ChatService.COUNTRY_AR = {
816
+ 'saudi arabia': 'السعودية',
817
+ 'united arab emirates': 'الإمارات',
818
+ 'kuwait': 'الكويت',
819
+ 'qatar': 'قطر',
820
+ 'bahrain': 'البحرين',
821
+ 'oman': 'عُمان',
822
+ 'egypt': 'مصر',
823
+ 'jordan': 'الأردن',
824
+ 'lebanon': 'لبنان',
825
+ 'iraq': 'العراق',
826
+ 'syria': 'سوريا',
827
+ 'yemen': 'اليمن',
828
+ 'palestine': 'فلسطين',
829
+ 'morocco': 'المغرب',
830
+ 'algeria': 'الجزائر',
831
+ 'tunisia': 'تونس',
832
+ 'libya': 'ليبيا',
833
+ 'sudan': 'السودان',
834
+ 'pakistan': 'باكستان',
835
+ 'india': 'الهند',
836
+ 'turkey': 'تركيا',
837
+ 'united kingdom': 'المملكة المتحدة',
838
+ 'united states': 'الولايات المتحدة',
839
+ };
840
  ChatService.EXCLUSION = /\b(?:every ?where|all countries|any ?where|all over|globally|worldwide|all markets)\b[^.!?]{0,30}\b(?:except|excluding|apart from|other than|but not|but)\b\s+([^.!?;]{2,80})|\b(?:except|excluding|apart from|other than|not)\s+(?:in\s+|for\s+)?([A-Z][\w'-]*(?:\s+[A-Z][\w'-]*)*)/;
841
  ChatService.SLOT_KEYS = [
842
  'name', 'theme', 'levels', 'prizes', 'duration', 'audience', 'draw_type',
apps/api-gateway/apps/api-gateway/src/chat/chat.service.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../../../../../../apps/api-gateway/src/chat/chat.service.ts"],"names":[],"mappings":"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"}
 
1
+ {"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../../../../../../apps/api-gateway/src/chat/chat.service.ts"],"names":[],"mappings":"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"}
apps/api-gateway/tsconfig.app.tsbuildinfo CHANGED
The diff for this file is too large to render. See raw diff