solid-ui 5.0.2-3 → 5.0.2-5
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/acl/access-controller.cjs.js +1 -1
- package/dist/acl/access-controller.cjs.js.map +1 -1
- package/dist/acl/access-controller.esm.js +37 -37
- package/dist/acl/access-groups.cjs.js +2 -2
- package/dist/acl/access-groups.cjs.js.map +1 -1
- package/dist/acl/access-groups.esm.js +78 -78
- package/dist/acl/acl-control.cjs.js +1 -1
- package/dist/acl/acl-control.cjs.js.map +1 -1
- package/dist/acl/acl-control.esm.js +19 -19
- package/dist/acl/add-agent-buttons.cjs.js +1 -1
- package/dist/acl/add-agent-buttons.cjs.js.map +1 -1
- package/dist/acl/add-agent-buttons.esm.js +51 -51
- package/dist/chat/bookmarks.cjs.js +1 -1
- package/dist/chat/bookmarks.cjs.js.map +1 -1
- package/dist/chat/bookmarks.esm.js +44 -44
- package/dist/chat/bookmarks.esm.js.map +1 -1
- package/dist/chat/chatLogic.cjs.js +2 -2
- package/dist/chat/chatLogic.cjs.js.map +1 -1
- package/dist/chat/chatLogic.esm.js +54 -54
- package/dist/chat/dateFolder.cjs.js +1 -1
- package/dist/chat/dateFolder.cjs.js.map +1 -1
- package/dist/chat/dateFolder.esm.js +30 -30
- package/dist/chat/infinite.cjs.js +1 -1
- package/dist/chat/infinite.cjs.js.map +1 -1
- package/dist/chat/infinite.esm.js +49 -49
- package/dist/chat/keys.cjs.js +2 -2
- package/dist/chat/keys.cjs.js.map +1 -1
- package/dist/chat/keys.esm.js +17 -17
- package/dist/chat/message.cjs.js +4 -4
- package/dist/chat/message.cjs.js.map +1 -1
- package/dist/chat/message.esm.js +114 -114
- package/dist/chat/message.esm.js.map +1 -1
- package/dist/chat/messageTools.cjs.js +1 -1
- package/dist/chat/messageTools.cjs.js.map +1 -1
- package/dist/chat/messageTools.esm.js +51 -51
- package/dist/chunks/{DialogProvider-dagk2fHm.js → DialogProvider-CdesAsw-.js} +5 -6
- package/dist/chunks/{DialogProvider-dagk2fHm.js.map → DialogProvider-CdesAsw-.js.map} +1 -1
- package/dist/chunks/{ResourceActionsMenu-o-8kWx8z.js → ResourceActionsMenu-Bx7YWY3E.js} +31 -32
- package/dist/chunks/{ResourceActionsMenu-o-8kWx8z.js.map → ResourceActionsMenu-Bx7YWY3E.js.map} +1 -1
- package/dist/chunks/{access-control-modal-CWH98HX3.js → access-control-modal-B1mFFIyz.js} +169 -170
- package/dist/chunks/{access-control-modal-CWH98HX3.js.map → access-control-modal-B1mFFIyz.js.map} +1 -1
- package/dist/chunks/{account-Cocvv0H3.js → account-DWmMJre6.js} +16 -17
- package/dist/chunks/{account-Cocvv0H3.js.map → account-DWmMJre6.js.map} +1 -1
- package/dist/chunks/{auth-Df5uYksz.js → auth-EK-iYNYZ.js} +42 -43
- package/dist/chunks/{auth-Df5uYksz.js.map → auth-EK-iYNYZ.js.map} +1 -1
- package/dist/chunks/{avatar-DeotTinS.js → avatar-BBgvMlqv.js} +8 -9
- package/dist/chunks/{avatar-DeotTinS.js.map → avatar-BBgvMlqv.js.map} +1 -1
- package/dist/chunks/{button-Dy1aFjqG.js → button-D6qO2idW.js} +10 -11
- package/dist/chunks/{button-Dy1aFjqG.js.map → button-D6qO2idW.js.map} +1 -1
- package/dist/chunks/{chunk.UEBQI7VV-9M5gO7Ew.js → chunk.UEBQI7VV-lcP-fpUk.js} +12 -9
- package/dist/chunks/chunk.UEBQI7VV-lcP-fpUk.js.map +1 -0
- package/dist/chunks/{combobox-BL0-8wef.js → combobox-DS6byaf1.js} +18 -19
- package/dist/chunks/{combobox-BL0-8wef.js.map → combobox-DS6byaf1.js.map} +1 -1
- package/dist/chunks/{combobox-option-DjlmXt1O.js → combobox-option-DOtGuKel.js} +7 -8
- package/dist/chunks/{combobox-option-DjlmXt1O.js.map → combobox-option-DOtGuKel.js.map} +1 -1
- package/dist/chunks/{components-LxiwG5ae.js → components-C8c2Ucm5.js} +201 -190
- package/dist/chunks/components-C8c2Ucm5.js.map +1 -0
- package/dist/chunks/{context-By_u12WA.js → context-BDrfQ9bN.js} +2 -2
- package/dist/chunks/{context-By_u12WA.js.map → context-BDrfQ9bN.js.map} +1 -1
- package/dist/chunks/{dialog-CrmftB9c.js → dialog-CgYK767T.js} +15 -16
- package/dist/chunks/{dialog-CrmftB9c.js.map → dialog-CgYK767T.js.map} +1 -1
- package/dist/chunks/{dialog-content-Cw3xqJ45.js → dialog-content-DjwRH1ci.js} +5 -6
- package/dist/chunks/{dialog-content-Cw3xqJ45.js.map → dialog-content-DjwRH1ci.js.map} +1 -1
- package/dist/chunks/{dialog-footer-sFQf-2zD.js → dialog-footer-GQWi8lfB.js} +5 -6
- package/dist/chunks/{dialog-footer-sFQf-2zD.js.map → dialog-footer-GQWi8lfB.js.map} +1 -1
- package/dist/chunks/{dialog-header-xIWIqfZK.js → dialog-header-c3qOMQfb.js} +5 -6
- package/dist/chunks/{dialog-header-xIWIqfZK.js.map → dialog-header-c3qOMQfb.js.map} +1 -1
- package/dist/chunks/{dialogs-B3tHtjMf.js → dialogs-BmtLjMzg.js} +2 -2
- package/dist/chunks/{dialogs-B3tHtjMf.js.map → dialogs-BmtLjMzg.js.map} +1 -1
- package/dist/chunks/{dialogs-root-Lh2u-3Cs.js → dialogs-root-BNF3_SA8.js} +8 -9
- package/dist/chunks/{dialogs-root-Lh2u-3Cs.js.map → dialogs-root-BNF3_SA8.js.map} +1 -1
- package/dist/chunks/{error-state-DnsXVj1z.js → error-state-jV9dlFX2.js} +10 -11
- package/dist/chunks/{error-state-DnsXVj1z.js.map → error-state-jV9dlFX2.js.map} +1 -1
- package/dist/chunks/{file-explorer-header-B6-Q0i6V.js → file-explorer-header-Djp_eFuT.js} +33 -34
- package/dist/chunks/file-explorer-header-Djp_eFuT.js.map +1 -0
- package/dist/chunks/{file-explorer-provider-B3gUBkHg.js → file-explorer-provider-DpjC7uds.js} +8 -9
- package/dist/chunks/{file-explorer-provider-B3gUBkHg.js.map → file-explorer-provider-DpjC7uds.js.map} +1 -1
- package/dist/chunks/{guard-C39y81In.js → guard-SxVT1xr4.js} +8 -9
- package/dist/chunks/{guard-C39y81In.js.map → guard-SxVT1xr4.js.map} +1 -1
- package/dist/chunks/{index.esm-C9oV3H3X.js → index.esm-BQrkxchZ.js} +2 -2
- package/dist/chunks/{index.esm-C9oV3H3X.js.map → index.esm-BQrkxchZ.js.map} +1 -1
- package/dist/chunks/{input-Bi6ZBZQw.js → input-Bz3l514j.js} +11 -12
- package/dist/chunks/{input-Bi6ZBZQw.js.map → input-Bz3l514j.js.map} +1 -1
- package/dist/chunks/{jsonld-D-TE94B0.js → jsonld-C6IOQ1Tg.js} +2 -2
- package/dist/chunks/{jsonld-D-TE94B0.js.map → jsonld-C6IOQ1Tg.js.map} +1 -1
- package/dist/chunks/{login-button-fo0P8vym.js → login-button-Dd0rwZJk.js} +9 -10
- package/dist/chunks/{login-button-fo0P8vym.js.map → login-button-Dd0rwZJk.js.map} +1 -1
- package/dist/chunks/{logout-button-CF2YFgID.js → logout-button-Da34Lrnq.js} +9 -10
- package/dist/chunks/{logout-button-CF2YFgID.js.map → logout-button-Da34Lrnq.js.map} +1 -1
- package/dist/chunks/{menu-RumUciM-.js → menu-BNJU654v.js} +48 -50
- package/dist/chunks/{menu-RumUciM-.js.map → menu-BNJU654v.js.map} +1 -1
- package/dist/chunks/{menu-item-CVAZyipz.js → menu-item-nfPpH4dN.js} +10 -11
- package/dist/chunks/{menu-item-CVAZyipz.js.map → menu-item-nfPpH4dN.js.map} +1 -1
- package/dist/chunks/{photo-capture-CAfo7y6-.js → photo-capture-hJaJm4TM.js} +20 -21
- package/dist/chunks/photo-capture-hJaJm4TM.js.map +1 -0
- package/dist/chunks/{photo-capture-modal-DWmDE_Ws.js → photo-capture-modal-BsHv6wmh.js} +28 -29
- package/dist/chunks/{photo-capture-modal-DWmDE_Ws.js.map → photo-capture-modal-BsHv6wmh.js.map} +1 -1
- package/dist/chunks/{provide-B5NeVMM_.js → provide-z9U64q4m.js} +2 -2
- package/dist/chunks/{provide-B5NeVMM_.js.map → provide-z9U64q4m.js.map} +1 -1
- package/dist/chunks/{provider-BbT2duMy.js → provider-B3FoP2qW.js} +12 -13
- package/dist/chunks/{provider-BbT2duMy.js.map → provider-B3FoP2qW.js.map} +1 -1
- package/dist/chunks/{rdf-form-CH9bDx98.js → rdf-form-BkKDmFPD.js} +30 -31
- package/dist/chunks/{rdf-form-CH9bDx98.js.map → rdf-form-BkKDmFPD.js.map} +1 -1
- package/dist/chunks/{rdf-input-C_V0pIS5.js → rdf-input-BPePtqfS.js} +62 -63
- package/dist/chunks/{rdf-input-C_V0pIS5.js.map → rdf-input-BPePtqfS.js.map} +1 -1
- package/dist/chunks/{select-y1Z6fwmh.js → select-ClPkDkGl.js} +9 -10
- package/dist/chunks/{select-y1Z6fwmh.js.map → select-ClPkDkGl.js.map} +1 -1
- package/dist/chunks/{select-option-U4ALXL20.js → select-option-DQan7rcB.js} +7 -8
- package/dist/chunks/{select-option-U4ALXL20.js.map → select-option-DQan7rcB.js.map} +1 -1
- package/dist/chunks/{signup-button-DicFpAjD.js → signup-button-DOInssOu.js} +9 -10
- package/dist/chunks/{signup-button-DicFpAjD.js.map → signup-button-DOInssOu.js.map} +1 -1
- package/dist/chunks/{solid-emblem-CeCXTpve.js → solid-emblem-DwLdkGuO.js} +7 -8
- package/dist/chunks/{solid-emblem-CeCXTpve.js.map → solid-emblem-DwLdkGuO.js.map} +1 -1
- package/dist/chunks/{solidLogicSingleton.esm-BXyHD7mn.js → solidLogicSingleton.esm-Bvt7E7Vl.js} +50 -29
- package/dist/chunks/solidLogicSingleton.esm-Bvt7E7Vl.js.map +1 -0
- package/dist/chunks/{src-Bhtor0ZC.js → src-akaVfkuf.js} +2739 -2719
- package/dist/chunks/src-akaVfkuf.js.map +1 -0
- package/dist/chunks/{style-CXaw5EYi.js → style-Dlw9-wPn.js} +3 -3
- package/dist/chunks/{style-CXaw5EYi.js.map → style-Dlw9-wPn.js.map} +1 -1
- package/dist/chunks/{widgets-BBEQu0CS.js → widgets-B1hBVhRL.js} +309 -309
- package/dist/chunks/widgets-B1hBVhRL.js.map +1 -0
- package/dist/components/access-control-modal/AccessControlAddAccess.cjs.js +1 -1
- package/dist/components/access-control-modal/AccessControlAddAccess.esm.js +5 -5
- package/dist/components/access-control-modal/AccessControlAddAccess.esm.js.map +1 -1
- package/dist/components/access-control-modal/AccessControlErrors.esm.js.map +1 -1
- package/dist/components/access-control-modal/AccessControlGeneralAccess.cjs.js +2 -2
- package/dist/components/access-control-modal/AccessControlGeneralAccess.cjs.js.map +1 -1
- package/dist/components/access-control-modal/AccessControlGeneralAccess.esm.js +12 -12
- package/dist/components/access-control-modal/AccessControlGeneralAccess.esm.js.map +1 -1
- package/dist/components/access-control-modal/AccessControlModal.cjs.js +2 -2
- package/dist/components/access-control-modal/AccessControlModal.cjs.js.map +1 -1
- package/dist/components/access-control-modal/AccessControlModal.esm.js +35 -35
- package/dist/components/access-control-modal/AccessControlModal.esm.js.map +1 -1
- package/dist/components/access-control-modal/AccessControlSharedAccess.cjs.js +1 -1
- package/dist/components/access-control-modal/AccessControlSharedAccess.esm.js +2 -2
- package/dist/components/access-control-modal/AccessControlSharedAccess.esm.js.map +1 -1
- package/dist/components/access-control-modal/accessTargetResolver.cjs.js +1 -1
- package/dist/components/access-control-modal/accessTargetResolver.cjs.js.map +1 -1
- package/dist/components/access-control-modal/accessTargetResolver.esm.js +21 -21
- package/dist/components/access-control-modal.js +1 -1
- package/dist/components/account/Account.cjs.js +1 -1
- package/dist/components/account/Account.esm.js +3 -3
- package/dist/components/account/Account.esm.js.map +1 -1
- package/dist/components/account.js +1 -1
- package/dist/components/all.cjs.js +1 -1
- package/dist/components/all.esm.js +16 -16
- package/dist/components/avatar.js +1 -1
- package/dist/components/button/Button.esm.js.map +1 -1
- package/dist/components/button.js +1 -1
- package/dist/components/combobox/Combobox.cjs.js +1 -1
- package/dist/components/combobox/Combobox.esm.js +1 -1
- package/dist/components/combobox/Combobox.esm.js.map +1 -1
- package/dist/components/combobox-option/ComboboxOption.esm.js.map +1 -1
- package/dist/components/combobox-option.js +1 -1
- package/dist/components/combobox.js +1 -1
- package/dist/components/dialog/Dialog.cjs.js +2 -2
- package/dist/components/dialog/Dialog.cjs.js.map +1 -1
- package/dist/components/dialog/Dialog.esm.js +9 -9
- package/dist/components/dialog/Dialog.esm.js.map +1 -1
- package/dist/components/dialog-content.js +1 -1
- package/dist/components/dialog-footer.js +1 -1
- package/dist/components/dialog-header.js +1 -1
- package/dist/components/dialog-provider/DialogProvider.cjs.js +1 -1
- package/dist/components/dialog-provider/DialogProvider.cjs.js.map +1 -1
- package/dist/components/dialog-provider/DialogProvider.esm.js +6 -6
- package/dist/components/dialog-provider/DialogProvider.esm.js.map +1 -1
- package/dist/components/dialog-provider.js +1 -1
- package/dist/components/dialog.js +1 -1
- package/dist/components/dialogs-root/DialogsRoot.cjs.js +2 -2
- package/dist/components/dialogs-root/DialogsRoot.cjs.js.map +1 -1
- package/dist/components/dialogs-root/DialogsRoot.esm.js +7 -7
- package/dist/components/dialogs-root/DialogsRoot.esm.js.map +1 -1
- package/dist/components/dialogs-root.js +1 -1
- package/dist/components/error-state/ErrorState.cjs.js +1 -1
- package/dist/components/error-state/ErrorState.esm.js +1 -1
- package/dist/components/error-state/ErrorState.esm.js.map +1 -1
- package/dist/components/error-state.js +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js +2 -2
- package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js.map +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeader.d.ts.map +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeader.esm.js +20 -19
- package/dist/components/file-explorer-header/FileExplorerHeader.esm.js.map +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js +6 -6
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js.map +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.d.ts.map +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js +25 -24
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js.map +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js +7 -7
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js.map +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.d.ts.map +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js +28 -27
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js.map +1 -1
- package/dist/components/file-explorer-header.js +1 -1
- package/dist/components/file-explorer-provider/FileExplorerProvider.cjs.js +1 -1
- package/dist/components/file-explorer-provider/FileExplorerProvider.cjs.js.map +1 -1
- package/dist/components/file-explorer-provider/FileExplorerProvider.d.ts +1 -1
- package/dist/components/file-explorer-provider/FileExplorerProvider.d.ts.map +1 -1
- package/dist/components/file-explorer-provider/FileExplorerProvider.esm.js +8 -7
- package/dist/components/file-explorer-provider/FileExplorerProvider.esm.js.map +1 -1
- package/dist/components/file-explorer-provider.js +1 -1
- package/dist/components/guard.js +1 -1
- package/dist/components/input/Input.esm.js.map +1 -1
- package/dist/components/input.js +1 -1
- package/dist/components/login-button/LoginButton.cjs.js +1 -1
- package/dist/components/login-button/LoginButton.esm.js +1 -1
- package/dist/components/login-button.js +1 -1
- package/dist/components/login-modal/LoginModal.cjs.js +1 -1
- package/dist/components/login-modal/LoginModal.esm.js +2 -2
- package/dist/components/login-modal/LoginModal.esm.js.map +1 -1
- package/dist/components/login-modal.js +1 -1
- package/dist/components/logout-button/LogoutButton.cjs.js +1 -1
- package/dist/components/logout-button/LogoutButton.esm.js +1 -1
- package/dist/components/logout-button.js +1 -1
- package/dist/components/menu/Menu.cjs.js +1 -1
- package/dist/components/menu/Menu.cjs.js.map +1 -1
- package/dist/components/menu/Menu.esm.js +1 -1
- package/dist/components/menu/Menu.esm.js.map +1 -1
- package/dist/components/menu-item/MenuItem.esm.js.map +1 -1
- package/dist/components/menu-item.js +1 -1
- package/dist/components/menu.js +1 -1
- package/dist/components/photo-capture/PhotoCapture.esm.js.map +1 -1
- package/dist/components/photo-capture-modal/PhotoCaptureModal.esm.js.map +1 -1
- package/dist/components/photo-capture-modal.js +1 -1
- package/dist/components/photo-capture.js +1 -1
- package/dist/components/provider/Provider.esm.js.map +1 -1
- package/dist/components/provider.js +1 -1
- package/dist/components/rdf-form/RDFForm.cjs.js +3 -3
- package/dist/components/rdf-form/RDFForm.cjs.js.map +1 -1
- package/dist/components/rdf-form/RDFForm.esm.js +13 -13
- package/dist/components/rdf-form/RDFForm.esm.js.map +1 -1
- package/dist/components/rdf-form.js +1 -1
- package/dist/components/rdf-input/RDFInput.cjs.js +2 -2
- package/dist/components/rdf-input/RDFInput.cjs.js.map +1 -1
- package/dist/components/rdf-input/RDFInput.esm.js +4 -4
- package/dist/components/rdf-input/RDFInput.esm.js.map +1 -1
- package/dist/components/rdf-input.js +1 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js +8 -8
- package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js.map +1 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts.map +1 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js +18 -17
- package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js.map +1 -1
- package/dist/components/resource-actions-menu.js +1 -1
- package/dist/components/select/Select.cjs.js +1 -1
- package/dist/components/select/Select.cjs.js.map +1 -1
- package/dist/components/select/Select.esm.js +1 -1
- package/dist/components/select/Select.esm.js.map +1 -1
- package/dist/components/select-option/SelectOption.esm.js.map +1 -1
- package/dist/components/select-option.js +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/signup-button/SignupButton.cjs.js +1 -1
- package/dist/components/signup-button/SignupButton.esm.js +1 -1
- package/dist/components/signup-button.js +1 -1
- package/dist/components/solid-emblem.js +1 -1
- package/dist/components.js +30 -30
- package/dist/create/create.cjs.js +1 -1
- package/dist/create/create.cjs.js.map +1 -1
- package/dist/create/create.esm.js +23 -23
- package/dist/header/index.cjs.js +1 -1
- package/dist/header/index.cjs.js.map +1 -1
- package/dist/header/index.esm.js +53 -53
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +24 -24
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +11 -12
- package/dist/lib/auth/SolidAuth.cjs.js +1 -1
- package/dist/lib/auth/SolidAuth.cjs.js.map +1 -1
- package/dist/lib/auth/SolidAuth.esm.js +8 -8
- package/dist/lib/auth/SolidAuth.esm.js.map +1 -1
- package/dist/lib/code-editor/CodeEditor.cjs.js +1 -1
- package/dist/lib/code-editor/CodeEditor.cjs.js.map +1 -1
- package/dist/lib/code-editor/CodeEditor.d.ts.map +1 -1
- package/dist/lib/code-editor/CodeEditor.esm.js +34 -30
- package/dist/lib/code-editor/CodeEditor.esm.js.map +1 -1
- package/dist/lib/components/dialog-component/DialogComponent.cjs.js +1 -1
- package/dist/lib/components/dialog-component/DialogComponent.cjs.js.map +1 -1
- package/dist/lib/components/dialog-component/DialogComponent.esm.js +4 -4
- package/dist/lib/components/index.cjs.js +1 -1
- package/dist/lib/components/index.esm.js +3 -3
- package/dist/lib/dialogs/helpers.cjs.js +1 -1
- package/dist/lib/dialogs/helpers.cjs.js.map +1 -1
- package/dist/lib/dialogs/helpers.esm.js +4 -4
- package/dist/lib/file-explorer/index.cjs.js +1 -1
- package/dist/lib/file-explorer/index.esm.js +3 -3
- package/dist/lib/file-explorer/relevant-panes.cjs.js +1 -1
- package/dist/lib/file-explorer/relevant-panes.cjs.js.map +1 -1
- package/dist/lib/file-explorer/relevant-panes.d.ts +7 -0
- package/dist/lib/file-explorer/relevant-panes.d.ts.map +1 -1
- package/dist/lib/file-explorer/relevant-panes.esm.js +11 -2
- package/dist/lib/file-explorer/relevant-panes.esm.js.map +1 -1
- package/dist/lib/messageArea.cjs.js +1 -1
- package/dist/lib/messageArea.cjs.js.map +1 -1
- package/dist/lib/messageArea.esm.js +27 -27
- package/dist/lib/pad.cjs.js +1 -1
- package/dist/lib/pad.cjs.js.map +1 -1
- package/dist/lib/pad.esm.js +15 -15
- package/dist/lib/participation.cjs.js +1 -1
- package/dist/lib/participation.cjs.js.map +1 -1
- package/dist/lib/participation.esm.js +59 -59
- package/dist/lib/preferences.cjs.js +1 -1
- package/dist/lib/preferences.cjs.js.map +1 -1
- package/dist/lib/preferences.esm.js +28 -28
- package/dist/lib/table.cjs.js +3 -3
- package/dist/lib/table.cjs.js.map +1 -1
- package/dist/lib/table.esm.js +123 -123
- package/dist/lib/table.esm.js.map +1 -1
- package/dist/lib/tabs.cjs.js +1 -1
- package/dist/lib/tabs.cjs.js.map +1 -1
- package/dist/lib/tabs.esm.js +16 -16
- package/dist/loader.js +11 -12
- package/dist/login/login.cjs.js +6 -6
- package/dist/login/login.cjs.js.map +1 -1
- package/dist/login/login.esm.js +142 -142
- package/dist/media/media-capture.cjs.js +1 -1
- package/dist/media/media-capture.cjs.js.map +1 -1
- package/dist/media/media-capture.esm.js +6 -6
- package/dist/solid-ui.js +32 -32
- package/dist/solid-ui.min.js +32 -32
- package/dist/solid-ui.min.js.map +1 -1
- package/dist/utils/index.cjs.js +1 -1
- package/dist/utils/index.cjs.js.map +1 -1
- package/dist/utils/index.esm.js +4 -4
- package/dist/utils/keyHelpers/accessData.cjs.js +1 -1
- package/dist/utils/keyHelpers/accessData.cjs.js.map +1 -1
- package/dist/utils/keyHelpers/accessData.esm.js +15 -15
- package/dist/utils/label.cjs.js +1 -1
- package/dist/utils/label.cjs.js.map +1 -1
- package/dist/utils/label.esm.js +4 -4
- package/dist/widgets/buttons.cjs.js +12 -12
- package/dist/widgets/buttons.cjs.js.map +1 -1
- package/dist/widgets/buttons.esm.js +179 -179
- package/dist/widgets/error.cjs.js +1 -1
- package/dist/widgets/error.cjs.js.map +1 -1
- package/dist/widgets/error.esm.js +5 -5
- package/dist/widgets/forms/autocomplete/autocompleteBar.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteBar.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteBar.esm.js +17 -17
- package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteField.esm.js +23 -23
- package/dist/widgets/forms/autocomplete/autocompletePicker.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/autocompletePicker.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompletePicker.esm.js +26 -26
- package/dist/widgets/forms/autocomplete/language.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/language.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/language.esm.js +9 -9
- package/dist/widgets/forms/autocomplete/publicData.cjs.js +5 -5
- package/dist/widgets/forms/autocomplete/publicData.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/publicData.esm.js +67 -67
- package/dist/widgets/forms/basic.cjs.js +1 -1
- package/dist/widgets/forms/basic.cjs.js.map +1 -1
- package/dist/widgets/forms/basic.esm.js +11 -11
- package/dist/widgets/forms.cjs.js +4 -4
- package/dist/widgets/forms.cjs.js.map +1 -1
- package/dist/widgets/forms.esm.js +561 -561
- package/dist/widgets/forms.esm.js.map +1 -1
- package/dist/widgets/index.cjs.js +1 -1
- package/dist/widgets/index.cjs.js.map +1 -1
- package/dist/widgets/index.esm.js +82 -82
- package/dist/widgets/peoplePicker.cjs.js +2 -2
- package/dist/widgets/peoplePicker.cjs.js.map +1 -1
- package/dist/widgets/peoplePicker.esm.js +82 -82
- package/package.json +3 -3
- package/dist/chunks/chunk.UEBQI7VV-9M5gO7Ew.js.map +0 -1
- package/dist/chunks/components-LxiwG5ae.js.map +0 -1
- package/dist/chunks/custom-element-BW8Ua4c7.js +0 -9
- package/dist/chunks/custom-element-BW8Ua4c7.js.map +0 -1
- package/dist/chunks/decorators-V-B013l9.js +0 -12
- package/dist/chunks/decorators-V-B013l9.js.map +0 -1
- package/dist/chunks/file-explorer-header-B6-Q0i6V.js.map +0 -1
- package/dist/chunks/photo-capture-CAfo7y6-.js.map +0 -1
- package/dist/chunks/solidLogicSingleton.esm-BXyHD7mn.js.map +0 -1
- package/dist/chunks/src-Bhtor0ZC.js.map +0 -1
- package/dist/chunks/widgets-BBEQu0CS.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const e=require("../../lib/components/decorators.cjs.js"),t=require("../../lib/components/web-component/WebComponent.cjs.js");require("../../lib/components/index.cjs.js"),require("
|
|
1
|
+
const e=require("../../lib/components/decorators.cjs.js"),t=require("../../lib/components/web-component/WebComponent.cjs.js");require("../../lib/components/index.cjs.js"),require("../../_virtual/~icons/lucide/book-user.cjs.js"),require("../../_virtual/~icons/lucide/user-round.cjs.js"),require("../../_virtual/~icons/lucide/users.cjs.js"),require("../../_virtual/~icons/lucide/circle-x.cjs.js"),require("../../_virtual/~icons/lucide/globe.cjs.js"),require("../button/index.cjs.js"),require("../combobox/index.cjs.js"),require("../combobox-option/index.cjs.js");const n=require("./AccessControlAddAccess.styles.cjs.js");let r=require("solid-logic"),i=require("lit"),a=require("lit/decorators.js");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;if(typeof Symbol<`u`&&(n=e[Symbol.toPrimitive])!==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}function U(e){return i.html`
|
|
2
2
|
<span class="access-grants-directory-entry">
|
|
3
3
|
${W(e)}
|
|
4
4
|
<span>${e.label}</span>
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { customElement as e } from "../../lib/components/decorators.esm.js";
|
|
2
2
|
import t from "../../lib/components/web-component/WebComponent.esm.js";
|
|
3
3
|
import "../../lib/components/index.esm.js";
|
|
4
|
-
import "../button/index.esm.js";
|
|
5
|
-
import "../combobox/index.esm.js";
|
|
6
|
-
import "../combobox-option/index.esm.js";
|
|
7
|
-
import "../../_virtual/~icons/lucide/circle-x.esm.js";
|
|
8
|
-
import "../../_virtual/~icons/lucide/globe.esm.js";
|
|
9
4
|
import "../../_virtual/~icons/lucide/book-user.esm.js";
|
|
10
5
|
import "../../_virtual/~icons/lucide/user-round.esm.js";
|
|
11
6
|
import "../../_virtual/~icons/lucide/users.esm.js";
|
|
7
|
+
import "../../_virtual/~icons/lucide/circle-x.esm.js";
|
|
8
|
+
import "../../_virtual/~icons/lucide/globe.esm.js";
|
|
9
|
+
import "../button/index.esm.js";
|
|
10
|
+
import "../combobox/index.esm.js";
|
|
11
|
+
import "../combobox-option/index.esm.js";
|
|
12
12
|
import n from "./AccessControlAddAccess.styles.esm.js";
|
|
13
13
|
import { ACCESS_ROLES as r } from "solid-logic";
|
|
14
14
|
import { html as i, nothing as a } from "lit";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessControlAddAccess.esm.js","names":["customElement","WebComponent","html","nothing","property","ACCESS_ROLES","styles","directoryEntryOptionTemplate","entry","renderDirectoryEntryIcon","label","sources","includes","_classDecs","_AccessControlAddAcce","_AccessControlAddAcce2","_A","WeakMap","_B","_C","_D","_E","_F","_ref","_principalInputValueDecs","attribute","_addAccessRoleValueDecs","_pendingAccessGrantsDecs","_inputErrorDecs","_disabledDecs","type","Boolean","_asyncOptionsProviderDecs","_AccessControlAddAccess","AccessControlAddAccess","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_principalInputValue","_init_addAccessRoleValue","_init_pendingAccessGrants","_init_inputError","_init_disabled","_init_asyncOptionsProvider","_classPrivateFieldGet","principalInputValue","v","_classPrivateFieldSet","addAccessRoleValue","pendingAccessGrants","inputError","disabled","asyncOptionsProvider","onPrincipalInput","event","value","getEventValue","dispatchEvent","CustomEvent","detail","bubbles","composed","onPrincipalSelect","option","targetKind","onRoleChange","role","accessRole","find","candidate","undefined","onPendingGrantRemove","index","target","currentTarget","render","renderPendingAccessGrants","filter","map","length","grant","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","customElement","styles","customElement$1","WebComponent","AccessControlAddAccess_styles_default","_Class","_AccessControlAddAccess","_A","_B","_C","_D","_E","_F","_initProto","_initClass","_classDecs","_principalInputValueDecs","_init_principalInputValue","_addAccessRoleValueDecs","_init_addAccessRoleValue","_pendingAccessGrantsDecs","_init_pendingAccessGrants","_inputErrorDecs","_init_inputError","_disabledDecs","_init_disabled","_asyncOptionsProviderDecs","_init_asyncOptionsProvider","_AccessControlAddAcce2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","directoryEntryOptionTemplate","renderDirectoryEntryIcon","entry","nothing","_AccessControlAddAcce","property","args","value","event","option","role","accessRole","ACCESS_ROLES","candidate","target","grant","index"],"sources":["../../../src/components/access-control-modal/AccessControlAddAccess.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { ACCESS_ROLES, type AccessRole, type DirectoryEntry } from 'solid-logic'\nimport type { AsyncComboboxOptionsProvider, ComboboxChangeEvent, ComboboxOptionData } from '@/components/combobox'\n\nimport '~icons/lucide/book-user'\nimport '~icons/lucide/user-round'\nimport '~icons/lucide/users'\nimport '~icons/lucide/circle-x'\nimport '~icons/lucide/globe'\nimport '@/components/button'\nimport '@/components/combobox'\nimport '@/components/combobox-option'\n\nimport styles from './AccessControlAddAccess.styles.css'\nimport type { PendingAccessGrant, PendingGrantRemovedDetail, RoleChangedDetail, TargetInputDetail, TargetSelectedDetail } from './types'\n\nexport function directoryEntryOptionTemplate (entry: DirectoryEntry) {\n return html`\n <span class=\"access-grants-directory-entry\">\n ${renderDirectoryEntryIcon(entry)}\n <span>${entry.label}</span>\n </span>\n `\n}\n\nfunction renderDirectoryEntryIcon (entry: DirectoryEntry) {\n if (entry.sources.includes('contacts') || entry.sources.includes('groups')) {\n return html`<icon-lucide-book-user style=\"width: 13px; height: 13px; flex: 0 0 13px;\"></icon-lucide-book-user>`\n }\n\n if (entry.sources.includes('friends')) {\n return html`<icon-lucide-users style=\"width: 13px; height: 13px; flex: 0 0 13px;\"></icon-lucide-users>`\n }\n\n if (entry.sources.includes('catalog')) {\n return html`<icon-lucide-user-round style=\"width: 13px; height: 13px; flex: 0 0 13px;\"></icon-lucide-user-round>`\n }\n\n return nothing\n}\n\n@customElement('solid-ui-access-control-add-access')\nexport default class AccessControlAddAccess extends WebComponent {\n static styles = styles\n\n @property({ attribute: false })\n accessor principalInputValue = ''\n\n @property({ attribute: false })\n accessor addAccessRoleValue: AccessRole = 'Viewer'\n\n @property({ attribute: false })\n accessor pendingAccessGrants: PendingAccessGrant[] = []\n\n @property({ attribute: false })\n accessor inputError = ''\n\n @property({ type: Boolean })\n accessor disabled = false\n\n @property({ attribute: false })\n accessor asyncOptionsProvider: AsyncComboboxOptionsProvider | null = null\n\n private onPrincipalInput (event: Event) {\n const value = this.getEventValue(event)\n this.dispatchEvent(new CustomEvent<TargetInputDetail>('target-input', {\n detail: { value },\n bubbles: true,\n composed: true\n }))\n }\n\n private onPrincipalSelect (event: ComboboxChangeEvent) {\n const option = event.detail.option as ComboboxOptionData & { targetKind?: 'origin' | 'trustedApp' }\n if (typeof option.value !== 'string') {\n return\n }\n\n this.dispatchEvent(new CustomEvent<TargetSelectedDetail>('target-selected', {\n detail: {\n value: option.value,\n label: option.label,\n targetKind: option.targetKind\n },\n bubbles: true,\n composed: true\n }))\n }\n\n private onRoleChange (event: ComboboxChangeEvent) {\n const role = event.detail.option.value\n const accessRole = typeof role === 'string'\n ? ACCESS_ROLES.find(candidate => candidate === role)\n : undefined\n if (!accessRole) {\n return\n }\n\n this.dispatchEvent(new CustomEvent<RoleChangedDetail>('role-changed', {\n detail: { role: accessRole },\n bubbles: true,\n composed: true\n }))\n }\n\n private onPendingGrantRemove (index: number) {\n this.dispatchEvent(new CustomEvent<PendingGrantRemovedDetail>('pending-grant-removed', {\n detail: { index },\n bubbles: true,\n composed: true\n }))\n }\n\n private getEventValue (event: Event): string {\n const target = event.currentTarget as { value?: string | null } | null\n return typeof target?.value === 'string' ? target.value : ''\n }\n\n protected render () {\n return html`\n <section class=\"access-grants-form\" aria-label=\"Add access\">\n <p>Add person, group or software agent URL.</p>\n <div class=\"access-grants-form-main\">\n <div class=\"access-grants-input\">\n <solid-ui-combobox\n class=\"access-principal-combobox\"\n .disabled=${this.disabled}\n label=\"Add person, group or software agent URL.\"\n .srOnlyLabel=${true}\n .value=${this.principalInputValue}\n placeholder=\"Paste a link or enter a name\"\n .asyncOptionsProvider=${this.asyncOptionsProvider}\n @input=${this.onPrincipalInput}\n @change=${this.onPrincipalSelect}\n ></solid-ui-combobox>\n ${this.inputError\n ? html`<p class=\"access-principal-error\" role=\"alert\">${this.inputError}</p>`\n : nothing}\n ${this.renderPendingAccessGrants()}\n </div>\n <solid-ui-combobox\n class=\"access-role-select access-role-select--top\"\n .disabled=${this.disabled}\n .value=${this.addAccessRoleValue}\n @change=${this.onRoleChange}\n >\n ${ACCESS_ROLES\n .filter(role => role !== 'No Access')\n .map(role => html`\n <solid-ui-combobox-option value=${role}>${role}</solid-ui-combobox-option>\n `)}\n </solid-ui-combobox>\n </div>\n </section>\n `\n }\n\n private renderPendingAccessGrants () {\n if (!this.pendingAccessGrants.length) {\n return nothing\n }\n\n return html`\n <div class=\"access-grants-pending\">\n ${this.pendingAccessGrants.map((grant, index) => html`\n <div class=\"access-grants-pending-item\">\n <span class=\"access-grants-pending-item-label\">\n ${grant.targetKind === 'trustedApp'\n ? html`<icon-lucide-globe style=\"width: 13px; height: 13px; vertical-align: -2px;\"></icon-lucide-globe>`\n : nothing}\n ${grant.label}\n </span>\n <solid-ui-button\n type=\"button\"\n variant=\"ghost\"\n class=\"access-grants-pending-item-remove\"\n ?disabled=${this.disabled}\n @click=${() => this.onPendingGrantRemove(index)}\n >\n <span class=\"sr-only\">Remove ${grant.label}</span>\n <icon-lucide-circle-x slot=\"icon\"></icon-lucide-circle-x>\n </solid-ui-button>\n </div>\n `)}\n </div>\n `\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AccessControlAddAccess.esm.js","names":["customElement","WebComponent","html","nothing","property","ACCESS_ROLES","styles","directoryEntryOptionTemplate","entry","renderDirectoryEntryIcon","label","sources","includes","_classDecs","_AccessControlAddAcce","_AccessControlAddAcce2","_A","WeakMap","_B","_C","_D","_E","_F","_ref","_principalInputValueDecs","attribute","_addAccessRoleValueDecs","_pendingAccessGrantsDecs","_inputErrorDecs","_disabledDecs","type","Boolean","_asyncOptionsProviderDecs","_AccessControlAddAccess","AccessControlAddAccess","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_principalInputValue","_init_addAccessRoleValue","_init_pendingAccessGrants","_init_inputError","_init_disabled","_init_asyncOptionsProvider","_classPrivateFieldGet","principalInputValue","v","_classPrivateFieldSet","addAccessRoleValue","pendingAccessGrants","inputError","disabled","asyncOptionsProvider","onPrincipalInput","event","value","getEventValue","dispatchEvent","CustomEvent","detail","bubbles","composed","onPrincipalSelect","option","targetKind","onRoleChange","role","accessRole","find","candidate","undefined","onPendingGrantRemove","index","target","currentTarget","render","renderPendingAccessGrants","filter","map","length","grant","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","styles","WebComponent","AccessControlAddAccess_styles_default","_Class","_AccessControlAddAccess","_A","_B","_C","_D","_E","_F","_initProto","_initClass","_classDecs","_principalInputValueDecs","_init_principalInputValue","_addAccessRoleValueDecs","_init_addAccessRoleValue","_pendingAccessGrantsDecs","_init_pendingAccessGrants","_inputErrorDecs","_init_inputError","_disabledDecs","_init_disabled","_asyncOptionsProviderDecs","_init_asyncOptionsProvider","_AccessControlAddAcce2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","directoryEntryOptionTemplate","renderDirectoryEntryIcon","entry","nothing","customElement","_AccessControlAddAcce","property","args","value","event","option","role","accessRole","ACCESS_ROLES","candidate","target","grant","index"],"sources":["../../../src/components/access-control-modal/AccessControlAddAccess.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { html, nothing } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { ACCESS_ROLES, type AccessRole, type DirectoryEntry } from 'solid-logic'\nimport type { AsyncComboboxOptionsProvider, ComboboxChangeEvent, ComboboxOptionData } from '@/components/combobox'\n\nimport '~icons/lucide/book-user'\nimport '~icons/lucide/user-round'\nimport '~icons/lucide/users'\nimport '~icons/lucide/circle-x'\nimport '~icons/lucide/globe'\nimport '@/components/button'\nimport '@/components/combobox'\nimport '@/components/combobox-option'\n\nimport styles from './AccessControlAddAccess.styles.css'\nimport type { PendingAccessGrant, PendingGrantRemovedDetail, RoleChangedDetail, TargetInputDetail, TargetSelectedDetail } from './types'\n\nexport function directoryEntryOptionTemplate (entry: DirectoryEntry) {\n return html`\n <span class=\"access-grants-directory-entry\">\n ${renderDirectoryEntryIcon(entry)}\n <span>${entry.label}</span>\n </span>\n `\n}\n\nfunction renderDirectoryEntryIcon (entry: DirectoryEntry) {\n if (entry.sources.includes('contacts') || entry.sources.includes('groups')) {\n return html`<icon-lucide-book-user style=\"width: 13px; height: 13px; flex: 0 0 13px;\"></icon-lucide-book-user>`\n }\n\n if (entry.sources.includes('friends')) {\n return html`<icon-lucide-users style=\"width: 13px; height: 13px; flex: 0 0 13px;\"></icon-lucide-users>`\n }\n\n if (entry.sources.includes('catalog')) {\n return html`<icon-lucide-user-round style=\"width: 13px; height: 13px; flex: 0 0 13px;\"></icon-lucide-user-round>`\n }\n\n return nothing\n}\n\n@customElement('solid-ui-access-control-add-access')\nexport default class AccessControlAddAccess extends WebComponent {\n static styles = styles\n\n @property({ attribute: false })\n accessor principalInputValue = ''\n\n @property({ attribute: false })\n accessor addAccessRoleValue: AccessRole = 'Viewer'\n\n @property({ attribute: false })\n accessor pendingAccessGrants: PendingAccessGrant[] = []\n\n @property({ attribute: false })\n accessor inputError = ''\n\n @property({ type: Boolean })\n accessor disabled = false\n\n @property({ attribute: false })\n accessor asyncOptionsProvider: AsyncComboboxOptionsProvider | null = null\n\n private onPrincipalInput (event: Event) {\n const value = this.getEventValue(event)\n this.dispatchEvent(new CustomEvent<TargetInputDetail>('target-input', {\n detail: { value },\n bubbles: true,\n composed: true\n }))\n }\n\n private onPrincipalSelect (event: ComboboxChangeEvent) {\n const option = event.detail.option as ComboboxOptionData & { targetKind?: 'origin' | 'trustedApp' }\n if (typeof option.value !== 'string') {\n return\n }\n\n this.dispatchEvent(new CustomEvent<TargetSelectedDetail>('target-selected', {\n detail: {\n value: option.value,\n label: option.label,\n targetKind: option.targetKind\n },\n bubbles: true,\n composed: true\n }))\n }\n\n private onRoleChange (event: ComboboxChangeEvent) {\n const role = event.detail.option.value\n const accessRole = typeof role === 'string'\n ? ACCESS_ROLES.find(candidate => candidate === role)\n : undefined\n if (!accessRole) {\n return\n }\n\n this.dispatchEvent(new CustomEvent<RoleChangedDetail>('role-changed', {\n detail: { role: accessRole },\n bubbles: true,\n composed: true\n }))\n }\n\n private onPendingGrantRemove (index: number) {\n this.dispatchEvent(new CustomEvent<PendingGrantRemovedDetail>('pending-grant-removed', {\n detail: { index },\n bubbles: true,\n composed: true\n }))\n }\n\n private getEventValue (event: Event): string {\n const target = event.currentTarget as { value?: string | null } | null\n return typeof target?.value === 'string' ? target.value : ''\n }\n\n protected render () {\n return html`\n <section class=\"access-grants-form\" aria-label=\"Add access\">\n <p>Add person, group or software agent URL.</p>\n <div class=\"access-grants-form-main\">\n <div class=\"access-grants-input\">\n <solid-ui-combobox\n class=\"access-principal-combobox\"\n .disabled=${this.disabled}\n label=\"Add person, group or software agent URL.\"\n .srOnlyLabel=${true}\n .value=${this.principalInputValue}\n placeholder=\"Paste a link or enter a name\"\n .asyncOptionsProvider=${this.asyncOptionsProvider}\n @input=${this.onPrincipalInput}\n @change=${this.onPrincipalSelect}\n ></solid-ui-combobox>\n ${this.inputError\n ? html`<p class=\"access-principal-error\" role=\"alert\">${this.inputError}</p>`\n : nothing}\n ${this.renderPendingAccessGrants()}\n </div>\n <solid-ui-combobox\n class=\"access-role-select access-role-select--top\"\n .disabled=${this.disabled}\n .value=${this.addAccessRoleValue}\n @change=${this.onRoleChange}\n >\n ${ACCESS_ROLES\n .filter(role => role !== 'No Access')\n .map(role => html`\n <solid-ui-combobox-option value=${role}>${role}</solid-ui-combobox-option>\n `)}\n </solid-ui-combobox>\n </div>\n </section>\n `\n }\n\n private renderPendingAccessGrants () {\n if (!this.pendingAccessGrants.length) {\n return nothing\n }\n\n return html`\n <div class=\"access-grants-pending\">\n ${this.pendingAccessGrants.map((grant, index) => html`\n <div class=\"access-grants-pending-item\">\n <span class=\"access-grants-pending-item-label\">\n ${grant.targetKind === 'trustedApp'\n ? html`<icon-lucide-globe style=\"width: 13px; height: 13px; vertical-align: -2px;\"></icon-lucide-globe>`\n : nothing}\n ${grant.label}\n </span>\n <solid-ui-button\n type=\"button\"\n variant=\"ghost\"\n class=\"access-grants-pending-item-remove\"\n ?disabled=${this.disabled}\n @click=${() => this.onPendingGrantRemove(index)}\n >\n <span class=\"sr-only\">Remove ${grant.label}</span>\n <icon-lucide-circle-x slot=\"icon\"></icon-lucide-circle-x>\n </solid-ui-button>\n </div>\n `)}\n </div>\n `\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessControlErrors.esm.js","names":["customElement","WebComponent","html","property","styles","_classDecs","_AccessControlErrors","_AccessControlErrors2","_A","WeakMap","_B","_ref","_errorsDecs","attribute","_successfulChangesRefreshedDecs","_AccessControlErrors3","AccessControlErrors","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_errors","_init_successfulChangesRefreshed","_classPrivateFieldGet","errors","v","_classPrivateFieldSet","successfulChangesRefreshed","onClose","event","stopPropagation","dispatchEvent","CustomEvent","bubbles","composed","getScopeLabel","scope","render","length","map","error","label","action","role","message","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","
|
|
1
|
+
{"version":3,"file":"AccessControlErrors.esm.js","names":["customElement","WebComponent","html","property","styles","_classDecs","_AccessControlErrors","_AccessControlErrors2","_A","WeakMap","_B","_ref","_errorsDecs","attribute","_successfulChangesRefreshedDecs","_AccessControlErrors3","AccessControlErrors","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_errors","_init_successfulChangesRefreshed","_classPrivateFieldGet","errors","v","_classPrivateFieldSet","successfulChangesRefreshed","onClose","event","stopPropagation","dispatchEvent","CustomEvent","bubbles","composed","getScopeLabel","scope","render","length","map","error","label","action","role","message","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","styles","WebComponent","AccessControlErrors_styles_default","_Class","_AccessControlErrors3","_A","_B","_initProto","_initClass","_classDecs","_errorsDecs","_init_errors","_successfulChangesRefreshedDecs","_init_successfulChangesRefreshed","_AccessControlErrors2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","O","k","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","customElement","_AccessControlErrors","property","args","event","scope","error"],"sources":["../../../src/components/access-control-modal/AccessControlErrors.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { html } from 'lit'\nimport { property } from 'lit/decorators.js'\n\nimport '@/components/error-state'\n\nimport styles from './AccessControlErrors.styles.css'\nimport type { AccessSaveError } from './types'\n\n@customElement('solid-ui-access-control-errors')\nexport default class AccessControlErrors extends WebComponent {\n static styles = styles\n\n @property({ attribute: false })\n accessor errors: AccessSaveError[] = []\n\n @property({ attribute: false })\n accessor successfulChangesRefreshed = true\n\n private onClose (event: Event) {\n event.stopPropagation()\n this.dispatchEvent(new CustomEvent('close', {\n bubbles: true,\n composed: true\n }))\n }\n\n private getScopeLabel (scope: NonNullable<Extract<AccessSaveError, { action: 'grant' | 'revoke' }>['scope']>) {\n return scope === 'folder+contents'\n ? 'folder and contents'\n : scope === 'container'\n ? 'folder'\n : scope === 'contents'\n ? 'contents'\n : 'resource'\n }\n\n protected render () {\n if (!this.errors.length) {\n return html``\n }\n\n return html`\n <solid-ui-error-state\n title=\"Some access changes could not be saved\"\n message=${this.successfulChangesRefreshed\n ? 'Any successful changes are shown above. The list below shows only the changes that failed. Close this dialog and reopen it if you want to try again.'\n : 'Some changes may have been saved, but we could not refresh the Shared with list. The list below shows only the changes that failed. Close this dialog and reopen it if you want to try again.'}\n @close=${this.onClose}\n >\n <ul class=\"access-control-save-errors\">\n ${this.errors.map(error => html`\n <li>\n <span class=\"access-control-save-error-label\">${error.label}</span>\n <span class=\"access-control-save-error-detail\">\n ${error.action === 'grant'\n ? `Could not grant ${error.role ?? 'access'} for ${error.scope ? this.getScopeLabel(error.scope) : 'resource'}`\n : error.action === 'revoke'\n ? `Could not remove access for ${error.scope ? this.getScopeLabel(error.scope) : 'resource'}`\n : error.action === 'reset'\n ? 'Could not reset sharing'\n : 'Could not save access changes'}\n </span>\n <span class=\"access-control-save-error-message\">${error.message}</span>\n </li>\n `)}\n </ul>\n </solid-ui-error-state>\n `\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMqDK,IAAA,CAGpDL,EAAc,gCAAgC,CAAC;AAAA,IAAAM;AAAA,KAAAC,KAAAC,kBAAA,IAAAC,QAAA,GAAAC,kBAAA,IAAAD,QAAA,GAAAE,KAAAC,IAI7CT,EAAS,EAAEU,WAAW,GAAM,CAAC,GAACC,IAG9BX,EAAS,EAAEU,WAAW,GAAM,CAAC,GAAC,WAAAE,IAPjC,cACiDd,EAAa;CAAAgB,YAAA,GAAAC,GAAA;EAIrBC,AAJqB,MAAA,GAAAD,CAAA,GAAAC,EAAA,MAAAX,IAAAY,EAAA,IAAA,GAAAC,EAAA,MAIvB,CAAA,CAAE,EAAA,GAAAF,EAAA,MAAAT,GAAAY,EAAA,MAGD,EAAI,CAAA;CAAA;CAAA,KAAAX,KAAA;EAAA,OAAAY,EAAAf,GAAA,IAAA;CAAA;CAAA,IAHjCgB,OAAMC,GAAA;EAAAC,EAAAlB,GAAA,MAAAiB,CAAA;CAAA;CAAA,IAGNE,6BAA0B;EAAA,OAAAJ,EAAAb,GAAA,IAAA;CAAA;CAAA,IAA1BiB,2BAA0BF,GAAA;EAAAC,EAAAhB,GAAA,MAAAe,CAAA;CAAA;CAE3BG,QAASC,GAAc;EAE7B,AADAA,EAAMC,gBAAgB,GACtB,KAAKC,cAAc,IAAIC,YAAY,SAAS;GAC1CC,SAAS;GACTC,UAAU;EACZ,CAAC,CAAC;CACJ;CAEQC,cAAeC,GAAuF;EAC5G,OAAOA,MAAU,oBACb,wBACAA,MAAU,cACR,WACAA,MAAU,aACR,aACA;CACV;CAEUC,SAAU;EAKlB,OAJK,KAAKb,OAAOc,SAIVpC,CAAI;;;kBAGG,KAAKyB,6BACX,yJACA,gMAA+L;iBAC1L,KAAKC,QAAO;;;YAGjB,KAAKJ,OAAOe,KAAIC,MAAStC,CAAI;;8DAEqBsC,EAAMC,MAAK;;kBAEvDD,EAAME,WAAW,UACjB,mBAAmBF,EAAMG,QAAQ,SAAQ,OAAQH,EAAMJ,QAAQ,KAAKD,cAAcK,EAAMJ,KAAK,IAAI,eAC/FI,EAAME,WAAW,WACjB,+BAA+BF,EAAMJ,QAAQ,KAAKD,cAAcK,EAAMJ,KAAK,IAAI,eAC7EI,EAAME,WAAW,UACf,4BACF,gCAA+B;;gEAEWF,EAAMI,QAAO;;WAElE,EAAC;;;QA1BC1C,CAAI;CA8Bf;AACF,GAAC,CAAA2C,GAAA,CAAAxB,GAAAC,GAAAF,IAAA0B,GAAA,CAAAxC,GAAAyC,MAAAC,EAAAjC,GAAA,CAAA;CAAAH;CAAA;CAAA;AAAA,GAAA;CAAAE;CAAA;CAAA;AAAA,CAAA,GAAAT,GAAA,GAAA,KAAA,GA5DgDJ,CAAY,GAAAc,IAAAkC,IAAA,cAAAC,EAAA;CAAAjC,cAAA;EAAA,MAAAX,CAAA,GAAA6C,EAAA,MAAA,UAC3C/C,CAAM,GAAA2C,EAAA;CAAA;AAAA,GAAAI,EAAAF,GAAA1C,GAAA,KAAA,CAAA,GAAA0C,GAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
require("../../lib/components/index.cjs.js");const e=require("../../lib/components/decorators.cjs.js"),t=require("../../lib/components/web-component/WebComponent.cjs.js"),n=require("../../lib/debug.cjs.js");require("../../_virtual/~icons/lucide/link.cjs.js"),require("../../_virtual/~icons/lucide/globe.cjs.js"),require("../button/index.cjs.js"),require("../combobox/index.cjs.js"),require("../combobox-option/index.cjs.js");const r=require("./AccessControlGeneralAccess.styles.cjs.js");let i=require("solid-logic"),a=require("lit"),o=require("lit/decorators.js");var s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T;function E(e,t,n){D(e,t),t.set(e,n)}function D(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function O(e,t,n){return e.set(A(e,t),n),n}function k(e,t){return e.get(A(e,t))}function A(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 j(e,t,n){return(t=N(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function M(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:F(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||F(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 I(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:N(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 N(e){var t=P(e,`string`);return typeof t==`symbol`?t:t+``}function P(e,t){if(typeof e!=`object`||!e)return e;var n;if(typeof Symbol<`u`&&(n=e[Symbol.toPrimitive])!==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 F(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 I(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 L(e){return e}h=[e.customElement(`solid-ui-access-control-general-access`)];var R;new(w=(l=new WeakMap,u=new WeakMap,d=new WeakMap,f=new WeakMap,T=(g=(0,o.property)({attribute:!1}),v=(0,o.property)({attribute:!1}),b=(0,o.property)({attribute:!1}),S=(0,o.property)({type:Boolean}),`subjectUri`),c=class extends t.default{constructor(...e){super(...e),E(this,l,(p(this),_(this,void 0))),E(this,u,y(this,`No Access`)),E(this,d,x(this,`No Access`)),E(this,f,C(this,!1))}get[T](){return k(l,this)}set subjectUri(e){O(l,this,e)}get authenticatedAccessRoleValue(){return k(u,this)}set authenticatedAccessRoleValue(e){O(u,this,e)}get publicAccessRoleValue(){return k(d,this)}set publicAccessRoleValue(e){O(d,this,e)}get disabled(){return k(f,this)}set disabled(e){O(f,this,e)}onAuthenticatedRoleChange(e){this.dispatchRoleChange(`authenticated-role-changed`,e,i.ACCESS_ROLES)}onPublicRoleChange(e){this.dispatchRoleChange(`public-role-changed`,e,i.PUBLIC_ACCESS_ROLES)}dispatchRoleChange(e,t,n){let r=t.detail.option.value;if(typeof r!=`string`||!n.includes(r))return;let i={role:r};this.dispatchEvent(new CustomEvent(e,{detail:i,bubbles:!0,composed:!0}))}async onCopyLinkClick(e){if(e.preventDefault(),this.subjectUri)try{await navigator.clipboard.writeText(this.subjectUri)}catch(e){n.error(`Failed to copy resource link`,e)}}renderAuthenticatedRoleOptions(){return i.ACCESS_ROLES.map(e=>a.html`
|
|
2
2
|
<solid-ui-combobox-option value=${e}>${e}</solid-ui-combobox-option>
|
|
3
3
|
`)}renderPublicRoleOptions(){return i.PUBLIC_ACCESS_ROLES.map(e=>a.html`
|
|
4
4
|
<solid-ui-combobox-option value=${e}>${e}</solid-ui-combobox-option>
|
|
@@ -53,5 +53,5 @@ const e=require("../../lib/debug.cjs.js"),t=require("../../lib/components/decora
|
|
|
53
53
|
${this.renderGeneralShareRow({title:`Only logged in users with the link`,description:`Users must sign in to SolidOS to access this shared item using the link.`,variant:`authenticated`})}
|
|
54
54
|
${this.renderGeneralShareRow({title:`Anyone with the Link`,description:`Anyone on the internet with the link can view.`,variant:`public`})}
|
|
55
55
|
</section>
|
|
56
|
-
`}},{e:[_,y,x,C,p],c:[R,m]}=M(c,[[g,1,`subjectUri`],[v,1,`authenticatedAccessRoleValue`],[b,1,`publicAccessRoleValue`],[S,1,`disabled`]],h,0,void 0,
|
|
56
|
+
`}},{e:[_,y,x,C,p],c:[R,m]}=M(c,[[g,1,`subjectUri`],[v,1,`authenticatedAccessRoleValue`],[b,1,`publicAccessRoleValue`],[S,1,`disabled`]],h,0,void 0,t.default),c),s=class extends L{constructor(){super(R),j(this,`styles`,r.default),m()}},j(s,w,void 0),s),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return R}});
|
|
57
57
|
//# sourceMappingURL=AccessControlGeneralAccess.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessControlGeneralAccess.cjs.js","names":["customElement","WebComponent","html","property","ACCESS_ROLES","PUBLIC_ACCESS_ROLES","debug","styles","_classDecs","_AccessControlGeneral","_AccessControlGeneral2","_A","WeakMap","_B","_C","_D","_ref","_subjectUriDecs","attribute","_authenticatedAccessRoleValueDecs","_publicAccessRoleValueDecs","_disabledDecs","type","Boolean","_AccessControlGeneralAccess","AccessControlGeneralAccess","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_subjectUri","undefined","_init_authenticatedAccessRoleValue","_init_publicAccessRoleValue","_init_disabled","_classPrivateFieldGet","subjectUri","v","_classPrivateFieldSet","authenticatedAccessRoleValue","publicAccessRoleValue","disabled","onAuthenticatedRoleChange","event","dispatchRoleChange","onPublicRoleChange","eventName","roles","value","detail","option","includes","role","dispatchEvent","CustomEvent","bubbles","composed","onCopyLinkClick","preventDefault","navigator","clipboard","writeText","error","renderAuthenticatedRoleOptions","map","renderPublicRoleOptions","renderAuthenticatedModeSelector","renderPublicModeSelector","renderGeneralAccessIcon","renderGeneralShareRow","options","title","description","variant","render","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","customElement","property","WebComponent","ACCESS_ROLES","PUBLIC_ACCESS_ROLES","error","styles","require_debug","require_decorators","require_WebComponent","require_AccessControlGeneralAccess_styles","solid_logic","lit","lit_decorators_js","_Class","_AccessControlGeneralAccess","_A","_B","_C","_D","_initProto","_initClass","_classDecs","_subjectUriDecs","_init_subjectUri","_authenticatedAccessRoleValueDecs","_init_authenticatedAccessRoleValue","_publicAccessRoleValueDecs","_init_publicAccessRoleValue","_disabledDecs","_init_disabled","_AccessControlGeneral2","_ref","_classPrivateFieldInitSpec","_checkPrivateRedeclaration","a","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","f","p","_setFunctionName","P","j","D","I","F","l","N","_checkInRHS","_toPrimitive","e","_identity","_AccessControlGeneral","args","event","value","roles","detail","eventName","error$1","role","options"],"sources":["../../../src/components/access-control-modal/AccessControlGeneralAccess.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { html } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { ACCESS_ROLES, PUBLIC_ACCESS_ROLES, type AccessRole } from 'solid-logic'\nimport * as debug from '@/lib/debug'\nimport type { ComboboxChangeEvent } from '@/components/combobox'\n\nimport '~icons/lucide/link'\nimport '~icons/lucide/globe'\nimport '@/components/button'\nimport '@/components/combobox'\nimport '@/components/combobox-option'\n\nimport styles from './AccessControlGeneralAccess.styles.css'\nimport type { RoleChangedDetail } from './types'\n\n@customElement('solid-ui-access-control-general-access')\nexport default class AccessControlGeneralAccess extends WebComponent {\n static styles = styles\n\n @property({ attribute: false })\n accessor subjectUri: string | undefined = undefined\n\n @property({ attribute: false })\n accessor authenticatedAccessRoleValue: AccessRole = 'No Access'\n\n @property({ attribute: false })\n accessor publicAccessRoleValue: AccessRole = 'No Access'\n\n @property({ type: Boolean })\n accessor disabled = false\n\n private onAuthenticatedRoleChange (event: ComboboxChangeEvent) {\n this.dispatchRoleChange('authenticated-role-changed', event, ACCESS_ROLES)\n }\n\n private onPublicRoleChange (event: ComboboxChangeEvent) {\n this.dispatchRoleChange('public-role-changed', event, PUBLIC_ACCESS_ROLES)\n }\n\n private dispatchRoleChange (\n eventName: 'authenticated-role-changed' | 'public-role-changed',\n event: ComboboxChangeEvent,\n roles: readonly string[]\n ) {\n const value = event.detail.option.value\n if (typeof value !== 'string' || !roles.includes(value)) {\n return\n }\n\n const detail: RoleChangedDetail = { role: value as AccessRole }\n this.dispatchEvent(new CustomEvent<RoleChangedDetail>(eventName, {\n detail,\n bubbles: true,\n composed: true\n }))\n }\n\n private async onCopyLinkClick (event: Event) {\n event.preventDefault()\n\n if (!this.subjectUri) {\n return\n }\n\n try {\n await navigator.clipboard.writeText(this.subjectUri)\n } catch (error) {\n debug.error('Failed to copy resource link', error)\n }\n }\n\n private renderAuthenticatedRoleOptions () {\n return ACCESS_ROLES.map(role => html`\n <solid-ui-combobox-option value=${role}>${role}</solid-ui-combobox-option>\n `)\n }\n\n private renderPublicRoleOptions () {\n return PUBLIC_ACCESS_ROLES.map(role => html`\n <solid-ui-combobox-option value=${role}>${role}</solid-ui-combobox-option>\n `)\n }\n\n private renderAuthenticatedModeSelector () {\n return html`\n <solid-ui-combobox\n class=\"access-role-select access-role-select--compact access-role-select--general access-grants-role access-grants-role--editable access-role-select--authenticated\"\n .disabled=${this.disabled}\n .value=${this.authenticatedAccessRoleValue}\n @change=${this.onAuthenticatedRoleChange}\n >\n ${this.renderAuthenticatedRoleOptions()}\n </solid-ui-combobox>\n `\n }\n\n private renderPublicModeSelector () {\n return html`\n <solid-ui-combobox\n class=\"access-role-select access-role-select--compact access-role-select--general access-grants-role access-grants-role--editable access-role-select--public\"\n .disabled=${this.disabled}\n .value=${this.publicAccessRoleValue}\n @change=${this.onPublicRoleChange}\n >\n ${this.renderPublicRoleOptions()}\n </solid-ui-combobox>\n `\n }\n\n private renderGeneralAccessIcon () {\n return html`\n <div class=\"access-grants-general-share-icon\">\n <div class=\"access-grants-general-share-icon-inner\">\n <icon-lucide-globe class=\"access-grants-general-share-icon-image\"></icon-lucide-globe>\n </div>\n </div>\n `\n }\n\n private renderGeneralShareRow (options: {\n title: string\n description: string\n variant: 'authenticated' | 'public'\n }) {\n return html`\n <div class=\"access-grants-general-share\">\n <div class=\"access-grants-general-share-content\">\n ${this.renderGeneralAccessIcon()}\n <div class=\"access-grants-general-share-text\">\n <p class=\"access-grants-general-share-text-title\">${options.title}</p>\n <p class=\"access-grants-general-share-text-description\">${options.description}</p>\n </div>\n </div>\n ${options.variant === 'authenticated'\n ? this.renderAuthenticatedModeSelector()\n : this.renderPublicModeSelector()}\n </div>\n `\n }\n\n protected render () {\n return html`\n <section class=\"access-grants-general\" aria-labelledby=\"general-access-heading\">\n <div class=\"access-grants-general-header\">\n <h2 id=\"general-access-heading\">General Access</h2>\n <solid-ui-button\n class=\"access-grants-copy-link-button\"\n variant=\"tertiary\"\n @click=${this.onCopyLinkClick}\n >\n <icon-lucide-link slot=\"left-icon\"></icon-lucide-link>\n <span class=\"access-grants-copy-link-button-label\">Copy Link</span>\n </solid-ui-button>\n </div>\n ${this.renderGeneralShareRow({\n title: 'Only logged in users with the link',\n description: 'Users must sign in to SolidOS to access this shared item using the link.',\n variant: 'authenticated'\n })}\n ${this.renderGeneralShareRow({\n title: 'Anyone with the Link',\n description: 'Anyone on the internet with the link can view.',\n variant: 'public'\n })}\n </section>\n `\n }\n}\n"],"mappings":"A,uqJAa4DQ,EAAA,CAG3DR,EAAAA,cAAc,wCAAwC,CAAC,EAAA,IAAAS,EAAA,IAAAC,GAAAC,EAAA,IAAAC,QAAAC,EAAA,IAAAD,QAAAE,EAAA,IAAAF,QAAAG,EAAA,IAAAH,QAAAI,GAAAC,GAAAA,EAIrDd,EAAAA,SAAAA,CAAS,CAAEe,UAAW,EAAM,CAAC,EAACC,GAAAA,EAG9BhB,EAAAA,SAAAA,CAAS,CAAEe,UAAW,EAAM,CAAC,EAACE,GAAAA,EAG9BjB,EAAAA,SAAAA,CAAS,CAAEe,UAAW,EAAM,CAAC,EAACG,GAAAA,EAG9BlB,EAAAA,SAAAA,CAAS,CAAEmB,KAAMC,OAAQ,CAAC,EAAC,cAAAC,EAb9B,cACwDvB,EAAAA,OAAa,CAAAyB,YAAA,GAAAC,EAAA,CAAA,MAAA,GAAAA,CAAA,EAAAC,EAAA,KAAAjB,GAAAkB,EAAA,IAAA,EAAAC,EAAA,KAIzBC,IAAAA,EAAS,EAAA,EAAAH,EAAA,KAAAf,EAAAmB,EAAA,KAGC,WAAW,CAAA,EAAAJ,EAAA,KAAAd,EAAAmB,EAAA,KAGlB,WAAW,CAAA,EAAAL,EAAA,KAAAb,EAAAmB,EAAA,KAGpC,EAAK,CAAA,CAAA,CAAA,IAAAlB,IAAA,CAAA,OAAAmB,EAAAxB,EAAA,IAAA,CAAA,CAAA,IAThByB,WAAUC,EAAA,CAAAC,EAAA3B,EAAA,KAAA0B,CAAA,CAAA,CAAA,IAGVE,8BAA4B,CAAA,OAAAJ,EAAAtB,EAAA,IAAA,CAAA,CAAA,IAA5B0B,6BAA4BF,EAAA,CAAAC,EAAAzB,EAAA,KAAAwB,CAAA,CAAA,CAAA,IAG5BG,uBAAqB,CAAA,OAAAL,EAAArB,EAAA,IAAA,CAAA,CAAA,IAArB0B,sBAAqBH,EAAA,CAAAC,EAAAxB,EAAA,KAAAuB,CAAA,CAAA,CAAA,IAGrBI,UAAQ,CAAA,OAAAN,EAAApB,EAAA,IAAA,CAAA,CAAA,IAAR0B,SAAQJ,EAAA,CAAAC,EAAAvB,EAAA,KAAAsB,CAAA,CAAA,CAETK,0BAA2BC,EAA4B,CAC7D,KAAKC,mBAAmB,6BAA8BD,EAAOvC,EAAAA,YAAY,CAC3E,CAEQyC,mBAAoBF,EAA4B,CACtD,KAAKC,mBAAmB,sBAAuBD,EAAOtC,EAAAA,mBAAmB,CAC3E,CAEQuC,mBACNE,EACAH,EACAI,EACA,CACA,IAAMC,EAAQL,EAAMM,OAAOC,OAAOF,MAClC,GAAI,OAAOA,GAAU,UAAY,CAACD,EAAMI,SAASH,CAAK,EACpD,OAGF,IAAMC,EAA4B,CAAEG,KAAMJ,CAAoB,EAC9D,KAAKK,cAAc,IAAIC,YAA+BR,EAAW,CAC/DG,SACAM,QAAS,GACTC,SAAU,EACZ,CAAC,CAAC,CACJ,CAEA,MAAcC,gBAAiBd,EAAc,CAG3C,GAFAA,EAAMe,eAAe,EAEhB,KAAKtB,WAIV,GAAI,CACF,MAAMuB,UAAUC,UAAUC,UAAU,KAAKzB,UAAU,CACrD,OAAS0B,EAAO,CACdxD,EAAAA,MAAY,+BAAgCwD,CAAK,CACnD,CACF,CAEQC,gCAAkC,CACxC,OAAO3D,EAAAA,aAAa4D,IAAIZ,GAAQlD,EAAAA,IAAI;wCACAkD,EAAI,GAAIA,EAAI;KAC/C,CACH,CAEQa,yBAA2B,CACjC,OAAO5D,EAAAA,oBAAoB2D,IAAIZ,GAAQlD,EAAAA,IAAI;wCACPkD,EAAI,GAAIA,EAAI;KAC/C,CACH,CAEQc,iCAAmC,CACzC,MAAOhE,GAAAA,IAAI;;;oBAGK,KAAKuC,SAAQ;iBAChB,KAAKF,6BAA4B;kBAChC,KAAKG,0BAAyB;;UAEtC,KAAKqB,+BAA+B,EAAC;;KAG7C,CAEQI,0BAA4B,CAClC,MAAOjE,GAAAA,IAAI;;;oBAGK,KAAKuC,SAAQ;iBAChB,KAAKD,sBAAqB;kBACzB,KAAKK,mBAAkB;;UAE/B,KAAKoB,wBAAwB,EAAC;;KAGtC,CAEQG,yBAA2B,CACjC,MAAOlE,GAAAA,IAAI;;;;;;KAOb,CAEQmE,sBAAuBC,EAI5B,CACD,MAAOpE,GAAAA,IAAI;;;YAGH,KAAKkE,wBAAwB,EAAC;;gEAEsBE,EAAQC,MAAK;sEACPD,EAAQE,YAAW;;;UAG/EF,EAAQG,UAAY,gBAClB,KAAKP,gCAAgC,EACrC,KAAKC,yBAAyB,EAAC;;KAGzC,CAEUO,QAAU,CAClB,MAAOxE,GAAAA,IAAI;;;;;;;qBAOM,KAAKuD,gBAAe;;;;;;UAM/B,KAAKY,sBAAsB,CAC3BE,MAAO,qCACPC,YAAa,2EACbC,QAAS,eACX,CAAC,EAAC;UACA,KAAKJ,sBAAsB,CAC3BE,MAAO,uBACPC,YAAa,iDACbC,QAAS,QACX,CAAC,EAAC;;KAGR,CACF,EAAC,CAAAE,EAAA,CAAA7C,EAAAE,EAAAC,EAAAC,EAAAL,GAAA+C,EAAA,CAAAnE,EAAAoE,IAAAC,EAAAtD,EAAA,CAAA,CAAAP,EAAA,EAAA,YAAA,EAAA,CAAAE,EAAA,EAAA,8BAAA,EAAA,CAAAC,EAAA,EAAA,uBAAA,EAAA,CAAAC,EAAA,EAAA,UAAA,CAAA,EAAAb,EAAA,EAAA,IAAA,GAvJuDP,EAAAA,OAAY,EAAAuB,GAAAuD,EAAA,cAAAC,CAAA,CAAAtD,aAAA,CAAA,MAAAjB,CAAA,EAAAwE,EAAA,KAAA,SAClD1E,EAAAA,OAAM,EAAAsE,EAAA,CAAA,CAAA,EAAAI,EAAAF,EAAArE,EAAA,IAAA,EAAA,EAAAqE,G"}
|
|
1
|
+
{"version":3,"file":"AccessControlGeneralAccess.cjs.js","names":["customElement","WebComponent","html","property","ACCESS_ROLES","PUBLIC_ACCESS_ROLES","debug","styles","_classDecs","_AccessControlGeneral","_AccessControlGeneral2","_A","WeakMap","_B","_C","_D","_ref","_subjectUriDecs","attribute","_authenticatedAccessRoleValueDecs","_publicAccessRoleValueDecs","_disabledDecs","type","Boolean","_AccessControlGeneralAccess","AccessControlGeneralAccess","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_subjectUri","undefined","_init_authenticatedAccessRoleValue","_init_publicAccessRoleValue","_init_disabled","_classPrivateFieldGet","subjectUri","v","_classPrivateFieldSet","authenticatedAccessRoleValue","publicAccessRoleValue","disabled","onAuthenticatedRoleChange","event","dispatchRoleChange","onPublicRoleChange","eventName","roles","value","detail","option","includes","role","dispatchEvent","CustomEvent","bubbles","composed","onCopyLinkClick","preventDefault","navigator","clipboard","writeText","error","renderAuthenticatedRoleOptions","map","renderPublicRoleOptions","renderAuthenticatedModeSelector","renderPublicModeSelector","renderGeneralAccessIcon","renderGeneralShareRow","options","title","description","variant","render","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","customElement","property","WebComponent","ACCESS_ROLES","PUBLIC_ACCESS_ROLES","error","styles","require_decorators","require_WebComponent","require_debug","require_AccessControlGeneralAccess_styles","solid_logic","lit","lit_decorators_js","_Class","_AccessControlGeneralAccess","_A","_B","_C","_D","_initProto","_initClass","_classDecs","_subjectUriDecs","_init_subjectUri","_authenticatedAccessRoleValueDecs","_init_authenticatedAccessRoleValue","_publicAccessRoleValueDecs","_init_publicAccessRoleValue","_disabledDecs","_init_disabled","_AccessControlGeneral2","_ref","_classPrivateFieldInitSpec","_checkPrivateRedeclaration","a","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","f","p","_setFunctionName","P","j","D","I","F","l","N","_checkInRHS","_toPrimitive","e","_identity","_AccessControlGeneral","args","event","value","roles","detail","eventName","error$1","role","options"],"sources":["../../../src/components/access-control-modal/AccessControlGeneralAccess.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { html } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { ACCESS_ROLES, PUBLIC_ACCESS_ROLES, type AccessRole } from 'solid-logic'\nimport * as debug from '@/lib/debug'\nimport type { ComboboxChangeEvent } from '@/components/combobox'\n\nimport '~icons/lucide/link'\nimport '~icons/lucide/globe'\nimport '@/components/button'\nimport '@/components/combobox'\nimport '@/components/combobox-option'\n\nimport styles from './AccessControlGeneralAccess.styles.css'\nimport type { RoleChangedDetail } from './types'\n\n@customElement('solid-ui-access-control-general-access')\nexport default class AccessControlGeneralAccess extends WebComponent {\n static styles = styles\n\n @property({ attribute: false })\n accessor subjectUri: string | undefined = undefined\n\n @property({ attribute: false })\n accessor authenticatedAccessRoleValue: AccessRole = 'No Access'\n\n @property({ attribute: false })\n accessor publicAccessRoleValue: AccessRole = 'No Access'\n\n @property({ type: Boolean })\n accessor disabled = false\n\n private onAuthenticatedRoleChange (event: ComboboxChangeEvent) {\n this.dispatchRoleChange('authenticated-role-changed', event, ACCESS_ROLES)\n }\n\n private onPublicRoleChange (event: ComboboxChangeEvent) {\n this.dispatchRoleChange('public-role-changed', event, PUBLIC_ACCESS_ROLES)\n }\n\n private dispatchRoleChange (\n eventName: 'authenticated-role-changed' | 'public-role-changed',\n event: ComboboxChangeEvent,\n roles: readonly string[]\n ) {\n const value = event.detail.option.value\n if (typeof value !== 'string' || !roles.includes(value)) {\n return\n }\n\n const detail: RoleChangedDetail = { role: value as AccessRole }\n this.dispatchEvent(new CustomEvent<RoleChangedDetail>(eventName, {\n detail,\n bubbles: true,\n composed: true\n }))\n }\n\n private async onCopyLinkClick (event: Event) {\n event.preventDefault()\n\n if (!this.subjectUri) {\n return\n }\n\n try {\n await navigator.clipboard.writeText(this.subjectUri)\n } catch (error) {\n debug.error('Failed to copy resource link', error)\n }\n }\n\n private renderAuthenticatedRoleOptions () {\n return ACCESS_ROLES.map(role => html`\n <solid-ui-combobox-option value=${role}>${role}</solid-ui-combobox-option>\n `)\n }\n\n private renderPublicRoleOptions () {\n return PUBLIC_ACCESS_ROLES.map(role => html`\n <solid-ui-combobox-option value=${role}>${role}</solid-ui-combobox-option>\n `)\n }\n\n private renderAuthenticatedModeSelector () {\n return html`\n <solid-ui-combobox\n class=\"access-role-select access-role-select--compact access-role-select--general access-grants-role access-grants-role--editable access-role-select--authenticated\"\n .disabled=${this.disabled}\n .value=${this.authenticatedAccessRoleValue}\n @change=${this.onAuthenticatedRoleChange}\n >\n ${this.renderAuthenticatedRoleOptions()}\n </solid-ui-combobox>\n `\n }\n\n private renderPublicModeSelector () {\n return html`\n <solid-ui-combobox\n class=\"access-role-select access-role-select--compact access-role-select--general access-grants-role access-grants-role--editable access-role-select--public\"\n .disabled=${this.disabled}\n .value=${this.publicAccessRoleValue}\n @change=${this.onPublicRoleChange}\n >\n ${this.renderPublicRoleOptions()}\n </solid-ui-combobox>\n `\n }\n\n private renderGeneralAccessIcon () {\n return html`\n <div class=\"access-grants-general-share-icon\">\n <div class=\"access-grants-general-share-icon-inner\">\n <icon-lucide-globe class=\"access-grants-general-share-icon-image\"></icon-lucide-globe>\n </div>\n </div>\n `\n }\n\n private renderGeneralShareRow (options: {\n title: string\n description: string\n variant: 'authenticated' | 'public'\n }) {\n return html`\n <div class=\"access-grants-general-share\">\n <div class=\"access-grants-general-share-content\">\n ${this.renderGeneralAccessIcon()}\n <div class=\"access-grants-general-share-text\">\n <p class=\"access-grants-general-share-text-title\">${options.title}</p>\n <p class=\"access-grants-general-share-text-description\">${options.description}</p>\n </div>\n </div>\n ${options.variant === 'authenticated'\n ? this.renderAuthenticatedModeSelector()\n : this.renderPublicModeSelector()}\n </div>\n `\n }\n\n protected render () {\n return html`\n <section class=\"access-grants-general\" aria-labelledby=\"general-access-heading\">\n <div class=\"access-grants-general-header\">\n <h2 id=\"general-access-heading\">General Access</h2>\n <solid-ui-button\n class=\"access-grants-copy-link-button\"\n variant=\"tertiary\"\n @click=${this.onCopyLinkClick}\n >\n <icon-lucide-link slot=\"left-icon\"></icon-lucide-link>\n <span class=\"access-grants-copy-link-button-label\">Copy Link</span>\n </solid-ui-button>\n </div>\n ${this.renderGeneralShareRow({\n title: 'Only logged in users with the link',\n description: 'Users must sign in to SolidOS to access this shared item using the link.',\n variant: 'authenticated'\n })}\n ${this.renderGeneralShareRow({\n title: 'Anyone with the Link',\n description: 'Anyone on the internet with the link can view.',\n variant: 'public'\n })}\n </section>\n `\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { error as e } from "../../lib/debug.esm.js";
|
|
2
|
-
import { customElement as t } from "../../lib/components/decorators.esm.js";
|
|
3
|
-
import n from "../../lib/components/web-component/WebComponent.esm.js";
|
|
4
1
|
import "../../lib/components/index.esm.js";
|
|
2
|
+
import { customElement as e } from "../../lib/components/decorators.esm.js";
|
|
3
|
+
import t from "../../lib/components/web-component/WebComponent.esm.js";
|
|
4
|
+
import { error as n } from "../../lib/debug.esm.js";
|
|
5
|
+
import "../../_virtual/~icons/lucide/link.esm.js";
|
|
6
|
+
import "../../_virtual/~icons/lucide/globe.esm.js";
|
|
5
7
|
import "../button/index.esm.js";
|
|
6
8
|
import "../combobox/index.esm.js";
|
|
7
9
|
import "../combobox-option/index.esm.js";
|
|
8
|
-
import "../../_virtual/~icons/lucide/globe.esm.js";
|
|
9
|
-
import "../../_virtual/~icons/lucide/link.esm.js";
|
|
10
10
|
import r from "./AccessControlGeneralAccess.styles.esm.js";
|
|
11
11
|
import { ACCESS_ROLES as i, PUBLIC_ACCESS_ROLES as a } from "solid-logic";
|
|
12
12
|
import { html as o } from "lit";
|
|
@@ -184,9 +184,9 @@ function L(e) {
|
|
|
184
184
|
function R(e) {
|
|
185
185
|
return e;
|
|
186
186
|
}
|
|
187
|
-
g = [
|
|
187
|
+
g = [e("solid-ui-access-control-general-access")];
|
|
188
188
|
var z;
|
|
189
|
-
new (T = (u = /*#__PURE__*/ new WeakMap(), d = /*#__PURE__*/ new WeakMap(), f = /*#__PURE__*/ new WeakMap(), p = /*#__PURE__*/ new WeakMap(), E = (_ = s({ attribute: !1 }), y = s({ attribute: !1 }), x = s({ attribute: !1 }), C = s({ type: Boolean }), "subjectUri"), l = class extends
|
|
189
|
+
new (T = (u = /*#__PURE__*/ new WeakMap(), d = /*#__PURE__*/ new WeakMap(), f = /*#__PURE__*/ new WeakMap(), p = /*#__PURE__*/ new WeakMap(), E = (_ = s({ attribute: !1 }), y = s({ attribute: !1 }), x = s({ attribute: !1 }), C = s({ type: Boolean }), "subjectUri"), l = class extends t {
|
|
190
190
|
constructor(...e) {
|
|
191
191
|
super(...e), D(this, u, (m(this), v(this, void 0))), D(this, d, b(this, "No Access")), D(this, f, S(this, "No Access")), D(this, p, w(this, !1));
|
|
192
192
|
}
|
|
@@ -230,11 +230,11 @@ new (T = (u = /*#__PURE__*/ new WeakMap(), d = /*#__PURE__*/ new WeakMap(), f =
|
|
|
230
230
|
composed: !0
|
|
231
231
|
}));
|
|
232
232
|
}
|
|
233
|
-
async onCopyLinkClick(
|
|
234
|
-
if (
|
|
233
|
+
async onCopyLinkClick(e) {
|
|
234
|
+
if (e.preventDefault(), this.subjectUri) try {
|
|
235
235
|
await navigator.clipboard.writeText(this.subjectUri);
|
|
236
|
-
} catch (
|
|
237
|
-
|
|
236
|
+
} catch (e) {
|
|
237
|
+
n("Failed to copy resource link", e);
|
|
238
238
|
}
|
|
239
239
|
}
|
|
240
240
|
renderAuthenticatedRoleOptions() {
|
|
@@ -342,7 +342,7 @@ new (T = (u = /*#__PURE__*/ new WeakMap(), d = /*#__PURE__*/ new WeakMap(), f =
|
|
|
342
342
|
1,
|
|
343
343
|
"disabled"
|
|
344
344
|
]
|
|
345
|
-
], g, 0, void 0,
|
|
345
|
+
], g, 0, void 0, t), l), c = class extends R {
|
|
346
346
|
constructor() {
|
|
347
347
|
super(z), M(this, "styles", r), h();
|
|
348
348
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessControlGeneralAccess.esm.js","names":["customElement","WebComponent","html","property","ACCESS_ROLES","PUBLIC_ACCESS_ROLES","debug","styles","_classDecs","_AccessControlGeneral","_AccessControlGeneral2","_A","WeakMap","_B","_C","_D","_ref","_subjectUriDecs","attribute","_authenticatedAccessRoleValueDecs","_publicAccessRoleValueDecs","_disabledDecs","type","Boolean","_AccessControlGeneralAccess","AccessControlGeneralAccess","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_subjectUri","undefined","_init_authenticatedAccessRoleValue","_init_publicAccessRoleValue","_init_disabled","_classPrivateFieldGet","subjectUri","v","_classPrivateFieldSet","authenticatedAccessRoleValue","publicAccessRoleValue","disabled","onAuthenticatedRoleChange","event","dispatchRoleChange","onPublicRoleChange","eventName","roles","value","detail","option","includes","role","dispatchEvent","CustomEvent","bubbles","composed","onCopyLinkClick","preventDefault","navigator","clipboard","writeText","error","renderAuthenticatedRoleOptions","map","renderPublicRoleOptions","renderAuthenticatedModeSelector","renderPublicModeSelector","renderGeneralAccessIcon","renderGeneralShareRow","options","title","description","variant","render","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","customElement","error","styles","customElement$1","WebComponent","AccessControlGeneralAccess_styles_default","_Class","_AccessControlGeneralAccess","_A","_B","_C","_D","_initProto","_initClass","_classDecs","_subjectUriDecs","_init_subjectUri","_authenticatedAccessRoleValueDecs","_init_authenticatedAccessRoleValue","_publicAccessRoleValueDecs","_init_publicAccessRoleValue","_disabledDecs","_init_disabled","_AccessControlGeneral2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","_AccessControlGeneral","property","args","event","ACCESS_ROLES","PUBLIC_ACCESS_ROLES","value","roles","detail","eventName","error$1","role","options"],"sources":["../../../src/components/access-control-modal/AccessControlGeneralAccess.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { html } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { ACCESS_ROLES, PUBLIC_ACCESS_ROLES, type AccessRole } from 'solid-logic'\nimport * as debug from '@/lib/debug'\nimport type { ComboboxChangeEvent } from '@/components/combobox'\n\nimport '~icons/lucide/link'\nimport '~icons/lucide/globe'\nimport '@/components/button'\nimport '@/components/combobox'\nimport '@/components/combobox-option'\n\nimport styles from './AccessControlGeneralAccess.styles.css'\nimport type { RoleChangedDetail } from './types'\n\n@customElement('solid-ui-access-control-general-access')\nexport default class AccessControlGeneralAccess extends WebComponent {\n static styles = styles\n\n @property({ attribute: false })\n accessor subjectUri: string | undefined = undefined\n\n @property({ attribute: false })\n accessor authenticatedAccessRoleValue: AccessRole = 'No Access'\n\n @property({ attribute: false })\n accessor publicAccessRoleValue: AccessRole = 'No Access'\n\n @property({ type: Boolean })\n accessor disabled = false\n\n private onAuthenticatedRoleChange (event: ComboboxChangeEvent) {\n this.dispatchRoleChange('authenticated-role-changed', event, ACCESS_ROLES)\n }\n\n private onPublicRoleChange (event: ComboboxChangeEvent) {\n this.dispatchRoleChange('public-role-changed', event, PUBLIC_ACCESS_ROLES)\n }\n\n private dispatchRoleChange (\n eventName: 'authenticated-role-changed' | 'public-role-changed',\n event: ComboboxChangeEvent,\n roles: readonly string[]\n ) {\n const value = event.detail.option.value\n if (typeof value !== 'string' || !roles.includes(value)) {\n return\n }\n\n const detail: RoleChangedDetail = { role: value as AccessRole }\n this.dispatchEvent(new CustomEvent<RoleChangedDetail>(eventName, {\n detail,\n bubbles: true,\n composed: true\n }))\n }\n\n private async onCopyLinkClick (event: Event) {\n event.preventDefault()\n\n if (!this.subjectUri) {\n return\n }\n\n try {\n await navigator.clipboard.writeText(this.subjectUri)\n } catch (error) {\n debug.error('Failed to copy resource link', error)\n }\n }\n\n private renderAuthenticatedRoleOptions () {\n return ACCESS_ROLES.map(role => html`\n <solid-ui-combobox-option value=${role}>${role}</solid-ui-combobox-option>\n `)\n }\n\n private renderPublicRoleOptions () {\n return PUBLIC_ACCESS_ROLES.map(role => html`\n <solid-ui-combobox-option value=${role}>${role}</solid-ui-combobox-option>\n `)\n }\n\n private renderAuthenticatedModeSelector () {\n return html`\n <solid-ui-combobox\n class=\"access-role-select access-role-select--compact access-role-select--general access-grants-role access-grants-role--editable access-role-select--authenticated\"\n .disabled=${this.disabled}\n .value=${this.authenticatedAccessRoleValue}\n @change=${this.onAuthenticatedRoleChange}\n >\n ${this.renderAuthenticatedRoleOptions()}\n </solid-ui-combobox>\n `\n }\n\n private renderPublicModeSelector () {\n return html`\n <solid-ui-combobox\n class=\"access-role-select access-role-select--compact access-role-select--general access-grants-role access-grants-role--editable access-role-select--public\"\n .disabled=${this.disabled}\n .value=${this.publicAccessRoleValue}\n @change=${this.onPublicRoleChange}\n >\n ${this.renderPublicRoleOptions()}\n </solid-ui-combobox>\n `\n }\n\n private renderGeneralAccessIcon () {\n return html`\n <div class=\"access-grants-general-share-icon\">\n <div class=\"access-grants-general-share-icon-inner\">\n <icon-lucide-globe class=\"access-grants-general-share-icon-image\"></icon-lucide-globe>\n </div>\n </div>\n `\n }\n\n private renderGeneralShareRow (options: {\n title: string\n description: string\n variant: 'authenticated' | 'public'\n }) {\n return html`\n <div class=\"access-grants-general-share\">\n <div class=\"access-grants-general-share-content\">\n ${this.renderGeneralAccessIcon()}\n <div class=\"access-grants-general-share-text\">\n <p class=\"access-grants-general-share-text-title\">${options.title}</p>\n <p class=\"access-grants-general-share-text-description\">${options.description}</p>\n </div>\n </div>\n ${options.variant === 'authenticated'\n ? this.renderAuthenticatedModeSelector()\n : this.renderPublicModeSelector()}\n </div>\n `\n }\n\n protected render () {\n return html`\n <section class=\"access-grants-general\" aria-labelledby=\"general-access-heading\">\n <div class=\"access-grants-general-header\">\n <h2 id=\"general-access-heading\">General Access</h2>\n <solid-ui-button\n class=\"access-grants-copy-link-button\"\n variant=\"tertiary\"\n @click=${this.onCopyLinkClick}\n >\n <icon-lucide-link slot=\"left-icon\"></icon-lucide-link>\n <span class=\"access-grants-copy-link-button-label\">Copy Link</span>\n </solid-ui-button>\n </div>\n ${this.renderGeneralShareRow({\n title: 'Only logged in users with the link',\n description: 'Users must sign in to SolidOS to access this shared item using the link.',\n variant: 'authenticated'\n })}\n ${this.renderGeneralShareRow({\n title: 'Anyone with the Link',\n description: 'Anyone on the internet with the link can view.',\n variant: 'public'\n })}\n </section>\n `\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AccessControlGeneralAccess.esm.js","names":["customElement","WebComponent","html","property","ACCESS_ROLES","PUBLIC_ACCESS_ROLES","debug","styles","_classDecs","_AccessControlGeneral","_AccessControlGeneral2","_A","WeakMap","_B","_C","_D","_ref","_subjectUriDecs","attribute","_authenticatedAccessRoleValueDecs","_publicAccessRoleValueDecs","_disabledDecs","type","Boolean","_AccessControlGeneralAccess","AccessControlGeneralAccess","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_subjectUri","undefined","_init_authenticatedAccessRoleValue","_init_publicAccessRoleValue","_init_disabled","_classPrivateFieldGet","subjectUri","v","_classPrivateFieldSet","authenticatedAccessRoleValue","publicAccessRoleValue","disabled","onAuthenticatedRoleChange","event","dispatchRoleChange","onPublicRoleChange","eventName","roles","value","detail","option","includes","role","dispatchEvent","CustomEvent","bubbles","composed","onCopyLinkClick","preventDefault","navigator","clipboard","writeText","error","renderAuthenticatedRoleOptions","map","renderPublicRoleOptions","renderAuthenticatedModeSelector","renderPublicModeSelector","renderGeneralAccessIcon","renderGeneralShareRow","options","title","description","variant","render","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","error","styles","WebComponent","AccessControlGeneralAccess_styles_default","_Class","_AccessControlGeneralAccess","_A","_B","_C","_D","_initProto","_initClass","_classDecs","_subjectUriDecs","_init_subjectUri","_authenticatedAccessRoleValueDecs","_init_authenticatedAccessRoleValue","_publicAccessRoleValueDecs","_init_publicAccessRoleValue","_disabledDecs","_init_disabled","_AccessControlGeneral2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","c","applyDec","m","h","y","v","g","b","u","w","S","A","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","customElement","_AccessControlGeneral","property","args","event","ACCESS_ROLES","PUBLIC_ACCESS_ROLES","value","roles","detail","eventName","error$1","role","options"],"sources":["../../../src/components/access-control-modal/AccessControlGeneralAccess.ts"],"sourcesContent":["import { customElement, WebComponent } from '@/lib/components'\nimport { html } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { ACCESS_ROLES, PUBLIC_ACCESS_ROLES, type AccessRole } from 'solid-logic'\nimport * as debug from '@/lib/debug'\nimport type { ComboboxChangeEvent } from '@/components/combobox'\n\nimport '~icons/lucide/link'\nimport '~icons/lucide/globe'\nimport '@/components/button'\nimport '@/components/combobox'\nimport '@/components/combobox-option'\n\nimport styles from './AccessControlGeneralAccess.styles.css'\nimport type { RoleChangedDetail } from './types'\n\n@customElement('solid-ui-access-control-general-access')\nexport default class AccessControlGeneralAccess extends WebComponent {\n static styles = styles\n\n @property({ attribute: false })\n accessor subjectUri: string | undefined = undefined\n\n @property({ attribute: false })\n accessor authenticatedAccessRoleValue: AccessRole = 'No Access'\n\n @property({ attribute: false })\n accessor publicAccessRoleValue: AccessRole = 'No Access'\n\n @property({ type: Boolean })\n accessor disabled = false\n\n private onAuthenticatedRoleChange (event: ComboboxChangeEvent) {\n this.dispatchRoleChange('authenticated-role-changed', event, ACCESS_ROLES)\n }\n\n private onPublicRoleChange (event: ComboboxChangeEvent) {\n this.dispatchRoleChange('public-role-changed', event, PUBLIC_ACCESS_ROLES)\n }\n\n private dispatchRoleChange (\n eventName: 'authenticated-role-changed' | 'public-role-changed',\n event: ComboboxChangeEvent,\n roles: readonly string[]\n ) {\n const value = event.detail.option.value\n if (typeof value !== 'string' || !roles.includes(value)) {\n return\n }\n\n const detail: RoleChangedDetail = { role: value as AccessRole }\n this.dispatchEvent(new CustomEvent<RoleChangedDetail>(eventName, {\n detail,\n bubbles: true,\n composed: true\n }))\n }\n\n private async onCopyLinkClick (event: Event) {\n event.preventDefault()\n\n if (!this.subjectUri) {\n return\n }\n\n try {\n await navigator.clipboard.writeText(this.subjectUri)\n } catch (error) {\n debug.error('Failed to copy resource link', error)\n }\n }\n\n private renderAuthenticatedRoleOptions () {\n return ACCESS_ROLES.map(role => html`\n <solid-ui-combobox-option value=${role}>${role}</solid-ui-combobox-option>\n `)\n }\n\n private renderPublicRoleOptions () {\n return PUBLIC_ACCESS_ROLES.map(role => html`\n <solid-ui-combobox-option value=${role}>${role}</solid-ui-combobox-option>\n `)\n }\n\n private renderAuthenticatedModeSelector () {\n return html`\n <solid-ui-combobox\n class=\"access-role-select access-role-select--compact access-role-select--general access-grants-role access-grants-role--editable access-role-select--authenticated\"\n .disabled=${this.disabled}\n .value=${this.authenticatedAccessRoleValue}\n @change=${this.onAuthenticatedRoleChange}\n >\n ${this.renderAuthenticatedRoleOptions()}\n </solid-ui-combobox>\n `\n }\n\n private renderPublicModeSelector () {\n return html`\n <solid-ui-combobox\n class=\"access-role-select access-role-select--compact access-role-select--general access-grants-role access-grants-role--editable access-role-select--public\"\n .disabled=${this.disabled}\n .value=${this.publicAccessRoleValue}\n @change=${this.onPublicRoleChange}\n >\n ${this.renderPublicRoleOptions()}\n </solid-ui-combobox>\n `\n }\n\n private renderGeneralAccessIcon () {\n return html`\n <div class=\"access-grants-general-share-icon\">\n <div class=\"access-grants-general-share-icon-inner\">\n <icon-lucide-globe class=\"access-grants-general-share-icon-image\"></icon-lucide-globe>\n </div>\n </div>\n `\n }\n\n private renderGeneralShareRow (options: {\n title: string\n description: string\n variant: 'authenticated' | 'public'\n }) {\n return html`\n <div class=\"access-grants-general-share\">\n <div class=\"access-grants-general-share-content\">\n ${this.renderGeneralAccessIcon()}\n <div class=\"access-grants-general-share-text\">\n <p class=\"access-grants-general-share-text-title\">${options.title}</p>\n <p class=\"access-grants-general-share-text-description\">${options.description}</p>\n </div>\n </div>\n ${options.variant === 'authenticated'\n ? this.renderAuthenticatedModeSelector()\n : this.renderPublicModeSelector()}\n </div>\n `\n }\n\n protected render () {\n return html`\n <section class=\"access-grants-general\" aria-labelledby=\"general-access-heading\">\n <div class=\"access-grants-general-header\">\n <h2 id=\"general-access-heading\">General Access</h2>\n <solid-ui-button\n class=\"access-grants-copy-link-button\"\n variant=\"tertiary\"\n @click=${this.onCopyLinkClick}\n >\n <icon-lucide-link slot=\"left-icon\"></icon-lucide-link>\n <span class=\"access-grants-copy-link-button-label\">Copy Link</span>\n </solid-ui-button>\n </div>\n ${this.renderGeneralShareRow({\n title: 'Only logged in users with the link',\n description: 'Users must sign in to SolidOS to access this shared item using the link.',\n variant: 'authenticated'\n })}\n ${this.renderGeneralShareRow({\n title: 'Anyone with the Link',\n description: 'Anyone on the internet with the link can view.',\n variant: 'public'\n })}\n </section>\n `\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const e=require("../../utils/label.cjs.js"),t=require("../../lib/debug.cjs.js"),n=require("../../lib/components/decorators.cjs.js"),r=require("../../lib/components/dialog-component/DialogComponent.cjs.js");require("../../lib/components/index.cjs.js"),require("../../_virtual/~icons/lucide/x.cjs.js"),require("../button/index.cjs.js"),require("../dialog/index.cjs.js"),require("../dialog-content/index.cjs.js"),require("../dialog-footer/index.cjs.js"),require("../combobox/index.cjs.js"),require("../combobox-option/index.cjs.js"),require("../../_virtual/~icons/lucide/circle-x.cjs.js"),require("../../_virtual/~icons/lucide/folder.cjs.js"),require("../../_virtual/~icons/lucide/folder-open.cjs.js"),require("./AccessControlSharedAccess.cjs.js"),require("./AccessControlGeneralAccess.cjs.js"),require("./AccessControlErrors.cjs.js");const i=require("./AccessControlModal.styles.cjs.js"),a=require("./accessGrantDrafts.cjs.js"),o=require("./accessTargetResolver.cjs.js"),s=require("./applyAccessChanges.cjs.js"),c=require("./buildAccessChanges.cjs.js");let l=require("rdflib"),u=require("solid-logic"),d=require("lit"),f=require("lit/decorators.js");var p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,j,M,ee,te,ne,re,ie,ae,oe,N,P,F,I,L,R,z,B,V,H,U,W,G,K,q,se,ce,le,ue,de,fe,pe,me,he,ge,_e,ve,ye,be,xe,Se,Ce,we,Te;function J(e,t,n){Ee(e,t),t.set(e,n)}function Ee(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function Y(e,t,n){return e.set(De(e,t),n),n}function X(e,t){return e.get(De(e,t))}function De(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 Z(e,t,n){return(t=Q(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Oe(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:Ae(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||Ae(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 je(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:Q(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 Q(e){var t=ke(e,`string`);return typeof t==`symbol`?t:t+``}function ke(e,t){if(typeof e!=`object`||!e)return e;var n;if(typeof Symbol<`u`&&(n=e[Symbol.toPrimitive])!==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 Ae(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 je(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 Me(e){return e}function Ne(e){return e!=null}ne=[n.customElement(`solid-ui-access-control-modal`)];var $;new(we=(h=new WeakMap,g=new WeakMap,_=new WeakMap,v=new WeakMap,y=new WeakMap,b=new WeakMap,x=new WeakMap,S=new WeakMap,C=new WeakMap,w=new WeakMap,T=new WeakMap,E=new WeakMap,D=new WeakMap,O=new WeakMap,k=new WeakMap,A=new WeakMap,j=new WeakMap,M=new WeakMap,Te=(re=(0,f.property)({attribute:!1}),ae=(0,f.property)({attribute:!1}),N=(0,f.state)(),F=(0,f.state)(),L=(0,f.state)(),z=(0,f.state)(),V=(0,f.state)(),U=(0,f.state)(),G=(0,f.state)(),q=(0,f.state)(),ce=(0,f.state)(),ue=(0,f.state)(),fe=(0,f.state)(),me=(0,f.state)(),ge=(0,f.state)(),ve=(0,f.state)(),be=(0,f.state)(),Se=(0,f.state)(),`subjectUri`),m=class extends r.default{constructor(...e){super(...e),J(this,h,(ee(this),ie(this,void 0))),J(this,g,oe(this,void 0)),J(this,_,P(this,``)),J(this,v,I(this,`Viewer`)),J(this,y,R(this,`No Access`)),J(this,b,B(this,`No Access`)),J(this,x,H(this,!1)),J(this,S,W(this,[])),J(this,C,K(this,[])),J(this,w,se(this,[])),J(this,T,le(this,!0)),J(this,E,de(this)),J(this,D,pe(this,!1)),J(this,O,he(this,``)),J(this,k,_e(this,!1)),J(this,A,ye(this,`folder+contents`)),J(this,j,xe(this)),J(this,M,Ce(this,!1)),Z(this,`accessGrantLabelRequestVersion`,0),Z(this,`accessContextRequestVersion`,0),Z(this,`accessContextSubjectUri`,void 0)}get[Te](){return X(h,this)}set subjectUri(e){Y(h,this,e)}get accessGrants(){return X(g,this)}set accessGrants(e){Y(g,this,e)}get principalInputValue(){return X(_,this)}set principalInputValue(e){Y(_,this,e)}get addAccessRoleValue(){return X(v,this)}set addAccessRoleValue(e){Y(v,this,e)}get authenticatedAccessRoleValue(){return X(y,this)}set authenticatedAccessRoleValue(e){Y(y,this,e)}get publicAccessRoleValue(){return X(b,this)}set publicAccessRoleValue(e){Y(b,this,e)}get submitting(){return X(x,this)}set submitting(e){Y(x,this,e)}get pendingAccessGrants(){return X(S,this)}set pendingAccessGrants(e){Y(S,this,e)}get accessGrantDrafts(){return X(C,this)}set accessGrantDrafts(e){Y(C,this,e)}get errors(){return X(w,this)}set errors(e){Y(w,this,e)}get successfulChangesRefreshed(){return X(T,this)}set successfulChangesRefreshed(e){Y(T,this,e)}get accessContext(){return X(E,this)}set accessContext(e){Y(E,this,e)}get accessContextLoading(){return X(D,this)}set accessContextLoading(e){Y(D,this,e)}get accessContextError(){return X(O,this)}set accessContextError(e){Y(O,this,e)}get advancedSharingOpen(){return X(k,this)}set advancedSharingOpen(e){Y(k,this,e)}get containerScope(){return X(A,this)}set containerScope(e){Y(A,this,e)}get containerScopeAnalysis(){return X(j,this)}set containerScopeAnalysis(e){Y(j,this,e)}get protectedTarget(){return X(M,this)}set protectedTarget(e){Y(M,this,e)}disconnectedCallback(){this.accessGrantLabelRequestVersion++,this.accessContextRequestVersion++,this.errors=[],super.disconnectedCallback()}get inputError(){return this.errors.find(e=>e.action===`input`)?.message??``}get saveErrors(){return this.errors.filter(e=>e.action!==`input`)}setInputError(e){this.errors=[...this.errors.filter(e=>e.action!==`input`),e]}clearInputError(){this.errors=this.errors.filter(e=>e.action!==`input`)}willUpdate(e){if(super.willUpdate(e),e.has(`accessGrants`)){let e=this.getScopedAccessGrants();this.accessGrantDrafts=a.createAccessGrantDrafts(e),this.authenticatedAccessRoleValue=a.getAuthenticatedAccessRole(e),this.publicAccessRoleValue=a.getPublicAccessRole(e)}}updated(e){super.updated(e),e.has(`subjectUri`)&&this.loadAccessContext().catch(e=>{t.error(`Failed to load access control context`,e)}),e.has(`accessGrants`)&&this.refreshAccessGrantLabels().catch(e=>{t.error(`Failed to refresh access grant labels`,e)}),e.has(`accessContext`)&&!e.has(`subjectUri`)&&this.refreshContainerScopeAnalysis()}refreshContainerScopeAnalysis(){this.isContainer()&&this.accessContext?(this.containerScopeAnalysis=(0,u.analyzeContainerAccessScope)(this.accessContext),this.containerScope=this.containerScopeAnalysis.primaryScope,this.refreshScopedAccessGrantDrafts()):this.containerScopeAnalysis=void 0}async refreshAccessGrantLabels(){let e=++this.accessGrantLabelRequestVersion,t=this.accessGrants,n=this.subjectUri,r=this.getSelectedContainerScope(),i=this.getScopedAccessGrants(r);if(!i.length){this.accessGrantDrafts=[];return}let o=await Promise.all(i.map(async e=>(await Promise.all(e.agentGroup.map(async e=>{try{await u.solidLogicSingleton.store.fetcher.load((0,l.sym)(e).doc())}catch{}})),a.getAuthorizationSubjectLabel(a.getSharedAuthorization(e)))));if(e===this.accessGrantLabelRequestVersion&&this.accessGrants===t&&this.subjectUri===n&&this.getSelectedContainerScope()===r){let e=new Map(a.getAccessGrantIds(i).map((e,t)=>[e,o[t]]));this.accessGrantDrafts=this.accessGrantDrafts.map(t=>({...t,subjectLabel:e.get(t.id)??t.subjectLabel}))}}getDialogTitle(){let t=this.subjectUri?(0,l.sym)(this.subjectUri):void 0,n=t?e.label(t).trim():``;return!n||n===`this resource`?`Manage Access of "this resource"`:`Manage Access of "${n}"`}isContainer(){return!!(this.subjectUri&&new URL(this.subjectUri).pathname.endsWith(`/`))}async loadAccessContext(){let e=++this.accessContextRequestVersion,n=this.subjectUri;if(this.accessContext=void 0,this.accessContextSubjectUri=void 0,this.accessContextError=``,this.accessContextLoading=!!n,!n)this.accessContextLoading=!1;else try{let t=await u.solidLogicSingleton.acl.findEffectiveAcl(n);if(e!==this.accessContextRequestVersion||this.subjectUri!==n)return;this.accessContext=t,this.accessContextSubjectUri=n,this.accessContext?.inherited&&!this.accessGrants?.length&&(this.accessGrants=this.accessContext.authorizations),this.refreshContainerScopeAnalysis(),this.protectedTarget=u.solidLogicSingleton.acl.isProtectedResource(n),this.protectedTarget&&this.refreshScopedAccessGrantDrafts()}catch(r){if(e!==this.accessContextRequestVersion||this.subjectUri!==n)return;this.accessContextError=r instanceof Error&&r.message.trim()?r.message:`Unable to load access settings for this resource.`,t.error(`Failed to load access control context`,r)}finally{e===this.accessContextRequestVersion&&this.subjectUri===n&&(this.accessContextLoading=!1)}}async ensureAccessContext(){return this.subjectUri?!this.isConnected||this.accessContextSubjectUri===this.subjectUri&&this.accessContext&&!this.accessContextError?!0:(await this.loadAccessContext(),this.accessContextSubjectUri===this.subjectUri&&!!this.accessContext&&!this.accessContextError):!1}canMutate(){return!this.isConnected||!this.subjectUri||!(!this.subjectUri||this.accessContextSubjectUri!==this.subjectUri||!this.accessContext||this.accessContextLoading||this.accessContextError)}async retryAccessContext(){await this.loadAccessContext()}renderSharingInformation(){if(!this.accessContext)return d.html``;let t=!this.accessContext.inherited,n=this.accessContext?.effectiveContainer,r=n?e.label((0,l.sym)(n)).trim():``,i=r&&r!==n?d.html`<strong>${r}</strong> (${n})`:d.html`<strong>${n??`the parent container`}</strong>`;return d.html`
|
|
1
|
+
require("../../lib/components/index.cjs.js");const e=require("../../utils/label.cjs.js"),t=require("../../lib/components/decorators.cjs.js"),n=require("../../lib/components/dialog-component/DialogComponent.cjs.js"),r=require("../../lib/debug.cjs.js");require("../../_virtual/~icons/lucide/circle-x.cjs.js"),require("../../_virtual/~icons/lucide/folder.cjs.js"),require("../../_virtual/~icons/lucide/folder-open.cjs.js"),require("../../_virtual/~icons/lucide/x.cjs.js"),require("../dialog/index.cjs.js"),require("../dialog-content/index.cjs.js"),require("../dialog-footer/index.cjs.js"),require("../button/index.cjs.js"),require("../combobox/index.cjs.js"),require("../combobox-option/index.cjs.js"),require("./AccessControlSharedAccess.cjs.js"),require("./AccessControlGeneralAccess.cjs.js"),require("./AccessControlErrors.cjs.js");const i=require("./AccessControlModal.styles.cjs.js"),a=require("./accessGrantDrafts.cjs.js"),o=require("./accessTargetResolver.cjs.js"),s=require("./applyAccessChanges.cjs.js"),c=require("./buildAccessChanges.cjs.js");let l=require("rdflib"),u=require("solid-logic"),d=require("lit"),f=require("lit/decorators.js");var p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,j,M,ee,te,ne,re,ie,ae,oe,N,P,F,I,L,R,z,B,V,H,U,W,G,K,q,se,ce,le,ue,de,fe,pe,me,he,ge,_e,ve,ye,be,xe,Se,Ce,we,Te;function J(e,t,n){Ee(e,t),t.set(e,n)}function Ee(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function Y(e,t,n){return e.set(De(e,t),n),n}function X(e,t){return e.get(De(e,t))}function De(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 Z(e,t,n){return(t=Q(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Oe(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:Ae(function(){return v(this)},r,`get`),set:function(e){t[4](this,e)}}:b[S]=v,f||Ae(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 je(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:Q(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 Q(e){var t=ke(e,`string`);return typeof t==`symbol`?t:t+``}function ke(e,t){if(typeof e!=`object`||!e)return e;var n;if(typeof Symbol<`u`&&(n=e[Symbol.toPrimitive])!==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 Ae(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 je(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 Me(e){return e}function Ne(e){return e!=null}ne=[t.customElement(`solid-ui-access-control-modal`)];var $;new(we=(h=new WeakMap,g=new WeakMap,_=new WeakMap,v=new WeakMap,y=new WeakMap,b=new WeakMap,x=new WeakMap,S=new WeakMap,C=new WeakMap,w=new WeakMap,T=new WeakMap,E=new WeakMap,D=new WeakMap,O=new WeakMap,k=new WeakMap,A=new WeakMap,j=new WeakMap,M=new WeakMap,Te=(re=(0,f.property)({attribute:!1}),ae=(0,f.property)({attribute:!1}),N=(0,f.state)(),F=(0,f.state)(),L=(0,f.state)(),z=(0,f.state)(),V=(0,f.state)(),U=(0,f.state)(),G=(0,f.state)(),q=(0,f.state)(),ce=(0,f.state)(),ue=(0,f.state)(),fe=(0,f.state)(),me=(0,f.state)(),ge=(0,f.state)(),ve=(0,f.state)(),be=(0,f.state)(),Se=(0,f.state)(),`subjectUri`),m=class extends n.default{constructor(...e){super(...e),J(this,h,(ee(this),ie(this,void 0))),J(this,g,oe(this,void 0)),J(this,_,P(this,``)),J(this,v,I(this,`Viewer`)),J(this,y,R(this,`No Access`)),J(this,b,B(this,`No Access`)),J(this,x,H(this,!1)),J(this,S,W(this,[])),J(this,C,K(this,[])),J(this,w,se(this,[])),J(this,T,le(this,!0)),J(this,E,de(this)),J(this,D,pe(this,!1)),J(this,O,he(this,``)),J(this,k,_e(this,!1)),J(this,A,ye(this,`folder+contents`)),J(this,j,xe(this)),J(this,M,Ce(this,!1)),Z(this,`accessGrantLabelRequestVersion`,0),Z(this,`accessContextRequestVersion`,0),Z(this,`accessContextSubjectUri`,void 0)}get[Te](){return X(h,this)}set subjectUri(e){Y(h,this,e)}get accessGrants(){return X(g,this)}set accessGrants(e){Y(g,this,e)}get principalInputValue(){return X(_,this)}set principalInputValue(e){Y(_,this,e)}get addAccessRoleValue(){return X(v,this)}set addAccessRoleValue(e){Y(v,this,e)}get authenticatedAccessRoleValue(){return X(y,this)}set authenticatedAccessRoleValue(e){Y(y,this,e)}get publicAccessRoleValue(){return X(b,this)}set publicAccessRoleValue(e){Y(b,this,e)}get submitting(){return X(x,this)}set submitting(e){Y(x,this,e)}get pendingAccessGrants(){return X(S,this)}set pendingAccessGrants(e){Y(S,this,e)}get accessGrantDrafts(){return X(C,this)}set accessGrantDrafts(e){Y(C,this,e)}get errors(){return X(w,this)}set errors(e){Y(w,this,e)}get successfulChangesRefreshed(){return X(T,this)}set successfulChangesRefreshed(e){Y(T,this,e)}get accessContext(){return X(E,this)}set accessContext(e){Y(E,this,e)}get accessContextLoading(){return X(D,this)}set accessContextLoading(e){Y(D,this,e)}get accessContextError(){return X(O,this)}set accessContextError(e){Y(O,this,e)}get advancedSharingOpen(){return X(k,this)}set advancedSharingOpen(e){Y(k,this,e)}get containerScope(){return X(A,this)}set containerScope(e){Y(A,this,e)}get containerScopeAnalysis(){return X(j,this)}set containerScopeAnalysis(e){Y(j,this,e)}get protectedTarget(){return X(M,this)}set protectedTarget(e){Y(M,this,e)}disconnectedCallback(){this.accessGrantLabelRequestVersion++,this.accessContextRequestVersion++,this.errors=[],super.disconnectedCallback()}get inputError(){return this.errors.find(e=>e.action===`input`)?.message??``}get saveErrors(){return this.errors.filter(e=>e.action!==`input`)}setInputError(e){this.errors=[...this.errors.filter(e=>e.action!==`input`),e]}clearInputError(){this.errors=this.errors.filter(e=>e.action!==`input`)}willUpdate(e){if(super.willUpdate(e),e.has(`accessGrants`)){let e=this.getScopedAccessGrants();this.accessGrantDrafts=a.createAccessGrantDrafts(e),this.authenticatedAccessRoleValue=a.getAuthenticatedAccessRole(e),this.publicAccessRoleValue=a.getPublicAccessRole(e)}}updated(e){super.updated(e),e.has(`subjectUri`)&&this.loadAccessContext().catch(e=>{r.error(`Failed to load access control context`,e)}),e.has(`accessGrants`)&&this.refreshAccessGrantLabels().catch(e=>{r.error(`Failed to refresh access grant labels`,e)}),e.has(`accessContext`)&&!e.has(`subjectUri`)&&this.refreshContainerScopeAnalysis()}refreshContainerScopeAnalysis(){this.isContainer()&&this.accessContext?(this.containerScopeAnalysis=(0,u.analyzeContainerAccessScope)(this.accessContext),this.containerScope=this.containerScopeAnalysis.primaryScope,this.refreshScopedAccessGrantDrafts()):this.containerScopeAnalysis=void 0}async refreshAccessGrantLabels(){let e=++this.accessGrantLabelRequestVersion,t=this.accessGrants,n=this.subjectUri,r=this.getSelectedContainerScope(),i=this.getScopedAccessGrants(r);if(!i.length){this.accessGrantDrafts=[];return}let o=await Promise.all(i.map(async e=>(await Promise.all(e.agentGroup.map(async e=>{try{await u.solidLogicSingleton.store.fetcher.load((0,l.sym)(e).doc())}catch{}})),a.getAuthorizationSubjectLabel(a.getSharedAuthorization(e)))));if(e===this.accessGrantLabelRequestVersion&&this.accessGrants===t&&this.subjectUri===n&&this.getSelectedContainerScope()===r){let e=new Map(a.getAccessGrantIds(i).map((e,t)=>[e,o[t]]));this.accessGrantDrafts=this.accessGrantDrafts.map(t=>({...t,subjectLabel:e.get(t.id)??t.subjectLabel}))}}getDialogTitle(){let t=this.subjectUri?(0,l.sym)(this.subjectUri):void 0,n=t?e.label(t).trim():``;return!n||n===`this resource`?`Manage Access of "this resource"`:`Manage Access of "${n}"`}isContainer(){return!!(this.subjectUri&&new URL(this.subjectUri).pathname.endsWith(`/`))}async loadAccessContext(){let e=++this.accessContextRequestVersion,t=this.subjectUri;if(this.accessContext=void 0,this.accessContextSubjectUri=void 0,this.accessContextError=``,this.accessContextLoading=!!t,!t)this.accessContextLoading=!1;else try{let n=await u.solidLogicSingleton.acl.findEffectiveAcl(t);if(e!==this.accessContextRequestVersion||this.subjectUri!==t)return;this.accessContext=n,this.accessContextSubjectUri=t,this.accessContext?.inherited&&!this.accessGrants?.length&&(this.accessGrants=this.accessContext.authorizations),this.refreshContainerScopeAnalysis(),this.protectedTarget=u.solidLogicSingleton.acl.isProtectedResource(t),this.protectedTarget&&this.refreshScopedAccessGrantDrafts()}catch(n){if(e!==this.accessContextRequestVersion||this.subjectUri!==t)return;this.accessContextError=n instanceof Error&&n.message.trim()?n.message:`Unable to load access settings for this resource.`,r.error(`Failed to load access control context`,n)}finally{e===this.accessContextRequestVersion&&this.subjectUri===t&&(this.accessContextLoading=!1)}}async ensureAccessContext(){return this.subjectUri?!this.isConnected||this.accessContextSubjectUri===this.subjectUri&&this.accessContext&&!this.accessContextError?!0:(await this.loadAccessContext(),this.accessContextSubjectUri===this.subjectUri&&!!this.accessContext&&!this.accessContextError):!1}canMutate(){return!this.isConnected||!this.subjectUri||!(!this.subjectUri||this.accessContextSubjectUri!==this.subjectUri||!this.accessContext||this.accessContextLoading||this.accessContextError)}async retryAccessContext(){await this.loadAccessContext()}renderSharingInformation(){if(!this.accessContext)return d.html``;let t=!this.accessContext.inherited,n=this.accessContext?.effectiveContainer,r=n?e.label((0,l.sym)(n)).trim():``,i=r&&r!==n?d.html`<strong>${r}</strong> (${n})`:d.html`<strong>${n??`the parent container`}</strong>`;return d.html`
|
|
2
2
|
<div class="access-control-sharing-state-panel">
|
|
3
3
|
${t?d.html`
|
|
4
4
|
<div class="access-control-sharing-state-custom-row">
|
|
@@ -157,5 +157,5 @@ const e=require("../../utils/label.cjs.js"),t=require("../../lib/debug.cjs.js"),
|
|
|
157
157
|
</solid-ui-dialog-footer>
|
|
158
158
|
</form>
|
|
159
159
|
</solid-ui-dialog>
|
|
160
|
-
`}async onSubmit(e){e.preventDefault(),this.submitting||this.hasMixedContainerPolicy()||this.isConnected
|
|
160
|
+
`}async onSubmit(e){e.preventDefault(),this.submitting||this.hasMixedContainerPolicy()||(!this.isConnected||await this.ensureAccessContext())&&await this.commitPrincipalFromInputSafely()}async onSaveClick(){if(this.submitting||this.hasMixedContainerPolicy()||this.isConnected&&!await this.ensureAccessContext()||this.principalInputValue.trim()&&!await this.commitPrincipalFromInputSafely())return;let e=this.isContainer()&&!this.protectedTarget?this.getSelectedContainerScope():`file`;await this.saveAccessChanges(e===`folder`?`container`:e)}onCancelClick(){this.close()}closeAdvancedSharing(){this.advancedSharingOpen=!1}async onResetToDefault(){if(this.subjectUri&&this.canMutate()&&this.accessContext&&!this.accessContext.inherited&&!this.submitting&&!this.hasMixedContainerPolicy()){this.submitting=!0,this.errors=this.errors.filter(e=>e.action===`input`);try{await u.solidLogicSingleton.acl.resetToDefault(this.subjectUri),await this.loadAccessContext();let e=await u.solidLogicSingleton.acl.findAccessGrants(this.subjectUri);this.accessGrants=this.accessContext?.inherited?this.accessContext.authorizations:e}catch(e){this.errors=[...this.errors,{action:`reset`,targetUri:this.subjectUri,label:`Custom sharing`,message:e instanceof Error?e.message:`Unable to reset sharing.`}],r.error(`Failed to reset access control`,e)}finally{this.submitting=!1}}}async saveAccessChanges(e=`file`){if(this.submitting||!this.canMutate()||this.hasMixedContainerPolicy())return;let t=a.getChangedAccessGrants(this.accessGrantDrafts),n=this.getGeneralAccessChanges();if((this.pendingAccessGrants.length||t.length||n.length)&&this.subjectUri){this.submitting=!0,this.errors=this.errors.filter(e=>e.action===`input`),this.successfulChangesRefreshed=!0;try{let i=c.buildAccessChanges({pendingAccessGrants:this.pendingAccessGrants,generalAccessChanges:n,changedAccessGrants:t}),a=await s.applyAccessChanges(this.subjectUri,i,{containerScope:e});if(a.length){this.errors=[...this.errors,...a],this.principalInputValue=``,this.pendingAccessGrants=[];try{this.accessGrants=await u.solidLogicSingleton.acl.findAccessGrants(this.subjectUri)}catch(e){this.successfulChangesRefreshed=!1,this.errors=[...this.errors,{action:`save`,targetUri:this.subjectUri,label:`Shared with list`,message:e instanceof Error?e.message:`Unable to refresh the access list.`}],r.error(`Failed to refresh access grants after save errors`,e)}r.error(`Failed to save some access changes`,a);return}this.principalInputValue=``,this.pendingAccessGrants=[],this.close()}catch(e){this.errors=[...this.errors,{action:`save`,targetUri:this.subjectUri??``,label:`Access changes`,message:e instanceof Error?e.message:`Unexpected error while saving access changes.`}]}finally{this.submitting=!1}}}onPrincipalInput(e){this.canMutate()&&!this.hasMixedContainerPolicy()&&(this.principalInputValue=e.detail.value,this.clearInputError())}onPrincipalSelect(e){this.canMutate()&&!this.hasMixedContainerPolicy()&&this.queuePendingPrincipal(e.detail.value,this.addAccessRoleValue,e.detail.label,void 0,e.detail.targetKind)}getGeneralAccessChanges(){if(!this.subjectUri)return[];let e=this.getScopedAccessGrants(),t=a.getAuthenticatedAccessRole(e),n=a.getPublicAccessRole(e);return[this.authenticatedAccessRoleValue===t?void 0:{subject:u.Authenticated,role:this.authenticatedAccessRoleValue,label:`Authenticated users`},this.publicAccessRoleValue===n?void 0:{subject:u.Public,role:this.publicAccessRoleValue,label:`Public`}].filter(Ne)}onAddAccessRoleInput(e){this.canMutate()&&!this.hasMixedContainerPolicy()&&(this.addAccessRoleValue=e.detail.role,this.pendingAccessGrants=this.pendingAccessGrants.map(t=>({...t,role:e.detail.role})))}onAuthenticatedAccessRoleInput(e){this.canMutate()&&!this.hasMixedContainerPolicy()&&(this.authenticatedAccessRoleValue=e.detail.role)}onPublicAccessRoleInput(e){this.canMutate()&&!this.hasMixedContainerPolicy()&&(this.publicAccessRoleValue=e.detail.role)}onAccessGrantRoleInput(e){this.canMutate()&&!this.hasMixedContainerPolicy()&&(this.accessGrantDrafts=this.accessGrantDrafts.map(t=>t.id===e.detail.id?{...t,role:e.detail.role}:t))}onPendingGrantRemoved(e){this.canMutate()&&!this.hasMixedContainerPolicy()&&(this.pendingAccessGrants=this.pendingAccessGrants.filter((t,n)=>n!==e.detail.index))}hasUnsavedChanges(){return!!(this.pendingAccessGrants.length||this.principalInputValue.trim()||a.getChangedAccessGrants(this.accessGrantDrafts).length||this.getGeneralAccessChanges().length)}async commitPrincipalFromInput(){if(!this.canMutate()||this.hasMixedContainerPolicy())return!1;let e=this.principalInputValue.trim();return e?this.queuePendingPrincipal(e,this.addAccessRoleValue,void 0,e):!1}async commitPrincipalFromInputSafely(){let e=this.principalInputValue.trim();try{return await this.commitPrincipalFromInput()}catch(t){return this.principalInputValue.trim()===e?(this.setInputError({action:`input`,label:`Access target`,targetUri:this.principalInputValue.trim(),message:`We could not verify this access target. Check the value and try again.`}),r.error(`Failed to commit pending access grants`,t),!1):(r.error(`Ignored stale access-target validation error`,t),!1)}}async queuePendingPrincipal(e,t=this.addAccessRoleValue,n,i,a){let o=i??this.principalInputValue.trim(),s=await this.createPendingAccessGrant(e,t,n,a);if(`error`in s)return this.principalInputValue.trim()===o&&this.setInputError(s.error),r.error(`Failed to add access grant:`,s.error.message),!1;let c=[...this.pendingAccessGrants,s.grant];return this.pendingAccessGrants=this.dedupePendingAccessGrants(c),this.principalInputValue.trim()===o&&(this.clearInputError(),this.principalInputValue=``),!0}async createPendingAccessGrant(e,t=this.addAccessRoleValue,n,r){try{let i=e.trim(),a=await o.resolveAccessTarget(i,n);return a?{grant:{subjectType:a.subjectType,subjectValue:a.subjectValue,role:t,label:a.label,targetKind:r??a.targetKind}}:{error:{action:`input`,label:`Access target`,targetUri:i,message:`Could not verify this access target`}}}catch(t){return{error:{action:`input`,label:`Access target`,targetUri:e,message:t instanceof Error&&t.message.trim()?t.message:`Could not verify this access target`}}}}dedupePendingAccessGrants(e){let t=new Map;for(let n of e)t.set(`${n.subjectType}:${n.subjectValue}`,n);return[...t.values()]}},{e:[ie,oe,P,I,R,B,H,W,K,se,le,de,pe,he,_e,ye,xe,Ce,ee],c:[$,te]}=Oe(m,[[re,1,`subjectUri`],[ae,1,`accessGrants`],[N,1,`principalInputValue`],[F,1,`addAccessRoleValue`],[L,1,`authenticatedAccessRoleValue`],[z,1,`publicAccessRoleValue`],[V,1,`submitting`],[U,1,`pendingAccessGrants`],[G,1,`accessGrantDrafts`],[q,1,`errors`],[ce,1,`successfulChangesRefreshed`],[ue,1,`accessContext`],[fe,1,`accessContextLoading`],[me,1,`accessContextError`],[ge,1,`advancedSharingOpen`],[ve,1,`containerScope`],[be,1,`containerScopeAnalysis`],[Se,1,`protectedTarget`]],ne,0,void 0,n.default),m),p=class extends Me{constructor(){super($),Z(this,`styles`,i.default),te()}},Z(p,we,void 0),p),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return $}});
|
|
161
161
|
//# sourceMappingURL=AccessControlModal.cjs.js.map
|