@umituz/react-native-ai-generation-content 1.83.86 → 1.83.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.
Files changed (31) hide show
  1. package/package.json +1 -1
  2. package/src/domains/generation/wizard/infrastructure/strategies/image-generation.executor.ts +12 -27
  3. package/src/domains/generation/wizard/infrastructure/strategies/image-generation.strategy.ts +1 -4
  4. package/src/domains/generation/wizard/infrastructure/strategies/image-generation.types.ts +1 -7
  5. package/src/domains/generation/wizard/presentation/hooks/wizard-generation.types.ts +1 -3
  6. package/src/domains/prompts/domain/base/constants.ts +0 -6
  7. package/src/domains/prompts/domain/base/creators.ts +0 -32
  8. package/src/domains/prompts/index.ts +4 -62
  9. package/src/domains/scenarios/domain/Scenario.ts +0 -8
  10. package/src/domains/scenarios/index.ts +0 -1
  11. package/src/domains/generation/wizard/infrastructure/strategies/shared/unified-prompt-builder.ts +0 -76
  12. package/src/domains/prompts/domain/entities/AIPromptTemplate.ts +0 -48
  13. package/src/domains/prompts/domain/entities/GeneratedPrompt.ts +0 -31
  14. package/src/domains/prompts/domain/entities/MultiPersonPromptStructure.ts +0 -67
  15. package/src/domains/prompts/domain/entities/image-prompt-segments.ts +0 -95
  16. package/src/domains/prompts/domain/entities/types.ts +0 -27
  17. package/src/domains/prompts/domain/entities/value-objects.ts +0 -33
  18. package/src/domains/prompts/domain/repositories/IAIPromptServices.ts +0 -21
  19. package/src/domains/prompts/domain/repositories/IPromptHistoryRepository.ts +0 -10
  20. package/src/domains/prompts/domain/repositories/ITemplateRepository.ts +0 -11
  21. package/src/domains/prompts/infrastructure/builders/face-preservation-builder.ts +0 -116
  22. package/src/domains/prompts/infrastructure/builders/interaction-style-builder.ts +0 -146
  23. package/src/domains/prompts/infrastructure/repositories/PromptHistoryRepository.ts +0 -45
  24. package/src/domains/prompts/infrastructure/repositories/TemplateRepository.ts +0 -77
  25. package/src/domains/prompts/infrastructure/services/ImagePromptBuilder.ts +0 -104
  26. package/src/domains/prompts/infrastructure/services/PromptGenerationService.ts +0 -59
  27. package/src/domains/prompts/infrastructure/services/image-prompt-builder.types.ts +0 -17
  28. package/src/domains/prompts/infrastructure/utils/prompt-creators.util.ts +0 -41
  29. package/src/domains/prompts/presentation/hooks/useAsyncState.ts +0 -56
  30. package/src/domains/prompts/presentation/hooks/usePromptGeneration.ts +0 -143
  31. package/src/domains/prompts/presentation/hooks/useTemplateRepository.ts +0 -113
