@pod-os/elements 0.26.1-rc.f4329bf.0 → 0.27.1-rc.d9be84c.0
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.
- package/dist/cjs/{BrokenFile-26f83028.js → BrokenFile-a5fc0832.js} +22 -6
- package/dist/cjs/BrokenFile-a5fc0832.js.map +1 -0
- package/dist/cjs/ion-icon_32.cjs.entry.js +2 -2
- package/dist/cjs/ion-icon_32.cjs.entry.js.map +1 -1
- package/dist/cjs/pos-document.cjs.entry.js +1 -1
- package/dist/collection/components/pos-user-menu/pos-user-menu.js +1 -1
- package/dist/collection/components/pos-user-menu/pos-user-menu.js.map +1 -1
- package/dist/components/index11.js +21 -5
- package/dist/components/index11.js.map +1 -1
- package/dist/components/pos-user-menu2.js +1 -1
- package/dist/components/pos-user-menu2.js.map +1 -1
- package/dist/elements/elements.esm.js +1 -1
- package/dist/elements/{p-650db824.entry.js → p-38edfa6d.entry.js} +2 -2
- package/dist/elements/{p-0d1dd954.entry.js → p-74bdf05f.entry.js} +3 -3
- package/dist/elements/{p-0d1dd954.entry.js.map → p-74bdf05f.entry.js.map} +1 -1
- package/dist/elements/p-93f5c8ec.js +2 -0
- package/dist/elements/p-93f5c8ec.js.map +1 -0
- package/dist/esm/{BrokenFile-0b9882ef.js → BrokenFile-a47d9850.js} +22 -6
- package/dist/esm/BrokenFile-a47d9850.js.map +1 -0
- package/dist/esm/ion-icon_32.entry.js +2 -2
- package/dist/esm/ion-icon_32.entry.js.map +1 -1
- package/dist/esm/pos-document.entry.js +1 -1
- package/package.json +4 -4
- package/dist/cjs/BrokenFile-26f83028.js.map +0 -1
- package/dist/elements/p-5e8a3893.js +0 -2
- package/dist/elements/p-5e8a3893.js.map +0 -1
- package/dist/esm/BrokenFile-0b9882ef.js.map +0 -1
- /package/dist/elements/{p-650db824.entry.js.map → p-38edfa6d.entry.js.map} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{j as e,k as t,h as n}from"./p-97889672.js";const s=(e,t,n)=>{const s=e.get(t);if(!s){e.set(t,[n])}else if(!s.includes(n)){s.push(n)}};const o=(e,t)=>{let n;return(...s)=>{if(n){clearTimeout(n)}n=setTimeout((()=>{n=0;e(...s)}),t)}};const r=e=>!("isConnected"in e)||e.isConnected;const c=o((e=>{for(let t of e.keys()){e.set(t,e.get(t).filter(r))}}),2e3);const i=()=>{if(typeof e!=="function"){return{}}const n=new Map;return{dispose:()=>n.clear(),get:t=>{const o=e();if(o){s(n,t,o)}},set:e=>{const s=n.get(e);if(s){n.set(e,s.filter(t))}c(n)},reset:()=>{n.forEach((e=>e.forEach(t)));c(n)}}};const u=e=>typeof e==="function"?e():e;const a=(e,t=((e,t)=>e!==t))=>{const n=u(e);let s=new Map(Object.entries(n??{}));const o={dispose:[],get:[],set:[],reset:[]};const r=new Map;const c=()=>{s=new Map(Object.entries(u(e)??{}));o.reset.forEach((e=>e()))};const i=()=>{o.dispose.forEach((e=>e()));c()};const a=e=>{o.get.forEach((t=>t(e)));return s.get(e)};const l=(e,n)=>{const r=s.get(e);if(t(n,r,e)){s.set(e,n);o.set.forEach((t=>t(e,n,r)))}};const p=typeof Proxy==="undefined"?{}:new Proxy(n,{get(e,t){return a(t)},ownKeys(e){return Array.from(s.keys())},getOwnPropertyDescriptor(){return{enumerable:true,configurable:true}},has(e,t){return s.has(t)},set(e,t,n){l(t,n);return true}});const d=(e,t)=>{o[e].push(t);return()=>{f(o[e],t)}};const g=(t,n)=>{const s=(e,s)=>{if(e===t){n(s)}};const o=()=>n(u(e)[t]);const c=d("set",s);const i=d("reset",o);r.set(n,{setHandler:s,resetHandler:o,propName:t});return()=>{c();i();r.delete(n)}};const w=(...e)=>{const t=e.reduce(((e,t)=>{if(t.set){e.push(d("set",t.set))}if(t.get){e.push(d("get",t.get))}if(t.reset){e.push(d("reset",t.reset))}if(t.dispose){e.push(d("dispose",t.dispose))}return e}),[]);return()=>t.forEach((e=>e()))};const m=e=>{const t=s.get(e);o.set.forEach((n=>n(e,t,t)))};const y=(e,t)=>{const n=r.get(t);if(n&&n.propName===e){f(o.set,n.setHandler);f(o.reset,n.resetHandler);r.delete(t)}};return{state:p,get:a,set:l,on:d,onChange:g,use:w,dispose:i,reset:c,forceUpdate:m,removeListener:y}};const f=(e,t)=>{const n=e.indexOf(t);if(n>=0){e[n]=e[e.length-1];e.length--}};const l=(e,t)=>{const n=a(e,t);n.use(i());return n};const p=l({isLoggedIn:false,webId:"",profile:null});const d=({file:e})=>{const t=g(e.status);return n("div",null,n("a",{class:"error",href:e.url},n("div",null,n("ion-icon",{name:t})),n("div",{class:"code"},e.status.code),n("div",{class:"text"},e.status.text)))};function g(e){switch(e.code){case 401:case 403:return"lock-closed-outline";case 404:return"help-circle-outline";default:return"alert-circle-outline"}}export{d as B,l as c,p as s};
|
|
2
|
+
//# sourceMappingURL=p-93f5c8ec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["appendToMap","map","propName","value","items","get","set","includes","push","debounce","fn","ms","timeoutId","args","clearTimeout","setTimeout","isConnected","maybeElement","cleanupElements","key","keys","filter","stencilSubscription","getRenderingRef","elmsToUpdate","Map","dispose","clear","elm","elements","forceUpdate","reset","forEach","elms","unwrap","val","createObservableMap","defaultState","shouldUpdate","a","b","unwrappedState","states","Object","entries","handlers","changeListeners","cb","oldValue","state","Proxy","_","ownKeys","Array","from","getOwnPropertyDescriptor","enumerable","configurable","has","on","eventName","callback","removeFromArray","onChange","setHandler","newValue","resetHandler","unSet","unReset","delete","use","subscriptions","unsubs","reduce","subscription","unsub","removeListener","listener","listenerInfo","array","item","index","indexOf","length","createStore","store","isLoggedIn","webId","profile","BrokenFile","file","iconName","iconForStatus","status","h","class","href","url","name","code","text"],"sources":["../node_modules/@stencil/store/dist/index.js","src/store/session.ts","src/components/broken-file/BrokenFile.tsx"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2_000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState ?? {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n // Track onChange listeners to enable removeListener functionality\n const changeListeners = new Map();\n const reset = () => {\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries(unwrap(defaultState) ?? {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const setHandler = (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n };\n const resetHandler = () => cb(unwrap(defaultState)[propName]);\n // Register the handlers\n const unSet = on('set', setHandler);\n const unReset = on('reset', resetHandler);\n // Track the relationship between the user callback and internal handlers\n changeListeners.set(cb, { setHandler, resetHandler, propName });\n return () => {\n unSet();\n unReset();\n changeListeners.delete(cb);\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n const removeListener = (propName, listener) => {\n const listenerInfo = changeListeners.get(listener);\n if (listenerInfo && listenerInfo.propName === propName) {\n // Remove the specific handlers that were created for this listener\n removeFromArray(handlers.set, listenerInfo.setHandler);\n removeFromArray(handlers.reset, listenerInfo.resetHandler);\n changeListeners.delete(listener);\n }\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n removeListener,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","import { WebIdProfile } from '@pod-os/core';\nimport { createStore } from '@stencil/store';\n\nconst store = createStore({\n isLoggedIn: false,\n webId: '',\n profile: null as WebIdProfile\n});\n\nexport default store;\n","import { BrokenFile as BrokenFileData, HttpStatus } from '@pod-os/core';\nimport { h } from '@stencil/core';\n\ninterface Props {\n file: BrokenFileData;\n}\n\nexport const BrokenFile = ({ file }: Props) => {\n const iconName = iconForStatus(file.status);\n return (\n <div>\n <a class=\"error\" href={file.url}>\n <div>\n <ion-icon name={iconName}></ion-icon>\n </div>\n <div class=\"code\">{file.status.code}</div>\n <div class=\"text\">{file.status.text}</div>\n </a>\n </div>\n );\n};\n\nfunction iconForStatus(status: HttpStatus): string {\n switch (status.code) {\n case 401:\n case 403:\n return 'lock-closed-outline';\n case 404:\n return 'help-circle-outline';\n default:\n return 'alert-circle-outline';\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -76,6 +76,8 @@ const createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) =>
|
|
|
76
76
|
set: [],
|
|
77
77
|
reset: [],
|
|
78
78
|
};
|
|
79
|
+
// Track onChange listeners to enable removeListener functionality
|
|
80
|
+
const changeListeners = new Map();
|
|
79
81
|
const reset = () => {
|
|
80
82
|
// When resetting the state, the default state may be a function - unwrap it to invoke it.
|
|
81
83
|
// otherwise, the state won't be properly reset
|
|
@@ -129,17 +131,21 @@ const createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) =>
|
|
|
129
131
|
};
|
|
130
132
|
};
|
|
131
133
|
const onChange = (propName, cb) => {
|
|
132
|
-
const
|
|
134
|
+
const setHandler = (key, newValue) => {
|
|
133
135
|
if (key === propName) {
|
|
134
136
|
cb(newValue);
|
|
135
137
|
}
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
//
|
|
139
|
-
const
|
|
138
|
+
};
|
|
139
|
+
const resetHandler = () => cb(unwrap(defaultState)[propName]);
|
|
140
|
+
// Register the handlers
|
|
141
|
+
const unSet = on('set', setHandler);
|
|
142
|
+
const unReset = on('reset', resetHandler);
|
|
143
|
+
// Track the relationship between the user callback and internal handlers
|
|
144
|
+
changeListeners.set(cb, { setHandler, resetHandler, propName });
|
|
140
145
|
return () => {
|
|
141
146
|
unSet();
|
|
142
147
|
unReset();
|
|
148
|
+
changeListeners.delete(cb);
|
|
143
149
|
};
|
|
144
150
|
};
|
|
145
151
|
const use = (...subscriptions) => {
|
|
@@ -164,6 +170,15 @@ const createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) =>
|
|
|
164
170
|
const oldValue = states.get(key);
|
|
165
171
|
handlers.set.forEach((cb) => cb(key, oldValue, oldValue));
|
|
166
172
|
};
|
|
173
|
+
const removeListener = (propName, listener) => {
|
|
174
|
+
const listenerInfo = changeListeners.get(listener);
|
|
175
|
+
if (listenerInfo && listenerInfo.propName === propName) {
|
|
176
|
+
// Remove the specific handlers that were created for this listener
|
|
177
|
+
removeFromArray(handlers.set, listenerInfo.setHandler);
|
|
178
|
+
removeFromArray(handlers.reset, listenerInfo.resetHandler);
|
|
179
|
+
changeListeners.delete(listener);
|
|
180
|
+
}
|
|
181
|
+
};
|
|
167
182
|
return {
|
|
168
183
|
state,
|
|
169
184
|
get,
|
|
@@ -174,6 +189,7 @@ const createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) =>
|
|
|
174
189
|
dispose,
|
|
175
190
|
reset,
|
|
176
191
|
forceUpdate,
|
|
192
|
+
removeListener,
|
|
177
193
|
};
|
|
178
194
|
};
|
|
179
195
|
const removeFromArray = (array, item) => {
|
|
@@ -219,4 +235,4 @@ function iconForStatus(status) {
|
|
|
219
235
|
|
|
220
236
|
export { BrokenFile as B, createStore as c, store as s };
|
|
221
237
|
|
|
222
|
-
//# sourceMappingURL=BrokenFile-
|
|
238
|
+
//# sourceMappingURL=BrokenFile-a47d9850.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"BrokenFile-a47d9850.js","mappings":"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","names":[],"sources":["../node_modules/@stencil/store/dist/index.js","src/store/session.ts","src/components/broken-file/BrokenFile.tsx"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2_000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState ?? {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n // Track onChange listeners to enable removeListener functionality\n const changeListeners = new Map();\n const reset = () => {\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries(unwrap(defaultState) ?? {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const setHandler = (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n };\n const resetHandler = () => cb(unwrap(defaultState)[propName]);\n // Register the handlers\n const unSet = on('set', setHandler);\n const unReset = on('reset', resetHandler);\n // Track the relationship between the user callback and internal handlers\n changeListeners.set(cb, { setHandler, resetHandler, propName });\n return () => {\n unSet();\n unReset();\n changeListeners.delete(cb);\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n const removeListener = (propName, listener) => {\n const listenerInfo = changeListeners.get(listener);\n if (listenerInfo && listenerInfo.propName === propName) {\n // Remove the specific handlers that were created for this listener\n removeFromArray(handlers.set, listenerInfo.setHandler);\n removeFromArray(handlers.reset, listenerInfo.resetHandler);\n changeListeners.delete(listener);\n }\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n removeListener,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","import { WebIdProfile } from '@pod-os/core';\nimport { createStore } from '@stencil/store';\n\nconst store = createStore({\n isLoggedIn: false,\n webId: '',\n profile: null as WebIdProfile\n});\n\nexport default store;\n","import { BrokenFile as BrokenFileData, HttpStatus } from '@pod-os/core';\nimport { h } from '@stencil/core';\n\ninterface Props {\n file: BrokenFileData;\n}\n\nexport const BrokenFile = ({ file }: Props) => {\n const iconName = iconForStatus(file.status);\n return (\n <div>\n <a class=\"error\" href={file.url}>\n <div>\n <ion-icon name={iconName}></ion-icon>\n </div>\n <div class=\"code\">{file.status.code}</div>\n <div class=\"text\">{file.status.text}</div>\n </a>\n </div>\n );\n};\n\nfunction iconForStatus(status: HttpStatus): string {\n switch (status.code) {\n case 401:\n case 403:\n return 'lock-closed-outline';\n case 404:\n return 'help-circle-outline';\n default:\n return 'alert-circle-outline';\n }\n}\n"],"version":3}
|
|
@@ -9,7 +9,7 @@ import { O as OVERLAY_GESTURE_PRIORITY, c as createDelegateController, a as crea
|
|
|
9
9
|
import { c as createAnimation } from './animation-756697b9.js';
|
|
10
10
|
import { w as win } from './index-6b94f340.js';
|
|
11
11
|
import { createGesture } from './index-38fe935b.js';
|
|
12
|
-
import { c as createStore$1, s as store, B as BrokenFile } from './BrokenFile-
|
|
12
|
+
import { c as createStore$1, s as store, B as BrokenFile } from './BrokenFile-a47d9850.js';
|
|
13
13
|
import { P as PodOS, N as NoOfflineCache, L as LabelIndex } from './index-f3176f87.js';
|
|
14
14
|
import { s as subscribeResource } from './ResourceAware-5f237305.js';
|
|
15
15
|
import './gesture-controller-958242a2.js';
|
|
@@ -9105,7 +9105,7 @@ const PosUserMenu = class {
|
|
|
9105
9105
|
render() {
|
|
9106
9106
|
if (!this.webId)
|
|
9107
9107
|
return null; //?
|
|
9108
|
-
return (h$4("pos-resource", { uri: this.webId }, h$4("sl-dropdown", null, h$4("button", { slot: "trigger" }, h$4("pos-picture", null, h$4("sl-avatar", null))), h$4("sl-menu", null, h$4("sl-menu-item", { value: "dashboard" }, "Dashboard"), h$4("sl-menu-item", { value: "profile" }, h$4("pos-label", null)), h$4("sl-menu-item", { value: "settings" }, "Settings"), h$4("sl-divider", null), h$4("sl-menu-item", { value: "logout" }, "Logout")))));
|
|
9108
|
+
return (h$4("pos-resource", { uri: this.webId }, h$4("sl-dropdown", null, h$4("button", { slot: "trigger", "aria-label": "User menu" }, h$4("pos-picture", null, h$4("sl-avatar", null))), h$4("sl-menu", null, h$4("sl-menu-item", { value: "dashboard" }, "Dashboard"), h$4("sl-menu-item", { value: "profile" }, h$4("pos-label", null)), h$4("sl-menu-item", { value: "settings" }, "Settings"), h$4("sl-divider", null), h$4("sl-menu-item", { value: "logout" }, "Logout")))));
|
|
9109
9109
|
}
|
|
9110
9110
|
};
|
|
9111
9111
|
PosUserMenu.style = PosUserMenuStyle0;
|