catime 0.4.1__py3-none-any.whl → 0.4.3__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.
catime/cli.py CHANGED
@@ -36,6 +36,8 @@ def print_cat(cat: dict, index: int | None = None):
36
36
  else:
37
37
  print(f"Cat #{num:>4} {cat['timestamp']} model: {cat.get('model', '?')}")
38
38
  print(f" URL: {cat['url']}")
39
+ if cat.get("prompt"):
40
+ print(f" Prompt: {cat['prompt']}")
39
41
 
40
42
 
41
43
  def filter_by_query(cats: list[dict], query: str) -> list[dict]:
catime/docs/app.js CHANGED
@@ -31,6 +31,10 @@
31
31
  const ddDays = document.getElementById("dd-days");
32
32
  const ddClear = document.getElementById("dd-clear");
33
33
 
34
+ const SVG_CALENDAR = '<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg>';
35
+ const SVG_CLIPBOARD = '<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2"/><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"/></svg>';
36
+ const SVG_CHECK = '<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>';
37
+
34
38
  let calYear = new Date().getFullYear();
35
39
  let calMonth = new Date().getMonth();
36
40
  let catDates = new Set();
@@ -97,7 +101,7 @@
97
101
  ddNext.addEventListener("click", () => { calMonth++; if (calMonth > 11) { calMonth = 0; calYear++; } renderCalendar(); });
