@rtsee/ngx 0.0.108 → 0.0.109

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.
@@ -216,12 +216,23 @@ declare class StoryElementsSectionComponent implements OnDestroy {
216
216
  collapsed: boolean;
217
217
  canDetach: boolean;
218
218
  toggled: EventEmitter<void>;
219
+ batchMode: boolean;
220
+ selectedItemIds: Set<string>;
221
+ batchAdditionalPrompt: string;
222
+ generatingItemIds: Set<string>;
223
+ private activeGenerationListeners;
219
224
  private _illustrator?;
220
225
  private onIllustratorChanged;
221
226
  set illustrator(val: RTSeeIllustrator | undefined);
222
227
  get illustrator(): RTSeeIllustrator | undefined;
223
228
  constructor(cdr: ChangeDetectorRef);
224
229
  ngOnDestroy(): void;
230
+ startBatchSelection(event: Event): void;
231
+ cancelBatchSelection(): void;
232
+ toggleItemSelection(id: string): void;
233
+ isItemSelected(id: string): boolean;
234
+ isItemGenerating(id: string): boolean;
235
+ submitBatchGeneration(): Promise<void>;
225
236
  applyReviewedImageToItem(event: Event, item: RTSeeStoryElementEntity<IRTSeeStoryElement>): Promise<void>;
226
237
  submit(): void;
227
238
  addToIllustrator(event: Event, item: RTSeeStoryElementEntity<IRTSeeStoryElement>): void;
@@ -149,6 +149,202 @@ $ise-slide-thumb-size: 112px;
149
149
  transition: transform $ise-transition;
150
150
  }
151
151
 
