solid-ui 5.0.2-5 → 5.0.2-6
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/chunks/{ResourceActionsMenu-Bx7YWY3E.js → ResourceActionsMenu-KFMLta44.js} +53 -44
- package/dist/chunks/ResourceActionsMenu-KFMLta44.js.map +1 -0
- package/dist/chunks/{access-control-modal-B1mFFIyz.js → access-control-modal-BZdBv6VD.js} +2 -2
- package/dist/chunks/{access-control-modal-B1mFFIyz.js.map → access-control-modal-BZdBv6VD.js.map} +1 -1
- package/dist/chunks/{file-explorer-header-Djp_eFuT.js → file-explorer-header-BJzo6xDU.js} +3 -3
- package/dist/chunks/{file-explorer-header-Djp_eFuT.js.map → file-explorer-header-BJzo6xDU.js.map} +1 -1
- package/dist/chunks/square-arrow-out-up-right-DaALlpHo.js +9 -0
- package/dist/chunks/square-arrow-out-up-right-DaALlpHo.js.map +1 -0
- package/dist/chunks/{src-akaVfkuf.js → src-Cv9Lm1V-.js} +2944 -2927
- package/dist/chunks/src-Cv9Lm1V-.js.map +1 -0
- package/dist/chunks/{widgets-B1hBVhRL.js → widgets-C92ihtlF.js} +483 -487
- package/dist/chunks/widgets-C92ihtlF.js.map +1 -0
- package/dist/components/access-control-modal.js +1 -1
- package/dist/components/file-explorer-header.js +1 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js +7 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js.map +1 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts +1 -0
- package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts.map +1 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js +11 -2
- package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js.map +1 -1
- package/dist/components/resource-actions-menu.js +1 -1
- package/dist/components.js +2 -2
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +4 -3
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +8 -8
- package/dist/lib/file-explorer/index.cjs.js +1 -1
- package/dist/lib/file-explorer/index.d.ts +1 -0
- package/dist/lib/file-explorer/index.d.ts.map +1 -1
- package/dist/lib/file-explorer/index.esm.js +2 -1
- package/dist/lib/file-explorer/pane-menu-items.cjs.js +2 -0
- package/dist/lib/file-explorer/pane-menu-items.cjs.js.map +1 -0
- package/dist/lib/file-explorer/pane-menu-items.d.ts +22 -0
- package/dist/lib/file-explorer/pane-menu-items.d.ts.map +1 -0
- package/dist/lib/file-explorer/pane-menu-items.esm.js +20 -0
- package/dist/lib/file-explorer/pane-menu-items.esm.js.map +1 -0
- package/dist/loader.js +3 -3
- package/dist/solid-ui.js +30 -24
- package/dist/solid-ui.min.js +30 -24
- package/dist/solid-ui.min.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunks/ResourceActionsMenu-Bx7YWY3E.js.map +0 -1
- package/dist/chunks/src-akaVfkuf.js.map +0 -1
- package/dist/chunks/widgets-B1hBVhRL.js.map +0 -1
|
@@ -3,9 +3,9 @@ import { b as n, c as r, g as i, i as a, o, p as s, r as c, u as l } from "./com
|
|
|
3
3
|
import { n as u, t as d } from "./context-BDrfQ9bN.js";
|
|
4
4
|
import { n as f, t as p } from "./events-CXQHDCs2.js";
|
|
5
5
|
import { t as m } from "./query-DjAOg-tk.js";
|
|
6
|
-
import { n as h, r as g } from "./ResourceActionsMenu-
|
|
6
|
+
import { n as h, r as g } from "./ResourceActionsMenu-KFMLta44.js";
|
|
7
7
|
import { u as _ } from "./style-Dlw9-wPn.js";
|
|
8
|
-
import { S as v } from "./widgets-
|
|
8
|
+
import { S as v } from "./widgets-C92ihtlF.js";
|
|
9
9
|
import "./button-D6qO2idW.js";
|
|
10
10
|
import "./globe-CsCgZcy5.js";
|
|
11
11
|
// ~icons/lucide/share-2
|
|
@@ -959,4 +959,4 @@ new (ft = (G = /*#__PURE__*/ new WeakMap(), K = /*#__PURE__*/ new WeakMap(), q =
|
|
|
959
959
|
var St = $;
|
|
960
960
|
export { $ as n, St as t };
|
|
961
961
|
|
|
962
|
-
//# sourceMappingURL=file-explorer-header-
|
|
962
|
+
//# sourceMappingURL=file-explorer-header-BJzo6xDU.js.map
|
package/dist/chunks/{file-explorer-header-Djp_eFuT.js.map → file-explorer-header-BJzo6xDU.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-explorer-header-Djp_eFuT.js","names":["sym","customElement","WebComponent","utils","widgets","DEFAULT_FILE_EXPLORER_CONTEXT","fileExplorerContext","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","_init_paneIcon","_init_onBackClick","_init_responseMetadata","modified","undefined","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","willUpdate","changedProperties","has","generation","_paneIconGeneration","resolvePaneIcon","updated","subjectUri","_draggableSubjectUri","makeDraggable","icon","error","console","warn","renderContainerResourceHeader","label","itemCount","store","renderResourceHeader","render","subject","isContainerResource","e","c","_initClass","_applyDecs","_Class","_identity","default","_Class","_A","_B","_C","_D","_E","_initProto","_initClass","_classDecs","_fileExplorerContextDecs","_init_fileExplorerContext","_paneIconDecs","_init_paneIcon","_responseMetadataDecs","_init_responseMetadata","_ref","_classPrivateFieldInitSpec","_checkPrivateRedeclaration","_classPrivateFieldSet","_assertClassBrand","_classPrivateFieldGet","_defineProperty","_toPropertyKey","_applyDecs","_setFunctionName","_checkInRHS","_toPrimitive","_identity","consume","property","state","query","sym","label","utils.label","styles","customElement","WebComponent","property","state","consume","html","nothing","styles","DEFAULT_FILE_EXPLORER_CONTEXT","fileExplorerContext","FILE_EXPLORER_MANAGE_ACCESS_EVENT","isContainerSubject","_classDecs","_FileExplorerHeaderCo","_FileExplorerHeaderCo2","_A","WeakMap","_B","_C","_D","_E","_ref","_fileExplorerContextDecs","context","subscribe","_menuItemsDecs","attribute","_canEditDecs","type","Boolean","_canManageAccessDecs","_isMobileDecs","_FileExplorerHeaderControls","FileExplorerHeaderControls","constructor","args","_defineProperty","_initProto","event","isMobile","matches","_classPrivateFieldInitSpec","_init_fileExplorerContext","_init_menuItems","_init_canEdit","_init_canManageAccess","_init_isMobile","window","matchMedia","subjectUri","dispatchEvent","CustomEvent","bubbles","composed","detail","_classPrivateFieldGet","v","_classPrivateFieldSet","menuItems","canEdit","canManageAccess","connectedCallback","mobileMediaQuery","mobileQuery","addEventListener","handleMobileMediaChange","disconnectedCallback","removeEventListener","undefined","getEditTooltip","renderDirtyIndicator","isDirty","render","isContainerResource","store","supportsEditing","handleManageAccess","beginEditing","e","c","_initClass","_applyDecs","_Class","_identity","default","_Class","_A","_B","_C","_D","_initProto","_initClass","_classDecs","_fileExplorerContextDecs","_init_fileExplorerContext","_menuItemsDecs","_init_menuItems","_ref","_classPrivateFieldInitSpec","_checkPrivateRedeclaration","_classPrivateFieldSet","_assertClassBrand","_classPrivateFieldGet","_defineProperty","_toPropertyKey","_applyDecs","_setFunctionName","_checkInRHS","_toPrimitive","_identity","consume","property","state","nothing","styles","sym","solidLogicSingleton","customElement","WebComponent","DEFAULT_FILE_EXPLORER_CONTEXT","fileExplorerContext","FILE_EXPLORER_BACK_EVENT","property","state","consume","html","styles","_classDecs","_FileExplorerHeader","_FileExplorerHeader2","_A","WeakMap","_B","_C","_D","_ref","_fileExplorerContextDecs","context","subscribe","_menuItemsDecs","attribute","_paneIconDecs","_responseMetadataDecs","_FileExplorerHeader3","FileExplorerHeader","constructor","args","_defineProperty","_initProto","_classPrivateFieldInitSpec","_init_fileExplorerContext","_init_menuItems","_init_paneIcon","undefined","_init_responseMetadata","modified","isPublic","canEdit","canManageAccess","aclUri","dispatchEvent","CustomEvent","bubbles","composed","detail","subjectUri","_classPrivateFieldGet","v","_classPrivateFieldSet","menuItems","paneIcon","responseMetadata","getDefaultResponseMetadata","willUpdate","store","_loadedMetadataForUri","generation","_metadataGeneration","loadResponseMetadata","metadata","resource","fetchMetadata","access","error","console","warn","render","handleBack","e","c","_initClass","_applyDecs","_Class","_identity","default","consume","property","state","solidLogicSingleton","sym","styles","FileExplorerHeader","FileExplorerHeader","namedNode","c$1","A","customElement","n","i","b","fileExplorerContext","DEFAULT_FILE_EXPLORER_CONTEXT","FILE_EXPLORER_MANAGE_ACCESS_EVENT","FILE_EXPLORER_BACK_EVENT","e","getContainerItemCount","isContainerSubject","label","makeDraggable","iconlucideshare2","FileExplorerHeader_styles_default","iconlucidelockkeyhole","iconlucidearrowleft","FileExplorerHeaderSummary_styles_default","_Class$2","_FileExplorerHeaderSummary","_A$2","_B$2","_C$2","_D$2","_E$1","_F","_initProto$2","_initClass$2","_classDecs$2","_fileExplorerContextDecs$2","_init_fileExplorerContext$2","_paneIconDecs$1","_init_paneIcon$1","_onBackClickDecs","_init_onBackClick","_responseMetadataDecs$1","_init_responseMetadata$1","_resolvedPaneIconDecs","_init_resolvedPaneIcon","_titleHeadingDecs","_init_titleHeading","_FileExplorerHeaderSu2","_ref$2","_classPrivateFieldInitSpec$2","a","_checkPrivateRedeclaration$2","_classPrivateFieldSet$2","s","_assertClassBrand$2","r","_classPrivateFieldGet$2","_defineProperty$2","_toPropertyKey$2","t","_applyDecs$2","o","c","applyDec","m","h","y","v","g","u","w","S","d","p","_setFunctionName$2","P","j","D","I","F","l","f","N","_checkInRHS$2","_toPrimitive$2","_identity$2","_FileExplorerHeaderSu","WebComponent","args","modified","date","parts","getPart","part","type","changedProperties","generation","paneIcon","icon","error","itemCount","isPublic","subject","label$1","isContainerResource","FileExplorerHeaderControls_styles_default","_Class$1","_FileExplorerHeaderControls","_A$1","_B$1","_C$1","_D$1","_E","_initProto$1","_initClass$1","_classDecs$1","_fileExplorerContextDecs$1","_init_fileExplorerContext$1","_menuItemsDecs$1","_init_menuItems$1","_canEditDecs","_init_canEdit","_canManageAccessDecs","_init_canManageAccess","_isMobileDecs","_init_isMobile","_FileExplorerHeaderCo2","_ref$1","_classPrivateFieldInitSpec$1","_checkPrivateRedeclaration$1","_classPrivateFieldSet$1","_assertClassBrand$1","_classPrivateFieldGet$1","_defineProperty$1","_toPropertyKey$1","_applyDecs$1","_setFunctionName$1","_checkInRHS$1","_toPrimitive$1","_identity$1","_FileExplorerHeaderCo","event","subjectUri","supportsEditing","_Class","_FileExplorerHeader3","_A","_B","_C","_D","_initProto","_initClass","_classDecs","_fileExplorerContextDecs","_init_fileExplorerContext","_menuItemsDecs","_init_menuItems","_paneIconDecs","_init_paneIcon","_responseMetadataDecs","_init_responseMetadata","_FileExplorerHeader2","_ref","_classPrivateFieldInitSpec","_checkPrivateRedeclaration","_classPrivateFieldSet","_assertClassBrand","_classPrivateFieldGet","_defineProperty","_toPropertyKey","_applyDecs","_setFunctionName","_checkInRHS","_toPrimitive","_identity","_FileExplorerHeader","metadata","file_explorer_header_default"],"sources":["../../src/components/file-explorer-header/FileExplorerHeader.styles.css","../../src/components/file-explorer-header/FileExplorerHeaderSummary.styles.css","../../src/components/file-explorer-header/FileExplorerHeaderSummary.ts","../../src/components/file-explorer-header/FileExplorerHeaderControls.styles.css","../../src/components/file-explorer-header/FileExplorerHeaderControls.ts","../../src/components/file-explorer-header/FileExplorerHeader.ts","../../src/components/file-explorer-header/index.ts"],"sourcesContent":[":host {\n header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 6px;\n flex-wrap: nowrap;\n box-sizing: border-box;\n width: 100%;\n text-align: right;\n padding: 10px;\n border-bottom: 1px solid var(--solid-ui-color-gray-200, #cbd5e1);\n }\n}\n"," :host {\n .file-explorer-header-summary {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n flex: 1 1 auto;\n min-width: 0;\n text-align: left;\n }\n\n h1 {\n color: var(--solid-ui-color-gray-700, #364153);\n font-size: var(--solid-ui-font-size-xl, 1.25rem); /* while in expand; will go to 2xl when new design is complete */\n font-weight: 500;\n display: flex;\n align-items: center;\n gap: 8px;\n margin: 0;\n }\n\n .resource-info {\n display: flex;\n flex-direction: column;\n min-width: 0;\n }\n\n .container-info {\n display: flex;\n flex-direction: row;\n gap: 10px;\n min-width: 0;\n }\n\n .pane-icon {\n display: flex;\n width: 40px;\n height: 40px;\n padding: 7.5px 7px 6.5px 7px;\n justify-content: center;\n align-items: center;\n aspect-ratio: 1/1;\n /* border-radius: 100px; */\n /* background: var(--slate-600, #45556C); */\n }\n\n .pane-icon img {\n width: 100%;\n height: 100%;\n object-fit: contain;\n display: block;\n }\n\n p {\n display: flex;\n align-items: center;\n gap: 5px;\n color: var(--solid-ui-gray-500, #6A7282);\n font-size: var(--solid-ui-font-size-xs, .75rem);\n font-weight: 500;\n }\n\n .public {\n display: flex;\n padding: 2px 5px;\n justify-content: center;\n align-items: center;\n gap: 3px;\n color: var(--blue-400, #51A2FF);\n border-radius: 5px;\n background: var(--blue-50, #EFF6FF);\n }\n\n icon-lucide-globe {\n stroke-width: 1.021px;\n stroke: var(--blue-400, #51A2FF);\n }\n\n .private {\n display: flex;\n padding: 2px 5px;\n justify-content: center;\n align-items: center;\n gap: 3px;\n color: var(--yellow-600, #D08700);\n border-radius: 5px;\n background: var(--yellow-100, #FEF9C2);\n }\n\n icon-lucide-lock-keyhole {\n stroke-width: 1.021px;\n stroke: var(--yellow-600, #D08700);\n }\n\n icon-lucide-globe,\n icon-lucide-lock-keyhole {\n width: 0.875rem;\n height: 0.875rem;\n }\n\n .resource-date {\n font-size: inherit;\n }\n\n icon-lucide-arrow-left {\n width: 1.125rem;\n height: 1.125rem;\n }\n\n @media (max-width: 600px) {\n .file-explorer-header-summary {\n gap: 7px;\n }\n\n h1 {\n font-size: 14px;\n }\n\n .pane-icon {\n width: 18.2px;\n height: 18.2px;\n flex-shrink: 0;\n aspect-ratio: 1 / 1;\n padding: 0;\n }\n\n p {\n font-size: 14px;\n }\n\n .resource-date {\n font-size: 10px;\n }\n\n .public,\n .private {\n font-size: 9px;\n }\n\n icon-lucide-arrow-left {\n width: 15px;\n height: 18px;\n flex-shrink: 0;\n aspect-ratio: 5 / 6;\n }\n }\n}\n","import { sym } from 'rdflib'\nimport { customElement, WebComponent } from '@/lib/components'\nimport * as utils from '@/utils'\nimport * as widgets from '@/widgets/index'\nimport { DEFAULT_FILE_EXPLORER_CONTEXT, fileExplorerContext } from '@/lib/file-explorer/context'\nimport '@/components/button'\nimport { property, query, state } from 'lit/decorators.js'\nimport type { PropertyValues } from 'lit'\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('solid-ui-file-explorer-header-summary')\nexport default class FileExplorerHeaderSummary extends WebComponent {\n static styles = styles\n\n private _draggableSubjectUri: string | undefined\n private _paneIconGeneration = 0\n\n @consume({ context: fileExplorerContext, subscribe: true })\n accessor fileExplorerContext = DEFAULT_FILE_EXPLORER_CONTEXT\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 willUpdate (changedProperties: PropertyValues<this>) {\n if (changedProperties.has('paneIcon')) {\n const generation = ++this._paneIconGeneration\n this.resolvedPaneIcon = undefined\n this.resolvePaneIcon(this.paneIcon, generation)\n }\n }\n\n protected updated () {\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 (paneIcon: PaneIcon | undefined, generation: number) {\n try {\n if (paneIcon == null) return\n\n const icon = await paneIcon\n if (generation === this._paneIconGeneration) {\n this.resolvedPaneIcon = icon ?? undefined\n }\n } catch (error) {\n if (generation === this._paneIconGeneration) {\n this.resolvedPaneIcon = undefined\n console.warn('file-explorer-header-summary: failed to resolve pane icon', error)\n }\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 aria-hidden=\"true\"></icon-lucide-globe><span class=\"sr-only\">Public</span></span>`\n : html`<span class=\"private\"><icon-lucide-lock-keyhole aria-hidden=\"true\"></icon-lucide-lock-keyhole><span class=\"sr-only\">Private</span></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 <span class=\"sr-only\">Back</span>\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",":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","import { customElement, WebComponent } from '@/lib/components'\nimport { property, state } from 'lit/decorators.js'\nimport { consume } from '@lit/context'\nimport { html, nothing } from 'lit'\nimport '@/components/button'\nimport '~icons/lucide/user-round-cog'\nimport '~icons/lucide/pencil'\nimport styles from './FileExplorerHeaderControls.styles.css'\nimport '@/components/resource-actions-menu/ResourceActionsMenu'\nimport { DEFAULT_FILE_EXPLORER_CONTEXT, fileExplorerContext } from '@/lib/file-explorer/context'\nimport { FILE_EXPLORER_MANAGE_ACCESS_EVENT } from '@/lib/file-explorer/events'\nimport { isContainerSubject } from '@/utils/podUtils'\n\n@customElement('solid-ui-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 = DEFAULT_FILE_EXPLORER_CONTEXT\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 @property({ type: Boolean })\n accessor canManageAccess = 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 handleManageAccess = () => {\n const subjectUri = this.fileExplorerContext.subjectUri\n if (!subjectUri) return\n\n this.dispatchEvent(new CustomEvent(FILE_EXPLORER_MANAGE_ACCESS_EVENT, {\n bubbles: true,\n composed: true,\n detail: { subjectUri }\n }))\n }\n\n private renderDirtyIndicator () {\n if (!this.fileExplorerContext.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.canEdit\n\n return html`\n <div>\n ${this.renderDirtyIndicator()}\n ${!isContainerResource && !this.isMobile && this.canManageAccess\n ? html`\n <solid-ui-button class=\"file-explorer-header-action-button\" variant=\"ghost\" title=\"Manage Access\" @click=${this.handleManageAccess}>\n <icon-lucide-user-round-cog slot=\"icon\"></icon-lucide-user-round-cog>\n <span class=\"sr-only\">Manage access</span>\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.beginEditing}\n >\n <icon-lucide-pencil slot=\"icon\"></icon-lucide-pencil>\n <span class=\"sr-only\">Edit</span>\n </solid-ui-button>\n `\n : nothing}\n `\n : nothing}\n <solid-ui-resource-actions-menu\n .store=${this.fileExplorerContext.store}\n .handleAccessClick=${this.handleManageAccess}\n .handleEditingClick=${this.fileExplorerContext.beginEditing}\n .paneSupportsEditing=${this.fileExplorerContext.canEdit}\n .canEdit=${this.canEdit}\n .canManageAccess=${this.canManageAccess}\n .subjectUri=${this.fileExplorerContext.subjectUri}\n .menuItems=${this.menuItems}\n .isMobile=${this.isMobile}\n ></solid-ui-resource-actions-menu>\n </div>\n `\n }\n}\n","import { sym } from 'rdflib'\nimport { solidLogicSingleton } from 'solid-logic'\nimport { customElement, WebComponent } from '@/lib/components'\nimport { DEFAULT_FILE_EXPLORER_CONTEXT, fileExplorerContext } from '@/lib/file-explorer/context'\nimport { FILE_EXPLORER_BACK_EVENT } from '@/lib/file-explorer/events'\nimport { property, state } from 'lit/decorators.js'\nimport { consume } from '@lit/context'\nimport { html } from 'lit'\nimport '~icons/lucide/share-2'\nimport '~icons/lucide/pencil'\nimport '~icons/lucide/ellipsis-vertical'\nimport styles from './FileExplorerHeader.styles.css'\nimport './FileExplorerHeaderSummary'\nimport './FileExplorerHeaderControls'\nimport { PaneIcon } from './types'\nimport { type FileExplorerResourceMetadata } from './types'\n\n@customElement('solid-ui-file-explorer-header')\nexport default class FileExplorerHeader extends WebComponent {\n static styles = styles\n\n private _loadedMetadataForUri: string | undefined\n private _metadataGeneration = 0\n\n @consume({ context: fileExplorerContext, subscribe: true })\n accessor fileExplorerContext = DEFAULT_FILE_EXPLORER_CONTEXT\n\n @property({ attribute: false })\n accessor menuItems: Array<{ label: string, action: (event: Event) => void }> = []\n\n @property({ attribute: false })\n accessor paneIcon: PaneIcon = undefined as unknown as PaneIcon\n\n @state()\n accessor responseMetadata: Pick<FileExplorerResourceMetadata, 'modified' | 'isPublic' | 'canEdit' | 'canManageAccess' | 'aclUri'> = {\n modified: undefined,\n isPublic: false,\n canEdit: false,\n canManageAccess: false,\n aclUri: undefined\n }\n\n private handleBack = () => {\n this.dispatchEvent(new CustomEvent(FILE_EXPLORER_BACK_EVENT, {\n bubbles: true,\n composed: true,\n detail: {\n subjectUri: this.fileExplorerContext.subjectUri\n }\n }))\n }\n\n private getDefaultResponseMetadata (): Pick<FileExplorerResourceMetadata, 'modified' | 'isPublic' | 'canEdit' | 'canManageAccess' | 'aclUri'> {\n return {\n modified: undefined,\n isPublic: false,\n canEdit: false,\n canManageAccess: false,\n aclUri: undefined\n }\n }\n\n protected willUpdate () {\n const subjectUri = this.fileExplorerContext?.subjectUri\n if (this.fileExplorerContext?.store && subjectUri && this._loadedMetadataForUri !== subjectUri) {\n this._loadedMetadataForUri = subjectUri\n const generation = ++this._metadataGeneration\n this.responseMetadata = this.getDefaultResponseMetadata()\n this.loadResponseMetadata(subjectUri, generation)\n }\n }\n\n private async loadResponseMetadata (subjectUri: string, generation: number) {\n try {\n const metadata = await solidLogicSingleton.resource.fetchMetadata(sym(subjectUri))\n if (generation === this._metadataGeneration && this.fileExplorerContext.subjectUri === subjectUri) {\n this.responseMetadata = {\n modified: metadata.modified,\n isPublic: metadata.access.isPublic,\n canEdit: metadata.access.canEdit,\n canManageAccess: metadata.access.canManageAccess,\n aclUri: metadata.aclUri\n }\n }\n } catch (error) {\n if (generation === this._metadataGeneration && this.fileExplorerContext.subjectUri === subjectUri) {\n this.responseMetadata = this.getDefaultResponseMetadata()\n console.warn('Failed to load response metadata', error)\n }\n }\n }\n\n render () {\n return html`\n <header>\n <solid-ui-file-explorer-header-summary\n .paneIcon=${this.paneIcon}\n .onBackClick=${this.handleBack}\n .responseMetadata=${this.responseMetadata}\n ></solid-ui-file-explorer-header-summary>\n <solid-ui-file-explorer-header-controls\n .menuItems=${this.menuItems}\n .canEdit=${this.responseMetadata.canEdit}\n .canManageAccess=${this.responseMetadata.canManageAccess}\n ></solid-ui-file-explorer-header-controls>\n </header>\n `\n }\n}\n","import FileExplorerHeader from './FileExplorerHeader'\n\nexport { FileExplorerHeader }\nexport default FileExplorerHeader\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"file-explorer-header-BJzo6xDU.js","names":["sym","customElement","WebComponent","utils","widgets","DEFAULT_FILE_EXPLORER_CONTEXT","fileExplorerContext","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","_init_paneIcon","_init_onBackClick","_init_responseMetadata","modified","undefined","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","willUpdate","changedProperties","has","generation","_paneIconGeneration","resolvePaneIcon","updated","subjectUri","_draggableSubjectUri","makeDraggable","icon","error","console","warn","renderContainerResourceHeader","label","itemCount","store","renderResourceHeader","render","subject","isContainerResource","e","c","_initClass","_applyDecs","_Class","_identity","default","_Class","_A","_B","_C","_D","_E","_initProto","_initClass","_classDecs","_fileExplorerContextDecs","_init_fileExplorerContext","_paneIconDecs","_init_paneIcon","_responseMetadataDecs","_init_responseMetadata","_ref","_classPrivateFieldInitSpec","_checkPrivateRedeclaration","_classPrivateFieldSet","_assertClassBrand","_classPrivateFieldGet","_defineProperty","_toPropertyKey","_applyDecs","_setFunctionName","_checkInRHS","_toPrimitive","_identity","consume","property","state","query","sym","label","utils.label","styles","customElement","WebComponent","property","state","consume","html","nothing","styles","DEFAULT_FILE_EXPLORER_CONTEXT","fileExplorerContext","FILE_EXPLORER_MANAGE_ACCESS_EVENT","isContainerSubject","_classDecs","_FileExplorerHeaderCo","_FileExplorerHeaderCo2","_A","WeakMap","_B","_C","_D","_E","_ref","_fileExplorerContextDecs","context","subscribe","_menuItemsDecs","attribute","_canEditDecs","type","Boolean","_canManageAccessDecs","_isMobileDecs","_FileExplorerHeaderControls","FileExplorerHeaderControls","constructor","args","_defineProperty","_initProto","event","isMobile","matches","_classPrivateFieldInitSpec","_init_fileExplorerContext","_init_menuItems","_init_canEdit","_init_canManageAccess","_init_isMobile","window","matchMedia","subjectUri","dispatchEvent","CustomEvent","bubbles","composed","detail","_classPrivateFieldGet","v","_classPrivateFieldSet","menuItems","canEdit","canManageAccess","connectedCallback","mobileMediaQuery","mobileQuery","addEventListener","handleMobileMediaChange","disconnectedCallback","removeEventListener","undefined","getEditTooltip","renderDirtyIndicator","isDirty","render","isContainerResource","store","supportsEditing","handleManageAccess","beginEditing","e","c","_initClass","_applyDecs","_Class","_identity","default","_Class","_A","_B","_C","_D","_initProto","_initClass","_classDecs","_fileExplorerContextDecs","_init_fileExplorerContext","_menuItemsDecs","_init_menuItems","_ref","_classPrivateFieldInitSpec","_checkPrivateRedeclaration","_classPrivateFieldSet","_assertClassBrand","_classPrivateFieldGet","_defineProperty","_toPropertyKey","_applyDecs","_setFunctionName","_checkInRHS","_toPrimitive","_identity","consume","property","state","nothing","styles","sym","solidLogicSingleton","customElement","WebComponent","DEFAULT_FILE_EXPLORER_CONTEXT","fileExplorerContext","FILE_EXPLORER_BACK_EVENT","property","state","consume","html","styles","_classDecs","_FileExplorerHeader","_FileExplorerHeader2","_A","WeakMap","_B","_C","_D","_ref","_fileExplorerContextDecs","context","subscribe","_menuItemsDecs","attribute","_paneIconDecs","_responseMetadataDecs","_FileExplorerHeader3","FileExplorerHeader","constructor","args","_defineProperty","_initProto","_classPrivateFieldInitSpec","_init_fileExplorerContext","_init_menuItems","_init_paneIcon","undefined","_init_responseMetadata","modified","isPublic","canEdit","canManageAccess","aclUri","dispatchEvent","CustomEvent","bubbles","composed","detail","subjectUri","_classPrivateFieldGet","v","_classPrivateFieldSet","menuItems","paneIcon","responseMetadata","getDefaultResponseMetadata","willUpdate","store","_loadedMetadataForUri","generation","_metadataGeneration","loadResponseMetadata","metadata","resource","fetchMetadata","access","error","console","warn","render","handleBack","e","c","_initClass","_applyDecs","_Class","_identity","default","consume","property","state","solidLogicSingleton","sym","styles","FileExplorerHeader","FileExplorerHeader","namedNode","c$1","A","customElement","n","i","b","fileExplorerContext","DEFAULT_FILE_EXPLORER_CONTEXT","FILE_EXPLORER_MANAGE_ACCESS_EVENT","FILE_EXPLORER_BACK_EVENT","e","getContainerItemCount","isContainerSubject","label","makeDraggable","iconlucideshare2","FileExplorerHeader_styles_default","iconlucidelockkeyhole","iconlucidearrowleft","FileExplorerHeaderSummary_styles_default","_Class$2","_FileExplorerHeaderSummary","_A$2","_B$2","_C$2","_D$2","_E$1","_F","_initProto$2","_initClass$2","_classDecs$2","_fileExplorerContextDecs$2","_init_fileExplorerContext$2","_paneIconDecs$1","_init_paneIcon$1","_onBackClickDecs","_init_onBackClick","_responseMetadataDecs$1","_init_responseMetadata$1","_resolvedPaneIconDecs","_init_resolvedPaneIcon","_titleHeadingDecs","_init_titleHeading","_FileExplorerHeaderSu2","_ref$2","_classPrivateFieldInitSpec$2","a","_checkPrivateRedeclaration$2","_classPrivateFieldSet$2","s","_assertClassBrand$2","r","_classPrivateFieldGet$2","_defineProperty$2","_toPropertyKey$2","t","_applyDecs$2","o","c","applyDec","m","h","y","v","g","u","w","S","d","p","_setFunctionName$2","P","j","D","I","F","l","f","N","_checkInRHS$2","_toPrimitive$2","_identity$2","_FileExplorerHeaderSu","WebComponent","args","modified","date","parts","getPart","part","type","changedProperties","generation","paneIcon","icon","error","itemCount","isPublic","subject","label$1","isContainerResource","FileExplorerHeaderControls_styles_default","_Class$1","_FileExplorerHeaderControls","_A$1","_B$1","_C$1","_D$1","_E","_initProto$1","_initClass$1","_classDecs$1","_fileExplorerContextDecs$1","_init_fileExplorerContext$1","_menuItemsDecs$1","_init_menuItems$1","_canEditDecs","_init_canEdit","_canManageAccessDecs","_init_canManageAccess","_isMobileDecs","_init_isMobile","_FileExplorerHeaderCo2","_ref$1","_classPrivateFieldInitSpec$1","_checkPrivateRedeclaration$1","_classPrivateFieldSet$1","_assertClassBrand$1","_classPrivateFieldGet$1","_defineProperty$1","_toPropertyKey$1","_applyDecs$1","_setFunctionName$1","_checkInRHS$1","_toPrimitive$1","_identity$1","_FileExplorerHeaderCo","event","subjectUri","supportsEditing","_Class","_FileExplorerHeader3","_A","_B","_C","_D","_initProto","_initClass","_classDecs","_fileExplorerContextDecs","_init_fileExplorerContext","_menuItemsDecs","_init_menuItems","_paneIconDecs","_init_paneIcon","_responseMetadataDecs","_init_responseMetadata","_FileExplorerHeader2","_ref","_classPrivateFieldInitSpec","_checkPrivateRedeclaration","_classPrivateFieldSet","_assertClassBrand","_classPrivateFieldGet","_defineProperty","_toPropertyKey","_applyDecs","_setFunctionName","_checkInRHS","_toPrimitive","_identity","_FileExplorerHeader","metadata","file_explorer_header_default"],"sources":["../../src/components/file-explorer-header/FileExplorerHeader.styles.css","../../src/components/file-explorer-header/FileExplorerHeaderSummary.styles.css","../../src/components/file-explorer-header/FileExplorerHeaderSummary.ts","../../src/components/file-explorer-header/FileExplorerHeaderControls.styles.css","../../src/components/file-explorer-header/FileExplorerHeaderControls.ts","../../src/components/file-explorer-header/FileExplorerHeader.ts","../../src/components/file-explorer-header/index.ts"],"sourcesContent":[":host {\n header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 6px;\n flex-wrap: nowrap;\n box-sizing: border-box;\n width: 100%;\n text-align: right;\n padding: 10px;\n border-bottom: 1px solid var(--solid-ui-color-gray-200, #cbd5e1);\n }\n}\n"," :host {\n .file-explorer-header-summary {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n flex: 1 1 auto;\n min-width: 0;\n text-align: left;\n }\n\n h1 {\n color: var(--solid-ui-color-gray-700, #364153);\n font-size: var(--solid-ui-font-size-xl, 1.25rem); /* while in expand; will go to 2xl when new design is complete */\n font-weight: 500;\n display: flex;\n align-items: center;\n gap: 8px;\n margin: 0;\n }\n\n .resource-info {\n display: flex;\n flex-direction: column;\n min-width: 0;\n }\n\n .container-info {\n display: flex;\n flex-direction: row;\n gap: 10px;\n min-width: 0;\n }\n\n .pane-icon {\n display: flex;\n width: 40px;\n height: 40px;\n padding: 7.5px 7px 6.5px 7px;\n justify-content: center;\n align-items: center;\n aspect-ratio: 1/1;\n /* border-radius: 100px; */\n /* background: var(--slate-600, #45556C); */\n }\n\n .pane-icon img {\n width: 100%;\n height: 100%;\n object-fit: contain;\n display: block;\n }\n\n p {\n display: flex;\n align-items: center;\n gap: 5px;\n color: var(--solid-ui-gray-500, #6A7282);\n font-size: var(--solid-ui-font-size-xs, .75rem);\n font-weight: 500;\n }\n\n .public {\n display: flex;\n padding: 2px 5px;\n justify-content: center;\n align-items: center;\n gap: 3px;\n color: var(--blue-400, #51A2FF);\n border-radius: 5px;\n background: var(--blue-50, #EFF6FF);\n }\n\n icon-lucide-globe {\n stroke-width: 1.021px;\n stroke: var(--blue-400, #51A2FF);\n }\n\n .private {\n display: flex;\n padding: 2px 5px;\n justify-content: center;\n align-items: center;\n gap: 3px;\n color: var(--yellow-600, #D08700);\n border-radius: 5px;\n background: var(--yellow-100, #FEF9C2);\n }\n\n icon-lucide-lock-keyhole {\n stroke-width: 1.021px;\n stroke: var(--yellow-600, #D08700);\n }\n\n icon-lucide-globe,\n icon-lucide-lock-keyhole {\n width: 0.875rem;\n height: 0.875rem;\n }\n\n .resource-date {\n font-size: inherit;\n }\n\n icon-lucide-arrow-left {\n width: 1.125rem;\n height: 1.125rem;\n }\n\n @media (max-width: 600px) {\n .file-explorer-header-summary {\n gap: 7px;\n }\n\n h1 {\n font-size: 14px;\n }\n\n .pane-icon {\n width: 18.2px;\n height: 18.2px;\n flex-shrink: 0;\n aspect-ratio: 1 / 1;\n padding: 0;\n }\n\n p {\n font-size: 14px;\n }\n\n .resource-date {\n font-size: 10px;\n }\n\n .public,\n .private {\n font-size: 9px;\n }\n\n icon-lucide-arrow-left {\n width: 15px;\n height: 18px;\n flex-shrink: 0;\n aspect-ratio: 5 / 6;\n }\n }\n}\n","import { sym } from 'rdflib'\nimport { customElement, WebComponent } from '@/lib/components'\nimport * as utils from '@/utils'\nimport * as widgets from '@/widgets/index'\nimport { DEFAULT_FILE_EXPLORER_CONTEXT, fileExplorerContext } from '@/lib/file-explorer/context'\nimport '@/components/button'\nimport { property, query, state } from 'lit/decorators.js'\nimport type { PropertyValues } from 'lit'\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('solid-ui-file-explorer-header-summary')\nexport default class FileExplorerHeaderSummary extends WebComponent {\n static styles = styles\n\n private _draggableSubjectUri: string | undefined\n private _paneIconGeneration = 0\n\n @consume({ context: fileExplorerContext, subscribe: true })\n accessor fileExplorerContext = DEFAULT_FILE_EXPLORER_CONTEXT\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 willUpdate (changedProperties: PropertyValues<this>) {\n if (changedProperties.has('paneIcon')) {\n const generation = ++this._paneIconGeneration\n this.resolvedPaneIcon = undefined\n this.resolvePaneIcon(this.paneIcon, generation)\n }\n }\n\n protected updated () {\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 (paneIcon: PaneIcon | undefined, generation: number) {\n try {\n if (paneIcon == null) return\n\n const icon = await paneIcon\n if (generation === this._paneIconGeneration) {\n this.resolvedPaneIcon = icon ?? undefined\n }\n } catch (error) {\n if (generation === this._paneIconGeneration) {\n this.resolvedPaneIcon = undefined\n console.warn('file-explorer-header-summary: failed to resolve pane icon', error)\n }\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 aria-hidden=\"true\"></icon-lucide-globe><span class=\"sr-only\">Public</span></span>`\n : html`<span class=\"private\"><icon-lucide-lock-keyhole aria-hidden=\"true\"></icon-lucide-lock-keyhole><span class=\"sr-only\">Private</span></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 <span class=\"sr-only\">Back</span>\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",":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","import { customElement, WebComponent } from '@/lib/components'\nimport { property, state } from 'lit/decorators.js'\nimport { consume } from '@lit/context'\nimport { html, nothing } from 'lit'\nimport '@/components/button'\nimport '~icons/lucide/user-round-cog'\nimport '~icons/lucide/pencil'\nimport styles from './FileExplorerHeaderControls.styles.css'\nimport '@/components/resource-actions-menu/ResourceActionsMenu'\nimport { DEFAULT_FILE_EXPLORER_CONTEXT, fileExplorerContext } from '@/lib/file-explorer/context'\nimport { FILE_EXPLORER_MANAGE_ACCESS_EVENT } from '@/lib/file-explorer/events'\nimport { isContainerSubject } from '@/utils/podUtils'\n\n@customElement('solid-ui-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 = DEFAULT_FILE_EXPLORER_CONTEXT\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 @property({ type: Boolean })\n accessor canManageAccess = 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 handleManageAccess = () => {\n const subjectUri = this.fileExplorerContext.subjectUri\n if (!subjectUri) return\n\n this.dispatchEvent(new CustomEvent(FILE_EXPLORER_MANAGE_ACCESS_EVENT, {\n bubbles: true,\n composed: true,\n detail: { subjectUri }\n }))\n }\n\n private renderDirtyIndicator () {\n if (!this.fileExplorerContext.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.canEdit\n\n return html`\n <div>\n ${this.renderDirtyIndicator()}\n ${!isContainerResource && !this.isMobile && this.canManageAccess\n ? html`\n <solid-ui-button class=\"file-explorer-header-action-button\" variant=\"ghost\" title=\"Manage Access\" @click=${this.handleManageAccess}>\n <icon-lucide-user-round-cog slot=\"icon\"></icon-lucide-user-round-cog>\n <span class=\"sr-only\">Manage access</span>\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.beginEditing}\n >\n <icon-lucide-pencil slot=\"icon\"></icon-lucide-pencil>\n <span class=\"sr-only\">Edit</span>\n </solid-ui-button>\n `\n : nothing}\n `\n : nothing}\n <solid-ui-resource-actions-menu\n .store=${this.fileExplorerContext.store}\n .handleAccessClick=${this.handleManageAccess}\n .handleEditingClick=${this.fileExplorerContext.beginEditing}\n .paneSupportsEditing=${this.fileExplorerContext.canEdit}\n .canEdit=${this.canEdit}\n .canManageAccess=${this.canManageAccess}\n .subjectUri=${this.fileExplorerContext.subjectUri}\n .menuItems=${this.menuItems}\n .isMobile=${this.isMobile}\n ></solid-ui-resource-actions-menu>\n </div>\n `\n }\n}\n","import { sym } from 'rdflib'\nimport { solidLogicSingleton } from 'solid-logic'\nimport { customElement, WebComponent } from '@/lib/components'\nimport { DEFAULT_FILE_EXPLORER_CONTEXT, fileExplorerContext } from '@/lib/file-explorer/context'\nimport { FILE_EXPLORER_BACK_EVENT } from '@/lib/file-explorer/events'\nimport { property, state } from 'lit/decorators.js'\nimport { consume } from '@lit/context'\nimport { html } from 'lit'\nimport '~icons/lucide/share-2'\nimport '~icons/lucide/pencil'\nimport '~icons/lucide/ellipsis-vertical'\nimport styles from './FileExplorerHeader.styles.css'\nimport './FileExplorerHeaderSummary'\nimport './FileExplorerHeaderControls'\nimport { PaneIcon } from './types'\nimport { type FileExplorerResourceMetadata } from './types'\n\n@customElement('solid-ui-file-explorer-header')\nexport default class FileExplorerHeader extends WebComponent {\n static styles = styles\n\n private _loadedMetadataForUri: string | undefined\n private _metadataGeneration = 0\n\n @consume({ context: fileExplorerContext, subscribe: true })\n accessor fileExplorerContext = DEFAULT_FILE_EXPLORER_CONTEXT\n\n @property({ attribute: false })\n accessor menuItems: Array<{ label: string, action: (event: Event) => void }> = []\n\n @property({ attribute: false })\n accessor paneIcon: PaneIcon = undefined as unknown as PaneIcon\n\n @state()\n accessor responseMetadata: Pick<FileExplorerResourceMetadata, 'modified' | 'isPublic' | 'canEdit' | 'canManageAccess' | 'aclUri'> = {\n modified: undefined,\n isPublic: false,\n canEdit: false,\n canManageAccess: false,\n aclUri: undefined\n }\n\n private handleBack = () => {\n this.dispatchEvent(new CustomEvent(FILE_EXPLORER_BACK_EVENT, {\n bubbles: true,\n composed: true,\n detail: {\n subjectUri: this.fileExplorerContext.subjectUri\n }\n }))\n }\n\n private getDefaultResponseMetadata (): Pick<FileExplorerResourceMetadata, 'modified' | 'isPublic' | 'canEdit' | 'canManageAccess' | 'aclUri'> {\n return {\n modified: undefined,\n isPublic: false,\n canEdit: false,\n canManageAccess: false,\n aclUri: undefined\n }\n }\n\n protected willUpdate () {\n const subjectUri = this.fileExplorerContext?.subjectUri\n if (this.fileExplorerContext?.store && subjectUri && this._loadedMetadataForUri !== subjectUri) {\n this._loadedMetadataForUri = subjectUri\n const generation = ++this._metadataGeneration\n this.responseMetadata = this.getDefaultResponseMetadata()\n this.loadResponseMetadata(subjectUri, generation)\n }\n }\n\n private async loadResponseMetadata (subjectUri: string, generation: number) {\n try {\n const metadata = await solidLogicSingleton.resource.fetchMetadata(sym(subjectUri))\n if (generation === this._metadataGeneration && this.fileExplorerContext.subjectUri === subjectUri) {\n this.responseMetadata = {\n modified: metadata.modified,\n isPublic: metadata.access.isPublic,\n canEdit: metadata.access.canEdit,\n canManageAccess: metadata.access.canManageAccess,\n aclUri: metadata.aclUri\n }\n }\n } catch (error) {\n if (generation === this._metadataGeneration && this.fileExplorerContext.subjectUri === subjectUri) {\n this.responseMetadata = this.getDefaultResponseMetadata()\n console.warn('Failed to load response metadata', error)\n }\n }\n }\n\n render () {\n return html`\n <header>\n <solid-ui-file-explorer-header-summary\n .paneIcon=${this.paneIcon}\n .onBackClick=${this.handleBack}\n .responseMetadata=${this.responseMetadata}\n ></solid-ui-file-explorer-header-summary>\n <solid-ui-file-explorer-header-controls\n .menuItems=${this.menuItems}\n .canEdit=${this.responseMetadata.canEdit}\n .canManageAccess=${this.responseMetadata.canManageAccess}\n ></solid-ui-file-explorer-header-controls>\n </header>\n `\n }\n}\n","import FileExplorerHeader from './FileExplorerHeader'\n\nexport { FileExplorerHeader }\nexport default FileExplorerHeader\n"],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// ~icons/lucide/square-arrow-out-up-right
|
|
2
|
+
var e = class extends HTMLElement {
|
|
3
|
+
constructor() {
|
|
4
|
+
super(), this.attachShadow({ mode: "open" }).innerHTML = "<style>:host { display: inline-flex; }</style><svg viewBox=\"0 0 24 24\" width=\"100%\" height=\"100%\" ><path fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M21 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h6m10 0l-9 9m3-9h6v6\"/></svg>";
|
|
5
|
+
}
|
|
6
|
+
};
|
|
7
|
+
customElements.get("icon-lucide-square-arrow-out-up-right") || customElements.define("icon-lucide-square-arrow-out-up-right", e);
|
|
8
|
+
|
|
9
|
+
//# sourceMappingURL=square-arrow-out-up-right-DaALlpHo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"square-arrow-out-up-right-DaALlpHo.js","names":["iconlucidesquarearrowoutupright"],"sources":[],"mappings":""}
|