@@ -1,78 +1,136 @@
1 1 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% extends "base.html" %}
2 2 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% block title %}{{ project.name }} — Fossilrepo{% endblock %}
3 3 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
4 4 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% block content %}
5 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div class="mb-6">
6 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <a href="{% url 'projects:list' %}" class="text-sm text-brand-light hover:text-brand">← Back to Projects</a>
7 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
8 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
9 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div class="overflow-hidden rounded-lg bg-gray-800 shadow border border-gray-700">
10 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div class="px-6 py-5 sm:flex sm:items-center sm:justify-between">
11 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div>
12 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <h1 class="text-2xl font-bold text-gray-100">{{ project.name }}</h1>
13 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <p class="mt-1 text-sm text-gray-400">{{ project.slug }}</p>
14 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
15 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div class="mt-4 flex gap-3 sm:mt-0">
16 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% if perms.projects.change_project %}
17 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <a href="{% url 'projects:update' slug=project.slug %}"
18 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- class="rounded-md bg-gray-700 px-3 py-2 text-sm font-semibold text-gray-100 shadow-sm ring-1 ring-inset ring-gray-600 hover:bg-gray-600">
19 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- Edit
20 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </a>
21 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% endif %}
22 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% if perms.projects.delete_project %}
23 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <a href="{% url 'projects:delete' slug=project.slug %}"
24 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- class="rounded-md bg-red-600 px-3 py-2 text-sm font-semibold text-white shadow-sm hover:bg-red-500">
25 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- Delete
26 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </a>
27 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% endif %}
28 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
29 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
30 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
31 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div class="border-t border-gray-700 px-6 py-5">
32 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dl class="grid grid-cols-1 gap-x-4 gap-y-6 sm:grid-cols-2">
33 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div>
34 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dt class="text-sm font-medium text-gray-400">Visibility</dt>
35 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dd class="mt-1 text-sm">
36 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% if project.visibility == "public" %}
37 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <span class="inline-flex rounded-full bg-green-900/50 px-2 text-xs font-semibold leading-5 text-green-300">Public</span>
38 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% elif project.visibility == "internal" %}
39 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <span class="inline-flex rounded-full bg-yellow-900/50 px-2 text-xs font-semibold leading-5 text-yellow-300">Internal</span>
40 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% else %}
41 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <span class="inline-flex rounded-full bg-gray-700 px-2 text-xs font-semibold leading-5 text-gray-300">Private</span>
42 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% endif %}
43 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </dd>
44 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
45 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div>
46 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dt class="text-sm font-medium text-gray-400">GUID</dt>
47 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dd class="mt-1 text-sm text-gray-400 font-mono">{{ project.guid }}</dd>
48 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
49 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div class="sm:col-span-2">
50 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dt class="text-sm font-medium text-gray-400">Description</dt>
51 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dd class="mt-1 text-sm text-gray-100">{{ project.description|default:"No description." }}</dd>
52 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
53 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div>
54 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dt class="text-sm font-medium text-gray-400">Created</dt>
55 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dd class="mt-1 text-sm text-gray-400">{{ project.created_at|date:"N j, Y g:i a" }} by {{ project.created_by|default:"system" }}</dd>
56 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
57 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div>
58 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dt class="text-sm font-medium text-gray-400">Updated</dt>
59 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <dd class="mt-1 text-sm text-gray-400">{{ project.updated_at|date:"N j, Y g:i a" }}</dd>
60 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
61 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </dl>
62 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
63 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
64 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
65 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div class="mt-8">
66 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <div class="md:flex md:items-center md:justify-between mb-4">
67 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <h2 class="text-lg font-semibold text-gray-100">Teams</h2>
68 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% if perms.projects.change_project %}
69 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- <a href="{% url 'projects:team_add' slug=project.slug %}"
70 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- class="mt-4 md:mt-0 inline-flex items-center rounded-md bg-brand px-4 py-2 text-sm font-semibold text-white shadow-sm hover:bg-brand-hover">
71 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- Add Team
72 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </a>
73 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% endif %}
74 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- </div>
75 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
-
76 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
- {% include "projects/partials/project_team_table.html" %}
5 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex items-center justify-between mb-6">
6 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div>
7 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <h1 class="text-2xl font-bold text-gray-100">{{ project.name }}</h1>
8 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <p class="mt-1 text-sm text-gray-400">{{ project.description|default:"No description." }}</p>
9 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
10 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex gap-3">
11 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% if perms.projects.change_project %}
12 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <a href="{% url 'projects:update' slug=project.slug %}"
13 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ class="rounded-md bg-gray-700 px-3 py-2 text-sm font-semibold text-gray-100 shadow-sm ring-1 ring-inset ring-gray-600 hover:bg-gray-600">
14 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Edit
15 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </a>
16 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% endif %}
17 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
18 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
19 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
20 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% if repo_stats %}
21 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <!-- Fossil navigation tabs -->
22 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% with active_tab="overview" %}
23 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% include "fossil/_project_nav.html" %}
24 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% endwith %}
25 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% endif %}
26 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
27 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="grid grid-cols-1 gap-6 lg:grid-cols-3">
28 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <!-- Main content -->
29 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="lg:col-span-2 space-y-6">
30 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% if repo_stats and recent_commits %}
31 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <!-- Recent activity -->
32 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="rounded-lg bg-gray-800 border border-gray-700">
33 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="px-4 py-3 border-b border-gray-700">
34 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <h3 class="text-sm font-medium text-gray-300">Recent Activity</h3>
35 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
36 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="divide-y divide-gray-700">
37 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% for commit in recent_commits %}
38 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="px-4 py-3 flex items-start gap-3">
39 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex-shrink-0 mt-0.5">
40 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="w-2.5 h-2.5 rounded-full bg-brand"></div>
41 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
42 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex-1 min-w-0">
43 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <a href="{% url 'fossil:checkin_detail' slug=project.slug checkin_uuid=commit.uuid %}"
44 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ class="text-sm text-gray-200 hover:text-brand-light">{{ commit.comment|truncatechars:80 }}</a>
45 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="mt-0.5 flex items-center gap-3 text-xs text-gray-500">
46 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span>{{ commit.user }}</span>
47 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <a href="{% url 'fossil:checkin_detail' slug=project.slug checkin_uuid=commit.uuid %}"
48 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ class="font-mono text-brand-light hover:text-brand">{{ commit.uuid|truncatechars:10 }}</a>
49 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span>{{ commit.timestamp|timesince }} ago</span>
50 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
51 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
52 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
53 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% endfor %}
54 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
55 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="px-4 py-2 border-t border-gray-700">
56 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <a href="{% url 'fossil:timeline' slug=project.slug %}" class="text-xs text-brand-light hover:text-brand">View full timeline →</a>
57 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
58 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
59 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% endif %}
60 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
61 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <!-- Teams -->
62 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="rounded-lg bg-gray-800 border border-gray-700">
63 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="px-4 py-3 border-b border-gray-700 flex items-center justify-between">
64 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <h3 class="text-sm font-medium text-gray-300">Teams</h3>
65 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% if perms.projects.change_project %}
66 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <a href="{% url 'projects:team_add' slug=project.slug %}" class="text-xs text-brand-light hover:text-brand">+ Add Team</a>
67 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% endif %}
68 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
69 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% include "projects/partials/project_team_table.html" %}
70 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
71 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
72 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
73 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <!-- Sidebar -->
74 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="space-y-4">
75 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% if repo_stats %}
76 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <!-- Repository stats -->
77 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="rounded-lg bg-gray-800 border border-gray-700 p-4">
78 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <h3 class="text-sm font-medium text-gray-300 mb-3">Repository</h3>
79 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="space-y-2">
80 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex items-center justify-between">
81 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span class="flex items-center gap-2 text-sm text-gray-400">
82 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z" /></svg>
83 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Checkins
84 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </span>
85 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <a href="{% url 'fossil:timeline' slug=project.slug %}" class="text-sm font-medium text-gray-200 hover:text-brand-light">{{ repo_stats.checkin_count|default:"0" }}</a>
86 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
87 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex items-center justify-between">
88 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span class="flex items-center gap-2 text-sm text-gray-400">
89 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z" /></svg>
90 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Files
91 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </span>
92 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <a href="{% url 'fossil:code' slug=project.slug %}" class="text-sm font-medium text-gray-200 hover:text-brand-light">{{ repo_stats.file_count|default:"—" }}</a>
93 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
94 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex items-center justify-between">
95 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span class="flex items-center gap-2 text-sm text-gray-400">
96 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M16.5 6v.75m0 3v.75m0 3v.75m0 3V18m-9-5.25h5.25M7.5 15h3M3.375 5.25c-.621 0-1.125.504-1.125 1.125v3.026a2.999 2.999 0 010 5.198v3.026c0 .621.504 1.125 1.125 1.125h17.25c.621 0 1.125-.504 1.125-1.125v-3.026a2.999 2.999 0 010-5.198V6.375c0-.621-.504-1.125-1.125-1.125H3.375z" /></svg>
97 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Tickets
98 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </span>
99 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <a href="{% url 'fossil:tickets' slug=project.slug %}" class="text-sm font-medium text-gray-200 hover:text-brand-light">{{ repo_stats.ticket_count|default:"0" }}</a>
100 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
101 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex items-center justify-between">
102 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span class="flex items-center gap-2 text-sm text-gray-400">
103 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M12 6.042A8.967 8.967 0 006 3.75c-1.052 0-2.062.18-3 .512v14.25A8.987 8.987 0 016 18c2.305 0 4.408.867 6 2.292m0-14.25a8.966 8.966 0 016-2.292c1.052 0 2.062.18 3 .512v14.25A8.987 8.987 0 0018 18a8.967 8.967 0 00-6 2.292m0-14.25v14.25" /></svg>
104 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ Wiki Pages
105 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </span>
106 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <a href="{% url 'fossil:wiki' slug=project.slug %}" class="text-sm font-medium text-gray-200 hover:text-brand-light">{{ repo_stats.wiki_page_count|default:"0" }}</a>
107 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
108 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
109 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
110 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% endif %}
111 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+
112 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <!-- Project info -->
113 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="rounded-lg bg-gray-800 border border-gray-700 p-4">
114 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <h3 class="text-sm font-medium text-gray-300 mb-3">About</h3>
115 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <dl class="space-y-2 text-sm">
116 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex items-center justify-between">
117 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <dt class="text-gray-500">Visibility</dt>
118 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <dd>
119 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% if project.visibility == "public" %}
120 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span class="inline-flex rounded-full bg-green-900/50 px-2 text-xs font-semibold leading-5 text-green-300">Public</span>
121 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% elif project.visibility == "internal" %}
122 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span class="inline-flex rounded-full bg-yellow-900/50 px-2 text-xs font-semibold leading-5 text-yellow-300">Internal</span>
123 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% else %}
124 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <span class="inline-flex rounded-full bg-gray-700 px-2 text-xs font-semibold leading-5 text-gray-300">Private</span>
125 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ {% endif %}
126 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </dd>
127 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
128 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <div class="flex items-center justify-between">
129 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <dt class="text-gray-500">Created</dt>
130 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ <dd class="text-gray-300">{{ project.created_at|date:"Y-m-d" }}</dd>
131 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
132 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </dl>
133 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
134 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
+ </div>
77 135 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
</div>
78 136 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!
{% endblock %}
79 137 { copied = false; pop = false }, 1000)" :class="copied && 'copied'">Copy link Copied!