graphica-plot 2.0.0__py3-none-any.whl

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 (181) hide show
  1. graphica/Graphica.ico +0 -0
  2. graphica/__init__.py +1 -0
  3. graphica/__main__.py +111 -0
  4. graphica/assets/__init__.py +0 -0
  5. graphica/assets/icons/__init__.py +0 -0
  6. graphica/assets/icons/arrow-right.svg +21 -0
  7. graphica/assets/icons/bold.svg +20 -0
  8. graphica/assets/icons/calculator.svg +26 -0
  9. graphica/assets/icons/chart-histogram.svg +24 -0
  10. graphica/assets/icons/chart-line.svg +20 -0
  11. graphica/assets/icons/chevron-down.svg +19 -0
  12. graphica/assets/icons/chevron-right.svg +19 -0
  13. graphica/assets/icons/color-swatch.svg +22 -0
  14. graphica/assets/icons/column-insert-right.svg +21 -0
  15. graphica/assets/icons/column-remove.svg +21 -0
  16. graphica/assets/icons/copy.svg +20 -0
  17. graphica/assets/icons/download.svg +21 -0
  18. graphica/assets/icons/edit.svg +21 -0
  19. graphica/assets/icons/eye-off.svg +21 -0
  20. graphica/assets/icons/eye.svg +20 -0
  21. graphica/assets/icons/file-plus.svg +22 -0
  22. graphica/assets/icons/folder-plus.svg +21 -0
  23. graphica/assets/icons/folder.svg +19 -0
  24. graphica/assets/icons/highlight.svg +22 -0
  25. graphica/assets/icons/history.svg +20 -0
  26. graphica/assets/icons/italic.svg +21 -0
  27. graphica/assets/icons/layout-grid.svg +22 -0
  28. graphica/assets/icons/math-function.svg +22 -0
  29. graphica/assets/icons/message-2.svg +21 -0
  30. graphica/assets/icons/mountain.svg +20 -0
  31. graphica/assets/icons/palette.svg +22 -0
  32. graphica/assets/icons/pointer.svg +19 -0
  33. graphica/assets/icons/refresh.svg +20 -0
  34. graphica/assets/icons/row-insert-bottom.svg +21 -0
  35. graphica/assets/icons/row-remove.svg +21 -0
  36. graphica/assets/icons/search.svg +20 -0
  37. graphica/assets/icons/select-all.svg +35 -0
  38. graphica/assets/icons/subscript.svg +20 -0
  39. graphica/assets/icons/superscript.svg +20 -0
  40. graphica/assets/icons/table.svg +21 -0
  41. graphica/assets/icons/trash.svg +23 -0
  42. graphica/assets/icons/typography.svg +23 -0
  43. graphica/assets/icons/x.svg +20 -0
  44. graphica/core/__init__.py +0 -0
  45. graphica/core/analysis.py +1278 -0
  46. graphica/core/app_paths.py +35 -0
  47. graphica/core/axis_settings.py +128 -0
  48. graphica/core/caption_export.py +47 -0
  49. graphica/core/color_palettes.py +56 -0
  50. graphica/core/commands.py +226 -0
  51. graphica/core/cvd_simulation.py +49 -0
  52. graphica/core/dataset.py +443 -0
  53. graphica/core/diagnostics.py +105 -0
  54. graphica/core/excel_utils.py +58 -0
  55. graphica/core/fit_models.py +379 -0
  56. graphica/core/grid_data.py +128 -0
  57. graphica/core/i18n.py +44 -0
  58. graphica/core/json_utils.py +27 -0
  59. graphica/core/label_utils.py +21 -0
  60. graphica/core/methods_text.py +115 -0
  61. graphica/core/named_colors.py +126 -0
  62. graphica/core/plugin_api.py +515 -0
  63. graphica/core/plugin_context.py +167 -0
  64. graphica/core/plugin_install.py +82 -0
  65. graphica/core/plugin_manifest.py +67 -0
  66. graphica/core/plugin_testing.py +213 -0
  67. graphica/core/plugin_types.py +118 -0
  68. graphica/core/provenance.py +19 -0
  69. graphica/core/report_export.py +51 -0
  70. graphica/core/safe_eval.py +194 -0
  71. graphica/core/script_export.py +272 -0
  72. graphica/core/translations_en.py +530 -0
  73. graphica/core/unit_conversion.py +51 -0
  74. graphica/core/update_check.py +43 -0
  75. graphica/core/version.py +14 -0
  76. graphica/gui/__init__.py +0 -0
  77. graphica/gui/app_settings.py +119 -0
  78. graphica/gui/axis_bindings.py +173 -0
  79. graphica/gui/binding.py +135 -0
  80. graphica/gui/builders/__init__.py +1 -0
  81. graphica/gui/builders/axis_panel.py +431 -0
  82. graphica/gui/builders/canvas_area.py +176 -0
  83. graphica/gui/builders/common.py +120 -0
  84. graphica/gui/builders/dataset_panel.py +433 -0
  85. graphica/gui/builders/property_sections.py +208 -0
  86. graphica/gui/canvas.py +519 -0
  87. graphica/gui/color_history.py +47 -0
  88. graphica/gui/color_picker_widget.py +198 -0
  89. graphica/gui/crash_handler.py +77 -0
  90. graphica/gui/cvd_preview.py +23 -0
  91. graphica/gui/data_editor.py +761 -0
  92. graphica/gui/data_import_flow.py +355 -0
  93. graphica/gui/dataset_bindings.py +107 -0
  94. graphica/gui/dataset_style_icon.py +80 -0
  95. graphica/gui/datasets/__init__.py +1 -0
  96. graphica/gui/datasets/actions_menu.py +114 -0
  97. graphica/gui/datasets/colors.py +218 -0
  98. graphica/gui/datasets/fitting.py +70 -0
  99. graphica/gui/datasets/host.py +162 -0
  100. graphica/gui/datasets/operations/__init__.py +1 -0
  101. graphica/gui/datasets/operations/fitting.py +468 -0
  102. graphica/gui/datasets/operations/peaks.py +109 -0
  103. graphica/gui/datasets/operations/processing.py +659 -0
  104. graphica/gui/datasets/operations/runner.py +148 -0
  105. graphica/gui/datasets/operations/transfer.py +227 -0
  106. graphica/gui/datasets/order.py +310 -0
  107. graphica/gui/datasets/overlays.py +74 -0
  108. graphica/gui/datasets/peaks.py +21 -0
  109. graphica/gui/datasets/plugin_runs.py +99 -0
  110. graphica/gui/datasets/processing.py +68 -0
  111. graphica/gui/datasets/property_panel.py +538 -0
  112. graphica/gui/datasets/transfer.py +36 -0
  113. graphica/gui/detached_canvas_window.py +22 -0
  114. graphica/gui/dialogs/__init__.py +137 -0
  115. graphica/gui/dialogs/analysis.py +1322 -0
  116. graphica/gui/dialogs/app.py +1015 -0
  117. graphica/gui/dialogs/appearance.py +851 -0
  118. graphica/gui/dialogs/data_edit.py +577 -0
  119. graphica/gui/dialogs/data_import.py +679 -0
  120. graphica/gui/dialogs/export.py +433 -0
  121. graphica/gui/dock_layout.py +176 -0
  122. graphica/gui/export_preview_panel.py +321 -0
  123. graphica/gui/export_settings.py +16 -0
  124. graphica/gui/file_association.py +97 -0
  125. graphica/gui/icon_utils.py +44 -0
  126. graphica/gui/main_app_window.py +210 -0
  127. graphica/gui/main_window.py +1151 -0
  128. graphica/gui/mathtext_preview.py +168 -0
  129. graphica/gui/menu_bar.py +320 -0
  130. graphica/gui/minimap_widget.py +151 -0
  131. graphica/gui/mixins/__init__.py +0 -0
  132. graphica/gui/mixins/export_mixin.py +520 -0
  133. graphica/gui/mixins/help_mixin.py +127 -0
  134. graphica/gui/mixins/project_io_mixin.py +289 -0
  135. graphica/gui/mixins/quick_access_mixin.py +194 -0
  136. graphica/gui/mixins/ui_setup_mixin.py +206 -0
  137. graphica/gui/notify.py +61 -0
  138. graphica/gui/panels/__init__.py +43 -0
  139. graphica/gui/panels/axis_settings.py +605 -0
  140. graphica/gui/panels/dataset_tree.py +424 -0
  141. graphica/gui/plot_type_drawers.py +131 -0
  142. graphica/gui/plugin_context.py +119 -0
  143. graphica/gui/project_files.py +361 -0
  144. graphica/gui/provenance_panel.py +65 -0
  145. graphica/gui/rendering/__init__.py +1 -0
  146. graphica/gui/rendering/annotations.py +177 -0
  147. graphica/gui/rendering/appearance.py +368 -0
  148. graphica/gui/rendering/common.py +316 -0
  149. graphica/gui/rendering/data_1d.py +376 -0
  150. graphica/gui/rendering/data_2d.py +66 -0
  151. graphica/gui/residual_panel.py +62 -0
  152. graphica/gui/resources.py +16 -0
  153. graphica/gui/single_instance.py +141 -0
  154. graphica/gui/splash.py +83 -0
  155. graphica/gui/task_runner.py +41 -0
  156. graphica/gui/theme.py +864 -0
  157. graphica/gui/tools/__init__.py +56 -0
  158. graphica/gui/tools/annotation.py +275 -0
  159. graphica/gui/tools/cursor.py +259 -0
  160. graphica/gui/tools/layout_edit.py +285 -0
  161. graphica/gui/tools/manager.py +78 -0
  162. graphica/gui/tools/peak_placement.py +132 -0
  163. graphica/gui/tools/range_select.py +191 -0
  164. graphica/gui/tools/region_highlight.py +222 -0
  165. graphica/gui/tools/slice_extraction.py +200 -0
  166. graphica/gui/widget_translation.py +46 -0
  167. graphica/gui/workers.py +280 -0
  168. graphica/models/__init__.py +0 -0
  169. graphica/models/project.py +197 -0
  170. graphica/plugin/__init__.py +20 -0
  171. graphica/plugin/testing.py +57 -0
  172. graphica/sample_data/__init__.py +0 -0
  173. graphica/sample_data/cooling_curve_sample.csv +42 -0
  174. graphica/ui_main_window.py +581 -0
  175. graphica_plot-2.0.0.dist-info/METADATA +317 -0
  176. graphica_plot-2.0.0.dist-info/RECORD +181 -0
  177. graphica_plot-2.0.0.dist-info/WHEEL +5 -0
  178. graphica_plot-2.0.0.dist-info/entry_points.txt +2 -0
  179. graphica_plot-2.0.0.dist-info/licenses/LICENSE +30 -0
  180. graphica_plot-2.0.0.dist-info/licenses/THIRD_PARTY_LICENSES.md +91 -0
  181. graphica_plot-2.0.0.dist-info/top_level.txt +1 -0
