feffery_utils_components 0.2.0-rc20 → 0.2.0-rc22

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 (55) hide show
  1. package/DESCRIPTION +1 -1
  2. package/NAMESPACE +2 -0
  3. package/Project.toml +1 -1
  4. package/README.md +1 -1
  5. package/feffery_utils_components/FefferyGrid.py +13 -8
  6. package/feffery_utils_components/FefferyListenDrag.py +51 -0
  7. package/feffery_utils_components/FefferyListenDrop.py +103 -0
  8. package/feffery_utils_components/_imports_.py +4 -0
  9. package/feffery_utils_components/async-feffery_animated_3d_background_p5.js +1 -1
  10. package/feffery_utils_components/async-feffery_animated_3d_background_three.js +1 -1
  11. package/feffery_utils_components/async-feffery_animated_image.js +1 -1
  12. package/feffery_utils_components/async-feffery_aplayer.js +1 -1
  13. package/feffery_utils_components/async-feffery_auto_animate.js +1 -1
  14. package/feffery_utils_components/async-feffery_auto_fit.js +2 -2
  15. package/feffery_utils_components/async-feffery_burger.js +1 -1
  16. package/feffery_utils_components/async-feffery_captcha.js +1 -1
  17. package/feffery_utils_components/async-feffery_color_pickers.js +1 -1
  18. package/feffery_utils_components/async-feffery_dom2image.js +2 -2
  19. package/feffery_utils_components/async-feffery_dplayer.js +1 -1
  20. package/feffery_utils_components/async-feffery_emoji_picker.js +1 -1
  21. package/feffery_utils_components/async-feffery_excel_preview.js +1 -1
  22. package/feffery_utils_components/async-feffery_extra_spinner.js +1 -1
  23. package/feffery_utils_components/async-feffery_fancy_button.js +1 -1
  24. package/feffery_utils_components/async-feffery_grid.js +1 -1
  25. package/feffery_utils_components/async-feffery_http_requests.js +1 -1
  26. package/feffery_utils_components/async-feffery_image_cropper.js +1 -1
  27. package/feffery_utils_components/async-feffery_json_viewer.js +1 -1
  28. package/feffery_utils_components/async-feffery_local_large_storage.js +1 -1
  29. package/feffery_utils_components/async-feffery_markdown_editor.js +2 -2
  30. package/feffery_utils_components/async-feffery_motion.js +1 -1
  31. package/feffery_utils_components/async-feffery_music_player.js +1 -1
  32. package/feffery_utils_components/async-feffery_photo_sphere_viewer.js +1 -1
  33. package/feffery_utils_components/async-feffery_photo_sphere_viewer.js.LICENSE.txt +8 -2
  34. package/feffery_utils_components/async-feffery_resizable.js +1 -1
  35. package/feffery_utils_components/async-feffery_rich_text_editor.js +3 -3
  36. package/feffery_utils_components/async-feffery_rnd.js +1 -1
  37. package/feffery_utils_components/async-feffery_seamless_scroll.js +1 -1
  38. package/feffery_utils_components/async-feffery_shortcut_panel.js +16 -16
  39. package/feffery_utils_components/async-feffery_slider_captcha.js +1 -1
  40. package/feffery_utils_components/async-feffery_sortable.js +1 -1
  41. package/feffery_utils_components/async-feffery_vditor.js +1 -1
  42. package/feffery_utils_components/async-feffery_word_preview.js +1 -1
  43. package/feffery_utils_components/async-fuc-shared.js +15 -15
  44. package/feffery_utils_components/feffery_utils_components.min.js +7 -7
  45. package/feffery_utils_components/metadata.json +228 -3
  46. package/feffery_utils_components/package-info.json +1 -1
  47. package/package.json +1 -1
  48. package/src/lib/components/draggable/FefferyGrid.react.js +12 -1
  49. package/src/lib/components/listeners/FefferyListenDrag.react.js +83 -0
  50. package/src/lib/components/listeners/FefferyListenDrop.react.js +177 -0
  51. package/src/lib/components/styles.css +126 -124
  52. package/src/lib/fragments/draggable/FefferyGrid.react.js +112 -107
  53. package/src/lib/index.js +5 -1
  54. package/usage.py +61 -12
  55. package/.vscode/settings.json +0 -11
