solid-panes 5.0.0-0 → 5.0.0-1

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 (176) hide show
  1. package/dist/RDFXMLPane.d.ts.map +1 -1
  2. package/dist/RDFXMLPane2.cjs.js +1 -2
  3. package/dist/RDFXMLPane2.cjs.js.map +1 -1
  4. package/dist/RDFXMLPane2.esm.js +15 -42
  5. package/dist/RDFXMLPane2.esm.js.map +1 -1
  6. package/dist/_virtual/~icons/lucide/folder.cjs.js +2 -0
  7. package/dist/_virtual/~icons/lucide/folder.cjs.js.map +1 -0
  8. package/dist/_virtual/~icons/lucide/{trash-2.esm.js → folder.esm.js} +4 -4
  9. package/dist/_virtual/~icons/lucide/folder.esm.js.map +1 -0
  10. package/dist/_virtual/~icons/lucide/user-round-cog.cjs.js +2 -0
  11. package/dist/_virtual/~icons/lucide/user-round-cog.cjs.js.map +1 -0
  12. package/dist/_virtual/~icons/lucide/user-round-cog.esm.js +11 -0
  13. package/dist/_virtual/~icons/lucide/user-round-cog.esm.js.map +1 -0
  14. package/dist/components/editor-card/EditorCard.cjs.js +6 -0
  15. package/dist/components/editor-card/EditorCard.cjs.js.map +1 -0
  16. package/dist/components/editor-card/EditorCard.d.ts +16 -0
  17. package/dist/components/editor-card/EditorCard.d.ts.map +1 -0
  18. package/dist/components/editor-card/EditorCard.esm.js +268 -0
  19. package/dist/components/editor-card/EditorCard.esm.js.map +1 -0
  20. package/dist/components/editor-card/EditorCard.styles.cjs.js +2 -0
  21. package/dist/components/editor-card/EditorCard.styles.cjs.js.map +1 -0
  22. package/dist/components/editor-card/EditorCard.styles.esm.js +7 -0
  23. package/dist/components/editor-card/EditorCard.styles.esm.js.map +1 -0
  24. package/dist/components/editor-card/index.cjs.js +1 -0
  25. package/dist/components/editor-card/index.d.ts +4 -0
  26. package/dist/components/editor-card/index.d.ts.map +1 -0
  27. package/dist/components/editor-card/index.esm.js +1 -0
  28. package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js +2 -2
  29. package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js.map +1 -1
  30. package/dist/components/file-explorer-header/FileExplorerHeader.d.ts +1 -2
  31. package/dist/components/file-explorer-header/FileExplorerHeader.d.ts.map +1 -1
  32. package/dist/components/file-explorer-header/FileExplorerHeader.esm.js +16 -16
  33. package/dist/components/file-explorer-header/FileExplorerHeader.esm.js.map +1 -1
  34. package/dist/components/file-explorer-header/FileExplorerHeader.styles.cjs.js +1 -1
  35. package/dist/components/file-explorer-header/FileExplorerHeader.styles.cjs.js.map +1 -1
  36. package/dist/components/file-explorer-header/FileExplorerHeader.styles.esm.js +1 -1
  37. package/dist/components/file-explorer-header/FileExplorerHeader.styles.esm.js.map +1 -1
  38. package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js +24 -14
  39. package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js.map +1 -1
  40. package/dist/components/file-explorer-header/FileExplorerHeaderControls.d.ts +7 -1
  41. package/dist/components/file-explorer-header/FileExplorerHeaderControls.d.ts.map +1 -1
  42. package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js +94 -66
  43. package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js.map +1 -1
  44. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.cjs.js +1 -1
  45. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.cjs.js.map +1 -1
  46. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.esm.js +1 -1
  47. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.esm.js.map +1 -1
  48. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js +22 -7
  49. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js.map +1 -1
  50. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.d.ts +3 -2
  51. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.d.ts.map +1 -1
  52. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js +90 -65
  53. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js.map +1 -1
  54. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.cjs.js +1 -1
  55. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.cjs.js.map +1 -1
  56. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.esm.js +1 -1
  57. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.esm.js.map +1 -1
  58. package/dist/components/file-explorer-header/FileExplorerProvider.cjs.js +4 -4
  59. package/dist/components/file-explorer-header/FileExplorerProvider.cjs.js.map +1 -1
  60. package/dist/components/file-explorer-header/FileExplorerProvider.d.ts +1 -1
  61. package/dist/components/file-explorer-header/FileExplorerProvider.d.ts.map +1 -1
  62. package/dist/components/file-explorer-header/FileExplorerProvider.esm.js +17 -16
  63. package/dist/components/file-explorer-header/FileExplorerProvider.esm.js.map +1 -1
  64. package/dist/components/file-explorer-header/index.cjs.js +1 -0
  65. package/dist/components/file-explorer-header/index.d.ts +3 -0
  66. package/dist/components/file-explorer-header/index.d.ts.map +1 -0
  67. package/dist/components/file-explorer-header/index.esm.js +2 -0
  68. package/dist/components/file-explorer-header/types.d.ts +8 -0
  69. package/dist/components/file-explorer-header/types.d.ts.map +1 -1
  70. package/dist/components/header/Header.cjs.js +1 -1
  71. package/dist/components/header/Header.esm.js +4 -4
  72. package/dist/components/header/Header.styles.cjs.js +1 -1
  73. package/dist/components/header/Header.styles.cjs.js.map +1 -1
  74. package/dist/components/header/Header.styles.esm.js +1 -1
  75. package/dist/components/header/Header.styles.esm.js.map +1 -1
  76. package/dist/components/navbar/Navbar.cjs.js +2 -2
  77. package/dist/components/navbar/Navbar.esm.js +5 -5
  78. package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js +23 -9
  79. package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js.map +1 -1
  80. package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts +7 -4
  81. package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts.map +1 -1
  82. package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js +146 -84
  83. package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js.map +1 -1
  84. package/dist/components/resource-actions-menu/ResourceActionsMenu.styles.cjs.js +2 -0
  85. package/dist/components/resource-actions-menu/ResourceActionsMenu.styles.cjs.js.map +1 -0
  86. package/dist/components/resource-actions-menu/ResourceActionsMenu.styles.esm.js +7 -0
  87. package/dist/components/resource-actions-menu/ResourceActionsMenu.styles.esm.js.map +1 -0
  88. package/dist/dataContentPane2.cjs.js +1 -1
  89. package/dist/dataContentPane2.esm.js +1 -1
  90. package/dist/defaultPane2.cjs.js +1 -1
  91. package/dist/defaultPane2.cjs.js.map +1 -1
  92. package/dist/defaultPane2.esm.js +2 -2
  93. package/dist/defaultPane2.esm.js.map +1 -1
  94. package/dist/home/homePane.cjs.js +1 -1
  95. package/dist/home/homePane.cjs.js.map +1 -1
  96. package/dist/home/homePane.esm.js +1 -1
  97. package/dist/home/homePane.esm.js.map +1 -1
  98. package/dist/humanReadablePane.d.ts +1 -1
  99. package/dist/humanReadablePane.d.ts.map +1 -1
  100. package/dist/humanReadablePane2.cjs.js +1 -1
  101. package/dist/humanReadablePane2.cjs.js.map +1 -1
  102. package/dist/humanReadablePane2.esm.js +2 -2
  103. package/dist/humanReadablePane2.esm.js.map +1 -1
  104. package/dist/imagePane2.cjs.js +1 -1
  105. package/dist/imagePane2.cjs.js.map +1 -1
  106. package/dist/imagePane2.esm.js +1 -1
  107. package/dist/imagePane2.esm.js.map +1 -1
  108. package/dist/internal/internalPane2.cjs.js +1 -1
  109. package/dist/internal/internalPane2.cjs.js.map +1 -1
  110. package/dist/internal/internalPane2.esm.js +2 -2
  111. package/dist/internal/internalPane2.esm.js.map +1 -1
  112. package/dist/n3Pane.d.ts.map +1 -1
  113. package/dist/n3Pane2.cjs.js +1 -2
  114. package/dist/n3Pane2.cjs.js.map +1 -1
  115. package/dist/n3Pane2.esm.js +10 -34
  116. package/dist/n3Pane2.esm.js.map +1 -1
  117. package/dist/outline/manager2.cjs.js +1 -1
  118. package/dist/outline/manager2.cjs.js.map +1 -1
  119. package/dist/outline/manager2.esm.js +8 -11
  120. package/dist/outline/manager2.esm.js.map +1 -1
  121. package/dist/outline/queryByExample.cjs.js +1 -1
  122. package/dist/outline/queryByExample.cjs.js.map +1 -1
  123. package/dist/outline/queryByExample.esm.js +4 -4
  124. package/dist/outline/queryByExample.esm.js.map +1 -1
  125. package/dist/outline/userInput.cjs.js +1 -1
  126. package/dist/outline/userInput.cjs.js.map +1 -1
  127. package/dist/outline/userInput.esm.js +2 -2
  128. package/dist/outline/userInput.esm.js.map +1 -1
  129. package/dist/pad/padPane2.cjs.js +1 -1
  130. package/dist/pad/padPane2.cjs.js.map +1 -1
  131. package/dist/pad/padPane2.esm.js +3 -3
  132. package/dist/pad/padPane2.esm.js.map +1 -1
  133. package/dist/playlist/playlistPane.cjs.js +1 -1
  134. package/dist/playlist/playlistPane.cjs.js.map +1 -1
  135. package/dist/playlist/playlistPane.esm.js +1 -1
  136. package/dist/playlist/playlistPane.esm.js.map +1 -1
  137. package/dist/sharing/sharingPane.cjs.js +1 -1
  138. package/dist/sharing/sharingPane.cjs.js.map +1 -1
  139. package/dist/sharing/sharingPane.esm.js +1 -1
  140. package/dist/sharing/sharingPane.esm.js.map +1 -1
  141. package/dist/social/socialPane2.cjs.js +2 -2
  142. package/dist/social/socialPane2.cjs.js.map +1 -1
  143. package/dist/social/socialPane2.esm.js +3 -3
  144. package/dist/social/socialPane2.esm.js.map +1 -1
  145. package/dist/social/triage.cjs.js +1 -1
  146. package/dist/social/triage.cjs.js.map +1 -1
  147. package/dist/social/triage.esm.js +1 -1
  148. package/dist/social/triage.esm.js.map +1 -1
  149. package/dist/transaction/period.cjs.js +1 -1
  150. package/dist/transaction/period.cjs.js.map +1 -1
  151. package/dist/transaction/period.esm.js +1 -1
  152. package/dist/transaction/period.esm.js.map +1 -1
  153. package/dist/utils/podUtils.cjs.js +1 -1
  154. package/dist/utils/podUtils.cjs.js.map +1 -1
  155. package/dist/utils/podUtils.d.ts +6 -1
  156. package/dist/utils/podUtils.d.ts.map +1 -1
  157. package/dist/utils/podUtils.esm.js +93 -22
  158. package/dist/utils/podUtils.esm.js.map +1 -1
  159. package/dist/versionInfo.cjs.js +1 -1
  160. package/dist/versionInfo.cjs.js.map +1 -1
  161. package/dist/versionInfo.esm.js +3 -3
  162. package/dist/versionInfo.esm.js.map +1 -1
  163. package/package.json +5 -5
  164. package/dist/_virtual/~icons/lucide/trash-2.cjs.js +0 -2
  165. package/dist/_virtual/~icons/lucide/trash-2.cjs.js.map +0 -1
  166. package/dist/_virtual/~icons/lucide/trash-2.esm.js.map +0 -1
  167. package/dist/components/file-explorer-header/helper.cjs.js +0 -2
  168. package/dist/components/file-explorer-header/helper.cjs.js.map +0 -1
  169. package/dist/components/file-explorer-header/helper.d.ts +0 -15
  170. package/dist/components/file-explorer-header/helper.d.ts.map +0 -1
  171. package/dist/components/file-explorer-header/helper.esm.js +0 -64
  172. package/dist/components/file-explorer-header/helper.esm.js.map +0 -1
  173. package/dist/components/resource-actions-menu/DeleteResourceDialog.cjs.js +0 -16
  174. package/dist/components/resource-actions-menu/DeleteResourceDialog.cjs.js.map +0 -1
  175. package/dist/components/resource-actions-menu/DeleteResourceDialog.esm.js +0 -215
  176. package/dist/components/resource-actions-menu/DeleteResourceDialog.esm.js.map +0 -1