152
+ .rtsee-ise-section-header {
153
+ display: flex;
154
+ align-items: center;
155
+ position: relative;
156
+ padding-right: $rts-offset-md;
157
+
158
+ .rtsee-ise-section-toggle {
159
+ flex: 1;
160
+ }
161
+ }
162
+
163
+ .rtsee-ise-btn-batch-generate {
164
+ display: inline-flex;
165
+ align-items: center;
166
+ gap: 6px;
167
+ padding: 6px 12px;
168
+ background: linear-gradient(135deg, rgba(168, 85, 247, 0.25), rgba(139, 92, 246, 0.15));
169
+ border: 1px solid rgba(168, 85, 247, 0.45);
170
+ border-radius: 8px;
171
+ color: #f3e8ff;
172
+ font-size: 0.82rem;
173
+ font-weight: 600;
174
+ cursor: pointer;
175
+ white-space: nowrap;
176
+ transition: all 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
177
+
178
+ i {
179
+ color: #c084fc;
180
+ font-size: 0.85rem;
181
+ }
182
+
183
+ &:hover {
184
+ background: linear-gradient(135deg, rgba(168, 85, 247, 0.4), rgba(139, 92, 246, 0.3));
185
+ border-color: #a855f7;
186
+ color: #ffffff;
187
+ transform: translateY(-1px);
188
+ box-shadow: 0 4px 12px rgba(168, 85, 247, 0.3);
189
+
190
+ i {
191
+ color: #ffffff;
192
+ }
193
+ }
194
+ }
195
+
196
+ .rtsee-ise-batch-panel {
197
+ margin: 0 $rts-offset-md $rts-offset-sm;
198
+ padding: $rts-offset-md;
199
+ background: rgba(30, 24, 46, 0.7);
200
+ border: 1px solid rgba(168, 85, 247, 0.35);
201
+ border-radius: 12px;
202
+ display: flex;
203
+ flex-direction: column;
204
+ gap: 10px;
205
+ animation: rtsee-ise-reveal $ise-transition both;
206
+
207
+ .rtsee-ise-batch-header {
208
+ display: flex;
209
+ justify-content: space-between;
210
+ align-items: center;
211
+ flex-wrap: wrap;
212
+ gap: 8px;
213
+
214
+ .rtsee-ise-batch-title {
215
+ font-weight: 600;
216
+ font-size: 0.9rem;
217
+ color: #e9d5ff;
218
+ display: inline-flex;
219
+ align-items: center;
220
+ gap: 6px;
221
+
222
+ i {
223
+ color: #c084fc;
224
+ }
225
+ }
226
+
227
+ .rtsee-ise-batch-hint {
228
+ font-size: 0.8rem;
229
+ color: rgba(255, 255, 255, 0.6);
230
+ }
231
+ }
232
+
233
+ .rtsee-ise-batch-prompt-input {
234
+ width: 100%;
235
+ background: rgba(15, 12, 25, 0.85);
236
+ border: 1px solid rgba(168, 85, 247, 0.25);
237
+ border-radius: 8px;
238
+ color: #ffffff;
239
+ padding: 8px 12px;
240
+ font-size: 0.88rem;
241
+ resize: vertical;
242
+ box-sizing: border-box;
243
+ font-family: inherit;
244
+
245
+ &:focus {
246
+ outline: none;
247
+ border-color: #a855f7;
248
+ box-shadow: 0 0 0 2px rgba(168, 85, 247, 0.25);
249
+ }
250
+ }
251
+
252
+ .rtsee-ise-batch-actions {
253
+ display: flex;
254
+ justify-content: flex-end;
255
+ align-items: center;
256
+ gap: 10px;
257
+
258
+ .rtsee-ise-btn-batch-cancel {
259
+ padding: 6px 14px;
260
+ background: transparent;
261
+ border: 1px solid rgba(255, 255, 255, 0.2);
262
+ border-radius: 8px;
263
+ color: rgba(255, 255, 255, 0.8);
264
+ font-size: 0.85rem;
265
+ cursor: pointer;
266
+ transition: all 0.2s ease;
267
+
268
+ &:hover {
269
+ background: rgba(255, 255, 255, 0.08);
270
+ color: #ffffff;
271
+ border-color: rgba(255, 255, 255, 0.4);
272
+ }
273
+ }
274
+
275
+ .rtsee-ise-btn-batch-submit {
276
+ display: inline-flex;
277
+ align-items: center;
278
+ gap: 6px;
279
+ padding: 6px 16px;
280
+ background: linear-gradient(135deg, #9333ea, #7c3aed);
281
+ border: none;
282
+ border-radius: 8px;
283
+ color: #ffffff;
284
+ font-size: 0.85rem;
285
+ font-weight: 600;
286
+ cursor: pointer;
287
+ transition: all 0.2s ease;
288
+ box-shadow: 0 2px 8px rgba(147, 51, 234, 0.4);
289
+
290
+ &:hover:not(:disabled) {
291
+ transform: translateY(-1px);
292
+ box-shadow: 0 4px 14px rgba(147, 51, 234, 0.6);
293
+ }
294
+
295
+ &:disabled {
296
+ opacity: 0.5;
297
+ cursor: not-allowed;
298
+ box-shadow: none;
299
+ }
300
+ }
301
+ }
302
+ }
303
+
304
+ .rtsee-ise-thumb-card--selected {
305
+ border-color: #a855f7 !important;
306
+ box-shadow: 0 0 0 2px rgba(168, 85, 247, 0.5) !important;
307
+ }
308
+
309
+ .rtsee-ise-thumb-batch-checkbox {
310
+ position: absolute;
311
+ top: 8px;
312
+ left: 8px;
313
+ z-index: 4;
314
+ background: rgba(20, 16, 30, 0.85);
315
+ border-radius: 6px;
316
+ padding: 3px 6px;
317
+ display: inline-flex;
318
+ align-items: center;
319
+ cursor: pointer;
320
+ border: 1px solid rgba(168, 85, 247, 0.4);
321
+
322
+ input[type="checkbox"] {
323
+ cursor: pointer;
324
+ accent-color: #a855f7;
325
+ }
326
+ }
327
+
328
+ .rtsee-ise-thumb-generating-overlay {
329
+ position: absolute;
330
+ inset: 0;
331
+ background: rgba(15, 12, 25, 0.8);
332
+ display: flex;
333
+ flex-direction: column;
334
+ align-items: center;
335
+ justify-content: center;
336
+ gap: 6px;
337
+ color: #e9d5ff;
338
+ font-size: 0.78rem;
339
+ font-weight: 500;
340
+ z-index: 3;
341
+
342
+ i {
343
+ font-size: 1.2rem;
344
+ color: #c084fc;
345
+ }
346
+ }
347
+
152
348
  .rtsee-ise-section-body {
153
349
  padding: 0 $rts-offset-md $rts-offset-md;
154
350
  animation: rtsee-ise-reveal $ise-transition both;
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.0.108",
2
+ "version": "0.0.109",
3
3
  "name": "@rtsee/ngx",
4
4
  "module": "./dist/ngx/fesm2022/rtsee-ngx.mjs",
5
5
  "types": "./dist/ngx/index.d.ts",
@@ -40,15 +40,15 @@
40
40
  "@angular/platform-browser-dynamic": "^20.1.2",
41
41
  "@angular/router": "^20.1.2",
42
42
  "@primeuix/themes": "^1.2.3",
43
- "@rtsee/common": "^0.0.79",
44
- "@rtsee/conference": "^0.0.80",
45
- "@rtsee/core": "^0.0.123",
46
- "@rtsee/events-dashboard": "^0.0.113",
47
- "@rtsee/factory": "^0.0.122",
48
- "@rtsee/messenger": "^0.0.113",
49
- "@rtsee/presentation": "^0.0.112",
50
- "@rtsee/signaling-client": "^0.0.126",
51
- "@rtsee/utilities-ui": "^0.0.44",
43
+ "@rtsee/common": "^0.0.80",
44
+ "@rtsee/conference": "^0.0.81",
45
+ "@rtsee/core": "^0.0.124",
46
+ "@rtsee/events-dashboard": "^0.0.114",
47
+ "@rtsee/factory": "^0.0.123",
48
+ "@rtsee/messenger": "^0.0.114",
49
+ "@rtsee/presentation": "^0.0.113",
50
+ "@rtsee/signaling-client": "^0.0.127",
51
+ "@rtsee/utilities-ui": "^0.0.45",
52
52
  "@stripe/stripe-js": "^8.6.1",
53
53
  "@types/gtag.js": "^0.0.20",
54
54
  "@types/node": "~24.0.14",
@@ -71,5 +71,5 @@
71
71
  "publishConfig": {
72
72
  "access": "public"
73
73
  },
74
- "gitHead": "dc10dc47553027689d194c40c00bef8b3c5d45f4"
74
+ "gitHead": "eb5dfac490a2147ea4c83232925ebc2904914211"
75
75
  }