ts-glitter 13.8.53 → 13.8.55
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.
- package/lowcode/Entry.js +6 -10
- package/lowcode/Entry.ts +6 -10
- package/lowcode/cms-plugin/ai-message.js +33 -28
- package/lowcode/cms-plugin/ai-message.ts +74 -46
- package/lowcode/editor/ai-editor.js +379 -0
- package/lowcode/editor/ai-editor.ts +389 -0
- package/lowcode/glitter-base/route/ai-chat.js +12 -0
- package/lowcode/glitter-base/route/ai-chat.ts +15 -0
- package/lowcode/glitterBundle/html-component/custom-style.js +1 -0
- package/lowcode/glitterBundle/html-component/custom-style.ts +1 -0
- package/lowcode/glitterBundle/html-component/global-widget.js +10 -5
- package/lowcode/glitterBundle/html-component/global-widget.ts +32 -27
- package/lowcode/glitterBundle/html-component/render-value.js +1 -1
- package/lowcode/glitterBundle/html-component/render-value.ts +1 -1
- package/lowcode/glitterBundle/plugins/editor-elem.js +1 -1
- package/lowcode/glitterBundle/plugins/editor-elem.ts +1 -1
- package/lowcode/jspage/editor.js +1 -1
- package/lowcode/jspage/editor.ts +1 -1
- package/lowcode/official_view_component/official/component.js +0 -6
- package/lowcode/official_view_component/official/component.ts +6 -10
- package/package.json +1 -1
- package/src/api-public/services/ai-robot.js +2 -1
- package/src/api-public/services/ai-robot.js.map +1 -1
- package/src/api-public/services/ai-robot.ts +2 -1
- package/w6ppvcb8yb.json +0 -1
- package/wvyrnrgo2g.json +0 -1
package/lowcode/Entry.js
CHANGED
|
@@ -44,23 +44,19 @@ export class Entry {
|
|
|
44
44
|
Entry.checkRedirectPage(glitter);
|
|
45
45
|
glitter.share.logID = glitter.getUUID();
|
|
46
46
|
glitter.addStyle(`
|
|
47
|
-
|
|
47
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
48
48
|
:root {
|
|
49
49
|
scroll-behavior: auto !important;
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
display: none !important;
|
|
55
|
-
}
|
|
56
|
-
=======
|
|
57
|
-
.hide-elem {
|
|
52
|
+
|
|
53
|
+
.hide-elem {
|
|
58
54
|
display: none !important;
|
|
59
55
|
}
|
|
56
|
+
|
|
60
57
|
.hy-drawer-left {
|
|
61
|
-
|
|
58
|
+
left:-1000px !important;
|
|
62
59
|
}
|
|
63
|
-
>>>>>>> d311c294 (update glitter version)
|
|
64
60
|
`);
|
|
65
61
|
if (glitter.getUrlParameter('appName')) {
|
|
66
62
|
window.appName = glitter.getUrlParameter('appName');
|
|
@@ -68,7 +64,7 @@ export class Entry {
|
|
|
68
64
|
}
|
|
69
65
|
window.renderClock = (_a = window.renderClock) !== null && _a !== void 0 ? _a : clockF();
|
|
70
66
|
console.log(`Entry-time:`, window.renderClock.stop());
|
|
71
|
-
glitter.share.editerVersion = 'V_13.8.
|
|
67
|
+
glitter.share.editerVersion = 'V_13.8.55';
|
|
72
68
|
glitter.share.start = new Date();
|
|
73
69
|
const vm = {
|
|
74
70
|
appConfig: [],
|
package/lowcode/Entry.ts
CHANGED
|
@@ -44,23 +44,19 @@ export class Entry {
|
|
|
44
44
|
Entry.checkRedirectPage(glitter);
|
|
45
45
|
glitter.share.logID = glitter.getUUID();
|
|
46
46
|
glitter.addStyle(`
|
|
47
|
-
|
|
47
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
48
48
|
:root {
|
|
49
49
|
scroll-behavior: auto !important;
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
display: none !important;
|
|
55
|
-
}
|
|
56
|
-
=======
|
|
57
|
-
.hide-elem {
|
|
52
|
+
|
|
53
|
+
.hide-elem {
|
|
58
54
|
display: none !important;
|
|
59
55
|
}
|
|
56
|
+
|
|
60
57
|
.hy-drawer-left {
|
|
61
|
-
|
|
58
|
+
left:-1000px !important;
|
|
62
59
|
}
|
|
63
|
-
>>>>>>> d311c294 (update glitter version)
|
|
64
60
|
`);
|
|
65
61
|
if (glitter.getUrlParameter('appName')) {
|
|
66
62
|
(window as any).appName = glitter.getUrlParameter('appName');
|
|
@@ -68,7 +64,7 @@ export class Entry {
|
|
|
68
64
|
}
|
|
69
65
|
(window as any).renderClock = (window as any).renderClock ?? clockF();
|
|
70
66
|
console.log(`Entry-time:`, (window as any).renderClock.stop());
|
|
71
|
-
glitter.share.editerVersion = 'V_13.8.
|
|
67
|
+
glitter.share.editerVersion = 'V_13.8.55';
|
|
72
68
|
glitter.share.start = new Date();
|
|
73
69
|
const vm: {
|
|
74
70
|
appConfig: any;
|
|
@@ -229,48 +229,53 @@ export class AiMessage {
|
|
|
229
229
|
(AiMessage.vm.select_bt === 'page_editor') ? (() => {
|
|
230
230
|
const html = String.raw;
|
|
231
231
|
let message = '';
|
|
232
|
-
return ` <div class="p-
|
|
232
|
+
return ` <div class="p-5">
|
|
233
233
|
${[
|
|
234
234
|
html `
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
235
|
+
<lottie-player src="lottie/ai.json" class="mx-auto my-n4" speed="1"
|
|
236
|
+
style="max-width: 100%;width: 250px;height:250px;" loop
|
|
237
|
+
autoplay></lottie-player>`,
|
|
238
|
+
`<div class="w-100 d-flex align-items-center justify-content-center my-3">${BgWidget.grayNote('點擊想要調整的元件之後,在輸入 AI 語句進行調整', `font-weight: 500;`)}</div>`,
|
|
239
|
+
html `
|
|
240
|
+
<div class="w-100" onclick="${gvc.event(() => {
|
|
241
|
+
if (!gvc.glitter.share.editorViewModel.selectItem) {
|
|
242
|
+
const dialog = new ShareDialog(gvc.glitter);
|
|
243
|
+
dialog.errorMessage({ text: '請先點擊要編輯的元件' });
|
|
244
|
+
}
|
|
245
|
+
})}">
|
|
246
|
+
${EditorElem.editeText({
|
|
239
247
|
gvc: gvc,
|
|
240
248
|
title: '',
|
|
241
249
|
default: '',
|
|
242
|
-
placeHolder:
|
|
243
|
-
`,
|
|
250
|
+
placeHolder: `字體大小20px,距離左邊20px,背景顏色黃色,字體顏色藍色,標題為歡迎來到SHOPNEX開店平台.`,
|
|
244
251
|
callback: (text) => {
|
|
245
252
|
message = text;
|
|
246
253
|
},
|
|
247
|
-
min_height:
|
|
248
|
-
})
|
|
254
|
+
min_height: 100
|
|
255
|
+
})}
|
|
256
|
+
</div>`,
|
|
249
257
|
`<div class="w-100 d-flex align-items-center justify-content-end">
|
|
250
258
|
${BgWidget.save(gvc.event(() => {
|
|
251
259
|
const dialog = new ShareDialog(gvc.glitter);
|
|
260
|
+
if (!message) {
|
|
261
|
+
dialog.errorMessage({ text: '請輸入描述語句' });
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
252
264
|
dialog.dataLoading({ visible: true });
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
text: message
|
|
256
|
-
}).then((res) => {
|
|
257
|
-
if (res.result && res.response.data.usage === 0) {
|
|
258
|
-
dialog.dataLoading({ visible: false });
|
|
259
|
-
dialog.errorMessage({ text: `很抱歉你的AI代幣不足,請先前往加值` });
|
|
260
|
-
}
|
|
261
|
-
else if (res.result && (!res.response.data.obj.result)) {
|
|
265
|
+
gvc.glitter.getModule(new URL('./editor/ai-editor.js', gvc.glitter.root_path).href, (AiEditor) => {
|
|
266
|
+
AiEditor.editView(message, gvc.glitter.share.editorViewModel.selectItem, (result) => {
|
|
262
267
|
dialog.dataLoading({ visible: false });
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
}
|
|
268
|
+
if (result) {
|
|
269
|
+
dialog.successMessage({ text: `已為你調整元件『${result}』` });
|
|
270
|
+
gvc.glitter.share.editorViewModel.selectItem.refreshComponent();
|
|
271
|
+
gvc.glitter.closeDrawer();
|
|
272
|
+
}
|
|
273
|
+
else {
|
|
274
|
+
dialog.errorMessage({ text: 'AI無法理解你的意思,請輸入更確切的需求' });
|
|
275
|
+
}
|
|
276
|
+
});
|
|
272
277
|
});
|
|
273
|
-
}), "調整元素")}
|
|
278
|
+
}), "調整元素", "w-100 mt-3 py-2")}
|
|
274
279
|
</div>`
|
|
275
280
|
].join('<div class="my-2"></div>')}
|
|
276
281
|
</div>`;
|
|
@@ -6,6 +6,7 @@ import {AiChat} from '../glitter-base/route/ai-chat.js';
|
|
|
6
6
|
import {ShareDialog} from '../glitterBundle/dialog/ShareDialog.js';
|
|
7
7
|
import {AiPointsApi} from "../glitter-base/route/ai-points-api.js";
|
|
8
8
|
import {EditorElem} from "../glitterBundle/plugins/editor-elem.js";
|
|
9
|
+
import {AiEditor} from "../editor/ai-editor.js";
|
|
9
10
|
|
|
10
11
|
export class AiMessage {
|
|
11
12
|
public static config: any = {
|
|
@@ -74,17 +75,17 @@ export class AiMessage {
|
|
|
74
75
|
})}"
|
|
75
76
|
>
|
|
76
77
|
${(() => {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
78
|
+
return AiMessage.detail({
|
|
79
|
+
gvc: gvc,
|
|
80
|
+
user_id: 'manager',
|
|
81
|
+
containerHeight: ($('body').height() as any) + 10 + 'px',
|
|
82
|
+
document: document,
|
|
83
|
+
goBack: () => {
|
|
84
|
+
},
|
|
85
|
+
close: () => {
|
|
86
|
+
gvc.glitter.closeDrawer()
|
|
87
|
+
},
|
|
88
|
+
})
|
|
88
89
|
})()}
|
|
89
90
|
</div>
|
|
90
91
|
</div>`, () => {
|
|
@@ -263,55 +264,82 @@ export class AiMessage {
|
|
|
263
264
|
},
|
|
264
265
|
};
|
|
265
266
|
}),
|
|
266
|
-
(AiMessage.vm.select_bt==='page_editor') ?
|
|
267
|
+
(AiMessage.vm.select_bt === 'page_editor') ? (() => {
|
|
267
268
|
const html = String.raw
|
|
268
269
|
let message = ''
|
|
269
|
-
return ` <div class="p-
|
|
270
|
+
return ` <div class="p-5">
|
|
270
271
|
${[
|
|
271
272
|
html`
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
273
|
+
<lottie-player src="lottie/ai.json" class="mx-auto my-n4" speed="1"
|
|
274
|
+
style="max-width: 100%;width: 250px;height:250px;" loop
|
|
275
|
+
autoplay></lottie-player>`,
|
|
276
|
+
`<div class="w-100 d-flex align-items-center justify-content-center my-3">${BgWidget.grayNote('點擊想要調整的元件之後,在輸入 AI 語句進行調整', `font-weight: 500;`)}</div>`,
|
|
277
|
+
html`
|
|
278
|
+
<div class="w-100" onclick="${gvc.event(() => {
|
|
279
|
+
if (!gvc.glitter.share.editorViewModel.selectItem) {
|
|
280
|
+
const dialog = new ShareDialog(gvc.glitter)
|
|
281
|
+
dialog.errorMessage({text: '請先點擊要編輯的元件'})
|
|
282
|
+
}
|
|
283
|
+
})}">
|
|
284
|
+
${EditorElem.editeText({
|
|
285
|
+
gvc: gvc,
|
|
286
|
+
title: '',
|
|
287
|
+
default: '',
|
|
288
|
+
placeHolder: `字體大小20px,距離左邊20px,背景顏色黃色,字體顏色藍色,標題為歡迎來到SHOPNEX開店平台.`,
|
|
289
|
+
callback: (text) => {
|
|
290
|
+
message = text;
|
|
291
|
+
},
|
|
292
|
+
min_height: 100
|
|
293
|
+
})}
|
|
294
|
+
</div>`,
|
|
287
295
|
`<div class="w-100 d-flex align-items-center justify-content-end">
|
|
288
296
|
${BgWidget.save(gvc.event(() => {
|
|
289
297
|
const dialog = new ShareDialog(gvc.glitter)
|
|
298
|
+
if (!message) {
|
|
299
|
+
dialog.errorMessage({text: '請輸入描述語句'})
|
|
300
|
+
return
|
|
301
|
+
}
|
|
302
|
+
|
|
290
303
|
dialog.dataLoading({visible: true})
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
text: message
|
|
294
|
-
}).then((res) => {
|
|
295
|
-
if (res.result && res.response.data.usage === 0) {
|
|
304
|
+
gvc.glitter.getModule(new URL('./editor/ai-editor.js', gvc.glitter.root_path).href, (AiEditor) => {
|
|
305
|
+
AiEditor.editView(message, gvc.glitter.share.editorViewModel.selectItem, (result:any) => {
|
|
296
306
|
dialog.dataLoading({visible: false})
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
} else {
|
|
307
|
+
if (result) {
|
|
308
|
+
dialog.successMessage({text: `已為你調整元件『${result}』`})
|
|
309
|
+
gvc.glitter.share.editorViewModel.selectItem.refreshComponent()
|
|
310
|
+
gvc.glitter.closeDrawer()
|
|
311
|
+
} else {
|
|
312
|
+
dialog.errorMessage({text: 'AI無法理解你的意思,請輸入更確切的需求'})
|
|
313
|
+
}
|
|
305
314
|
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
}
|
|
315
|
+
})
|
|
309
316
|
})
|
|
310
|
-
|
|
317
|
+
// const dialog = new ShareDialog(gvc.glitter)
|
|
318
|
+
// dialog.dataLoading({visible: true})
|
|
319
|
+
// AiChat.generateHtml({
|
|
320
|
+
// app_name: (window as any).appName,
|
|
321
|
+
// text: message
|
|
322
|
+
// }).then((res) => {
|
|
323
|
+
// if (res.result && res.response.data.usage === 0) {
|
|
324
|
+
// dialog.dataLoading({visible: false})
|
|
325
|
+
// dialog.errorMessage({text: `很抱歉你的AI代幣不足,請先前往加值`})
|
|
326
|
+
// } else if (res.result && (!res.response.data.obj.result)) {
|
|
327
|
+
// dialog.dataLoading({visible: false})
|
|
328
|
+
// dialog.errorMessage({text: `AI無法理解你的需求,請給出具體一點的描述`})
|
|
329
|
+
// } else if (!res.result) {
|
|
330
|
+
// dialog.dataLoading({visible: false})
|
|
331
|
+
// dialog.errorMessage({text: `發生錯誤`})
|
|
332
|
+
// } else {
|
|
333
|
+
//
|
|
334
|
+
// dialog.successMessage({text: `AI生成完畢,使用了『${res.response.data.usage}』點 AI Points.`})
|
|
335
|
+
//
|
|
336
|
+
// }
|
|
337
|
+
// })
|
|
338
|
+
}), "調整元素", "w-100 mt-3 py-2")}
|
|
311
339
|
</div>`
|
|
312
340
|
].join('<div class="my-2"></div>')}
|
|
313
341
|
</div>`
|
|
314
|
-
})():gvc.bindView(() => {
|
|
342
|
+
})() : gvc.bindView(() => {
|
|
315
343
|
const viewId = gvc.glitter.getUUID();
|
|
316
344
|
const messageID = gvc.glitter.getUUID();
|
|
317
345
|
const vm: {
|