twwu
334f0c905a
feat: Enhance Online Drive file handling with selection and folder opening functionality
2025-07-04 13:42:36 +08:00
Minamiyama
317d287458
fix(loop-variables): validate variable name input ( #21888 )
2025-07-03 23:30:56 +08:00
twwu
f2960989c1
refactor: Refactor data source components
2025-07-03 18:34:54 +08:00
Joel
ed54bd5121
fix: not search plugin if marketplace enabled ( #21880 )
2025-07-03 16:43:11 +08:00
GuanMu
06c3deff11
Fix: Add title attribute to edit time text for improved accessibility ( #21871 )
2025-07-03 16:07:07 +08:00
twwu
cf4f652105
fix: Enhance data source handling by adding error response type and updating local file and online document slices
2025-07-03 14:58:58 +08:00
Ali Saleh
1af3d40c1a
feat: Improve Observability with Arize & Phoenix Integration ( #19840 )
...
Co-authored-by: crazywoola <427733928@qq.com>
Co-authored-by: Gu <guchenhe@gmail.com>
2025-07-03 13:52:14 +08:00
jyong
7c5893db91
Merge branch 'feat/r2' into deploy/rag-dev
...
# Conflicts:
# web/app/components/workflow-app/components/workflow-main.tsx
# web/app/components/workflow/constants.ts
# web/app/components/workflow/header/run-and-history.tsx
# web/app/components/workflow/hooks-store/store.ts
# web/app/components/workflow/hooks/use-nodes-interactions.ts
# web/app/components/workflow/hooks/use-workflow-interactions.ts
# web/app/components/workflow/hooks/use-workflow.ts
# web/app/components/workflow/nodes/_base/components/panel-operator/panel-operator-popup.tsx
# web/app/components/workflow/nodes/_base/components/variable/var-reference-picker.tsx
# web/app/components/workflow/nodes/code/use-config.ts
# web/app/components/workflow/nodes/llm/default.ts
# web/app/components/workflow/panel/index.tsx
# web/app/components/workflow/panel/version-history-panel/index.tsx
# web/app/components/workflow/store/workflow/index.ts
# web/app/components/workflow/types.ts
# web/config/index.ts
# web/types/workflow.ts
2025-07-03 11:40:54 +08:00
Minamiyama
a45aa1e505
feat(variables): auto replace spaces with underscores in variable name inputs ( #21843 )
2025-07-03 10:36:38 +08:00
twwu
2dd1f41ad3
feat: Implement data source store with slices for local files, online documents, website crawls, and online drives
2025-07-03 10:31:29 +08:00
twwu
ddde576b4a
refactor: Update notification messages in CreateFromDSLModal and CreateFromScratchModal for dataset creation
2025-07-03 10:17:55 +08:00
Minamiyama
cb0d4a1e15
style(config-var): update styling classes to use design system tokens ( #21846 )
2025-07-03 10:00:44 +08:00
crazywoola
21e68b9cf1
fix: nodeExtraData might be undefined ( #21856 )
2025-07-03 09:59:19 +08:00
HyaCinth
a3654c8fe9
fix(web): adjust HTTP node method and input layout ( #21834 ) ( #21855 )
2025-07-03 09:26:38 +08:00
Kalo Chin
4e7c9dd2ae
feat: Retain llm setting for agent node ( #21842 )
2025-07-02 20:28:25 +08:00
jyong
832bef053f
Merge branch 'main' into feat/r2
...
# Conflicts:
# docker/docker-compose.middleware.yaml
# web/app/components/workflow-app/components/workflow-main.tsx
# web/app/components/workflow-app/hooks/index.ts
# web/app/components/workflow/hooks-store/store.ts
# web/app/components/workflow/hooks/index.ts
# web/app/components/workflow/nodes/_base/components/variable/var-reference-picker.tsx
2025-07-02 18:20:05 +08:00
zxhlyh
a52bf6211a
merge main
2025-07-02 18:07:09 +08:00
zxhlyh
68f41bbaa8
Fix/workflow use nodes hooks ( #21822 )
2025-07-02 17:48:23 +08:00
zxhlyh
3bfa9767c0
Chore/workflow last run ( #21823 )
...
Co-authored-by: Joel <iamjoel007@gmail.com>
2025-07-02 17:48:07 +08:00
-LAN-
bb955806e0
chore(version): bump to 1.5.1 ( #21808 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-07-02 16:17:40 +08:00
Joel
0c39490bb1
chore: put new run var to the top ( #21816 )
2025-07-02 15:56:22 +08:00
twwu
d7b0ccd6f7
feat: Add name field to data source credentials update function in usePipeline service
2025-07-02 15:08:20 +08:00
twwu
68d59ee8b3
refactor: Refactor useOnlineDocument hook
2025-07-02 14:56:29 +08:00
jyong
e23d7e39ec
Merge branch 'feat/datasource' into feat/r2
...
# Conflicts:
# api/services/rag_pipeline/rag_pipeline.py
# web/app/components/workflow/constants.ts
# web/app/components/workflow/header/run-and-history.tsx
# web/app/components/workflow/hooks/use-nodes-interactions.ts
# web/app/components/workflow/hooks/use-workflow-interactions.ts
# web/app/components/workflow/hooks/use-workflow.ts
# web/app/components/workflow/index.tsx
# web/app/components/workflow/nodes/_base/components/panel-operator/panel-operator-popup.tsx
# web/app/components/workflow/nodes/_base/panel.tsx
# web/app/components/workflow/nodes/code/use-config.ts
# web/app/components/workflow/nodes/llm/default.ts
# web/app/components/workflow/panel/index.tsx
# web/app/components/workflow/panel/version-history-panel/index.tsx
# web/app/components/workflow/store/workflow/index.ts
# web/app/components/workflow/types.ts
# web/config/index.ts
# web/types/workflow.ts
2025-07-02 14:01:59 +08:00
twwu
0284e7556e
refactor: Refactor useDatasourceIcon hook and enhance dataset node rendering with AppIcon component
2025-07-02 13:48:11 +08:00
ShadowJobs
86179beaa5
FIX: dollar-sign escaping in preprocessLaTeX code‐block handling ( #21796 )
...
Co-authored-by: LinYing <linying@momenta.ai>
2025-07-02 11:32:23 +08:00
Joel
f53b177e1f
chore: new inspected variable add to top position instead of bottom ( #21793 )
2025-07-02 11:07:43 +08:00
Joel
58dfe2ca03
fix: when config plugin endpoint choose no start form app cause page crashed ( #21789 )
2025-07-02 10:55:38 +08:00
非法操作
70035aa9a9
fix: notion kownledge datasets can't add new page ( #21779 )
2025-07-02 09:14:48 +08:00
twwu
5d7a533ada
fix: Improve layout by adding overflow handling in CreateFromPipeline and List components
2025-07-01 17:46:41 +08:00
baonudesifeizhai
8516d15a4e
fix: handle configure button for notion internal integration ( #21412 )
2025-07-01 16:58:00 +08:00
twwu
0db7967e5f
refactor: Add useOnlineDrive hook and integrate it into CreateFormPipeline and TestRunPanel components
2025-07-01 16:54:44 +08:00
twwu
a81dc49ad2
feat: Refactor OnlineDocuments and PageSelector components to enhance state management and integrate new Actions component
2025-07-01 16:32:21 +08:00
Joel
a67441689a
chore: upgrade package versions for security reason ( #21751 )
2025-07-01 16:02:04 +08:00
Joel
5c11c22302
fix: can not reset system variables ( #21750 )
2025-07-01 16:00:17 +08:00
twwu
2d0d448667
feat: Update selection handling to support multiple choice in OnlineDocuments and PageSelector components
2025-07-01 14:14:28 +08:00
Kalo Chin
1b99e44e99
feat: Retain LLM Configuration Settings When Changing Model ( #21247 )
2025-07-01 11:32:46 +08:00
twwu
55d7d7ef76
fix: Update default value handling for number input in useInitialData hook
2025-07-01 11:24:30 +08:00
Minamiyama
25de39d9c6
Feat: sync input variable names to main() function ( #21667 )
2025-07-01 10:57:07 +08:00
github-actions[bot]
2455135eaa
chore: translate i18n files ( #21732 )
...
Co-authored-by: douxc <7553076+douxc@users.noreply.github.com>
2025-07-01 10:53:59 +08:00
NFish
6013d90426
Fix/ serveral bugs fixed in enterprise ( #21729 )
2025-07-01 10:42:11 +08:00
Minamiyama
7c76458b18
fix: fix node valid detect ( #21709 )
2025-07-01 10:32:00 +08:00
非法操作
eb9edf4908
fix: copy inspect variable value get extra quotes ( #21680 )
2025-06-30 22:14:29 +08:00
Ganondorf
55a6b330ec
Add get document detail service api ( #21700 )
...
Co-authored-by: lizb <lizb@sugon.com>
2025-06-30 22:13:56 +08:00
非法操作
96d27d7087
fix: enter and exit full canvas cause nav items missing ( #21691 )
2025-06-30 22:00:35 +08:00
twwu
7b473bb5c9
feat: Integrate OnlineDrive component into CreateFormPipeline and update related components
2025-06-30 18:31:52 +08:00
NFish
9588a64487
fix: keep search params in web app url when needs authorize ( #21717 )
2025-06-30 18:28:31 +08:00
twwu
ff511c6f31
refactor: Remove unused variables and simplify next button logic in TestRunPanel
2025-06-30 17:54:33 +08:00
twwu
310102bebd
feat: Add SearchMenu icon and integrate it into the file list component with empty state handling
2025-06-30 17:31:27 +08:00
zxhlyh
1f5c32525f
datasource page
2025-06-30 16:16:54 +08:00
twwu
ada632f9f5
feat: Enhance input field handling by adding allVariableNames prop and localizing error messages
2025-06-30 15:28:55 +08:00
twwu
4c82c9d029
feat: Add Online Drive file management components and enhance file icon handling
2025-06-30 14:19:14 +08:00
zxhlyh
42655a3b1f
fix: checklist
2025-06-30 14:11:26 +08:00
qiuqiua
18757d07c9
fix: #21427 correct segment settings when creating documents via API ( #21673 )
2025-06-29 14:49:32 +08:00
Minamiyama
0f23e3d9ab
fix(ui): no hover effect in copy button of code node ( #21671 )
2025-06-29 14:49:10 +08:00
呆萌闷油瓶
765adabb32
feat: Add autofill by default value in endpoint plugin setting page. ( #21669 )
2025-06-29 13:09:21 +08:00
Davide Delbianco
38a704743c
chore: Add missing svg icon sources ( #21627 )
2025-06-27 16:56:22 +08:00
zxhlyh
94674e99ab
datasource page add marketplace
2025-06-27 16:44:23 +08:00
twwu
93eabef58a
refactor: Refactor OnlineDocuments component and remove OnlineDocumentSelector
2025-06-27 16:29:30 +08:00
twwu
5248fcca56
feat: implement support for single and multiple choice in crawled result items
2025-06-27 15:56:38 +08:00
qiuqiua
7236c4895b
fix: annotation remove functionality Fixes #21448 ( #21616 )
...
Co-authored-by: siqiuchen <siqiu.chen2@dentsplysirona.com>
2025-06-27 15:45:24 +08:00
twwu
264b95e572
feat: separate input fields into datasource and global categories in RAG pipeline
2025-06-27 15:23:04 +08:00
zxhlyh
8f2ad89027
datasource page
2025-06-27 15:01:33 +08:00
NFish
ae8653beb0
style: decrease navbar z-index value from 30 to 15, fix style error ( #21612 )
2025-06-27 13:22:29 +08:00
GuanMu
787ad5ab38
feat: Refactor panel component, add adaptive width observer to optimize panel width management ( #21576 )
2025-06-27 10:50:33 +08:00
crazywoola
81fc49d78c
fix: value_selector will be empty string ( #21598 )
2025-06-27 10:38:22 +08:00
CorrectRoad
7d9d670f90
feat: to add tag when tag input is unfocus ( #21555 )
2025-06-27 10:36:01 +08:00
GuanMu
fd41645f95
feat: Add display control logic for the variable inspection panel ( #21539 )
2025-06-27 10:22:39 +08:00
Yeuoly
cea6522122
feat: add DYNAMIC_SELECT parameter type for dynamic options in parameter entities ( #21425 )
2025-06-26 17:44:14 +08:00
CorrectRoad
ae00ba44db
fix: fix create custom modal overlay add tool ( #21553 )
2025-06-26 16:45:45 +08:00
HyaCinth
79fa3c7519
fix(web): optimize the pop logic of the tool selector ( #21558 ) ( #21559 )
2025-06-26 16:45:01 +08:00
CorrectRoad
d2814650e6
feat: prevent input of non-numeric values in numer input ( #21562 )
2025-06-26 16:43:26 +08:00
CorrectRoad
17722f581b
feat: add tooltip to workflow run node name ( #21564 )
2025-06-26 16:42:48 +08:00
twwu
18b1a9cb2e
Merge branch 'feat/rag-pipeline' of https://github.com/langgenius/dify into feat/rag-pipeline
2025-06-26 15:28:19 +08:00
zxhlyh
25fef5d757
merge main
2025-06-26 15:21:24 +08:00
twwu
2a25ca2b2c
feat: enhance online drive connection UI and add localization for connection status in dataset pipeline
2025-06-26 14:24:50 +08:00
twwu
3a9c79b09a
feat: refactor data source handling and integrate OnlineDrive component in TestRunPanel
2025-06-26 13:46:12 +08:00
Wu Tianwei
ad9eebd02d
fix: update retrieval method cache ( #21409 )
2025-06-26 10:58:21 +08:00
twwu
025b55ef3b
feat: update tooltip text for test run mode in English and Chinese translations for clarity
2025-06-26 10:17:48 +08:00
twwu
cf7574bd10
feat: add FooterTips component and integrate it into TestRunPanel; extend DatasourceType enum with onlineDrive
2025-06-26 10:16:37 +08:00
zxhlyh
45dc0a43d3
fix: prompt editor insert context ( #21526 )
2025-06-26 09:58:58 +08:00
Joel
1610f62a28
fix: var inspect doc link error ( #21515 )
2025-06-25 20:21:51 +08:00
Dongyu Li
00f0b569cc
Feat/kb index ( #20868 )
...
Co-authored-by: twwu <twwu@dify.ai>
2025-06-25 17:52:59 +08:00
twwu
c7cec120a6
feat: update variable validation regex for consistency in ExternalDataToolModal and schema
2025-06-25 17:07:31 +08:00
-LAN-
2d5cdbe79c
chore(version): Bump to 1.5.0 ( #21415 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-06-25 16:54:44 +08:00
Joel
9ad3553d7f
fix: app description too long break ui ( #21491 )
2025-06-25 16:41:55 +08:00
twwu
7d7fd18e65
Merge branch 'feat/rag-pipeline' of https://github.com/langgenius/dify into feat/rag-pipeline
2025-06-25 16:16:41 +08:00
twwu
c6ae9628af
feat: refactor input variable handling and configurations in pipeline processing components
2025-06-25 16:15:59 +08:00
Joel
4631575c12
feat: can support choose current node var
2025-06-25 16:06:08 +08:00
zxhlyh
a4f4fea0a5
fix: note node delete
2025-06-25 16:01:45 +08:00
-LAN-
0f5417ab84
feat(web): Contains sys.files in the default template. ( #21476 )
2025-06-25 13:06:07 +08:00
twwu
261b7cabc8
feat: enhance OnlineDocumentPreview with datasourceNodeId and implement preview functionality
2025-06-25 11:36:56 +08:00
zxhlyh
819c02f1f5
fix: prompt editor click to insert variable ( #21470 )
2025-06-25 11:34:58 +08:00
Covfefeable
449e16782e
fix: update DocumentList to include max height and overflow styles ( #21466 )
2025-06-25 11:17:31 +08:00
thief
257809bb30
fix: in plugin config panel appselector can not list all apps() ( #21457 )
2025-06-25 11:14:46 +08:00
crazywoola
8a20134a5b
fix: inputs.items is undefined ( #21463 )
2025-06-25 11:02:27 +08:00
twwu
ccd346d1da
feat: add handling for RAG pipeline variables in node interactions
2025-06-25 10:40:48 +08:00
AntzUhl
27172b0898
fix (conf/code): Variables not correctly filled can still be referenced ( #21451 )
...
Co-authored-by: crazywoola <427733928@qq.com>
2025-06-25 10:27:36 +08:00
github-actions[bot]
5b33d086c6
chore: translate i18n files ( #21459 )
...
Co-authored-by: laipz8200 <16485841+laipz8200@users.noreply.github.com>
2025-06-25 10:26:21 +08:00
-LAN-
c7ee0f2a93
fix(knowledge_base): Unchecked metadata name length ( #21454 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-06-25 10:18:20 +08:00
twwu
a866cbc6d7
feat: implement usePipeline hook for managing pipeline variables and refactor input field handling
2025-06-25 10:11:26 +08:00
Minamiyama
8ea27bc341
feat: persist debug-and-preview panel width in localstorage ( #21434 )
2025-06-24 20:34:11 +08:00
Joel
c8ebad055c
fix: text generation app log not show ( #21436 )
2025-06-24 20:33:10 +08:00
zxhlyh
8f4a0d4a22
variable picker
2025-06-24 17:27:06 +08:00
Joel
f668d89621
fix: last run not export var and ts problem ( #21424 )
2025-06-24 16:48:33 +08:00
Minamiyama
197c018c1f
fix missing style of conversation variable panel default value textarea ( #21422 )
2025-06-24 15:58:39 +08:00
twwu
1c51bef3cb
fix: standardize capitalization in translation keys and remove unused group property in FieldListContainer
2025-06-24 14:25:58 +08:00
Kerwin Bryant
2467bd738a
Improve App Icon Picker: Stable Modal Height & Collapsible Emoji Style Section ( #21399 )
2025-06-24 11:13:28 +08:00
zxhlyh
c31754e6cd
fix: create pipeline from customized
2025-06-24 11:12:39 +08:00
github-actions[bot]
4a59360ad3
chore: translate i18n files ( #21395 )
...
Co-authored-by: QuantumGhost <2939865+QuantumGhost@users.noreply.github.com>
2025-06-24 09:25:02 +08:00
Joel
1a1bfd4048
feat: last run frontend ( #21369 )
...
The frontend of feat: Persist Variables for Enhanced Debugging Workflow (#20699 ).
Co-authored-by: jZonG <jzongcode@gmail.com>
2025-06-24 09:10:30 +08:00
QuantumGhost
10b738a296
feat: Persist Variables for Enhanced Debugging Workflow ( #20699 )
...
This pull request introduces a feature aimed at improving the debugging experience during workflow editing. With the addition of variable persistence, the system will automatically retain the output variables from previously executed nodes. These persisted variables can then be reused when debugging subsequent nodes, eliminating the need for repetitive manual input.
By streamlining this aspect of the workflow, the feature minimizes user errors and significantly reduces debugging effort, offering a smoother and more efficient experience.
Key highlights of this change:
- Automatic persistence of output variables for executed nodes.
- Reuse of persisted variables to simplify input steps for nodes requiring them (e.g., `code`, `template`, `variable_assigner`).
- Enhanced debugging experience with reduced friction.
Closes #19735 .
2025-06-24 09:05:29 +08:00
twwu
2414dbb5f8
feat: clear selected IDs on document deletion action in DocumentList component
2025-06-23 16:38:19 +08:00
twwu
916a8c76e7
fix: rename currentDocuments to currentDocument for consistency in online documents handling
2025-06-23 16:31:09 +08:00
twwu
896906ae77
feat: refactor layout structure in PipelineSettings component for improved responsiveness
2025-06-23 15:57:02 +08:00
twwu
dd792210f6
Merge branch 'feat/rag-pipeline' of https://github.com/langgenius/dify into feat/rag-pipeline
2025-06-23 15:38:34 +08:00
twwu
6ba4a4c165
feat: enhance website crawl functionality with state management and result handling
2025-06-23 15:38:24 +08:00
zxhlyh
48f53f3b9b
workflow dependency
2025-06-23 15:02:57 +08:00
15
3537088135
Fixes #21351 ( #21354 )
2025-06-23 14:01:51 +08:00
twwu
b9f59e3a75
Merge branch 'main' into feat/rag-pipeline
2025-06-23 13:59:05 +08:00
Good Wood
43f5b21852
feat: add config for max-tree-depth ( #21291 )
2025-06-23 13:55:57 +08:00
GuanMu
e56d7547f7
fix: web error ( #21340 )
2025-06-23 13:54:52 +08:00
Ganondorf
ea68c92bbb
fix segment display the default ( #21317 )
...
Co-authored-by: lizb <lizb@sugon.com>
2025-06-23 13:48:39 +08:00
Wu Tianwei
b348455144
fix: Update segmentation type initialization to support parent-child mode based on document form ( #21359 )
2025-06-23 13:45:35 +08:00
onlylhf
f2f6e95880
fix: Update the logic for segment type settings to support parent-child mode selection. ( #21278 )
2025-06-23 10:36:30 +08:00
XiaoBa
725a221315
fix: hide marketplace information( #21275 ) ( #21276 )
...
Co-authored-by: Xiaoba Yu <xb1823725853@gmail.com>
2025-06-23 10:23:43 +08:00
crazywoola
d333aac84a
refactor: env check with function ( #21310 )
2025-06-21 18:33:13 +08:00
crazywoola
3fefb34d44
fix: wrong translation ( #21311 )
2025-06-21 11:51:52 +08:00
GuanMu
870e73c03b
Knowledge base API supports status updates #18147 ( #18235 )
2025-06-21 11:18:48 +08:00
HyaCinth
fa70033438
style(dark): Adjust chat bubble background color (langgenius#20990) ( #21264 )
2025-06-20 20:04:39 +08:00
QuantumGhost
3f9ced5374
Revert "feat:conversation variable support file array" ( #21273 )
2025-06-20 19:57:28 +08:00
sayThQ199
ba5eebf3a2
feat(mermaid): Rearchitect component for robustness, security, and theming ( #21281 )
2025-06-20 19:55:58 +08:00
XiaoBa
186ac74c1f
fix: update auto translations for days of the week( #21279 ) ( #21287 )
...
Co-authored-by: Xiaoba Yu <xb1823725853@gmail.com>
2025-06-20 19:54:43 +08:00
KVOJJJin
223448af18
Feat: support selecting model in auto generator ( #21208 )
2025-06-20 13:42:42 +08:00
非法操作
40e8ad419b
fix: not permitted schema of markdown link cause page crash ( #21258 )
2025-06-20 09:23:30 +08:00
-LAN-
6b1ad634f1
fix(workflow_run): sequence_number race. ( #21228 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-06-19 17:53:49 +08:00
twwu
3899211c41
Merge branch 'feat/rag-pipeline' of https://github.com/langgenius/dify into feat/rag-pipeline
2025-06-19 15:58:01 +08:00
twwu
335e1e3602
feat: enhance pipeline settings with execution log and processing capabilities
2025-06-19 15:57:49 +08:00
Good Wood
1d41b642ca
chore: remove redundant code ( #21211 )
2025-06-19 15:47:08 +08:00
zxhlyh
cff039d123
fix: workflow import sync env and conversation variables ( #21215 )
2025-06-19 15:44:42 +08:00
NFish
db20f9bb71
Fix/dataset page may redirect to apps if it still getting user info and workspace info ( #21221 )
2025-06-19 15:40:15 +08:00
zxhlyh
95ba55af4d
fix: import dsl sync rag variables
2025-06-19 15:04:26 +08:00
twwu
55516c4e57
fix: add type checks for workspace roles in DatasetsLayout component
2025-06-19 10:56:03 +08:00
kinoooolu
2bb19f85c6
feat:conversation variable support file array ( #21174 )
...
Co-authored-by: kino.lu <kino.lu@vipshop.com>
2025-06-19 10:26:38 +08:00
Ganondorf
e99861d4fe
Add Filter of Get Workflow Logs ( #21172 )
...
Co-authored-by: lizb <lizb@sugon.com>
2025-06-19 10:10:16 +08:00
非法操作
a205ee16b9
feat: improve the orgnize node operation ( #21183 )
2025-06-19 10:05:33 +08:00
NeatGuyCoding
9835730278
Translation fix ( #21194 )
2025-06-19 09:36:56 +08:00
twwu
5d25199f42
refactor: update layout for creation title and content in StepThree component
2025-06-19 09:36:04 +08:00
twwu
387826674c
Merge branch 'main' into feat/rag-pipeline
2025-06-19 09:34:09 +08:00
sayThQ199
2df4699312
fix(echarts): Resolve interaction issues on charts with timelines ( #21185 )
2025-06-18 20:22:33 +08:00