@@ -1,56 +0,0 @@
1
- import { useState, useCallback } from 'react';
2
-
3
- export interface AsyncState<T> {
4
- data: T | null;
5
- loading: boolean;
6
- error: string | null;
7
- }
8
-
9
- export interface AsyncActions<T> {
10
- setLoading: (loading: boolean) => void;
11
- setError: (error: string | null) => void;
12
- setData: (data: T | null) => void;
13
- clearError: () => void;
14
- reset: () => void;
15
- }
16
-
17
- export const useAsyncState = <T>(initialData: T | null = null): AsyncState<T> & AsyncActions<T> => {
18
- const [state, setState] = useState<AsyncState<T>>({
19
- data: initialData,
20
- loading: false,
21
- error: null,
22
- });
23
-
24
- const setLoading = useCallback((loading: boolean) => {
25
- setState(prev => ({ ...prev, loading }));
26
- }, []);
27
-
28
- const setError = useCallback((error: string | null) => {
29
- setState(prev => ({ ...prev, error, loading: false }));
30
- }, []);
31
-
32
- const setData = useCallback((data: T | null) => {
33
- setState(prev => ({ ...prev, data, loading: false, error: null }));
34
- }, []);
35
-
36
- const clearError = useCallback(() => {
37
- setState(prev => ({ ...prev, error: null }));
38
- }, []);
39
-
40
- const reset = useCallback(() => {
41
- setState({
42
- data: initialData,
43
- loading: false,
44
- error: null,
45
- });
46
- }, [initialData]);
47
-
48
- return {
49
- ...state,
50
- setLoading,
51
- setError,
52
- setData,
53
- clearError,
54
- reset,
55
- };
56
- };
@@ -1,143 +0,0 @@
1
- import { useState, useCallback } from 'react';
2
- import type {ITemplateRepository} from '../../domain/repositories/ITemplateRepository';
3
- import type {IPromptHistoryRepository} from '../../domain/repositories/IPromptHistoryRepository';
4
- import type {GeneratedPrompt} from '../../domain/entities/GeneratedPrompt';
5
- import type {IPromptGenerationService} from '../../domain/repositories/IAIPromptServices';
6
- import {createGeneratedPrompt} from '../../domain/entities/GeneratedPrompt';
7
- import { useAsyncState } from './useAsyncState';
8
-
9
- export interface UsePromptGenerationState {
10
- generatedPrompt: GeneratedPrompt | null;
11
- history: GeneratedPrompt[];
12
- }
13
-
14
- export interface UsePromptGenerationActions {
15
- generatePrompt: (
16
- templateId: string,
17
- variables: Record<string, unknown>
18
- ) => Promise<void>;
19
- loadHistory: (limit?: number) => Promise<void>;
20
- clearHistory: () => Promise<void>;
21
- saveToHistory: (prompt: GeneratedPrompt) => Promise<void>;
22
- clearPrompt: () => void;
23
- reset: () => void;
24
- }
25
-
26
- export const usePromptGeneration = (
27
- templateRepository: ITemplateRepository,
28
- promptService: IPromptGenerationService,
29
- historyRepository: IPromptHistoryRepository
30
- ): UsePromptGenerationState & UsePromptGenerationActions => {
31
- const {
32
- data: generatedPrompt,
33
- loading,
34
- error,
35
- setError,
36
- setData: setGeneratedPrompt,
37
- clearError,
38
- } = useAsyncState<GeneratedPrompt>(null);
39
-
40
- const [history, setHistory] = useState<GeneratedPrompt[]>([]);
41
-
42
- const generatePrompt = useCallback(
43
- async (templateId: string, variables: Record<string, unknown>): Promise<void> => {
44
- clearError();
45
-
46
- try {
47
- const templateResult = await templateRepository.findById(templateId);
48
- if (!templateResult.success || !templateResult.data) {
49
- setError('Template not found');
50
- return;
51
- }
52
-
53
- const promptResult = await promptService.generateFromTemplate(
54
- templateResult.data,
55
- variables
56
- );
57
-
58
- if (!promptResult.success) {
59
- setError(('message' in promptResult && promptResult.message) || 'Failed to generate prompt');
60
- return;
61
- }
62
-
63
- const newPrompt = createGeneratedPrompt({
64
- templateId,
65
- generatedText: promptResult.data,
66
- variables,
67
- });
68
-
69
- await historyRepository.save(newPrompt);
70
- setGeneratedPrompt(newPrompt);
71
-
72
- void loadHistory(50);
73
- } catch {
74
- setError('An unexpected error occurred');
75
- }
76
- },
77
- [templateRepository, promptService, historyRepository, setGeneratedPrompt, setError, clearError]
78
- );
79
-
80
- const loadHistory = useCallback(
81
- async (limit: number = 50): Promise<void> => {
82
- clearError();
83
- try {
84
- const result = await historyRepository.findRecent(limit);
85
- if (result.success) {
86
- setHistory(result.data);
87
- } else {
88
- setError(('message' in result && result.message) || 'Failed to load history');
89
- }
90
- } catch {
91
- setError('Failed to load history');
92
- }
93
- },
94
- [historyRepository, setHistory, setError, clearError]
95
- );
96
-
97
- const clearHistory = useCallback(async (): Promise<void> => {
98
- clearError();
99
- try {
100
- await historyRepository.clear();
101
- setHistory([]);
102
- } catch {
103
- setError('Failed to clear history');
104
- }
105
- }, [historyRepository, setHistory, setError, clearError]);
106
-
107
- const saveToHistory = useCallback(
108
- async (prompt: GeneratedPrompt): Promise<void> => {
109
- clearError();
110
- try {
111
- await historyRepository.save(prompt);
112
- void loadHistory(50);
113
- } catch {
114
- setError('Failed to save to history');
115
- }
116
- },
117
- [historyRepository, loadHistory, setError, clearError]
118
- );
119
-
120
- const clearPrompt = useCallback(() => {
121
- setGeneratedPrompt(null);
122
- clearError();
123
- }, [setGeneratedPrompt, clearError]);
124
-
125
- const reset = useCallback(() => {
126
- setGeneratedPrompt(null);
127
- setHistory([]);
128
- clearError();
129
- }, [setGeneratedPrompt, setHistory, clearError]);
130
-
131
- return {
132
- generatedPrompt,
133
- history,
134
- loading,
135
- error,
136
- generatePrompt,
137
- loadHistory,
138
- clearHistory,
139
- saveToHistory,
140
- clearPrompt,
141
- reset,
142
- } as UsePromptGenerationState & UsePromptGenerationActions;
143
- };
@@ -1,113 +0,0 @@
1
- import { useState, useCallback } from 'react';
2
- import type {AIPromptTemplate} from '../../domain/entities/AIPromptTemplate';
3
- import type {AIPromptCategory} from '../../domain/entities/types';
4
- import type {ITemplateRepository} from '../../domain/repositories/ITemplateRepository';
5
- import { useAsyncState } from './useAsyncState';
6
-
7
- export interface UseTemplateState {
8
- templates: AIPromptTemplate[];
9
- currentTemplate: AIPromptTemplate | null;
10
- }
11
-
12
- export interface UseTemplateActions {
13
- loadAllTemplates: () => Promise<void>;
14
- loadTemplateById: (id: string) => Promise<AIPromptTemplate | null>;
15
- loadTemplatesByCategory: (category: AIPromptCategory) => Promise<AIPromptTemplate[]>;
16
- saveTemplate: (template: AIPromptTemplate) => Promise<void>;
17
- deleteTemplate: (id: string) => Promise<void>;
18
- setCurrentTemplate: (template: AIPromptTemplate | null) => void;
19
- }
20
-
21
- export const useTemplateRepository = (
22
- repository: ITemplateRepository
23
- ): UseTemplateState & UseTemplateActions => {
24
- const {
25
- data: templates,
26
- setData: setTemplates,
27
- loading,
28
- error,
29
- setError,
30
- clearError,
31
- } = useAsyncState<AIPromptTemplate[]>([]);
32
-
33
- const [currentTemplate, setCurrentTemplate] = useState<AIPromptTemplate | null>(null);
34
-
35
- const loadAllTemplates = useCallback(async (): Promise<void> => {
36
- clearError();
37
- const result = await repository.findAll();
38
-
39
- if (result.success) {
40
- setTemplates(result.data);
41
- } else {
42
- setError(('message' in result && result.message) || 'Failed to load templates');
43
- }
44
- }, [repository, setTemplates, setError, clearError]);
45
-
46
- const loadTemplateById = useCallback(async (id: string): Promise<AIPromptTemplate | null> => {
47
- clearError();
48
- const result = await repository.findById(id);
49
-
50
- if (result.success) {
51
- setCurrentTemplate(result.data);
52
- return result.data;
53
- } else {
54
- setError(('message' in result && result.message) || 'Failed to load template');
55
- return null;
56
- }
57
- }, [repository, setError, clearError]);
58
-
59
- const loadTemplatesByCategory = useCallback(
60
- async (category: AIPromptCategory): Promise<AIPromptTemplate[]> => {
61
- clearError();
62
- const result = await repository.findByCategory(category);
63
-
64
- if (result.success) {
65
- setTemplates(result.data);
66
- return result.data;
67
- } else {
68
- setError(('message' in result && result.message) || 'Failed to load templates by category');
69
- return [];
70
- }
71
- },
72
- [repository, setTemplates, setError, clearError]
73
- );
74
-
75
- const saveTemplate = useCallback(async (template: AIPromptTemplate): Promise<void> => {
76
- clearError();
77
- const result = await repository.save(template);
78
-
79
- if (result.success) {
80
- void loadAllTemplates();
81
- } else {
82
- setError(('message' in result && result.message) || 'Failed to save template');
83
- }
84
- }, [repository, loadAllTemplates, setError, clearError]);
85
-
86
- const deleteTemplate = useCallback(async (id: string): Promise<void> => {
87
- clearError();
88
- const result = await repository.delete(id);
89
-
90
- if (result.success) {
91
- if (currentTemplate?.id === id) {
92
- setCurrentTemplate(null);
93
- }
94
- void loadAllTemplates();
95
- } else {
96
- setError(('message' in result && result.message) || 'Failed to delete template');
97
- }
98
- }, [repository, currentTemplate, loadAllTemplates, setError, clearError]);
99
-
100
- return {
101
- templates: templates || [],
102
- currentTemplate,
103
- loading,
104
- error,
105
- loadAllTemplates,
106
- loadTemplateById,
107
- loadTemplatesByCategory,
108
- saveTemplate,
109
- deleteTemplate,
110
- setCurrentTemplate,
111
- clearError,
112
- } as UseTemplateState & UseTemplateActions;
113
- };