graphica/Graphica.ico ADDED
Binary file
graphica/__init__.py ADDED
@@ -0,0 +1 @@
1
+ """Graphica。プラグインが使ってよいのは graphica.plugin と graphica.plugin.testing だけ。"""
graphica/__main__.py ADDED
@@ -0,0 +1,111 @@
1
+ import sys
2
+ import os
3
+ import logging
4
+
5
+ # Win32 の SetProcessDpiAwareness() を呼ばないこと。DPI の認識モードはプロセスで1回しか設定できず、
6
+ # 先に呼ぶと Qt の設定が失敗して、描画とクリックの位置がずれる。
7
+
8
+ from PySide6.QtCore import Qt, QTimer
9
+ from PySide6.QtWidgets import QApplication
10
+ from PySide6.QtGui import QFont, QGuiApplication
11
+
12
+ # ここでは軽いモジュールだけを読む。pandas・scipy・matplotlib を引くもの(main_app_window・plugin_api)は
13
+ # 起動画面を出してから main() の中で読む(読み込みに 2〜3 秒かかり、その間に何も出ないと起動に気づけない)
14
+ from graphica.gui import app_settings
15
+ from graphica.gui.crash_handler import install_crash_handler, prompt_safe_mode_and_apply
16
+ from graphica.core.i18n import set_language, tr
17
+ from graphica.core.version import LOG_FILE_NAME
18
+ from graphica.core.app_paths import get_app_data_dir
19
+
20
+ # UI のフォント。無ければ Qt が次の候補を使う
21
+ APP_FONT_FAMILIES = ["Yu Gothic UI", "Meiryo UI", "Segoe UI"]
22
+ APP_FONT_POINT_SIZE = 9.5
23
+
24
+ def _setup_logging():
25
+ """ログはファイルにも書く(exe ではコンソールが無い)。場所は get_app_data_dir()(Program Files の下には書けない)。"""
26
+ log_path = os.path.join(get_app_data_dir(), LOG_FILE_NAME)
27
+ handlers = [logging.FileHandler(log_path, encoding="utf-8")]
28
+ # コンソールの無い起動(pip の gui-scripts・exe)では sys.stdout が None
29
+ if sys.stdout is not None:
30
+ handlers.append(logging.StreamHandler(sys.stdout))
31
+ logging.basicConfig(
32
+ level=logging.INFO,
33
+ format="%(asctime)s [%(levelname)s] %(name)s: %(message)s",
34
+ handlers=handlers,
35
+ )
36
+ # グラフのフォントは OS ごとの候補を並べていて、無いものごとに描くたび警告が出てログが膨らむ
37
+ logging.getLogger("matplotlib.font_manager").setLevel(logging.ERROR)
38
+
39
+ def _safe_mode_flag_requested(argv):
40
+ """--safe-mode が指定されたか(ウィンドウを作らずにテストできるよう分けてある)。"""
41
+ return "--safe-mode" in argv
42
+
43
+
44
+ def main():
45
+ _setup_logging()
46
+ # 拡大率の違うモニターの間で、描画とクリックの位置がずれないよう、倍率を丸めない。QApplication より前に
47
+ QGuiApplication.setHighDpiScaleFactorRoundingPolicy(
48
+ Qt.HighDpiScaleFactorRoundingPolicy.PassThrough
49
+ )
50
+ install_crash_handler()
51
+ app = QApplication(sys.argv)
52
+
53
+ app_font = QFont()
54
+ app_font.setFamilies(APP_FONT_FAMILIES)
55
+ app_font.setPointSizeF(APP_FONT_POINT_SIZE)
56
+ app.setFont(app_font)
57
+
58
+ # ファイルを開いて起動されたとき、すでに起動中の Graphica があればそちらの新しいタブで開いて、こちらは終わる
59
+ from graphica.gui.single_instance import (FileOpenEventFilter, InstanceServer, files_to_open, instance_running,
60
+ send_to_running_instance)
61
+ launch_files = files_to_open(sys.argv)
62
+ if launch_files and send_to_running_instance(launch_files):
63
+ return
64
+
65
+ settings = app_settings.open_settings()
66
+ # 起動画面の文字の言語。最初のタブも同じ値で設定し直す
67
+ set_language(app_settings.LANGUAGE.read(settings))
68
+
69
+ # プラグインは最初のタブを作るときに読むので、その前に決める。尋ねる画面は起動画面より前に出す(後ろに隠れないように)
70
+ safe_mode_requested = _safe_mode_flag_requested(sys.argv)
71
+ if not safe_mode_requested:
72
+ # 前回が異常終了なら、プラグインなしで起動するか尋ねる。clean_exit を書き換えるのは PlotterApp だけ
73
+ prompt_safe_mode_and_apply(settings)
74
+
75
+ from graphica.gui.splash import show_startup_splash
76
+ splash = show_startup_splash(dark=app_settings.DARK_MODE.read(settings))
77
+
78
+ splash.show_progress(tr("ライブラリを読み込み中…"))
79
+ from graphica.core.plugin_api import set_safe_mode
80
+ from graphica.gui.main_app_window import MainAppWindow
81
+ from graphica.gui.theme import disable_scroll_value_change
82
+
83
+ disable_scroll_value_change()
84
+ if safe_mode_requested:
85
+ # 明示的に指定されたので尋ねない
86
+ set_safe_mode(True)
87
+
88
+ splash.show_progress(tr("ウィンドウを準備中…"))
89
+ window = MainAppWindow()
90
+ window.show()
91
+ # 復元の確認やようこそ画面は、イベントループが回ってから出るので、その前に閉じる
92
+ splash.finish(window)
93
+
94
+ # あとから起動したアプリが送ってきたファイルは新しいタブで開く。ほかの Graphica がすでに受け付けていれば譲る
95
+ instance_server = InstanceServer(parent=window)
96
+ if not instance_running():
97
+ instance_server.listen()
98
+ instance_server.open_requested.connect(window.open_files)
99
+ # macOS の Finder から開いたファイル(起動のきっかけになったものも、起動中のものも)
100
+ file_open_filter = FileOpenEventFilter(window)
101
+ file_open_filter.open_requested.connect(lambda paths: window.open_files(paths, reuse_empty_tab=True))
102
+ app.installEventFilter(file_open_filter)
103
+ if launch_files:
104
+ # 復元の確認などの後に開く(どちらもイベントループが回ってから順に動く)
105
+ QTimer.singleShot(0, lambda: window.open_files(launch_files, reuse_empty_tab=True))
106
+
107
+ sys.exit(app.exec())
108
+
109
+
110
+ if __name__ == '__main__':
111
+ main()
File without changes
File without changes
@@ -0,0 +1,21 @@
1
+ <!--
2
+ tags: [next, proceed, swipe, arrow, right, direction, pointer, navigation, flow, navigate]
3
+ category: Arrows
4
+ version: "1.0"
5
+ unicode: "ea1f"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M5 12l14 0" />
19
+ <path d="M13 18l6 -6" />
20
+ <path d="M13 6l6 6" />
21
+ </svg>
@@ -0,0 +1,20 @@
1
+ <!--
2
+ tags: [font, style, boldface, bold, typography, writing, character, word]
3
+ category: Text
4
+ version: "1.3"
5
+ unicode: "eb7b"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M7 5h6a3.5 3.5 0 0 1 0 7h-6l0 -7" />
19
+ <path d="M13 12h1a3.5 3.5 0 0 1 0 7h-7v-7" />
20
+ </svg>
@@ -0,0 +1,26 @@
1
+ <!--
2
+ tags: [math, count, add, subtract, multiply, divide, amount, calculator, hardware, technology]
3
+ category: Devices
4
+ version: "1.3"
5
+ unicode: "eb80"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M4 5a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2l0 -14" />
19
+ <path d="M8 8a1 1 0 0 1 1 -1h6a1 1 0 0 1 1 1v1a1 1 0 0 1 -1 1h-6a1 1 0 0 1 -1 -1l0 -1" />
20
+ <path d="M8 14l0 .01" />
21
+ <path d="M12 14l0 .01" />
22
+ <path d="M16 14l0 .01" />
23
+ <path d="M8 17l0 .01" />
24
+ <path d="M12 17l0 .01" />
25
+ <path d="M16 17l0 .01" />
26
+ </svg>
@@ -0,0 +1,24 @@
1
+ <!--
2
+ tags: [graph, diagram, curves, analytics, chart, histogram, statistics, visualization, metrics, report]
3
+ category: Charts
4
+ version: "1.119"
5
+ unicode: "f65c"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M3 3v18h18" />
19
+ <path d="M20 18v3" />
20
+ <path d="M16 16v5" />
21
+ <path d="M12 13v8" />
22
+ <path d="M8 16v5" />
23
+ <path d="M3 11c6 0 5 -5 9 -5s3 5 9 5" />
24
+ </svg>
@@ -0,0 +1,20 @@
1
+ <!--
2
+ tags: [statistics, diagram, graph, rhythm, data, analysis, chart, line, visualization, analytics]
3
+ category: Charts
4
+ version: "1.0"
5
+ unicode: "ea5c"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M4 19l16 0" />
19
+ <path d="M4 15l4 -6l4 2l4 -5l4 4" />
20
+ </svg>
@@ -0,0 +1,19 @@
1
+ <!--
2
+ tags: [move, next, swipe, bottom, chevron, down, decrease, navigation, flow, fall]
3
+ category: Arrows
4
+ version: "1.0"
5
+ unicode: "ea5f"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M6 9l6 6l6 -6" />
19
+ </svg>
@@ -0,0 +1,19 @@
1
+ <!--
2
+ tags: [move, checklist, next, chevron, right, navigation, flow, movement, route, path]
3
+ category: Arrows
4
+ version: "1.0"
5
+ unicode: "ea61"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M9 6l6 6l-6 6" />
19
+ </svg>
@@ -0,0 +1,22 @@
1
+ <!--
2
+ tags: [sample, choice, selection, color, swatch, creative, artistic, visual, aesthetic, style]
3
+ category: Design
4
+ version: "1.2"
5
+ unicode: "eb61"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M19 3h-4a2 2 0 0 0 -2 2v12a4 4 0 0 0 8 0v-12a2 2 0 0 0 -2 -2" />
19
+ <path d="M13 7.35l-2 -2a2 2 0 0 0 -2.828 0l-2.828 2.828a2 2 0 0 0 0 2.828l9 9" />
20
+ <path d="M7.3 13h-2.3a2 2 0 0 0 -2 2v4a2 2 0 0 0 2 2h12" />
21
+ <path d="M17 17l0 .01" />
22
+ </svg>
@@ -0,0 +1,21 @@
1
+ <!--
2
+ tags: [database, table, cells, arrow, column, insert, right, storage, repository, records]
3
+ category: Database
4
+ version: "1.39"
5
+ unicode: "ee45"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M6 4h4a1 1 0 0 1 1 1v14a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-14a1 1 0 0 1 1 -1" />
19
+ <path d="M15 12l4 0" />
20
+ <path d="M17 10l0 4" />
21
+ </svg>
@@ -0,0 +1,21 @@
1
+ <!--
2
+ tags: [delete, erase, omit, exclude, withdraw, take, subtract, extract, cut, eliminate]
3
+ category: Database
4
+ version: "2.24"
5
+ unicode: "faf4"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M6 4h4a1 1 0 0 1 1 1v14a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-14a1 1 0 0 1 1 -1" />
19
+ <path d="M16 10l4 4" />
20
+ <path d="M16 14l4 -4" />
21
+ </svg>
@@ -0,0 +1,20 @@
1
+ <!--
2
+ tags: [clipboard, clone, duplicate, copy, typography, writing, font, character, word]
3
+ category: Text
4
+ version: "1.0"
5
+ unicode: "ea7a"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M7 9.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667l0 -8.666" />
19
+ <path d="M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1" />
20
+ </svg>
@@ -0,0 +1,21 @@
1
+ <!--
2
+ tags: [save, arrow, download, navigation, flow, movement, route, path]
3
+ category: Arrows
4
+ version: "1.0"
5
+ unicode: "ea96"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2" />
19
+ <path d="M7 11l5 5l5 -5" />
20
+ <path d="M12 4l0 12" />
21
+ </svg>
@@ -0,0 +1,21 @@
1
+ <!--
2
+ tags: [pencil, change, update, edit, modify, creative, artistic, revise, adjust, visual]
3
+ category: Design
4
+ version: "1.0"
5
+ unicode: "ea98"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M7 7h-1a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2 -2v-1" />
19
+ <path d="M20.385 6.585a2.1 2.1 0 0 0 -2.97 -2.97l-8.415 8.385v3h3l8.385 -8.415" />
20
+ <path d="M16 5l3 3" />
21
+ </svg>
@@ -0,0 +1,21 @@
1
+ <!--
2
+ tags: [view, watch, eye, off, control, operation, disabled, inactive, function, interface, visibility, accessibility, a11y, hidden]
3
+ category: System
4
+ version: "1.22"
5
+ unicode: "ecf0"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M10.585 10.587a2 2 0 0 0 2.829 2.828" />
19
+ <path d="M16.681 16.673a8.717 8.717 0 0 1 -4.681 1.327c-3.6 0 -6.6 -2 -9 -6c1.272 -2.12 2.712 -3.678 4.32 -4.674m2.86 -1.146a9.055 9.055 0 0 1 1.82 -.18c3.6 0 6.6 2 9 6c-.666 1.11 -1.379 2.067 -2.138 2.87" />
20
+ <path d="M3 3l18 18" />
21
+ </svg>
@@ -0,0 +1,20 @@
1
+ <!--
2
+ tags: [view, watch, eye, control, operation, function, interface, management, visibility, accessibility, a11y, vision]
3
+ category: System
4
+ version: "1.0"
5
+ unicode: "ea9a"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0" />
19
+ <path d="M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6" />
20
+ </svg>
@@ -0,0 +1,22 @@
1
+ <!--
2
+ tags: [add, create, new, file, plus, document, data, content, record, more]
3
+ category: Document
4
+ version: "1.0"
5
+ unicode: "eaa0"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M14 3v4a1 1 0 0 0 1 1h4" />
19
+ <path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2" />
20
+ <path d="M12 11l0 6" />
21
+ <path d="M9 14l6 0" />
22
+ </svg>
@@ -0,0 +1,21 @@
1
+ <!--
2
+ tags: [add, create, new, directory, dir, folder, plus, collection, container, group]
3
+ category: Document
4
+ version: "1.0"
5
+ unicode: "eaab"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M12 19h-7a2 2 0 0 1 -2 -2v-11a2 2 0 0 1 2 -2h4l3 3h7a2 2 0 0 1 2 2v3.5" />
19
+ <path d="M16 19h6" />
20
+ <path d="M19 16v6" />
21
+ </svg>
@@ -0,0 +1,19 @@
1
+ <!--
2
+ tags: [cancel, "no", directory, dir, folder, collection, container, group, file, paper]
3
+ category: Document
4
+ version: "1.0"
5
+ unicode: "eaad"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M5 4h4l3 3h7a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-11a2 2 0 0 1 2 -2" />
19
+ </svg>
@@ -0,0 +1,22 @@
1
+ <!--
2
+ tags: [marker, important, highlighter, pen, highlight, typography, writing, font, character, word]
3
+ category: Text
4
+ version: "1.42"
5
+ unicode: "ef3f"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M3 19h4l10.5 -10.5a2.828 2.828 0 1 0 -4 -4l-10.5 10.5v4" />
19
+ <path d="M12.5 5.5l4 4" />
20
+ <path d="M4.5 13.5l4 4" />
21
+ <path d="M21 15v4h-8l4 -4l4 0" />
22
+ </svg>
@@ -0,0 +1,20 @@
1
+ <!--
2
+ tags: [time, undo, redo, past, log, record, clock, back, restore, activity]
3
+ category: Time
4
+ version: "1.0"
5
+ unicode: "e953"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M12 8l0 4l2 2" />
19
+ <path d="M3.05 11a9 9 0 1 1 .5 4m-.5 5v-5h5" />
20
+ </svg>
@@ -0,0 +1,21 @@
1
+ <!--
2
+ tags: [typography, font, typeface, emphasise, italic, writing, character, word]
3
+ category: Text
4
+ version: "1.3"
5
+ unicode: "eb93"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M11 5l6 0" />
19
+ <path d="M7 19l6 0" />
20
+ <path d="M14 5l-4 14" />
21
+ </svg>
@@ -0,0 +1,22 @@
1
+ <!--
2
+ tags: [layout, table, network, pattern, grid, creative, artistic, visual, aesthetic, style]
3
+ category: Design
4
+ version: "1.0"
5
+ unicode: "edba"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M4 5a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4" />
19
+ <path d="M14 5a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4" />
20
+ <path d="M4 15a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4" />
21
+ <path d="M14 15a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -4" />
22
+ </svg>
@@ -0,0 +1,22 @@
1
+ <!--
2
+ tags: [linear, statyscics, graph, math, function, calculation, equation, mathematics, numeric, formula]
3
+ category: Math
4
+ version: "1.39"
5
+ unicode: "eeb2"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M3 19a2 2 0 0 0 2 2c2 0 2 -4 3 -9s1 -9 3 -9a2 2 0 0 1 2 2" />
19
+ <path d="M5 12h6" />
20
+ <path d="M15 12l6 6" />
21
+ <path d="M15 18l6 -6" />
22
+ </svg>
@@ -0,0 +1,21 @@
1
+ <!--
2
+ tags: [comment, chat, reply, faq, message, contact, conversation, messaging, interaction, 2]
3
+ category: Communication
4
+ version: "1.0"
5
+ unicode: "eaec"
6
+ -->
7
+ <svg
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ width="24"
10
+ height="24"
11
+ viewBox="0 0 24 24"
12
+ fill="none"
13
+ stroke="currentColor"
14
+ stroke-width="2"
15
+ stroke-linecap="round"
16
+ stroke-linejoin="round"
17
+ >
18
+ <path d="M8 9h8" />
19
+ <path d="M8 13h6" />
20
+ <path d="M9 18h-3a3 3 0 0 1 -3 -3v-8a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-3l-3 3l-3 -3" />
21
+ </svg>