package/usage.py CHANGED
@@ -1,4 +1,5 @@
1
1
  import dash
2
+ import json
2
3
  from dash import html
3
4
  import feffery_utils_components as fuc
4
5
  from dash.dependencies import Input, Output
@@ -8,26 +9,74 @@ app = dash.Dash(__name__)
8
9
  app.layout = html.Div(
9
10
  [
10
11
  html.Div(
11
- id='target-element',
12
+ [
13
+ html.Div(
14
+ id='drag-block-demo',
15
+ style={
16
+ 'width': 100,
17
+ 'height': 100,
18
+ 'border': '1px solid black',
19
+ 'cursor': 'move',
20
+ },
21
+ )
22
+ ],
23
+ style={'padding': 24},
24
+ ),
25
+ html.Div(
26
+ id='drop-container-demo',
12
27
  style={
13
- 'width': '20vw',
14
- 'height': '20vh',
15
- 'border': '1px solid black',
28
+ 'height': 500,
29
+ 'border': '1px solid red',
16
30
  },
17
31
  ),
18
- fuc.FefferyListenElementSize(
19
- id='listen-element-size-demo',
20
- target='target-element',
32
+ fuc.FefferyListenDrag(
33
+ targetSelector='#drag-block-demo', data='测试'
34
+ ),
35
+ fuc.FefferyListenDrop(
36
+ id='listen-drop-demo',
37
+ targetSelector='#drop-container-demo',
38
+ ),
39
+ # hoverEvent测试指示器
40
+ html.Span(
41
+ '🤩',
42
+ id='hover-event-indicator',
43
+ style={
44
+ 'display': 'none',
45
+ 'transition': 'all 0.2s',
46
+ },
21
47
  ),
22
48
  ],
23
- style={'padding': 50, 'height': 99999, 'width': 99999},
49
+ style={'padding': 50},
24
50
  )
25
51
 
52
+
53
+ @app.callback(
54
+ Output('drop-container-demo', 'children'),
55
+ Input('listen-drop-demo', 'dropEvent'),
56
+ prevent_initial_call=True,
57
+ )
58
+ def listen_drop_event(dropEvent):
59
+ return json.dumps(
60
+ dropEvent, indent=4, ensure_ascii=False
61
+ )
62
+
63
+
26
64
  app.clientside_callback(
27
- """(width, height) => `width: ${width}px; height: ${height}px`""",
28
- Output('target-element', 'children'),
29
- Input('listen-element-size-demo', 'width'),
30
- Input('listen-element-size-demo', 'height'),
65
+ """(hoverEvent, isHovering) => {
66
+ if (isHovering && hoverEvent) {
67
+ return {
68
+ position: 'fixed',
69
+ left: hoverEvent.clientX - 50,
70
+ top: hoverEvent.clientY - 50,
71
+ transition: 'all 0.2s'
72
+ };
73
+ }
74
+ return { display: 'none' };
75
+ }""",
76
+ Output('hover-event-indicator', 'style'),
77
+ Input('listen-drop-demo', 'hoverEvent'),
78
+ Input('listen-drop-demo', 'isHovering'),
79
+ prevent_initial_call=True,
31
80
  )
32
81
 
33
82
  if __name__ == '__main__':
@@ -1,11 +0,0 @@
1
- {
2
- "files.exclude": {
3
- "**/.git": true,
4
- "**/.svn": true,
5
- "**/.hg": true,
6
- "**/CVS": true,
7
- "**/.DS_Store": true,
8
- "**/Thumbs.db": true
9
- },
10
- "hide-files.files": []
11
- }