@@ -1,39 +1,40 @@
1
- import "../../_virtual/~icons/lucide/share-2.esm.js";
1
+ import { isContainerSubject as e } from "../../utils/podUtils.esm.js";
2
2
  import "../../_virtual/~icons/lucide/pencil.esm.js";
3
- import e from "./FileExplorerHeaderControls.styles.esm.js";
3
+ import "../../_virtual/~icons/lucide/user-round-cog.esm.js";
4
+ import t from "./FileExplorerHeaderControls.styles.esm.js";
4
5
  import "../resource-actions-menu/ResourceActionsMenu.esm.js";
5
- import { WebComponent as t, fileExplorerContext as n } from "solid-ui";
6
- import { html as r, nothing as i } from "lit";
7
- import { consume as a } from "@lit/context";
8
- import { customElement as o, property as s } from "lit/decorators.js";
6
+ import { WebComponent as n, fileExplorerContext as r } from "solid-ui";
7
+ import { customElement as i, property as a, state as o } from "lit/decorators.js";
8
+ import { consume as s } from "@lit/context";
9
+ import { html as c, nothing as l } from "lit";
9
10
  import "solid-ui/components/button";
10
11
  //#region src/components/file-explorer-header/FileExplorerHeaderControls.ts
11
- var c, l, u, d, f, p, m, h, g, _, v, y, b, x, S, C;
12
- function w(e, t, n) {
13
- T(e, t), t.set(e, n);
12
+ var u, d, f, p, m, h, g, _, v, y, b, x, S, C, w, T, E, D, O;
13
+ function k(e, t, n) {
14
+ A(e, t), t.set(e, n);
14
15
  }
15
- function T(e, t) {
16
+ function A(e, t) {
16
17
  if (t.has(e)) throw TypeError("Cannot initialize the same private elements twice on an object");
17
18
  }
18
- function E(e, t, n) {
19
- return e.set(O(e, t), n), n;
19
+ function j(e, t, n) {
20
+ return e.set(N(e, t), n), n;
20
21
  }
21
- function D(e, t) {
22
- return e.get(O(e, t));
22
+ function M(e, t) {
23
+ return e.get(N(e, t));
23
24
  }
24
- function O(e, t, n) {
25
+ function N(e, t, n) {
25
26
  if (typeof e == "function" ? e === t : e.has(t)) return arguments.length < 3 ? t : n;
26
27
  throw TypeError("Private element is not present on this object");
27
28
  }
28
- function k(e, t, n) {
29
- return (t = j(t)) in e ? Object.defineProperty(e, t, {
29
+ function P(e, t, n) {
30
+ return (t = I(t)) in e ? Object.defineProperty(e, t, {
30
31
  value: n,
31
32
  enumerable: !0,
32
33
  configurable: !0,
33
34
  writable: !0
34
35
  }) : e[t] = n, e;
35
36
  }
36
- function A(e, t, n, r, i, a) {
37
+ function F(e, t, n, r, i, a) {
37
38
  function o(e, t, n) {
38
39
  return function(r, i) {
39
40
  return n && n(r), e[t].call(r, i);
@@ -56,13 +57,13 @@ function A(e, t, n, r, i, a) {
56
57
  n || Array.isArray(_) || (_ = [_]);
57
58
  var b = {}, x = [], S = i === 3 ? "get" : i === 4 || p ? "set" : "value";
58
59
  d ? (f || p ? b = {
59
- get: N(function() {
60
+ get: R(function() {
60
61
  return v(this);
61
62
  }, r, "get"),
62
63
  set: function(e) {
63
64
  t[4](this, e);
64
65
  }
65
- } : b[S] = v, f || N(b[S], r, i === 2 ? "" : S)) : f || (b = Object.getOwnPropertyDescriptor(e, r));
66
+ } : b[S] = v, f || R(b[S], r, i === 2 ? "" : S)) : f || (b = Object.getOwnPropertyDescriptor(e, r));
66
67
  }
67
68
  for (var C = e, w = _.length - 1; w >= 0; w -= n ? 2 : 1) {
68
69
  var T = _[w], E = n ? _[w - 1] : void 0, D = {}, O = {
@@ -122,7 +123,7 @@ function A(e, t, n, r, i, a) {
122
123
  if (arguments.length >= 6) var d = a[Symbol.metadata || Symbol.for("Symbol.metadata")];
123
124
  var f = Object.create(d ?? null), p = function(e, t, n, r) {
124
125
  var i, a, o = [], c = function(t) {
125
- return P(t) === e;
126
+ return z(t) === e;
126
127
  }, u = /* @__PURE__ */ new Map();
127
128
  function d(e) {
128
129
  e && o.push(s.bind(null, e));
@@ -136,7 +137,7 @@ function A(e, t, n, r, i, a) {
136
137
  if (!0 === x || x === 3 && m !== 4 || x === 4 && m !== 3) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h);
137
138
  u.set(b, !(m > 2) || m);
138
139
  }
139
- l(v ? e : e.prototype, p, _, g ? "#" + h : j(h), m, r, v ? a ||= [] : i ||= [], o, v, g, y, m === 1, v && g ? c : n);
140
+ l(v ? e : e.prototype, p, _, g ? "#" + h : I(h), m, r, v ? a ||= [] : i ||= [], o, v, g, y, m === 1, v && g ? c : n);
140
141
  }
141
142
  }
142
143
  return d(i), d(a), o;
@@ -149,11 +150,11 @@ function A(e, t, n, r, i, a) {
149
150
  }
150
151
  };
151
152
  }
152
- function j(e) {
153
- var t = M(e, "string");
153
+ function I(e) {
154
+ var t = L(e, "string");
154
155
  return typeof t == "symbol" ? t : t + "";
155
156
  }
156
- function M(e, t) {
157
+ function L(e, t) {
157
158
  if (typeof e != "object" || !e) return e;
158
159
  var n = e[Symbol.toPrimitive];
159
160
  if (n !== void 0) {
@@ -163,7 +164,7 @@ function M(e, t) {
163
164
  }
164
165
  return (t === "string" ? String : Number)(e);
165
166
  }
166
- function N(e, t, n) {
167
+ function R(e, t, n) {
167
168
  typeof t == "symbol" && (t = (t = t.description) ? "[" + t + "]" : "");
168
169
  try {
169
170
  Object.defineProperty(e, "name", {
@@ -173,94 +174,121 @@ function N(e, t, n) {
173
174
  } catch {}
174
175
  return e;
175
176
  }
176
- function P(e) {
177
+ function z(e) {
177
178
  if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (e === null ? "null" : typeof e));
178
179
  return e;
179
180
  }
180
- function F(e) {
181
+ function B(e) {
181
182
  return e;
182
183
  }
183
- h = [o("file-explorer-header-controls")];
184
- var I;
185
- new (S = (u = /*#__PURE__*/ new WeakMap(), d = /*#__PURE__*/ new WeakMap(), f = /*#__PURE__*/ new WeakMap(), C = (g = a({
186
- context: n,
184
+ v = [i("file-explorer-header-controls")];
185
+ var V;
186
+ new (D = (f = /*#__PURE__*/ new WeakMap(), p = /*#__PURE__*/ new WeakMap(), m = /*#__PURE__*/ new WeakMap(), h = /*#__PURE__*/ new WeakMap(), O = (y = s({
187
+ context: r,
187
188
  subscribe: !0
188
- }), v = s({ attribute: !1 }), b = s({ type: Boolean }), "fileExplorerContext"), l = class extends t {
189
+ }), x = a({ attribute: !1 }), C = a({ type: Boolean }), T = o(), "mobileMediaQuery"), d = class extends n {
189
190
  constructor(...e) {
190
- super(...e), w(this, u, (p(this), _(this, void 0))), w(this, d, y(this, [])), w(this, f, x(this, !1));
191
+ super(...e), P(this, O, void g(this)), P(this, "mobileQuery", "(max-width: 600px)"), P(this, "handleMobileMediaChange", (e) => {
192
+ this.isMobile = e.matches;
193
+ }), k(this, f, b(this, void 0)), k(this, p, S(this, [])), k(this, m, w(this, !1)), k(this, h, E(this, typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(max-width: 600px)").matches));
191
194
  }
192
- get [C]() {
193
- return D(u, this);
195
+ get fileExplorerContext() {
196
+ return M(f, this);
194
197
  }
195
198
  set fileExplorerContext(e) {
196
- E(u, this, e);
199
+ j(f, this, e);
197
200
  }
198
201
  get menuItems() {
199
- return D(d, this);
202
+ return M(p, this);
200
203
  }
201
204
  set menuItems(e) {
202
- E(d, this, e);
205
+ j(p, this, e);
203
206
  }
204
207
  get canEdit() {
205
- return D(f, this);
208
+ return M(m, this);
206
209
  }
207
210
  set canEdit(e) {
208
- E(f, this, e);
211
+ j(m, this, e);
209
212
  }
210
- handleEditingClick() {
211
- this.fileExplorerContext.edit?.onEdit?.();
213
+ get isMobile() {
214
+ return M(h, this);
215
+ }
216
+ set isMobile(e) {
217
+ j(h, this, e);
218
+ }
219
+ connectedCallback() {
220
+ super.connectedCallback(), !(typeof window > "u" || typeof window.matchMedia != "function") && (this.mobileMediaQuery = window.matchMedia(this.mobileQuery), this.isMobile = this.mobileMediaQuery.matches, this.mobileMediaQuery.addEventListener("change", this.handleMobileMediaChange));
221
+ }
222
+ disconnectedCallback() {
223
+ this.mobileMediaQuery?.removeEventListener("change", this.handleMobileMediaChange), this.mobileMediaQuery = void 0, super.disconnectedCallback();
212
224
  }
213
225
  getEditTooltip() {
214
- return this.fileExplorerContext.paneSupportsEditing ? this.canEdit ? "Edit" : "No Access" : "Not Supported";
226
+ return this.canEdit ? "Edit" : "No Access";
215
227
  }
216
228
  renderDirtyIndicator() {
217
- return this.fileExplorerContext.edit?.isDirty ? r`<span class="dirtyIndicator" title="This file has unsaved changes">Unsaved</span>` : i;
229
+ return this.fileExplorerContext.edit?.isDirty ? c`<span class="dirtyIndicator" title="This file has unsaved changes">Unsaved</span>` : l;
218
230
  }
219
231
  render() {
220
- return r`
232
+ let t = e(this.fileExplorerContext.store, this.fileExplorerContext.subjectUri), n = this.fileExplorerContext.paneSupportsEditing;
233
+ return c`
221
234
  <div>
222
235
  ${this.renderDirtyIndicator()}
223
- <solid-ui-button variant="ghost" title="Share" @click=${this.fileExplorerContext.handleSharingClick}>
224
- <icon-lucide-share-2 slot="icon"></icon-lucide-share-2>
225
- </solid-ui-button>
226
- <solid-ui-button
227
- variant="ghost"
228
- title=${this.getEditTooltip()}
229
- ?disabled=${!this.fileExplorerContext.paneSupportsEditing || !this.canEdit}
230
- @click=${this.handleEditingClick}
231
- >
232
- <icon-lucide-pencil slot="icon"></icon-lucide-pencil>
233
- </solid-ui-button>
236
+ ${!t && !this.isMobile ? c`
237
+ <solid-ui-button class="file-explorer-header-action-button" variant="ghost" title="Manage Access" @click=${this.fileExplorerContext.handleAccessClick}>
238
+ <icon-lucide-user-round-cog slot="icon"></icon-lucide-user-round-cog>
239
+ </solid-ui-button>
240
+ ${n ? c`
241
+ <solid-ui-button
242
+ class="file-explorer-header-action-button"
243
+ variant="ghost"
244
+ title=${this.getEditTooltip()}
245
+ ?disabled=${!this.canEdit}
246
+ @click=${this.fileExplorerContext.edit?.onEdit}
247
+ >
248
+ <icon-lucide-pencil slot="icon"></icon-lucide-pencil>
249
+ </solid-ui-button>
250
+ ` : l}
251
+ ` : l}
234
252
  <resource-actions-menu
235
- .store=${this.fileExplorerContext?.store}
253
+ .store=${this.fileExplorerContext.store}
254
+ .handleAccessClick=${this.fileExplorerContext.handleAccessClick}
255
+ .handleEditingClick=${this.fileExplorerContext.edit?.onEdit}
256
+ .paneSupportsEditing=${this.fileExplorerContext.paneSupportsEditing}
257
+ .canEdit=${this.canEdit}
236
258
  .subjectUri=${this.fileExplorerContext?.subjectUri}
237
259
  .menuItems=${this.menuItems}
260
+ .isMobile=${this.isMobile}
238
261
  ></resource-actions-menu>
239
262
  </div>
240
263
  `;
241
264
  }
242
- }, {e: [_, y, x, p], c: [I, m]} = A(l, [
265
+ }, {e: [b, S, w, E, g], c: [V, _]} = F(d, [
243
266
  [
244
- g,
267
+ y,
245
268
  1,
246
269
  "fileExplorerContext"
247
270
  ],
248
271
  [
249
- v,
272
+ x,
250
273
  1,
251
274
  "menuItems"
252
275
  ],
253
276
  [
254
- b,
277
+ C,
255
278
  1,
256
279
  "canEdit"
280
+ ],
281
+ [
282
+ T,
283
+ 1,
284
+ "isMobile"
257
285
  ]
258
- ], h, 0, void 0, t), l), c = class extends F {
286
+ ], v, 0, void 0, n), d), u = class extends B {
259
287
  constructor() {
260
- super(I), k(this, "styles", e), m();
288
+ super(V), P(this, "styles", t), _();
261
289
  }
262
- }, k(c, S, void 0), c)();
290
+ }, P(u, D, void 0), u)();
263
291
  //#endregion
264
- export { I as default };
292
+ export { V as default };
265
293
 
266
294
  //# sourceMappingURL=FileExplorerHeaderControls.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileExplorerHeaderControls.esm.js","names":["WebComponent","customElement","property","consume","html","nothing","styles","fileExplorerContext","_classDecs","_FileExplorerHeaderCo","_FileExplorerHeaderCo2","_A","WeakMap","_B","_C","_ref","_fileExplorerContextDecs","context","subscribe","_menuItemsDecs","attribute","_canEditDecs","type","Boolean","_FileExplorerHeaderControls","FileExplorerHeaderControls","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_fileExplorerContext","undefined","_init_menuItems","_init_canEdit","_classPrivateFieldGet","v","_classPrivateFieldSet","menuItems","canEdit","handleEditingClick","edit","onEdit","getEditTooltip","paneSupportsEditing","renderDirtyIndicator","isDirty","render","handleSharingClick","store","subjectUri","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default"],"sources":["../../../src/components/file-explorer-header/FileExplorerHeaderControls.ts"],"sourcesContent":["import { WebComponent } from 'solid-ui'\nimport { customElement, property } from 'lit/decorators.js'\nimport { consume } from '@lit/context'\nimport { html, nothing } from 'lit'\nimport 'solid-ui/components/button'\nimport '~icons/lucide/share-2'\nimport '~icons/lucide/pencil'\nimport styles from './FileExplorerHeaderControls.styles.css'\nimport '../resource-actions-menu/ResourceActionsMenu'\nimport { fileExplorerContext, type FileExplorerContext } from 'solid-ui'\n\n@customElement('file-explorer-header-controls')\nexport default class FileExplorerHeaderControls extends WebComponent {\n static styles = styles\n\n @consume({ context: fileExplorerContext, subscribe: true })\n accessor fileExplorerContext: FileExplorerContext = undefined as unknown as FileExplorerContext\n\n @property({ attribute: false })\n accessor menuItems: Array<{ label: string, action: (event: Event) => void }> = []\n\n @property({ type: Boolean })\n accessor canEdit: boolean = false\n\n // TODO: Add broken then use this function to set tooltip and disable edit button\n /* private setEditable() {\n const sourcePaneState = this.sourceContext?.sourcePaneState\n const { canEdit } = this.sourceContext?.headerMetadata ?? { canEdit: false }\n const subject = this.sourceContext?.subject\n if (!sourcePaneState || !canEdit || sourcePaneState.broken || (subject && subject.endsWith('/'))) return\n\n this.sourceContext?.setEditing?.()\n } */\n\n private handleEditingClick () {\n this.fileExplorerContext.edit?.onEdit?.()\n }\n\n private getEditTooltip () {\n if (!this.fileExplorerContext.paneSupportsEditing) return 'Not Supported'\n if (!this.canEdit) return 'No Access'\n return 'Edit'\n }\n\n private renderDirtyIndicator () {\n if (!this.fileExplorerContext.edit?.isDirty) return nothing\n\n return html`<span class=\"dirtyIndicator\" title=\"This file has unsaved changes\">Unsaved</span>`\n }\n\n render () {\n return html`\n <div>\n ${this.renderDirtyIndicator()}\n <solid-ui-button variant=\"ghost\" title=\"Share\" @click=${this.fileExplorerContext.handleSharingClick}>\n <icon-lucide-share-2 slot=\"icon\"></icon-lucide-share-2>\n </solid-ui-button>\n <solid-ui-button\n variant=\"ghost\"\n title=${this.getEditTooltip()}\n ?disabled=${!this.fileExplorerContext.paneSupportsEditing || !this.canEdit}\n @click=${this.handleEditingClick}\n >\n <icon-lucide-pencil slot=\"icon\"></icon-lucide-pencil>\n </solid-ui-button>\n <resource-actions-menu\n .store=${this.fileExplorerContext?.store}\n .subjectUri=${this.fileExplorerContext?.subjectUri}\n .menuItems=${this.menuItems}\n ></resource-actions-menu>\n </div>\n `\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASwEQ,IAAA,CAEvEP,EAAc,+BAA+B,CAAC;AAAA,IAAAQ;AAAA,KAAAC,KAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA,GAAAE,kBAAA,IAAAF,QAAA,GAAAG,KAAAC,IAI5Cb,EAAQ;CAAEc,SAASV;CAAqBW,WAAW;AAAK,CAAC,GAACC,IAG1DjB,EAAS,EAAEkB,WAAW,GAAM,CAAC,GAACC,IAG9BnB,EAAS,EAAEoB,MAAMC,QAAQ,CAAC,GAAC,wBAAAC,IAV9B,cACwDxB,EAAa;CAAA0B,YAAA,GAAAC,GAAA;EAOcC,AAPd,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAjB,IAAAkB,EAAA,IAAA,GAAAC,EAAA,MAIfC,KAAAA,CAAS,EAAA,GAAAH,EAAA,MAAAf,GAAAmB,EAAA,MAGkB,CAAA,CAAE,CAAA,GAAAJ,EAAA,MAAAd,GAAAmB,EAAA,MAGrD,EAAK,CAAA;CAAA;CAAA,KAAAlB,KAAA;EAAA,OAAAmB,EAAAvB,GAAA,IAAA;CAAA;CAAA,IANxBJ,oBAAmB4B,GAAA;EAAAC,EAAAzB,GAAA,MAAAwB,CAAA;CAAA;CAAA,IAGnBE,YAAS;EAAA,OAAAH,EAAArB,GAAA,IAAA;CAAA;CAAA,IAATwB,UAASF,GAAA;EAAAC,EAAAvB,GAAA,MAAAsB,CAAA;CAAA;CAMlB,IAHSG,UAAO;EAAA,OAAAJ,EAAApB,GAAA,IAAA;CAAA;CAAA,IAAPwB,QAAOH,GAAA;EAAAC,EAAAtB,GAAA,MAAAqB,CAAA;CAAA;CAYRI,qBAAsB;EAC5B,KAAKhC,oBAAoBiC,MAAMC,SAAS;CAC1C;CAEQC,iBAAkB;EAGxB,OAFK,KAAKnC,oBAAoBoC,sBACzB,KAAKL,UACH,SADmB,cADgC;CAG5D;CAEQM,uBAAwB;EAG9B,OAFK,KAAKrC,oBAAoBiC,MAAMK,UAE7BzC,CAAI,sFAFyCC;CAGtD;CAEAyC,SAAU;EACR,OAAO1C,CAAI;;UAEL,KAAKwC,qBAAqB,EAAC;gEAC2B,KAAKrC,oBAAoBwC,mBAAkB;;;;;kBAKzF,KAAKL,eAAe,EAAC;sBACjB,CAAC,KAAKnC,oBAAoBoC,uBAAuB,CAAC,KAAKL,QAAO;mBACjE,KAAKC,mBAAkB;;;;;mBAKvB,KAAKhC,qBAAqByC,MAAK;wBAC1B,KAAKzC,qBAAqB0C,WAAU;uBACrC,KAAKZ,UAAS;;;;CAInC;AACF,GAAC,CAAAa,GAAA,CAAApB,GAAAE,GAAAC,GAAAJ,IAAAsB,GAAA,CAAA1C,GAAA2C,MAAAC,EAAA7B,GAAA;CAAA;EAAAR;EAAA;EAAA;CAAA;CAAA;EAAAG;EAAA;EAAA;CAAA;CAAA;EAAAE;EAAA;EAAA;CAAA;AAAA,GAAAb,GAAA,GAAA,KAAA,GA7DuDR,CAAY,GAAAwB,IAAA8B,IAAA,cAAAC,EAAA;CAAA7B,cAAA;EAAA,MAAAjB,CAAA,GAAA+C,EAAA,MAAA,UAClDlD,CAAM,GAAA8C,EAAA;CAAA;AAAA,GAAAI,EAAAF,GAAA5C,GAAA,KAAA,CAAA,GAAA4C,GAAA"}
1
+ {"version":3,"file":"FileExplorerHeaderControls.esm.js","names":["WebComponent","customElement","property","state","consume","html","nothing","styles","fileExplorerContext","isContainerSubject","_classDecs","_FileExplorerHeaderCo","_FileExplorerHeaderCo2","_A","WeakMap","_B","_C","_D","_ref","_fileExplorerContextDecs","context","subscribe","_menuItemsDecs","attribute","_canEditDecs","type","Boolean","_isMobileDecs","_FileExplorerHeaderControls","FileExplorerHeaderControls","constructor","args","_defineProperty","_initProto","event","isMobile","matches","_classPrivateFieldInitSpec","_init_fileExplorerContext","undefined","_init_menuItems","_init_canEdit","_init_isMobile","window","matchMedia","_classPrivateFieldGet","v","_classPrivateFieldSet","menuItems","canEdit","connectedCallback","mobileMediaQuery","mobileQuery","addEventListener","handleMobileMediaChange","disconnectedCallback","removeEventListener","getEditTooltip","renderDirtyIndicator","edit","isDirty","render","isContainerResource","store","subjectUri","supportsEditing","paneSupportsEditing","handleAccessClick","onEdit","e","c","_initClass","_applyDecs","_Class","_identity","default"],"sources":["../../../src/components/file-explorer-header/FileExplorerHeaderControls.ts"],"sourcesContent":["import { WebComponent } from 'solid-ui'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { consume } from '@lit/context'\nimport { html, nothing } from 'lit'\nimport 'solid-ui/components/button'\nimport '~icons/lucide/user-round-cog'\nimport '~icons/lucide/pencil'\nimport styles from './FileExplorerHeaderControls.styles.css'\nimport '../resource-actions-menu/ResourceActionsMenu'\nimport { fileExplorerContext, type FileExplorerContext } from 'solid-ui'\nimport { isContainerSubject } from '../../utils/podUtils'\n\n@customElement('file-explorer-header-controls')\nexport default class FileExplorerHeaderControls extends WebComponent {\n static styles = styles\n\n private mobileMediaQuery: MediaQueryList | undefined\n private readonly mobileQuery = '(max-width: 600px)'\n private readonly handleMobileMediaChange = (event: MediaQueryListEvent) => {\n this.isMobile = event.matches\n }\n\n @consume({ context: fileExplorerContext, subscribe: true })\n accessor fileExplorerContext: FileExplorerContext = undefined as unknown as FileExplorerContext\n\n @property({ attribute: false })\n accessor menuItems: Array<{ label: string, action: (event: Event) => void, icon?: HTMLElement }> = []\n\n @property({ type: Boolean })\n accessor canEdit: boolean = false\n\n @state()\n accessor isMobile = typeof window !== 'undefined' && typeof window.matchMedia === 'function'\n ? window.matchMedia('(max-width: 600px)').matches\n : false\n\n connectedCallback () {\n super.connectedCallback()\n\n if (typeof window === 'undefined' || typeof window.matchMedia !== 'function') {\n return\n }\n\n this.mobileMediaQuery = window.matchMedia(this.mobileQuery)\n this.isMobile = this.mobileMediaQuery.matches\n this.mobileMediaQuery.addEventListener('change', this.handleMobileMediaChange)\n }\n\n disconnectedCallback () {\n this.mobileMediaQuery?.removeEventListener('change', this.handleMobileMediaChange)\n this.mobileMediaQuery = undefined\n super.disconnectedCallback()\n }\n\n // TODO: Add broken then use this function to set tooltip and disable edit button\n /* private setEditable() {\n const sourcePaneState = this.sourceContext?.sourcePaneState\n const { canEdit } = this.sourceContext?.headerMetadata ?? { canEdit: false }\n const subject = this.sourceContext?.subject\n if (!sourcePaneState || !canEdit || sourcePaneState.broken || (subject && subject.endsWith('/'))) return\n\n this.sourceContext?.setEditing?.()\n } */\n\n private getEditTooltip () {\n if (!this.canEdit) return 'No Access'\n return 'Edit'\n }\n\n private renderDirtyIndicator () {\n if (!this.fileExplorerContext.edit?.isDirty) return nothing\n\n return html`<span class=\"dirtyIndicator\" title=\"This file has unsaved changes\">Unsaved</span>`\n }\n\n render () {\n const isContainerResource = isContainerSubject(this.fileExplorerContext.store, this.fileExplorerContext.subjectUri)\n const supportsEditing = this.fileExplorerContext.paneSupportsEditing\n\n return html`\n <div>\n ${this.renderDirtyIndicator()}\n ${!isContainerResource && !this.isMobile\n ? html`\n <solid-ui-button class=\"file-explorer-header-action-button\" variant=\"ghost\" title=\"Manage Access\" @click=${this.fileExplorerContext.handleAccessClick}>\n <icon-lucide-user-round-cog slot=\"icon\"></icon-lucide-user-round-cog>\n </solid-ui-button>\n ${supportsEditing\n ? html`\n <solid-ui-button\n class=\"file-explorer-header-action-button\"\n variant=\"ghost\"\n title=${this.getEditTooltip()}\n ?disabled=${!this.canEdit}\n @click=${this.fileExplorerContext.edit?.onEdit}\n >\n <icon-lucide-pencil slot=\"icon\"></icon-lucide-pencil>\n </solid-ui-button>\n `\n : nothing}\n `\n : nothing}\n <resource-actions-menu\n .store=${this.fileExplorerContext.store}\n .handleAccessClick=${this.fileExplorerContext.handleAccessClick}\n .handleEditingClick=${this.fileExplorerContext.edit?.onEdit}\n .paneSupportsEditing=${this.fileExplorerContext.paneSupportsEditing}\n .canEdit=${this.canEdit}\n .subjectUri=${this.fileExplorerContext?.subjectUri}\n .menuItems=${this.menuItems}\n .isMobile=${this.isMobile}\n ></resource-actions-menu>\n </div>\n `\n }\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- var e=require("lit").css`:host{flex:0 auto;min-width:0}:host div{text-align:right;flex:none;justify-content:flex-end;align-items:center;gap:6px;display:flex}:host div>*{flex:0 auto}:host .dirtyIndicator{color:#92400e;white-space:nowrap;background:#fffbeb;border:1px solid #f59e0b;border-radius:999px;align-items:center;padding:4px 8px;font-size:.72rem;font-weight:600;line-height:1;display:inline-flex}@media (width<=900px){:host div{padding-right:3px}}@media (width<=600px){:host div{justify-content:flex-start;gap:5px}}`;exports.default=e;
1
+ var e=require("lit").css`:host{flex:0 auto;min-width:0}:host div{text-align:right;flex:none;justify-content:flex-end;align-items:center;gap:6px;display:flex}:host div>*{flex:0 auto}:host .file-explorer-header-action-button{width:var(--solid-ui-clickable-area,42px);height:var(--solid-ui-clickable-area,42px);padding:0}:host .dirtyIndicator{color:#92400e;white-space:nowrap;background:#fffbeb;border:1px solid #f59e0b;border-radius:999px;align-items:center;padding:4px 8px;font-size:.72rem;font-weight:600;line-height:1;display:inline-flex}:host icon-lucide-user-round-cog,:host icon-lucide-pencil{width:16px;height:16px}@media (width<=900px){:host div{padding-right:3px}}@media (width<=600px){:host div{justify-content:flex-start;gap:5px}:host .file-explorer-header-action-button{display:none}:host icon-lucide-ellipsis-vertical{aspect-ratio:1;flex-shrink:0;width:15.36px;height:15.36px}}`;exports.default=e;
2
2
  //# sourceMappingURL=FileExplorerHeaderControls.styles.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileExplorerHeaderControls.styles.cjs.js","names":[],"sources":["../../../src/components/file-explorer-header/FileExplorerHeaderControls.styles.css"],"sourcesContent":[":host {\n flex: 0 1 auto;\n min-width: 0;\n\n div {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n gap: 6px;\n flex: 0 0 auto;\n text-align: right;\n }\n\n /* generative ai */\n div > * {\n flex: 0 1 auto;\n }\n\n /* TODO: look into what colors to use this is just to show */\n .dirtyIndicator {\n display: inline-flex;\n align-items: center;\n border: 1px solid #F59E0B;\n color: #92400E;\n background: #FFFBEB;\n border-radius: 999px;\n font-size: 0.72rem;\n font-weight: 600;\n line-height: 1;\n padding: 4px 8px;\n white-space: nowrap;\n }\n\n @media (max-width: 900px) {\n div {\n padding-right: 3px;\n }\n }\n\n @media (max-width: 600px) {\n div {\n justify-content: flex-start;\n gap: 5px;\n }\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"FileExplorerHeaderControls.styles.cjs.js","names":[],"sources":["../../../src/components/file-explorer-header/FileExplorerHeaderControls.styles.css"],"sourcesContent":[":host {\n flex: 0 1 auto;\n min-width: 0;\n\n div {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n gap: 6px;\n flex: 0 0 auto;\n text-align: right;\n }\n\n /* generative ai */\n div > * {\n flex: 0 1 auto;\n }\n\n .file-explorer-header-action-button {\n width: var(--solid-ui-clickable-area, 42px);\n height: var(--solid-ui-clickable-area, 42px);\n padding: 0;\n }\n\n /* TODO: look into what colors to use this is just to show */\n .dirtyIndicator {\n display: inline-flex;\n align-items: center;\n border: 1px solid #F59E0B;\n color: #92400E;\n background: #FFFBEB;\n border-radius: 999px;\n font-size: 0.72rem;\n font-weight: 600;\n line-height: 1;\n padding: 4px 8px;\n white-space: nowrap;\n }\n\n icon-lucide-user-round-cog,\n icon-lucide-pencil {\n width: 16px;\n height: 16px;\n }\n\n @media (max-width: 900px) {\n div {\n padding-right: 3px;\n }\n }\n\n @media (max-width: 600px) {\n div {\n justify-content: flex-start;\n gap: 5px;\n }\n\n .file-explorer-header-action-button {\n display: none;\n }\n\n icon-lucide-ellipsis-vertical {\n width: 15.36px;\n height: 15.36px;\n flex-shrink: 0;\n aspect-ratio: 1 / 1;\n }\n }\n}\n"],"mappings":""}
@@ -1,6 +1,6 @@
1
1
  import { css as e } from "lit";
2
2
  //#region src/components/file-explorer-header/FileExplorerHeaderControls.styles.css
3
- var t = e`:host{flex:0 auto;min-width:0}:host div{text-align:right;flex:none;justify-content:flex-end;align-items:center;gap:6px;display:flex}:host div>*{flex:0 auto}:host .dirtyIndicator{color:#92400e;white-space:nowrap;background:#fffbeb;border:1px solid #f59e0b;border-radius:999px;align-items:center;padding:4px 8px;font-size:.72rem;font-weight:600;line-height:1;display:inline-flex}@media (width<=900px){:host div{padding-right:3px}}@media (width<=600px){:host div{justify-content:flex-start;gap:5px}}`;
3
+ var t = e`:host{flex:0 auto;min-width:0}:host div{text-align:right;flex:none;justify-content:flex-end;align-items:center;gap:6px;display:flex}:host div>*{flex:0 auto}:host .file-explorer-header-action-button{width:var(--solid-ui-clickable-area,42px);height:var(--solid-ui-clickable-area,42px);padding:0}:host .dirtyIndicator{color:#92400e;white-space:nowrap;background:#fffbeb;border:1px solid #f59e0b;border-radius:999px;align-items:center;padding:4px 8px;font-size:.72rem;font-weight:600;line-height:1;display:inline-flex}:host icon-lucide-user-round-cog,:host icon-lucide-pencil{width:16px;height:16px}@media (width<=900px){:host div{padding-right:3px}}@media (width<=600px){:host div{justify-content:flex-start;gap:5px}:host .file-explorer-header-action-button{display:none}:host icon-lucide-ellipsis-vertical{aspect-ratio:1;flex-shrink:0;width:15.36px;height:15.36px}}`;
4
4
  //#endregion
5
5
  export { t as default };
6
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"FileExplorerHeaderControls.styles.esm.js","names":[],"sources":["../../../src/components/file-explorer-header/FileExplorerHeaderControls.styles.css"],"sourcesContent":[":host {\n flex: 0 1 auto;\n min-width: 0;\n\n div {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n gap: 6px;\n flex: 0 0 auto;\n text-align: right;\n }\n\n /* generative ai */\n div > * {\n flex: 0 1 auto;\n }\n\n /* TODO: look into what colors to use this is just to show */\n .dirtyIndicator {\n display: inline-flex;\n align-items: center;\n border: 1px solid #F59E0B;\n color: #92400E;\n background: #FFFBEB;\n border-radius: 999px;\n font-size: 0.72rem;\n font-weight: 600;\n line-height: 1;\n padding: 4px 8px;\n white-space: nowrap;\n }\n\n @media (max-width: 900px) {\n div {\n padding-right: 3px;\n }\n }\n\n @media (max-width: 600px) {\n div {\n justify-content: flex-start;\n gap: 5px;\n }\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"FileExplorerHeaderControls.styles.esm.js","names":[],"sources":["../../../src/components/file-explorer-header/FileExplorerHeaderControls.styles.css"],"sourcesContent":[":host {\n flex: 0 1 auto;\n min-width: 0;\n\n div {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n gap: 6px;\n flex: 0 0 auto;\n text-align: right;\n }\n\n /* generative ai */\n div > * {\n flex: 0 1 auto;\n }\n\n .file-explorer-header-action-button {\n width: var(--solid-ui-clickable-area, 42px);\n height: var(--solid-ui-clickable-area, 42px);\n padding: 0;\n }\n\n /* TODO: look into what colors to use this is just to show */\n .dirtyIndicator {\n display: inline-flex;\n align-items: center;\n border: 1px solid #F59E0B;\n color: #92400E;\n background: #FFFBEB;\n border-radius: 999px;\n font-size: 0.72rem;\n font-weight: 600;\n line-height: 1;\n padding: 4px 8px;\n white-space: nowrap;\n }\n\n icon-lucide-user-round-cog,\n icon-lucide-pencil {\n width: 16px;\n height: 16px;\n }\n\n @media (max-width: 900px) {\n div {\n padding-right: 3px;\n }\n }\n\n @media (max-width: 600px) {\n div {\n justify-content: flex-start;\n gap: 5px;\n }\n\n .file-explorer-header-action-button {\n display: none;\n }\n\n icon-lucide-ellipsis-vertical {\n width: 15.36px;\n height: 15.36px;\n flex-shrink: 0;\n aspect-ratio: 1 / 1;\n }\n }\n}\n"],"mappings":""}
@@ -1,4 +1,21 @@
1
- require("../../_virtual/~icons/lucide/globe.cjs.js"),require("../../_virtual/~icons/lucide/lock-keyhole.cjs.js"),require("../../_virtual/~icons/lucide/arrow-left.cjs.js");const e=require("./FileExplorerHeaderSummary.styles.cjs.js");let t=require("solid-ui"),n=require("rdflib"),r=require("lit"),i=require("@lit/context"),a=require("lit/decorators.js");require("solid-ui/components/button");var o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A;function j(e,t,n){M(e,t),t.set(e,n)}function M(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function N(e,t,n){return e.set(F(e,t),n),n}function P(e,t){return e.get(F(e,t))}function F(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function I(e,t,n){return(t=R(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function L(e,t,n,r,i,a){function o(e,t,n){return function(r,i){return n&&n(r),e[t].call(r,i)}}function s(e,t){for(var n=0;n<e.length;n++)e[n].call(t);return t}function c(e,t,n,r){if(typeof e!=`function`&&(r||e!==void 0))throw TypeError(t+` must `+(n||`be`)+` a function`+(r?``:` or undefined`));return e}function l(e,t,n,r,i,a,s,l,u,d,f,p,m){function h(e){if(!m(e))throw TypeError(`Attempted to access private element on non-instance`)}var g,_=t[0],v=t[3],y=!l;if(!y){n||Array.isArray(_)||(_=[_]);var b={},x=[],S=i===3?`get`:i===4||p?`set`:`value`;d?(f||p?b={get:B(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||B(b[S],r,i===2?``:S)):f||(b=Object.getOwnPropertyDescriptor(e,r))}for(var C=e,w=_.length-1;w>=0;w-=n?2:1){var T=_[w],E=n?_[w-1]:void 0,D={},O={kind:[`field`,`accessor`,`method`,`getter`,`setter`,`class`][i],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw Error(`attempted to call addInitializer after decoration was finished`);c(t,`An initializer`,`be`,!0),s.push(t)}.bind(null,D)};try{if(y)(g=c(T.call(E,C,O),`class decorators`,`return`))&&(C=g);else{var k,A;O.static=u,O.private=d,d?i===2?k=function(e){return h(e),b.value}:(i<4&&(k=o(b,`get`,h)),i!==3&&(A=o(b,`set`,h))):(k=function(e){return e[r]},(i<2||i===4)&&(A=function(e,t){e[r]=t}));var j=O.access={has:d?m.bind():function(e){return r in e}};if(k&&(j.get=k),A&&(j.set=A),C=T.call(E,p?{get:b.get,set:b.set}:b[S],O),p){if(typeof C==`object`&&C)(g=c(C.get,`accessor.get`))&&(b.get=g),(g=c(C.set,`accessor.set`))&&(b.set=g),(g=c(C.init,`accessor.init`))&&x.push(g);else if(C!==void 0)throw TypeError(`accessor decorators must return an object with get, set, or init properties or void 0`)}else c(C,(f?`field`:`method`)+` decorators`,`return`)&&(f?x.push(C):b[S]=C)}}finally{D.v=!0}}return(f||p)&&l.push(function(e,t){for(var n=x.length-1;n>=0;n--)t=x[n].call(e,t);return t}),f||y||(d?p?l.push(o(b,`get`),o(b,`set`)):l.push(i===2?b[S]:o.call.bind(b[S])):Object.defineProperty(e,r,b)),C}function u(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for(`Symbol.metadata`),{configurable:!0,enumerable:!0,value:t})}if(arguments.length>=6)var d=a[Symbol.metadata||Symbol.for(`Symbol.metadata`)];var f=Object.create(d??null),p=function(e,t,n,r){var i,a,o=[],c=function(t){return V(t)===e},u=new Map;function d(e){e&&o.push(s.bind(null,e))}for(var f=0;f<t.length;f++){var p=t[f];if(Array.isArray(p)){var m=p[1],h=p[2],g=p.length>3,_=16&m,v=!!(8&m),y=(m&=7)==0,b=h+`/`+v;if(!y&&!g){var x=u.get(b);if(!0===x||x===3&&m!==4||x===4&&m!==3)throw Error(`Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: `+h);u.set(b,!(m>2)||m)}l(v?e:e.prototype,p,_,g?`#`+h:R(h),m,r,v?a||=[]:i||=[],o,v,g,y,m===1,v&&g?c:n)}}return d(i),d(a),o}(e,t,i,f);return n.length||u(e,f),{e:p,get c(){var t=[];return n.length&&[u(l(e,[n],r,e.name,5,f,t),f),s.bind(null,t,e)]}}}function R(e){var t=z(e,`string`);return typeof t==`symbol`?t:t+``}function z(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function B(e,t,n){typeof t==`symbol`&&(t=(t=t.description)?`[`+t+`]`:``);try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+` `+t:t})}catch{}return e}function V(e){if(Object(e)!==e)throw TypeError(`right-hand side of 'in' should be an object, got `+(e===null?`null`:typeof e));return e}function H(e){return e}g=[(0,a.customElement)(`file-explorer-header-summary`)];var U;new(k=(c=new WeakMap,l=new WeakMap,u=new WeakMap,d=new WeakMap,f=new WeakMap,p=new WeakMap,A=(_=(0,i.consume)({context:t.fileExplorerContext,subscribe:!0}),y=(0,a.property)({attribute:!1}),x=(0,a.property)({attribute:!1}),C=(0,a.property)({attribute:!1}),T=(0,a.state)(),D=(0,a.query)(`h1`),`_draggableSubjectUri`),s=class extends t.WebComponent{constructor(...e){super(...e),I(this,A,void m(this)),I(this,`_resolvedPaneIconFor`,void 0),j(this,c,v(this,void 0)),j(this,l,b(this)),j(this,u,S(this)),j(this,d,w(this,{modified:void 0,isPublic:!1})),j(this,f,E(this,void 0)),j(this,p,O(this,null))}get fileExplorerContext(){return P(c,this)}set fileExplorerContext(e){N(c,this,e)}get paneIcon(){return P(l,this)}set paneIcon(e){N(l,this,e)}get onBackClick(){return P(u,this)}set onBackClick(e){N(u,this,e)}get responseMetadata(){return P(d,this)}set responseMetadata(e){N(d,this,e)}get resolvedPaneIcon(){return P(f,this)}set resolvedPaneIcon(e){N(f,this,e)}get titleHeading(){return P(p,this)}set titleHeading(e){N(p,this,e)}formatModifiedDate(e){if(!e)return``;let t=new Date(e);if(Number.isNaN(t.getTime()))return e;let n=new Intl.DateTimeFormat(`en-GB`,{day:`2-digit`,month:`short`,year:`numeric`,hour:`2-digit`,minute:`2-digit`,hour12:!0}).formatToParts(t),r=e=>n.find(t=>t.type===e)?.value??``;return`${r(`day`)} ${r(`month`)}, ${r(`year`)} at ${r(`hour`)}:${r(`minute`)} ${r(`dayPeriod`).toUpperCase()}`}updated(){this.paneIcon!==void 0&&this._resolvedPaneIconFor!==this.paneIcon&&(this._resolvedPaneIconFor=this.paneIcon,this.resolvePaneIcon()),!(!this.titleHeading||!this.fileExplorerContext?.subjectUri||this._draggableSubjectUri===this.fileExplorerContext.subjectUri)&&(t.widgets.makeDraggable(this.titleHeading,(0,n.sym)(this.fileExplorerContext.subjectUri)),this._draggableSubjectUri=this.fileExplorerContext.subjectUri)}async resolvePaneIcon(){try{if(this.paneIcon==null){this.resolvedPaneIcon=void 0;return}let e=await this.paneIcon;this.resolvedPaneIcon=e??void 0}catch(e){this.resolvedPaneIcon=void 0,console.warn(`file-explorer-header-summary: failed to resolve pane icon`,e)}}render(){let e=this.fileExplorerContext?.subjectUri?(0,n.sym)(this.fileExplorerContext.subjectUri):void 0,i=e?t.utils.label(e):``,a=this.formatModifiedDate(this.responseMetadata.modified),o=this.responseMetadata.isPublic;return r.html`
1
+ const e=require("../../utils/podUtils.cjs.js");require("../../_virtual/~icons/lucide/globe.cjs.js"),require("../../_virtual/~icons/lucide/lock-keyhole.cjs.js"),require("../../_virtual/~icons/lucide/arrow-left.cjs.js"),require("../../_virtual/~icons/lucide/folder.cjs.js");const t=require("./FileExplorerHeaderSummary.styles.cjs.js");let n=require("solid-ui"),r=require("rdflib"),i=require("lit/decorators.js"),a=require("@lit/context"),o=require("lit");require("solid-ui/components/button");var s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,j;function M(e,t,n){N(e,t),t.set(e,n)}function N(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function P(e,t,n){return e.set(I(e,t),n),n}function F(e,t){return e.get(I(e,t))}function I(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function L(e,t,n){return(t=z(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function R(e,t,n,r,i,a){function o(e,t,n){return function(r,i){return n&&n(r),e[t].call(r,i)}}function s(e,t){for(var n=0;n<e.length;n++)e[n].call(t);return t}function c(e,t,n,r){if(typeof e!=`function`&&(r||e!==void 0))throw TypeError(t+` must `+(n||`be`)+` a function`+(r?``:` or undefined`));return e}function l(e,t,n,r,i,a,s,l,u,d,f,p,m){function h(e){if(!m(e))throw TypeError(`Attempted to access private element on non-instance`)}var g,_=t[0],v=t[3],y=!l;if(!y){n||Array.isArray(_)||(_=[_]);var b={},x=[],S=i===3?`get`:i===4||p?`set`:`value`;d?(f||p?b={get:V(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||V(b[S],r,i===2?``:S)):f||(b=Object.getOwnPropertyDescriptor(e,r))}for(var C=e,w=_.length-1;w>=0;w-=n?2:1){var T=_[w],E=n?_[w-1]:void 0,D={},O={kind:[`field`,`accessor`,`method`,`getter`,`setter`,`class`][i],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw Error(`attempted to call addInitializer after decoration was finished`);c(t,`An initializer`,`be`,!0),s.push(t)}.bind(null,D)};try{if(y)(g=c(T.call(E,C,O),`class decorators`,`return`))&&(C=g);else{var k,A;O.static=u,O.private=d,d?i===2?k=function(e){return h(e),b.value}:(i<4&&(k=o(b,`get`,h)),i!==3&&(A=o(b,`set`,h))):(k=function(e){return e[r]},(i<2||i===4)&&(A=function(e,t){e[r]=t}));var j=O.access={has:d?m.bind():function(e){return r in e}};if(k&&(j.get=k),A&&(j.set=A),C=T.call(E,p?{get:b.get,set:b.set}:b[S],O),p){if(typeof C==`object`&&C)(g=c(C.get,`accessor.get`))&&(b.get=g),(g=c(C.set,`accessor.set`))&&(b.set=g),(g=c(C.init,`accessor.init`))&&x.push(g);else if(C!==void 0)throw TypeError(`accessor decorators must return an object with get, set, or init properties or void 0`)}else c(C,(f?`field`:`method`)+` decorators`,`return`)&&(f?x.push(C):b[S]=C)}}finally{D.v=!0}}return(f||p)&&l.push(function(e,t){for(var n=x.length-1;n>=0;n--)t=x[n].call(e,t);return t}),f||y||(d?p?l.push(o(b,`get`),o(b,`set`)):l.push(i===2?b[S]:o.call.bind(b[S])):Object.defineProperty(e,r,b)),C}function u(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for(`Symbol.metadata`),{configurable:!0,enumerable:!0,value:t})}if(arguments.length>=6)var d=a[Symbol.metadata||Symbol.for(`Symbol.metadata`)];var f=Object.create(d??null),p=function(e,t,n,r){var i,a,o=[],c=function(t){return H(t)===e},u=new Map;function d(e){e&&o.push(s.bind(null,e))}for(var f=0;f<t.length;f++){var p=t[f];if(Array.isArray(p)){var m=p[1],h=p[2],g=p.length>3,_=16&m,v=!!(8&m),y=(m&=7)==0,b=h+`/`+v;if(!y&&!g){var x=u.get(b);if(!0===x||x===3&&m!==4||x===4&&m!==3)throw Error(`Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: `+h);u.set(b,!(m>2)||m)}l(v?e:e.prototype,p,_,g?`#`+h:z(h),m,r,v?a||=[]:i||=[],o,v,g,y,m===1,v&&g?c:n)}}return d(i),d(a),o}(e,t,i,f);return n.length||u(e,f),{e:p,get c(){var t=[];return n.length&&[u(l(e,[n],r,e.name,5,f,t),f),s.bind(null,t,e)]}}}function z(e){var t=B(e,`string`);return typeof t==`symbol`?t:t+``}function B(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function V(e,t,n){typeof t==`symbol`&&(t=(t=t.description)?`[`+t+`]`:``);try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+` `+t:t})}catch{}return e}function H(e){if(Object(e)!==e)throw TypeError(`right-hand side of 'in' should be an object, got `+(e===null?`null`:typeof e));return e}function U(e){return e}_=[(0,i.customElement)(`file-explorer-header-summary`)];var W;new(A=(l=new WeakMap,u=new WeakMap,d=new WeakMap,f=new WeakMap,p=new WeakMap,m=new WeakMap,j=(v=(0,a.consume)({context:n.fileExplorerContext,subscribe:!0}),b=(0,i.property)({attribute:!1}),S=(0,i.property)({attribute:!1}),w=(0,i.property)({attribute:!1}),E=(0,i.state)(),O=(0,i.query)(`h1`),`_draggableSubjectUri`),c=class extends n.WebComponent{constructor(...e){super(...e),L(this,j,void h(this)),L(this,`_resolvedPaneIconFor`,void 0),M(this,l,y(this,void 0)),M(this,u,x(this)),M(this,d,C(this)),M(this,f,T(this,{modified:void 0,isPublic:!1})),M(this,p,D(this,void 0)),M(this,m,k(this,null))}get fileExplorerContext(){return F(l,this)}set fileExplorerContext(e){P(l,this,e)}get paneIcon(){return F(u,this)}set paneIcon(e){P(u,this,e)}get onBackClick(){return F(d,this)}set onBackClick(e){P(d,this,e)}get responseMetadata(){return F(f,this)}set responseMetadata(e){P(f,this,e)}get resolvedPaneIcon(){return F(p,this)}set resolvedPaneIcon(e){P(p,this,e)}get titleHeading(){return F(m,this)}set titleHeading(e){P(m,this,e)}formatModifiedDate(e){if(!e)return``;let t=new Date(e);if(Number.isNaN(t.getTime()))return e;let n=new Intl.DateTimeFormat(`en-GB`,{day:`2-digit`,month:`short`,year:`numeric`,hour:`2-digit`,minute:`2-digit`,hour12:!0}).formatToParts(t),r=e=>n.find(t=>t.type===e)?.value??``;return`${r(`day`)} ${r(`month`)}, ${r(`year`)} at ${r(`hour`)}:${r(`minute`)} ${r(`dayPeriod`).toUpperCase()}`}updated(){this.paneIcon!==void 0&&this._resolvedPaneIconFor!==this.paneIcon&&(this._resolvedPaneIconFor=this.paneIcon,this.resolvePaneIcon()),this.titleHeading&&this.fileExplorerContext?.subjectUri&&this._draggableSubjectUri!==this.fileExplorerContext.subjectUri&&(n.widgets.makeDraggable(this.titleHeading,(0,r.sym)(this.fileExplorerContext.subjectUri)),this._draggableSubjectUri=this.fileExplorerContext.subjectUri)}async resolvePaneIcon(){try{if(this.paneIcon==null){this.resolvedPaneIcon=void 0;return}let e=await this.paneIcon;this.resolvedPaneIcon=e??void 0}catch(e){this.resolvedPaneIcon=void 0,console.warn(`file-explorer-header-summary: failed to resolve pane icon`,e)}}renderContainerResourceHeader(t,n){let r=e.getContainerItemCount(this.fileExplorerContext?.store,this.fileExplorerContext?.subjectUri)??0;return o.html`
2
+ <div class="container-info">
3
+ <h1>
4
+ <span>${t}</span>
5
+ </h1>
6
+ <p>
7
+ ${r} items
8
+ ${n?o.html`<span class="public"><icon-lucide-globe></icon-lucide-globe></span>`:o.html`<span class="private"><icon-lucide-lock-keyhole></icon-lucide-lock-keyhole></span>`}
9
+ </p>
10
+ </div>
11
+ `}renderResourceHeader(e,t){let n=this.formatModifiedDate(this.responseMetadata.modified);return o.html`
12
+ <div class="resource-info">
13
+ <h1>
14
+ <span>${e}</span>
15
+ </h1>
16
+ <p><span class="resource-date">${n}</span> ${t?o.html`<span class="public"><icon-lucide-globe></icon-lucide-globe> Public</span>`:o.html`<span class="private"><icon-lucide-lock-keyhole></icon-lucide-lock-keyhole> Private</span>`}</p>
17
+ </div>
18
+ `}render(){let t=this.fileExplorerContext?.subjectUri?(0,r.sym)(this.fileExplorerContext.subjectUri):void 0,i=t?n.utils.label(t):``,a=this.responseMetadata.isPublic,s=e.isContainerSubject(this.fileExplorerContext?.store,this.fileExplorerContext?.subjectUri);return o.html`
2
19
  <div class="file-explorer-header-summary">
3
20
  <solid-ui-button
4
21
  variant="ghost"
@@ -8,12 +25,10 @@ require("../../_virtual/~icons/lucide/globe.cjs.js"),require("../../_virtual/~ic
8
25
  <icon-lucide-arrow-left></icon-lucide-arrow-left>
9
26
  </solid-ui-button>
10
27
  <span class="pane-icon">
11
- ${this.resolvedPaneIcon?r.html`<img src=${this.resolvedPaneIcon} alt="" />`:``}
28
+ ${this.resolvedPaneIcon?o.html`<img src=${this.resolvedPaneIcon} alt="" />`:``}
12
29
  </span>
13
- <div>
14
- <h1>${i}</h1>
15
- <p>${a} ${o?r.html`<span class="public"><icon-lucide-globe></icon-lucide-globe> Public</span>`:r.html`<span class="private"><icon-lucide-lock-keyhole></icon-lucide-lock-keyhole> Private</span>`}</p>
16
- </div>
30
+ ${s?this.renderContainerResourceHeader(i,a):this.renderResourceHeader(i,a)}
31
+ </div>
17
32
  </div>
18
- `}},{e:[v,b,S,w,E,O,m],c:[U,h]}=L(s,[[_,1,`fileExplorerContext`],[y,1,`paneIcon`],[x,1,`onBackClick`],[C,1,`responseMetadata`],[T,1,`resolvedPaneIcon`],[D,1,`titleHeading`]],g,0,void 0,t.WebComponent),s),o=class extends H{constructor(){super(U),I(this,`styles`,e.default),h()}},I(o,k,void 0),o),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return U}});
33
+ `}},{e:[y,x,C,T,D,k,h],c:[W,g]}=R(c,[[v,1,`fileExplorerContext`],[b,1,`paneIcon`],[S,1,`onBackClick`],[w,1,`responseMetadata`],[E,1,`resolvedPaneIcon`],[O,1,`titleHeading`]],_,0,void 0,n.WebComponent),c),s=class extends U{constructor(){super(W),L(this,`styles`,t.default),g()}},L(s,A,void 0),s),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return W}});
19
34
  //# sourceMappingURL=FileExplorerHeaderSummary.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileExplorerHeaderSummary.cjs.js","names":["sym","widgets","utils","WebComponent","fileExplorerContext","customElement","property","query","state","html","consume","styles","_classDecs","_FileExplorerHeaderSu","_FileExplorerHeaderSu2","_A","WeakMap","_B","_C","_D","_E","_F","_ref","_fileExplorerContextDecs","context","subscribe","_paneIconDecs","attribute","_onBackClickDecs","_responseMetadataDecs","_resolvedPaneIconDecs","_titleHeadingDecs","_FileExplorerHeaderSummary","FileExplorerHeaderSummary","constructor","args","_defineProperty","_initProto","_classPrivateFieldInitSpec","_init_fileExplorerContext","undefined","_init_paneIcon","_init_onBackClick","_init_responseMetadata","modified","isPublic","_init_resolvedPaneIcon","_init_titleHeading","_classPrivateFieldGet","v","_classPrivateFieldSet","paneIcon","onBackClick","responseMetadata","resolvedPaneIcon","titleHeading","formatModifiedDate","date","Date","Number","isNaN","getTime","parts","Intl","DateTimeFormat","day","month","year","hour","minute","hour12","formatToParts","getPart","type","find","part","value","dayPeriod","toUpperCase","updated","_resolvedPaneIconFor","resolvePaneIcon","subjectUri","_draggableSubjectUri","makeDraggable","icon","error","console","warn","render","subject","label","e","c","_initClass","_applyDecs","_Class","_identity","default"],"sources":["../../../src/components/file-explorer-header/FileExplorerHeaderSummary.ts"],"sourcesContent":["import { sym } from 'rdflib'\nimport { widgets, utils, WebComponent, fileExplorerContext, type FileExplorerContext } from 'solid-ui'\nimport 'solid-ui/components/button'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { html } from 'lit'\nimport { consume } from '@lit/context'\nimport { PaneIcon } from './types'\nimport '~icons/lucide/globe'\nimport '~icons/lucide/lock-keyhole'\nimport '~icons/lucide/arrow-left'\nimport styles from './FileExplorerHeaderSummary.styles.css'\nimport { type FileExplorerResourceMetadata } from './helper'\n\n@customElement('file-explorer-header-summary')\nexport default class FileExplorerHeaderSummary extends WebComponent {\n static styles = styles\n\n private _draggableSubjectUri: string | undefined\n private _resolvedPaneIconFor: PaneIcon | undefined\n\n @consume({ context: fileExplorerContext, subscribe: true })\n accessor fileExplorerContext: FileExplorerContext = undefined as unknown as FileExplorerContext\n\n @property({ attribute: false })\n accessor paneIcon: PaneIcon | undefined\n\n @property({ attribute: false })\n accessor onBackClick: (() => void) | undefined\n\n @property({ attribute: false })\n accessor responseMetadata: Pick<FileExplorerResourceMetadata, 'modified' | 'isPublic'> = {\n modified: undefined,\n isPublic: false\n }\n\n @state()\n accessor resolvedPaneIcon: string | undefined = undefined\n\n @query('h1')\n private accessor titleHeading: HTMLHeadingElement | null = null\n\n private formatModifiedDate (modified: string | undefined) {\n if (!modified) return ''\n\n const date = new Date(modified)\n if (Number.isNaN(date.getTime())) return modified\n\n const parts = new Intl.DateTimeFormat('en-GB', {\n day: '2-digit',\n month: 'short',\n year: 'numeric',\n hour: '2-digit',\n minute: '2-digit',\n hour12: true\n }).formatToParts(date)\n\n const getPart = (type: Intl.DateTimeFormatPartTypes) => parts.find(part => part.type === type)?.value ?? ''\n const day = getPart('day')\n const month = getPart('month')\n const year = getPart('year')\n const hour = getPart('hour')\n const minute = getPart('minute')\n const dayPeriod = getPart('dayPeriod').toUpperCase()\n\n return `${day} ${month}, ${year} at ${hour}:${minute} ${dayPeriod}`\n }\n\n protected updated () {\n if (this.paneIcon !== undefined && this._resolvedPaneIconFor !== this.paneIcon) {\n this._resolvedPaneIconFor = this.paneIcon\n this.resolvePaneIcon()\n }\n\n if (!this.titleHeading || !this.fileExplorerContext?.subjectUri || this._draggableSubjectUri === this.fileExplorerContext.subjectUri) return\n\n widgets.makeDraggable(this.titleHeading, sym(this.fileExplorerContext.subjectUri)) // doing it this way for now, just to keep the same functionality\n this._draggableSubjectUri = this.fileExplorerContext.subjectUri\n }\n\n // Needed because humanReadable pane can return a promise for an icon.\n private async resolvePaneIcon () {\n try {\n if (this.paneIcon == null) {\n this.resolvedPaneIcon = undefined\n return\n }\n\n const icon = await this.paneIcon\n this.resolvedPaneIcon = icon ?? undefined\n } catch (error) {\n this.resolvedPaneIcon = undefined\n console.warn('file-explorer-header-summary: failed to resolve pane icon', error)\n }\n }\n\n render () {\n const subject = this.fileExplorerContext?.subjectUri ? sym(this.fileExplorerContext.subjectUri) : undefined\n const label = subject ? utils.label(subject) : ''\n const modified = this.formatModifiedDate(this.responseMetadata.modified)\n const isPublic = this.responseMetadata.isPublic\n\n return html`\n <div class=\"file-explorer-header-summary\">\n <solid-ui-button\n variant=\"ghost\"\n @click=${this.onBackClick}\n title=\"Back\"\n >\n <icon-lucide-arrow-left></icon-lucide-arrow-left>\n </solid-ui-button>\n <span class=\"pane-icon\">\n ${this.resolvedPaneIcon ? html`<img src=${this.resolvedPaneIcon} alt=\"\" />` : ''}\n </span>\n <div>\n <h1>${label}</h1>\n <p>${modified} ${isPublic ? html`<span class=\"public\"><icon-lucide-globe></icon-lucide-globe> Public</span>` : html`<span class=\"private\"><icon-lucide-lock-keyhole></icon-lucide-lock-keyhole> Private</span>`}</p>\n </div>\n </div>\n `\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"FileExplorerHeaderSummary.cjs.js","names":["sym","widgets","utils","WebComponent","fileExplorerContext","customElement","property","query","state","html","consume","styles","getContainerItemCount","isContainerSubject","_classDecs","_FileExplorerHeaderSu","_FileExplorerHeaderSu2","_A","WeakMap","_B","_C","_D","_E","_F","_ref","_fileExplorerContextDecs","context","subscribe","_paneIconDecs","attribute","_onBackClickDecs","_responseMetadataDecs","_resolvedPaneIconDecs","_titleHeadingDecs","_FileExplorerHeaderSummary","FileExplorerHeaderSummary","constructor","args","_defineProperty","_initProto","_classPrivateFieldInitSpec","_init_fileExplorerContext","undefined","_init_paneIcon","_init_onBackClick","_init_responseMetadata","modified","isPublic","_init_resolvedPaneIcon","_init_titleHeading","_classPrivateFieldGet","v","_classPrivateFieldSet","paneIcon","onBackClick","responseMetadata","resolvedPaneIcon","titleHeading","formatModifiedDate","date","Date","Number","isNaN","getTime","parts","Intl","DateTimeFormat","day","month","year","hour","minute","hour12","formatToParts","getPart","type","find","part","value","dayPeriod","toUpperCase","updated","_resolvedPaneIconFor","resolvePaneIcon","subjectUri","_draggableSubjectUri","makeDraggable","icon","error","console","warn","renderContainerResourceHeader","label","itemCount","store","renderResourceHeader","render","subject","isContainerResource","e","c","_initClass","_applyDecs","_Class","_identity","default"],"sources":["../../../src/components/file-explorer-header/FileExplorerHeaderSummary.ts"],"sourcesContent":["import { sym } from 'rdflib'\nimport { widgets, utils, WebComponent, fileExplorerContext, type FileExplorerContext } from 'solid-ui'\nimport 'solid-ui/components/button'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { html } from 'lit'\nimport { consume } from '@lit/context'\nimport { PaneIcon } from './types'\nimport '~icons/lucide/globe'\nimport '~icons/lucide/lock-keyhole'\nimport '~icons/lucide/arrow-left'\nimport '~icons/lucide/folder'\nimport styles from './FileExplorerHeaderSummary.styles.css'\nimport { getContainerItemCount, isContainerSubject } from '../../utils/podUtils'\nimport type { FileExplorerResourceMetadata } from './types'\n\n@customElement('file-explorer-header-summary')\nexport default class FileExplorerHeaderSummary extends WebComponent {\n static styles = styles\n\n private _draggableSubjectUri: string | undefined\n private _resolvedPaneIconFor: PaneIcon | undefined\n\n @consume({ context: fileExplorerContext, subscribe: true })\n accessor fileExplorerContext: FileExplorerContext = undefined as unknown as FileExplorerContext\n\n @property({ attribute: false })\n accessor paneIcon: PaneIcon | undefined\n\n @property({ attribute: false })\n accessor onBackClick: (() => void) | undefined\n\n @property({ attribute: false })\n accessor responseMetadata: Pick<FileExplorerResourceMetadata, 'modified' | 'isPublic'> = {\n modified: undefined,\n isPublic: false\n }\n\n @state()\n accessor resolvedPaneIcon: string | undefined = undefined\n\n @query('h1')\n private accessor titleHeading: HTMLHeadingElement | null = null\n\n private formatModifiedDate (modified: string | undefined) {\n if (!modified) return ''\n\n const date = new Date(modified)\n if (Number.isNaN(date.getTime())) return modified\n\n const parts = new Intl.DateTimeFormat('en-GB', {\n day: '2-digit',\n month: 'short',\n year: 'numeric',\n hour: '2-digit',\n minute: '2-digit',\n hour12: true\n }).formatToParts(date)\n\n const getPart = (type: Intl.DateTimeFormatPartTypes) => parts.find(part => part.type === type)?.value ?? ''\n const day = getPart('day')\n const month = getPart('month')\n const year = getPart('year')\n const hour = getPart('hour')\n const minute = getPart('minute')\n const dayPeriod = getPart('dayPeriod').toUpperCase()\n\n return `${day} ${month}, ${year} at ${hour}:${minute} ${dayPeriod}`\n }\n\n protected updated () {\n if (this.paneIcon !== undefined && this._resolvedPaneIconFor !== this.paneIcon) {\n this._resolvedPaneIconFor = this.paneIcon\n this.resolvePaneIcon()\n }\n\n if (!this.titleHeading || !this.fileExplorerContext?.subjectUri || this._draggableSubjectUri === this.fileExplorerContext.subjectUri) return\n\n widgets.makeDraggable(this.titleHeading, sym(this.fileExplorerContext.subjectUri)) // doing it this way for now, just to keep the same functionality\n this._draggableSubjectUri = this.fileExplorerContext.subjectUri\n }\n\n // Needed because humanReadable pane can return a promise for an icon.\n private async resolvePaneIcon () {\n try {\n if (this.paneIcon == null) {\n this.resolvedPaneIcon = undefined\n return\n }\n\n const icon = await this.paneIcon\n this.resolvedPaneIcon = icon ?? undefined\n } catch (error) {\n this.resolvedPaneIcon = undefined\n console.warn('file-explorer-header-summary: failed to resolve pane icon', error)\n }\n }\n\n private renderContainerResourceHeader (label: string, isPublic: boolean) {\n const itemCount = getContainerItemCount(this.fileExplorerContext?.store, this.fileExplorerContext?.subjectUri) ?? 0\n return html`\n <div class=\"container-info\">\n <h1>\n <span>${label}</span>\n </h1>\n <p>\n ${itemCount} items\n ${isPublic\n ? html`<span class=\"public\"><icon-lucide-globe></icon-lucide-globe></span>`\n : html`<span class=\"private\"><icon-lucide-lock-keyhole></icon-lucide-lock-keyhole></span>`}\n </p>\n </div>\n `\n }\n\n private renderResourceHeader (label: string, isPublic: boolean) {\n const modified = this.formatModifiedDate(this.responseMetadata.modified)\n\n return html`\n <div class=\"resource-info\">\n <h1>\n <span>${label}</span>\n </h1>\n <p><span class=\"resource-date\">${modified}</span> ${isPublic ? html`<span class=\"public\"><icon-lucide-globe></icon-lucide-globe> Public</span>` : html`<span class=\"private\"><icon-lucide-lock-keyhole></icon-lucide-lock-keyhole> Private</span>`}</p>\n </div>\n `\n }\n\n render () {\n const subject = this.fileExplorerContext?.subjectUri ? sym(this.fileExplorerContext.subjectUri) : undefined\n const label = subject ? utils.label(subject) : ''\n const isPublic = this.responseMetadata.isPublic\n const isContainerResource = isContainerSubject(this.fileExplorerContext?.store, this.fileExplorerContext?.subjectUri)\n\n return html`\n <div class=\"file-explorer-header-summary\">\n <solid-ui-button\n variant=\"ghost\"\n @click=${this.onBackClick}\n title=\"Back\"\n >\n <icon-lucide-arrow-left></icon-lucide-arrow-left>\n </solid-ui-button>\n <span class=\"pane-icon\">\n ${this.resolvedPaneIcon ? html`<img src=${this.resolvedPaneIcon} alt=\"\" />` : ''}\n </span>\n ${isContainerResource ? this.renderContainerResourceHeader(label, isPublic) : this.renderResourceHeader(label, isPublic)}\n </div>\n </div>\n `\n }\n}\n"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { WebComponent, FileExplorerContext } from 'solid-ui';
2
- import { PaneIcon } from './types';
3
- import { FileExplorerResourceMetadata } from './helper';
2
+ import { PaneIcon, FileExplorerResourceMetadata } from './types';
4
3
  export default class FileExplorerHeaderSummary extends WebComponent {
5
4
  static styles: any;
6
5
  private _draggableSubjectUri;
@@ -14,6 +13,8 @@ export default class FileExplorerHeaderSummary extends WebComponent {
14
13
  private formatModifiedDate;
15
14
  protected updated(): void;
16
15
  private resolvePaneIcon;
16
+ private renderContainerResourceHeader;
17
+ private renderResourceHeader;
17
18
  render(): import('lit-html').TemplateResult<1>;
18
19
  }
19
20
  //# sourceMappingURL=FileExplorerHeaderSummary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileExplorerHeaderSummary.d.ts","sourceRoot":"","sources":["../../../src/components/file-explorer-header/FileExplorerHeaderSummary.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,YAAY,EAAuB,KAAK,mBAAmB,EAAE,MAAM,UAAU,CAAA;AACtG,OAAO,4BAA4B,CAAA;AAInC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,qBAAqB,CAAA;AAC5B,OAAO,4BAA4B,CAAA;AACnC,OAAO,0BAA0B,CAAA;AAEjC,OAAO,EAAE,KAAK,4BAA4B,EAAE,MAAM,UAAU,CAAA;AAG5D,MAAM,CAAC,OAAO,OAAO,yBAA0B,SAAQ,YAAY;IACjE,MAAM,CAAC,MAAM,MAAS;IAEtB,OAAO,CAAC,oBAAoB,CAAoB;IAChD,OAAO,CAAC,oBAAoB,CAAsB;IAGlD,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAA8C;IAG/F,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAA;IAGvC,QAAQ,CAAC,WAAW,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAA;IAG9C,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,4BAA4B,EAAE,UAAU,GAAG,UAAU,CAAC,CAGrF;IAGD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAY;IAGzD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAE/D,OAAO,CAAC,kBAAkB;IA0B1B,SAAS,CAAC,OAAO;YAaH,eAAe;IAe7B,MAAM;CAyBP"}
1
+ {"version":3,"file":"FileExplorerHeaderSummary.d.ts","sourceRoot":"","sources":["../../../src/components/file-explorer-header/FileExplorerHeaderSummary.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,YAAY,EAAuB,KAAK,mBAAmB,EAAE,MAAM,UAAU,CAAA;AACtG,OAAO,4BAA4B,CAAA;AAInC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,qBAAqB,CAAA;AAC5B,OAAO,4BAA4B,CAAA;AACnC,OAAO,0BAA0B,CAAA;AACjC,OAAO,sBAAsB,CAAA;AAG7B,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAA;AAG3D,MAAM,CAAC,OAAO,OAAO,yBAA0B,SAAQ,YAAY;IACjE,MAAM,CAAC,MAAM,MAAS;IAEtB,OAAO,CAAC,oBAAoB,CAAoB;IAChD,OAAO,CAAC,oBAAoB,CAAsB;IAGlD,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAA8C;IAG/F,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAA;IAGvC,QAAQ,CAAC,WAAW,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAA;IAG9C,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,4BAA4B,EAAE,UAAU,GAAG,UAAU,CAAC,CAGrF;IAGD,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAY;IAGzD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAE/D,OAAO,CAAC,kBAAkB;IA0B1B,SAAS,CAAC,OAAO;YAaH,eAAe;IAe7B,OAAO,CAAC,6BAA6B;IAiBrC,OAAO,CAAC,oBAAoB;IAa5B,MAAM;CAuBP"}