98
102
  ddClear.addEventListener("click", () => {
99
103
  selectedDate = "";
100
- datePickerBtn.textContent = "\u{1f4c5} All Dates";
104
+ datePickerBtn.innerHTML = SVG_CALENDAR + " All Dates";
101
105
  datePickerBtn.classList.remove("active");
102
106
  dateDropdown.classList.add("hidden");
103
107
  applyFilter();
@@ -129,7 +133,7 @@
129
133
  const date = e.target.dataset.date;
130
134
  if (!date) return;
131
135
  selectedDate = date;
132
- datePickerBtn.textContent = "\u{1f4c5} " + date;
136
+ datePickerBtn.innerHTML = SVG_CALENDAR + " " + date;
133
137
  datePickerBtn.classList.add("active");
134
138
  dateDropdown.classList.add("hidden");
135
139
  applyFilter();
@@ -220,7 +224,7 @@
220
224
  if (cat.prompt) {
221
225
  lbPromptText.textContent = cat.prompt;
222
226
  lbPrompt.classList.remove("hidden");
223
- lbCopyBtn.textContent = "\u{1f4cb} Copy";
227
+ lbCopyBtn.innerHTML = SVG_CLIPBOARD + " Copy";
224
228
  } else {
225
229
  lbPrompt.classList.add("hidden");
226
230
  }
@@ -228,8 +232,8 @@
228
232
  }
229
233
  lbCopyBtn.addEventListener("click", () => {
230
234
  navigator.clipboard.writeText(lbPromptText.textContent).then(() => {
231
- lbCopyBtn.textContent = "\u2705 Copied!";
232
- setTimeout(() => { lbCopyBtn.textContent = "\u{1f4cb} Copy"; }, 1500);
235
+ lbCopyBtn.innerHTML = SVG_CHECK + " Copied!";
236
+ setTimeout(() => { lbCopyBtn.innerHTML = SVG_CLIPBOARD + " Copy"; }, 1500);
233
237
  });
234
238
  });
235
239
  lbClose.addEventListener("click", () => lightbox.classList.add("hidden"));
catime/docs/index.html CHANGED
@@ -19,7 +19,7 @@
19
19
  <option value="">All Models</option>
20
20
  </select>
21
21
  <div class="date-picker" id="date-picker">
22
- <button class="date-picker-btn" id="date-picker-btn">&#x1f4c5; All Dates</button>
22
+ <button class="date-picker-btn" id="date-picker-btn"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg> All Dates</button>
23
23
  <div class="date-dropdown hidden" id="date-dropdown">
24
24
  <div class="dd-header">
25
25
  <button class="dd-nav" id="dd-prev">&lsaquo;</button>
@@ -40,7 +40,7 @@
40
40
  </header>
41
41
 
42
42
  <nav id="timeline" aria-label="Timeline navigation">
43
- <button id="timeline-toggle" aria-label="Toggle timeline">&#x1f4c5;</button>
43
+ <button id="timeline-toggle" aria-label="Toggle timeline"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/></svg></button>
44
44
  <div id="timeline-list"></div>
45
45
  </nav>
46
46
 
@@ -53,7 +53,7 @@
53
53
  <div id="lb-info"></div>
54
54
  <div id="lb-prompt" class="hidden">
55
55
  <p id="lb-prompt-text"></p>
56
- <button id="lb-copy-btn" title="Copy prompt">📋 Copy</button>
56
+ <button id="lb-copy-btn" title="Copy prompt"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2"/><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"/></svg> Copy</button>
57
57
  </div>
58
58
  </div>
59
59
 
catime/docs/style.css CHANGED
@@ -71,6 +71,9 @@ body {
71
71
  box-shadow: 0 0 0 3px rgba(255,107,157,.2);
72
72
  }
73
73
 
74
+ /* Inline SVG icon alignment */
75
+ button svg, .date-picker-btn svg { vertical-align: -0.15em; }
76
+
74
77
  /* Custom date picker */
75
78
  .date-picker { position: relative; }
76
79
  .date-picker-btn {
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: catime
3
- Version: 0.4.1
3
+ Version: 0.4.3
4
4
  Summary: AI-generated hourly cat images - a new cat every hour!
5
5
  License-Expression: MIT
6
6
  License-File: LICENSE
@@ -0,0 +1,14 @@
1
+ catime/__init__.py,sha256=i8FYHW-V2UO0kNEghreL2-uQ70fLxsGQ0z5kGoNEbfk,70
2
+ catime/cli.py,sha256=pFuEWlUvQdXcqc1VeO8pqxil4hGzib5j4PfVa-5C4lA,5821
3
+ catime/docs/app.js,sha256=ao22Sn4zMugZ_7WmFliwS3aEk79UtGsDpfEsexpTfOM,9787
4
+ catime/docs/apple-touch-icon.png,sha256=ZSipNfat3Wz3Gu3S5hTGPfIpc5hT_eDFFgScStJLzwQ,38872
5
+ catime/docs/favicon-32.png,sha256=13byvPFWFl_u2RiFITAIVZJZk75Ljo7_N_xS6NUmX_g,2496
6
+ catime/docs/favicon.ico,sha256=2LLdNzyOh5dCYMkpcOVCMyvYyg9PVJPTmmZ2APubvpQ,8050
7
+ catime/docs/icon-192.png,sha256=hx10FySGPXgaBVWMDLR6VJd9UBOfzybOeo9fNZMZTdw,43281
8
+ catime/docs/index.html,sha256=FiwQMyf7UvO76ta8_AUtj9-iIrONik7Ai6xT4pIyeFY,3824
9
+ catime/docs/style.css,sha256=A0tHgL3P30obLIPnI3twVJLD2i8Yk4lsrQzU_2UxgU8,11606
10
+ catime-0.4.3.dist-info/METADATA,sha256=sicPdSMNhIraOEL7icHOktyuGs4HjJr1xg35l7VhZ28,1814
11
+ catime-0.4.3.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
12
+ catime-0.4.3.dist-info/entry_points.txt,sha256=oPgi6h026vMo9YyEOH3wuNtD3A28e-s1ChJs-KWWGXw,43
13
+ catime-0.4.3.dist-info/licenses/LICENSE,sha256=p_h5YRMaNCwMqGXX5KDrk49_NWGpzAJ2d6IhKa67B0E,1064
14
+ catime-0.4.3.dist-info/RECORD,,
@@ -1,14 +0,0 @@
1
- catime/__init__.py,sha256=i8FYHW-V2UO0kNEghreL2-uQ70fLxsGQ0z5kGoNEbfk,70
2
- catime/cli.py,sha256=9wvMNzCYkhvEJGOycuLCUf4MbvkpOAHw7Sfg0M1bN80,5743
3
- catime/docs/app.js,sha256=Hh-qKaBtmZfzL0auV0KXqVcd9dLnsW1DxbDXMWJM-lo,8919
4
- catime/docs/apple-touch-icon.png,sha256=ZSipNfat3Wz3Gu3S5hTGPfIpc5hT_eDFFgScStJLzwQ,38872
5
- catime/docs/favicon-32.png,sha256=13byvPFWFl_u2RiFITAIVZJZk75Ljo7_N_xS6NUmX_g,2496
6
- catime/docs/favicon.ico,sha256=2LLdNzyOh5dCYMkpcOVCMyvYyg9PVJPTmmZ2APubvpQ,8050
7
- catime/docs/icon-192.png,sha256=hx10FySGPXgaBVWMDLR6VJd9UBOfzybOeo9fNZMZTdw,43281
8
- catime/docs/index.html,sha256=6oQWL8IWHAbdwKP6jN-DHgeXAhcLFzjdc6CXwe6L1Jo,2956
9
- catime/docs/style.css,sha256=Kt6UX190gvOFxO41vwGWlYqyMisROJg74VxYkVrCVUc,11511
10
- catime-0.4.1.dist-info/METADATA,sha256=JST_pgRFlplZPV1vFIJOhvyD_JaQ0JBOIuV-OWjlhVA,1814
11
- catime-0.4.1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
12
- catime-0.4.1.dist-info/entry_points.txt,sha256=oPgi6h026vMo9YyEOH3wuNtD3A28e-s1ChJs-KWWGXw,43
13
- catime-0.4.1.dist-info/licenses/LICENSE,sha256=p_h5YRMaNCwMqGXX5KDrk49_NWGpzAJ2d6IhKa67B0E,1064
14
- catime-0.4.1.dist-info/RECORD,,
File without changes