瀏覽代碼

Merge fb4b5fef75 into 461f6d47e4

undefined
Ferdinand Thiessen 2 週之前
父節點
當前提交
c018bd04bc
沒有連結到貢獻者的電子郵件帳戶。
共有 100 個檔案被更改,包括 347 行新增866 行删除
  1. 0
    4
      apps/comments/src/comments-tab.js
  2. 0
    4
      apps/comments/src/services/CommentsInstance.js
  3. 4
    1
      apps/dashboard/src/DashboardApp.vue
  4. 3
    10
      apps/dashboard/src/main.js
  5. 0
    3
      apps/federatedfilesharing/src/main-admin.js
  6. 0
    3
      apps/federatedfilesharing/src/main-personal.js
  7. 0
    1
      apps/files/src/actions/moveOrCopyAction.ts
  8. 0
    2
      apps/files/src/actions/moveOrCopyActionUtils.ts
  9. 0
    5
      apps/files/src/main-personal-settings.js
  10. 2
    4
      apps/files/src/main.ts
  11. 2
    3
      apps/files/src/plugins/search/folderSearch.ts
  12. 0
    3
      apps/files_sharing/src/additionalScripts.js
  13. 0
    3
      apps/files_sharing/src/collaborationresourceshandler.js
  14. 0
    4
      apps/files_sharing/src/files_sharing_tab.js
  15. 0
    5
      apps/files_sharing/src/personal-settings.js
  16. 1
    2
      apps/settings/src/components/WebAuthn/Section.vue
  17. 0
    3
      apps/settings/src/main-admin-ai.js
  18. 0
    3
      apps/settings/src/main-admin-basic-settings.js
  19. 0
    3
      apps/settings/src/main-admin-security.js
  20. 0
    5
      apps/settings/src/main-apps-users-management.ts
  21. 0
    3
      apps/settings/src/main-personal-info.js
  22. 0
    3
      apps/settings/src/main-personal-password.js
  23. 0
    4
      apps/settings/src/main-personal-security.js
  24. 0
    3
      apps/settings/src/main-personal-webauth.js
  25. 0
    3
      apps/sharebymail/src/main-admin.js
  26. 0
    4
      apps/systemtags/src/admin.ts
  27. 0
    4
      apps/theming/src/admin-settings.js
  28. 0
    4
      apps/theming/src/personal-settings.js
  29. 0
    4
      apps/user_status/src/menu.js
  30. 0
    4
      apps/weather_status/src/weather-status.js
  31. 10
    2
      core/Listener/BeforeTemplateRenderedListener.php
  32. 1
    1
      core/css/server.css
  33. 1
    1
      core/css/server.css.map
  34. 2
    0
      core/css/server.scss
  35. 0
    29
      core/js/backgroundjobs.js
  36. 2
    1
      core/js/select2-toggleselect.js
  37. 7
    0
      core/src/cron.ts
  38. 2
    2
      core/src/files/client.js
  39. 6
    73
      core/src/globals.js
  40. 49
    0
      core/src/legacy-globals.js
  41. 0
    4
      core/src/legacy-unified-search.js
  42. 17
    1
      core/src/legacy.js
  43. 3
    2
      core/src/login.js
  44. 1
    5
      core/src/main.js
  45. 1
    0
      core/src/modules/nextcloud-vue.ts
  46. 4
    0
      core/src/modules/vue.ts
  47. 0
    4
      core/src/profile.ts
  48. 0
    4
      core/src/recommendedapps.js
  49. 3
    3
      core/src/systemtags/systemtagsinputfield.js
  50. 65
    0
      core/src/systemtags/templates/result.handlebars.cjs
  51. 40
    0
      core/src/systemtags/templates/result_form.handlebars.cjs
  52. 39
    0
      core/src/systemtags/templates/selection.handlebars.cjs
  53. 5
    9
      core/src/unified-search.ts
  54. 0
    5
      core/src/unsupported-browser-redirect.js
  55. 68
    0
      core/src/utils/deprecate.js
  56. 1
    0
      core/src/views/UnifiedSearchModal.vue
  57. 0
    3
      dist/1110-1110.js
  58. 0
    21
      dist/1110-1110.js.LICENSE.txt
  59. 0
    1
      dist/1110-1110.js.map
  60. 0
    3
      dist/1439-1439.js
  61. 0
    5
      dist/1439-1439.js.LICENSE.txt
  62. 0
    1
      dist/1439-1439.js.map
  63. 0
    3
      dist/1544-1544.js
  64. 0
    1
      dist/1544-1544.js.map
  65. 0
    2
      dist/1689-1689.js
  66. 0
    1
      dist/1689-1689.js.map
  67. 0
    2
      dist/2913-2913.js
  68. 0
    1
      dist/2913-2913.js.map
  69. 0
    2
      dist/3865-3865.js
  70. 0
    1
      dist/3865-3865.js.map
  71. 0
    3
      dist/5455-5455.js
  72. 0
    197
      dist/5455-5455.js.LICENSE.txt
  73. 0
    1
      dist/5455-5455.js.map
  74. 0
    1
      dist/5528-5528.js
  75. 0
    2
      dist/5632-5632.js
  76. 0
    1
      dist/5632-5632.js.map
  77. 0
    2
      dist/6075-6075.js
  78. 0
    1
      dist/6075-6075.js.map
  79. 0
    3
      dist/6364-6364.js
  80. 0
    208
      dist/6364-6364.js.LICENSE.txt
  81. 0
    1
      dist/6364-6364.js.map
  82. 0
    2
      dist/6794-6794.js
  83. 0
    1
      dist/6794-6794.js.map
  84. 0
    3
      dist/7462-7462.js
  85. 0
    43
      dist/7462-7462.js.LICENSE.txt
  86. 0
    1
      dist/7462-7462.js.map
  87. 0
    3
      dist/7883-7883.js
  88. 0
    64
      dist/7883-7883.js.LICENSE.txt
  89. 0
    1
      dist/7883-7883.js.map
  90. 0
    2
      dist/8630-8630.js
  91. 0
    1
      dist/8630-8630.js.map
  92. 0
    3
      dist/9558-9558.js
  93. 0
    21
      dist/9558-9558.js.LICENSE.txt
  94. 0
    1
      dist/9558-9558.js.map
  95. 2
    0
      dist/chunks/ActivityCommentAction-BujjPxU7.mjs
  96. 1
    0
      dist/chunks/ActivityCommentAction-BujjPxU7.mjs.map
  97. 2
    0
      dist/chunks/ActivityCommentEntry-D5l2f4Tb.mjs
  98. 1
    0
      dist/chunks/ActivityCommentEntry-D5l2f4Tb.mjs.map
  99. 2
    0
      dist/chunks/AppChangelogDialog-D5342J--.mjs
  100. 0
    0
      dist/chunks/AppChangelogDialog-D5342J--.mjs.map

+ 0
- 4
apps/comments/src/comments-tab.js 查看文件

@@ -22,13 +22,9 @@

// eslint-disable-next-line n/no-missing-import, import/no-unresolved
import MessageReplyText from '@mdi/svg/svg/message-reply-text.svg?raw'
import { getRequestToken } from '@nextcloud/auth'
import { loadState } from '@nextcloud/initial-state'
import { registerCommentsPlugins } from './comments-activity-tab.ts'

// @ts-expect-error __webpack_nonce__ is injected by webpack
__webpack_nonce__ = btoa(getRequestToken())

if (loadState('comments', 'activityEnabled', false) && OCA?.Activity?.registerSidebarAction !== undefined) {
// Do not mount own tab but mount into activity
window.addEventListener('DOMContentLoaded', function() {

+ 0
- 4
apps/comments/src/services/CommentsInstance.js 查看文件

@@ -21,14 +21,10 @@
*/

import { translate as t, translatePlural as n } from '@nextcloud/l10n'
import { getRequestToken } from '@nextcloud/auth'
import Vue from 'vue'
import CommentsApp from '../views/Comments.vue'
import logger from '../logger.js'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

// Add translates functions
Vue.mixin({
data() {

+ 4
- 1
apps/dashboard/src/DashboardApp.vue 查看文件

@@ -118,9 +118,10 @@
</template>

<script>
import { generateUrl, generateOcsUrl } from '@nextcloud/router'
import { getCurrentUser } from '@nextcloud/auth'
import { loadState } from '@nextcloud/initial-state'
import { translate as t } from '@nextcloud/l10n'
import { generateUrl, generateOcsUrl } from '@nextcloud/router'
import axios from '@nextcloud/axios'
import NcButton from '@nextcloud/vue/dist/Components/NcButton.js'
import Draggable from 'vuedraggable'
@@ -304,6 +305,8 @@ export default {
},

methods: {
t,

/**
* Method to register panels that will be called by the integrating apps
*

+ 3
- 10
apps/dashboard/src/main.js 查看文件

@@ -20,18 +20,11 @@
*
*/

// eslint-disable-next-line import/no-unresolved, n/no-missing-import
import 'vite/modulepreload-polyfill'

import Vue from 'vue'
import DashboardApp from './DashboardApp.vue'
import { translate as t } from '@nextcloud/l10n'
import VTooltip from '@nextcloud/vue/dist/Directives/Tooltip.js'
import { getRequestToken } from '@nextcloud/auth'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

Vue.directive('Tooltip', VTooltip)

Vue.prototype.t = t

const Dashboard = Vue.extend(DashboardApp)
const Instance = new Dashboard({}).$mount('#app-content-vue')

+ 0
- 3
apps/federatedfilesharing/src/main-admin.js 查看文件

@@ -21,14 +21,11 @@
*/

import Vue from 'vue'
import { getRequestToken } from '@nextcloud/auth'
import { translate as t } from '@nextcloud/l10n'
import { loadState } from '@nextcloud/initial-state'

import AdminSettings from './components/AdminSettings.vue'

__webpack_nonce__ = btoa(getRequestToken())

Vue.mixin({
methods: {
t,

+ 0
- 3
apps/federatedfilesharing/src/main-personal.js 查看文件

@@ -18,13 +18,10 @@
*/

import Vue from 'vue'
import { getRequestToken } from '@nextcloud/auth'
import { translate as t } from '@nextcloud/l10n'

import PersonalSettings from './components/PersonalSettings.vue'

__webpack_nonce__ = btoa(getRequestToken())

Vue.mixin({
methods: {
t,

+ 0
- 1
apps/files/src/actions/moveOrCopyAction.ts 查看文件

@@ -19,7 +19,6 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
import '@nextcloud/dialogs/style.css'
import type { Folder, Node, View } from '@nextcloud/files'
import type { IFilePickerButton } from '@nextcloud/dialogs'
import type { FileStat, ResponseDataDetailed } from 'webdav'

+ 0
- 2
apps/files/src/actions/moveOrCopyActionUtils.ts 查看文件

@@ -20,8 +20,6 @@
*
*/

import '@nextcloud/dialogs/style.css'

import type { Folder, Node } from '@nextcloud/files'
import { Permission } from '@nextcloud/files'
import PQueue from 'p-queue'

+ 0
- 5
apps/files/src/main-personal-settings.js 查看文件

@@ -23,13 +23,8 @@
*/

import Vue from 'vue'
import { getRequestToken } from '@nextcloud/auth'

import PersonalSettings from './components/PersonalSettings.vue'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

Vue.prototype.t = t

if (!window.TESTING) {

+ 2
- 4
apps/files/src/main.ts 查看文件

@@ -1,6 +1,5 @@
import { PiniaVuePlugin } from 'pinia'
import { getNavigation } from '@nextcloud/files'
import { getRequestToken } from '@nextcloud/auth'
import Vue from 'vue'

import { pinia } from './store/index.ts'
@@ -10,9 +9,7 @@ import SettingsModel from './models/Setting.js'
import SettingsService from './services/Settings.js'
import FilesApp from './FilesApp.vue'

// @ts-expect-error __webpack_nonce__ is injected by webpack
__webpack_nonce__ = btoa(getRequestToken())

/* eslint-disable @typescript-eslint/no-explicit-any */
declare global {
interface Window {
OC: any;
@@ -20,6 +17,7 @@ declare global {
OCP: any;
}
}
/* eslint-enable @typescript-eslint/no-explicit-any */

// Init private and public Files namespace
window.OCA.Files = window.OCA.Files ?? {}

+ 2
- 3
apps/files/src/plugins/search/folderSearch.ts 查看文件

@@ -25,7 +25,6 @@ import { getFilePickerBuilder } from '@nextcloud/dialogs';
import { imagePath } from '@nextcloud/router'
import { translate as t } from '@nextcloud/l10n'
import logger from '../../logger'
import '@nextcloud/dialogs/style.css'

/**
* Initialize the unified search plugin.
@@ -33,7 +32,7 @@ import '@nextcloud/dialogs/style.css'
function init() {
const OCA = window.OCA
if (!OCA.UnifiedSearch) {
return;
return
}

logger.info('Initializing unified search plugin: folder search from files app');
@@ -65,4 +64,4 @@ function init() {
})
}

document.addEventListener('DOMContentLoaded', init);
document.addEventListener('DOMContentLoaded', init)

+ 0
- 3
apps/files_sharing/src/additionalScripts.js 查看文件

@@ -27,7 +27,4 @@ import './sharebreadcrumbview.js'
import './style/sharebreadcrumb.scss'
import './collaborationresourceshandler.js'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(OC.requestToken)

window.OCA.Sharing = OCA.Sharing

+ 0
- 3
apps/files_sharing/src/collaborationresourceshandler.js 查看文件

@@ -21,9 +21,6 @@
*
*/

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(OC.requestToken)

window.OCP.Collaboration.registerType('file', {
action: () => {
return new Promise((resolve, reject) => {

+ 0
- 4
apps/files_sharing/src/files_sharing_tab.js 查看文件

@@ -23,7 +23,6 @@

import Vue from 'vue'
import { translate as t, translatePlural as n } from '@nextcloud/l10n'
import { getRequestToken } from '@nextcloud/auth'

import ShareSearch from './services/ShareSearch.js'
import ExternalLinkActions from './services/ExternalLinkActions.js'
@@ -33,9 +32,6 @@ import TabSections from './services/TabSections.js'
// eslint-disable-next-line n/no-missing-import, import/no-unresolved
import ShareVariant from '@mdi/svg/svg/share-variant.svg?raw'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

// Init Sharing Tab Service
if (!window.OCA.Sharing) {
window.OCA.Sharing = {}

+ 0
- 5
apps/files_sharing/src/personal-settings.js 查看文件

@@ -22,13 +22,8 @@
*/

import Vue from 'vue'
import { getRequestToken } from '@nextcloud/auth'

import PersonalSettings from './components/PersonalSettings.vue'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

Vue.prototype.t = t

const View = Vue.extend(PersonalSettings)

+ 1
- 2
apps/settings/src/components/WebAuthn/Section.vue 查看文件

@@ -54,13 +54,12 @@
import { browserSupportsWebAuthn } from '@simplewebauthn/browser'
import { confirmPassword } from '@nextcloud/password-confirmation'
import NcNoteCard from '@nextcloud/vue/dist/Components/NcNoteCard.js'
import '@nextcloud/password-confirmation/dist/style.css'
import sortBy from 'lodash/fp/sortBy.js'

import AddDevice from './AddDevice.vue'
import Device from './Device.vue'
import logger from '../../logger.ts'
import { removeRegistration } from '../../service/WebAuthnRegistrationSerice.js'
import { removeRegistration } from '../../service/WebAuthnRegistrationSerice.ts'

const sortByName = sortBy('name')


+ 0
- 3
apps/settings/src/main-admin-ai.js 查看文件

@@ -26,9 +26,6 @@ import Vue from 'vue'

import ArtificialIntelligence from './components/AdminAI.vue'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(OC.requestToken)

Vue.prototype.t = t

// Not used here but required for legacy templates

+ 0
- 3
apps/settings/src/main-admin-basic-settings.js 查看文件

@@ -21,7 +21,6 @@
*/

import Vue from 'vue'
import { getRequestToken } from '@nextcloud/auth'
import { loadState } from '@nextcloud/initial-state'
import { translate as t } from '@nextcloud/l10n'

@@ -30,8 +29,6 @@ import logger from './logger.ts'
import ProfileSettings from './components/BasicSettings/ProfileSettings.vue'
import BackgroundJob from './components/BasicSettings/BackgroundJob.vue'

__webpack_nonce__ = btoa(getRequestToken())

const profileEnabledGlobally = loadState('settings', 'profileEnabledGlobally', true)

Vue.mixin({

+ 0
- 3
apps/settings/src/main-admin-security.js 查看文件

@@ -29,9 +29,6 @@ import AdminTwoFactor from './components/AdminTwoFactor.vue'
import Encryption from './components/Encryption.vue'
import store from './store/admin-security.js'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(OC.requestToken)

Vue.prototype.t = t

// Not used here but required for legacy templates

+ 0
- 5
apps/settings/src/main-apps-users-management.ts 查看文件

@@ -30,7 +30,6 @@ import { translate as t, translatePlural as n } from '@nextcloud/l10n'
import SettingsApp from './views/SettingsApp.vue'
import router from './router/index.ts'
import { useStore } from './store/index.js'
import { getRequestToken } from '@nextcloud/auth'
import { PiniaVuePlugin, createPinia } from 'pinia'

Vue.use(VTooltip, { defaultHtml: false })
@@ -38,10 +37,6 @@ Vue.use(VTooltip, { defaultHtml: false })
const store = useStore()
sync(store, router)

// CSP config for webpack dynamic chunk loading
// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken() ?? '')

// bind to window
Vue.prototype.t = t
Vue.prototype.n = n

+ 0
- 3
apps/settings/src/main-personal-info.js 查看文件

@@ -21,7 +21,6 @@
*/

import Vue from 'vue'
import { getRequestToken } from '@nextcloud/auth'
import { loadState } from '@nextcloud/initial-state'
import { translate as t } from '@nextcloud/l10n'

@@ -43,8 +42,6 @@ import HeadlineSection from './components/PersonalInfo/HeadlineSection.vue'
import BiographySection from './components/PersonalInfo/BiographySection.vue'
import ProfileVisibilitySection from './components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection.vue'

__webpack_nonce__ = btoa(getRequestToken())

const profileEnabledGlobally = loadState('settings', 'profileEnabledGlobally', true)

Vue.mixin({

+ 0
- 3
apps/settings/src/main-personal-password.js 查看文件

@@ -23,9 +23,6 @@ import Vue from 'vue'
import PasswordSection from './components/PasswordSection.vue'
import { translate as t, translatePlural as n } from '@nextcloud/l10n'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(OC.requestToken)

Vue.prototype.t = t
Vue.prototype.n = n


+ 0
- 4
apps/settings/src/main-personal-security.js 查看文件

@@ -26,14 +26,10 @@ import Vue from 'vue'
import VTooltip from 'v-tooltip'

import AuthTokenSection from './components/AuthTokenSection.vue'
import { getRequestToken } from '@nextcloud/auth'
import { PiniaVuePlugin, createPinia } from 'pinia'

import '@nextcloud/password-confirmation/dist/style.css'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

const pinia = createPinia()

Vue.use(PiniaVuePlugin)

+ 0
- 3
apps/settings/src/main-personal-webauth.js 查看文件

@@ -25,9 +25,6 @@ import { loadState } from '@nextcloud/initial-state'

import WebAuthnSection from './components/WebAuthn/Section.vue'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(OC.requestToken)

Vue.prototype.t = t

const View = Vue.extend(WebAuthnSection)

+ 0
- 3
apps/sharebymail/src/main-admin.js 查看文件

@@ -21,13 +21,10 @@
*/

import Vue from 'vue'
import { getRequestToken } from '@nextcloud/auth'
import { translate as t } from '@nextcloud/l10n'

import AdminSettings from './components/AdminSettings.vue'

__webpack_nonce__ = btoa(getRequestToken())

Vue.mixin({
methods: {
t,

+ 0
- 4
apps/systemtags/src/admin.ts 查看文件

@@ -21,12 +21,8 @@
*/

import Vue from 'vue'
import { getRequestToken } from '@nextcloud/auth'

import SystemTagsSection from './views/SystemTagsSection.vue'

// @ts-expect-error __webpack_nonce__ is injected by webpack
__webpack_nonce__ = btoa(getRequestToken())

const SystemTagsSectionView = Vue.extend(SystemTagsSection)
new SystemTagsSectionView().$mount('#vue-admin-systemtags')

+ 0
- 4
apps/theming/src/admin-settings.js 查看文件

@@ -19,15 +19,11 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
import { getRequestToken } from '@nextcloud/auth'
import Vue from 'vue'

import { refreshStyles } from './helpers/refreshStyles.js'
import App from './AdminTheming.vue'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

Vue.prototype.OC = OC
Vue.prototype.t = t


+ 0
- 4
apps/theming/src/personal-settings.js 查看文件

@@ -19,15 +19,11 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
import { getRequestToken } from '@nextcloud/auth'
import Vue from 'vue'

import { refreshStyles } from './helpers/refreshStyles.js'
import App from './UserThemes.vue'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

Vue.prototype.OC = OC
Vue.prototype.t = t


+ 0
- 4
apps/user_status/src/menu.js 查看文件

@@ -23,16 +23,12 @@
*/

import Vue from 'vue'
import { getRequestToken } from '@nextcloud/auth'
import { subscribe } from '@nextcloud/event-bus'

import UserStatus from './UserStatus.vue'

import store from './store/index.js'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

Vue.prototype.t = t
Vue.prototype.$t = t


+ 0
- 4
apps/weather_status/src/weather-status.js 查看文件

@@ -21,12 +21,8 @@
*/

import Vue from 'vue'
import { getRequestToken } from '@nextcloud/auth'
import App from './App.vue'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

Vue.prototype.t = t

document.addEventListener('DOMContentLoaded', function() {

+ 10
- 2
core/Listener/BeforeTemplateRenderedListener.php 查看文件

@@ -43,6 +43,10 @@ class BeforeTemplateRenderedListener implements IEventListener {
return;
}

// Modules we share everywhere
Util::addSharedModule('core', 'shared-vue', 'vue');
Util::addSharedModule('core', 'shared-nextcloud-vue', '@nextcloud/vue');

if ($event->getResponse()->getRenderAs() === TemplateResponse::RENDER_AS_USER) {
// Making sure to inject just after core
Util::addScript('core', 'unsupported-browser-redirect');
@@ -52,14 +56,12 @@ class BeforeTemplateRenderedListener implements IEventListener {

if ($event instanceof BeforeLoginTemplateRenderedEvent) {
// todo: make login work without these
Util::addScript('core', 'common');
Util::addScript('core', 'main');
Util::addTranslations('core');
}

if ($event instanceof BeforeTemplateRenderedEvent) {
// include common nextcloud webpack bundle
Util::addScript('core', 'common');
Util::addScript('core', 'main');
Util::addTranslations('core');

@@ -75,5 +77,11 @@ class BeforeTemplateRenderedListener implements IEventListener {
}
}
}
// If not on login and on non user page or on settings, then add the legacy scrips.
// This MUST be the last one so `prepand` inserts it as the very first script
// TODO: Remove if we finally migrated from jQuery to Vue
if (!($event instanceof BeforeLoginTemplateRenderedEvent) && ($event->getResponse()->getRenderAs() !== TemplateResponse::RENDER_AS_USER || $event->getResponse()->getApp() === 'settings')) {
Util::addScript('core', 'legacy', 'core', true);
}
}
}

+ 1
- 1
core/css/server.css
文件差異過大導致無法顯示
查看文件


+ 1
- 1
core/css/server.css.map
文件差異過大導致無法顯示
查看文件


+ 2
- 0
core/css/server.scss 查看文件

@@ -10,3 +10,5 @@
// If you include .css, it will be imported as url
@import '../../node_modules/@nextcloud/dialogs/dist/style';
@import 'public.scss';
// Import the vendor styles - extracted from our dependencies
@import url('../../dist/style.css');

+ 0
- 29
core/js/backgroundjobs.js 查看文件

@@ -1,29 +0,0 @@
/**
* ownCloud
*
* @author Jakob Sack
* @copyright 2012 Jakob Sack owncloud@jakobsack.de
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either
* version 3 of the License, or any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
*
* You should have received a copy of the GNU Affero General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
*/

// start worker once page has loaded
window.addEventListener('DOMContentLoaded', function(){
$.get( OC.getRootPath()+'/cron.php' );

$('.section .icon-info').tooltip({
placement: 'right'
});
});

+ 2
- 1
core/js/select2-toggleselect.js 查看文件

@@ -14,6 +14,7 @@
* Select2 extension for toggling values in a multi-select dropdown
*/
(function(Select2) {
if (!Select2) return;

var Select2FindHighlightableChoices = Select2.class.multi.prototype.findHighlightableChoices;
Select2.class.multi.prototype.findHighlightableChoices = function () {
@@ -50,5 +51,5 @@
}
};

})(Select2);
})(window.Select2);


dist/1544-1544.js.LICENSE.txt → core/src/cron.ts 查看文件

@@ -19,3 +19,10 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

import { getRootUrl } from '@nextcloud/router'

// start worker once page has loaded
window.addEventListener('DOMContentLoaded', () => {
window.fetch(`${getRootUrl()}/cron.php`)
})

+ 2
- 2
core/src/files/client.js 查看文件

@@ -84,8 +84,8 @@ import escapeHTML from 'escape-html'
if (options.password) {
clientOptions.password = options.password
}
this._client = new dav.Client(clientOptions)
this._client.xhrProvider = _.bind(this._xhrProvider, this)
this._client = new window.dav.Client(clientOptions)
this._client.xhrProvider = window._.bind(this._xhrProvider, this)
this._fileInfoParsers = []
}


+ 6
- 73
core/src/globals.js 查看文件

@@ -27,83 +27,17 @@
import { initCore } from './init.js'

import _ from 'underscore'
import $ from 'jquery'
// TODO: switch to `jquery-ui` package and import widgets and effects individually
// `jquery-ui-dist` is used as a workaround for the issue of missing effects
import 'jquery-ui-dist/jquery-ui.js'
import 'jquery-ui-dist/jquery-ui.css'
import 'jquery-ui-dist/jquery-ui.theme.css'
// END TODO
import Backbone from 'backbone'
import ClipboardJS from 'clipboard'
import { dav } from 'davclient.js'
import Handlebars from 'handlebars'
import md5 from 'blueimp-md5'
import moment from 'moment'
import 'select2'
import 'select2/select2.css'
import 'snap.js/dist/snap.js'
import 'strengthify'
import 'strengthify/strengthify.css'

import OC from './OC/index.js'
import OCP from './OCP/index.js'
import OCA from './OCA/index.js'
import { getToken as getRequestToken } from './OC/requesttoken.js'
import { setDeprecatedProp } from './utils/deprecate.js'
import { translate, translatePlural } from '@nextcloud/l10n'

const warnIfNotTesting = function() {
if (window.TESTING === undefined) {
OC.debug && console.warn.apply(console, arguments)
}
}

/**
* Mark a function as deprecated and automatically
* warn if used!
*
* @param {Function} func the library to deprecate
* @param {string} funcName the name of the library
* @param {number} version the version this gets removed
* @return {Function}
*/
const deprecate = (func, funcName, version) => {
const oldFunc = func
const newFunc = function() {
warnIfNotTesting(`The ${funcName} library is deprecated! It will be removed in nextcloud ${version}.`)
return oldFunc.apply(this, arguments)
}
Object.assign(newFunc, oldFunc)
return newFunc
}

const setDeprecatedProp = (global, cb, msg) => {
(Array.isArray(global) ? global : [global]).forEach(global => {
if (window[global] !== undefined) {
delete window[global]
}
Object.defineProperty(window, global, {
get: () => {
if (msg) {
warnIfNotTesting(`${global} is deprecated: ${msg}`)
} else {
warnIfNotTesting(`${global} is deprecated`)
}

return cb()
},
})
})
}

window._ = _
setDeprecatedProp(['$', 'jQuery'], () => $, 'The global jQuery is deprecated. It will be removed in a later versions without another warning. Please ship your own.')
setDeprecatedProp('Backbone', () => Backbone, 'please ship your own, this will be removed in Nextcloud 20')
setDeprecatedProp(['Clipboard', 'ClipboardJS'], () => ClipboardJS, 'please ship your own, this will be removed in Nextcloud 20')
window.dav = dav
setDeprecatedProp('Handlebars', () => Handlebars, 'please ship your own, this will be removed in Nextcloud 20')
// Global md5 only required for: apps/files/js/file-upload.js
setDeprecatedProp('md5', () => md5, 'please ship your own, this will be removed in Nextcloud 20')
setDeprecatedProp('moment', () => moment, 'please ship your own, this will be removed in Nextcloud 20')
setDeprecatedProp('_', () => _, 'please ship your own, this will be removed in Nextcloud 30')
setDeprecatedProp('dav', () => dav, 'Migrate to use the webdav client from `@nextcloud/files`, this will be removed in Nextcloud 30')

window.OC = OC
setDeprecatedProp('initCore', () => initCore, 'this is an internal function')
@@ -118,7 +52,6 @@ setDeprecatedProp('oc_webroot', () => OC.webroot, 'use OC.getRootPath() instead,
setDeprecatedProp('OCDialogs', () => OC.dialogs, 'use OC.dialogs instead, this will be removed in Nextcloud 20')
window.OCP = OCP
window.OCA = OCA
$.fn.select2 = deprecate($.fn.select2, 'select2', 19)

/**
* translate a string
@@ -129,7 +62,7 @@ $.fn.select2 = deprecate($.fn.select2, 'select2', 19)
* @param {number} [count] number to replace %n with
* @return {string}
*/
window.t = _.bind(OC.L10N.translate, OC.L10N)
window.t = translate

/**
* translate a string
@@ -141,4 +74,4 @@ window.t = _.bind(OC.L10N.translate, OC.L10N)
* @param [vars] map of placeholder key to value
* @return {string} Translated string
*/
window.n = _.bind(OC.L10N.translatePlural, OC.L10N)
window.n = translatePlural

+ 49
- 0
core/src/legacy-globals.js 查看文件

@@ -0,0 +1,49 @@
/**
* @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @author Christoph Wurst <christoph@winzerhof-wurst.at>
* @author John Molakvoæ <skjnldsv@protonmail.com>
* @author Julius Härtl <jus@bitgrid.net>
* @author Ferdinand Thiessen <opensource@fthiessen.de>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* We need to use a separate file as imports are hoisted, so otherwise the globals are not setup when we extend jQuery.
*/

import $ from 'jquery'
import Backbone from 'backbone'
import ClipboardJS from 'clipboard'
import Handlebars from 'handlebars'
import md5 from 'blueimp-md5'
import moment from 'moment'

import { setDeprecatedProp } from './utils/deprecate.js'

// This is wrongly used in legacy files
$.fn.exists = function() {
return $(this).length > 0
}

setDeprecatedProp(['$', 'jQuery'], () => $, 'The global jQuery is deprecated. It will be removed in a later versions without another warning. Please ship your own.')
setDeprecatedProp('Backbone', () => Backbone, 'please ship your own, this will be removed in Nextcloud 20')
setDeprecatedProp(['Clipboard', 'ClipboardJS'], () => ClipboardJS, 'please ship your own, this will be removed in Nextcloud 20')
setDeprecatedProp('Handlebars', () => Handlebars, 'please ship your own, this will be removed in Nextcloud 20')
setDeprecatedProp('md5', () => md5, 'please ship your own, this will be removed in Nextcloud 20')
setDeprecatedProp('moment', () => moment, 'please ship your own, this will be removed in Nextcloud 20')

+ 0
- 4
core/src/legacy-unified-search.js 查看文件

@@ -21,15 +21,11 @@
*/

import { getLoggerBuilder } from '@nextcloud/logger'
import { getRequestToken } from '@nextcloud/auth'
import { translate as t, translatePlural as n } from '@nextcloud/l10n'
import Vue from 'vue'

import UnifiedSearch from './views/LegacyUnifiedSearch.vue'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

const logger = getLoggerBuilder()
.setApp('unified-search')
.detectUser()

dist/core-maintenance.js.LICENSE.txt → core/src/legacy.js 查看文件

@@ -3,7 +3,8 @@
*
* @author Christoph Wurst <christoph@winzerhof-wurst.at>
* @author John Molakvoæ <skjnldsv@protonmail.com>
* @author Roeland Jago Douma <roeland@famdouma.nl>
* @author Julius Härtl <jus@bitgrid.net>
* @author Ferdinand Thiessen <opensource@fthiessen.de>
*
* @license AGPL-3.0-or-later
*
@@ -21,3 +22,18 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

import { deprecate } from './utils/deprecate.js'

// This needs to be the first to setup the globals
import './legacy-globals.js'
import 'jquery-ui-dist/jquery-ui.js'
import 'jquery-ui-dist/jquery-ui.css'
import 'jquery-ui-dist/jquery-ui.theme.css'
import 'select2'
import 'select2/select2.css'
import 'snap.js/dist/snap.js'
import 'strengthify'
import 'strengthify/strengthify.css'

window.$.fn.select2 = deprecate(window.$.fn.select2, 'select2', 19)

+ 3
- 2
core/src/login.js 查看文件

@@ -23,10 +23,11 @@
*
*/

// eslint-disable-next-line import/no-unresolved, n/no-missing-import
import 'vite/modulepreload-polyfill'

import Vue from 'vue'

// eslint-disable-next-line no-unused-vars
import OC from './OC/index.js' // TODO: Not needed but L10n breaks if removed
import LoginView from './views/Login.vue'
import Nextcloud from './mixins/Nextcloud.js'


+ 1
- 5
core/src/main.js 查看文件

@@ -31,16 +31,12 @@ import 'regenerator-runtime/runtime.js'
import OC from './OC/index.js'

import './globals.js'
import './jquery/index.js'
// import './jquery/index.js'
import { initCore } from './init.js'
import { registerAppsSlideToggle } from './OC/apps.js'
import { getRequestToken } from '@nextcloud/auth'
import { generateUrl } from '@nextcloud/router'
import Axios from '@nextcloud/axios'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

window.addEventListener('DOMContentLoaded', function() {
initCore()
registerAppsSlideToggle()

+ 1
- 0
core/src/modules/nextcloud-vue.ts 查看文件

@@ -0,0 +1 @@
export * from '@nextcloud/vue'

+ 4
- 0
core/src/modules/vue.ts 查看文件

@@ -0,0 +1,4 @@
import Vue from 'vue'

export * from 'vue'
export default Vue

+ 0
- 4
core/src/profile.ts 查看文件

@@ -20,15 +20,11 @@
*
*/

import { getRequestToken } from '@nextcloud/auth'
import Vue from 'vue'

import Profile from './views/Profile.vue'
import ProfileSections from './profile/ProfileSections.js'

// @ts-expect-error Script nonce required for webpack loading additional scripts
__webpack_nonce__ = btoa(getRequestToken() ?? '')

if (!window.OCA) {
window.OCA = {}
}

+ 0
- 4
core/src/recommendedapps.js 查看文件

@@ -20,16 +20,12 @@
*
*/

import { getRequestToken } from '@nextcloud/auth'
import { translate as t } from '@nextcloud/l10n'
import Vue from 'vue'

import logger from './logger.js'
import RecommendedApps from './components/setup/RecommendedApps.vue'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

Vue.mixin({
methods: {
t,

+ 3
- 3
core/src/systemtags/systemtagsinputfield.js 查看文件

@@ -24,9 +24,9 @@
*/

/* eslint-disable */
import templateResult from './templates/result.handlebars'
import templateResultForm from './templates/result_form.handlebars'
import templateSelection from './templates/selection.handlebars'
import templateResult from './templates/result.handlebars.cjs'
import templateResultForm from './templates/result_form.handlebars.cjs'
import templateSelection from './templates/selection.handlebars.cjs'

(function(OC) {


+ 65
- 0
core/src/systemtags/templates/result.handlebars.cjs 查看文件

@@ -0,0 +1,65 @@
/* eslint-disable valid-typeof */
const Handlebars = require('handlebars')
const template = Handlebars.template
const templates = Handlebars.templates = Handlebars.templates || {}
templates.result = template({
1(container, depth0, helpers, partials, data) {
return ' new-item'
},
3(container, depth0, helpers, partials, data) {
let stack1; let helper; const lookupProperty = container.lookupProperty || function(parent, propertyName) {
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
return parent[propertyName]
}
return undefined
}

return ' <span class="label">'
+ ((stack1 = ((helper = (helper = lookupProperty(helpers, 'tagMarkup') || (depth0 != null ? lookupProperty(depth0, 'tagMarkup') : depth0)) != null ? helper : container.hooks.helperMissing), (typeof helper === 'function' ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}), { name: 'tagMarkup', hash: {}, data, loc: { start: { line: 4, column: 22 }, end: { line: 4, column: 37 } } }) : helper))) != null ? stack1 : '')
+ '</span>\n'
},
5(container, depth0, helpers, partials, data) {
let helper; const lookupProperty = container.lookupProperty || function(parent, propertyName) {
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
return parent[propertyName]
}
return undefined
}

return ' <span class="label">'
+ container.escapeExpression(((helper = (helper = lookupProperty(helpers, 'name') || (depth0 != null ? lookupProperty(depth0, 'name') : depth0)) != null ? helper : container.hooks.helperMissing), (typeof helper === 'function' ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}), { name: 'name', hash: {}, data, loc: { start: { line: 6, column: 22 }, end: { line: 6, column: 30 } } }) : helper)))
+ '</span>\n'
},
7(container, depth0, helpers, partials, data) {
let helper; const lookupProperty = container.lookupProperty || function(parent, propertyName) {
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
return parent[propertyName]
}
return undefined
}

return ' <span class="systemtags-actions">\n <a href="#" class="rename icon icon-rename" title="'
+ container.escapeExpression(((helper = (helper = lookupProperty(helpers, 'renameTooltip') || (depth0 != null ? lookupProperty(depth0, 'renameTooltip') : depth0)) != null ? helper : container.hooks.helperMissing), (typeof helper === 'function' ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}), { name: 'renameTooltip', hash: {}, data, loc: { start: { line: 10, column: 54 }, end: { line: 10, column: 71 } } }) : helper)))
+ '"></a>\n </span>\n'
},
compiler: [8, '>= 4.3.0'],
main(container, depth0, helpers, partials, data) {
let stack1; let helper; let options; const alias1 = depth0 != null ? depth0 : (container.nullContext || {}); const alias2 = container.hooks.helperMissing; const alias3 = 'function'; const lookupProperty = container.lookupProperty || function(parent, propertyName) {
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
return parent[propertyName]
}
return undefined
}; let buffer
= '<span class="systemtags-item'
+ ((stack1 = lookupProperty(helpers, 'if').call(alias1, (depth0 != null ? lookupProperty(depth0, 'isNew') : depth0), { name: 'if', hash: {}, fn: container.program(1, data, 0), inverse: container.noop, data, loc: { start: { line: 1, column: 28 }, end: { line: 1, column: 57 } } })) != null ? stack1 : '')
+ '" data-id="'
+ container.escapeExpression(((helper = (helper = lookupProperty(helpers, 'id') || (depth0 != null ? lookupProperty(depth0, 'id') : depth0)) != null ? helper : alias2), (typeof helper === alias3 ? helper.call(alias1, { name: 'id', hash: {}, data, loc: { start: { line: 1, column: 68 }, end: { line: 1, column: 74 } } }) : helper)))
+ '">\n<span class="checkmark icon icon-checkmark"></span>\n'
+ ((stack1 = lookupProperty(helpers, 'if').call(alias1, (depth0 != null ? lookupProperty(depth0, 'isAdmin') : depth0), { name: 'if', hash: {}, fn: container.program(3, data, 0), inverse: container.program(5, data, 0), data, loc: { start: { line: 3, column: 1 }, end: { line: 7, column: 8 } } })) != null ? stack1 : '')
stack1 = ((helper = (helper = lookupProperty(helpers, 'allowActions') || (depth0 != null ? lookupProperty(depth0, 'allowActions') : depth0)) != null ? helper : alias2), (options = { name: 'allowActions', hash: {}, fn: container.program(7, data, 0), inverse: container.noop, data, loc: { start: { line: 8, column: 1 }, end: { line: 12, column: 18 } } }), (typeof helper === alias3 ? helper.call(alias1, options) : helper))
if (!lookupProperty(helpers, 'allowActions')) { stack1 = container.hooks.blockHelperMissing.call(depth0, stack1, options) }
if (stack1 != null) { buffer += stack1 }
return buffer + '</span>\n'
},
useData: true,
})

+ 40
- 0
core/src/systemtags/templates/result_form.handlebars.cjs 查看文件

@@ -0,0 +1,40 @@
/* eslint-disable valid-typeof */
const Handlebars = require('handlebars')
const template = Handlebars.template
const templates = Handlebars.templates = Handlebars.templates || {}
templates.result_form = template({
1(container, depth0, helpers, partials, data) {
let helper; const lookupProperty = container.lookupProperty || function(parent, propertyName) {
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
return parent[propertyName]
}
return undefined
}

return ' <a href="#" class="delete icon icon-delete" title="'
+ container.escapeExpression(((helper = (helper = lookupProperty(helpers, 'deleteTooltip') || (depth0 != null ? lookupProperty(depth0, 'deleteTooltip') : depth0)) != null ? helper : container.hooks.helperMissing), (typeof helper === 'function' ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}), { name: 'deleteTooltip', hash: {}, data, loc: { start: { line: 5, column: 53 }, end: { line: 5, column: 70 } } }) : helper)))
+ '"></a>\n'
},
compiler: [8, '>= 4.3.0'],
main(container, depth0, helpers, partials, data) {
let stack1; let helper; const alias1 = depth0 != null ? depth0 : (container.nullContext || {}); const alias2 = container.hooks.helperMissing; const alias3 = 'function'; const alias4 = container.escapeExpression; const lookupProperty = container.lookupProperty || function(parent, propertyName) {
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
return parent[propertyName]
}
return undefined
}

return '<form class="systemtags-rename-form">\n <label class="hidden-visually" for="'
+ alias4(((helper = (helper = lookupProperty(helpers, 'cid') || (depth0 != null ? lookupProperty(depth0, 'cid') : depth0)) != null ? helper : alias2), (typeof helper === alias3 ? helper.call(alias1, { name: 'cid', hash: {}, data, loc: { start: { line: 2, column: 38 }, end: { line: 2, column: 45 } } }) : helper)))
+ '-rename-input">'
+ alias4(((helper = (helper = lookupProperty(helpers, 'renameLabel') || (depth0 != null ? lookupProperty(depth0, 'renameLabel') : depth0)) != null ? helper : alias2), (typeof helper === alias3 ? helper.call(alias1, { name: 'renameLabel', hash: {}, data, loc: { start: { line: 2, column: 60 }, end: { line: 2, column: 75 } } }) : helper)))
+ '</label>\n <input id="'
+ alias4(((helper = (helper = lookupProperty(helpers, 'cid') || (depth0 != null ? lookupProperty(depth0, 'cid') : depth0)) != null ? helper : alias2), (typeof helper === alias3 ? helper.call(alias1, { name: 'cid', hash: {}, data, loc: { start: { line: 3, column: 12 }, end: { line: 3, column: 19 } } }) : helper)))
+ '-rename-input" type="text" value="'
+ alias4(((helper = (helper = lookupProperty(helpers, 'name') || (depth0 != null ? lookupProperty(depth0, 'name') : depth0)) != null ? helper : alias2), (typeof helper === alias3 ? helper.call(alias1, { name: 'name', hash: {}, data, loc: { start: { line: 3, column: 53 }, end: { line: 3, column: 61 } } }) : helper)))
+ '">\n'
+ ((stack1 = lookupProperty(helpers, 'if').call(alias1, (depth0 != null ? lookupProperty(depth0, 'isAdmin') : depth0), { name: 'if', hash: {}, fn: container.program(1, data, 0), inverse: container.noop, data, loc: { start: { line: 4, column: 1 }, end: { line: 6, column: 8 } } })) != null ? stack1 : '')
+ '</form>\n'
},
useData: true,
})

+ 39
- 0
core/src/systemtags/templates/selection.handlebars.cjs 查看文件

@@ -0,0 +1,39 @@
const Handlebars = require('handlebars'); const template = Handlebars.template; const templates = Handlebars.templates = Handlebars.templates || {}
templates.selection = template({
1(container, depth0, helpers, partials, data) {
let stack1; let helper; const lookupProperty = container.lookupProperty || function(parent, propertyName) {
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
return parent[propertyName]
}
return undefined
}

return ' <span class="label">'
+ ((stack1 = ((helper = (helper = lookupProperty(helpers, 'tagMarkup') || (depth0 != null ? lookupProperty(depth0, 'tagMarkup') : depth0)) != null ? helper : container.hooks.helperMissing), (typeof helper === 'function' ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}), { name: 'tagMarkup', hash: {}, data, loc: { start: { line: 2, column: 21 }, end: { line: 2, column: 36 } } }) : helper))) != null ? stack1 : '')
+ '</span>\n'
},
3(container, depth0, helpers, partials, data) {
let helper; const lookupProperty = container.lookupProperty || function(parent, propertyName) {
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
return parent[propertyName]
}
return undefined
}

return ' <span class="label">'
+ container.escapeExpression(((helper = (helper = lookupProperty(helpers, 'name') || (depth0 != null ? lookupProperty(depth0, 'name') : depth0)) != null ? helper : container.hooks.helperMissing), (typeof helper === 'function' ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}), { name: 'name', hash: {}, data, loc: { start: { line: 4, column: 21 }, end: { line: 4, column: 29 } } }) : helper)))
+ '</span>\n'
},
compiler: [8, '>= 4.3.0'],
main(container, depth0, helpers, partials, data) {
let stack1; const lookupProperty = container.lookupProperty || function(parent, propertyName) {
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
return parent[propertyName]
}
return undefined
}

return ((stack1 = lookupProperty(helpers, 'if').call(depth0 != null ? depth0 : (container.nullContext || {}), (depth0 != null ? lookupProperty(depth0, 'isAdmin') : depth0), { name: 'if', hash: {}, fn: container.program(1, data, 0), inverse: container.program(3, data, 0), data, loc: { start: { line: 1, column: 0 }, end: { line: 5, column: 7 } } })) != null ? stack1 : '')
},
useData: true,
})

+ 5
- 9
core/src/unified-search.ts 查看文件

@@ -21,7 +21,6 @@
*/

import { getLoggerBuilder } from '@nextcloud/logger'
import { getRequestToken } from '@nextcloud/auth'
import { translate as t, translatePlural as n } from '@nextcloud/l10n'
import { createPinia, PiniaVuePlugin } from 'pinia'
import Vue from 'vue'
@@ -29,9 +28,6 @@ import Vue from 'vue'
import UnifiedSearch from './views/UnifiedSearch.vue'
import { useSearchStore } from '../src/store/unified-search-external-filters.js'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

const logger = getLoggerBuilder()
.setApp('unified-search')
.detectUser()
@@ -51,11 +47,11 @@ Vue.mixin({

// Define type structure for unified searc action
interface UnifiedSearchAction {
id: string;
appId: string;
label: string;
icon: string;
callback: () => void;
id: string;
appId: string;
label: string;
icon: string;
callback: () => void;
}

// Register the add/register filter action API globally

+ 0
- 5
core/src/unsupported-browser-redirect.js 查看文件

@@ -19,11 +19,6 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

import { getRequestToken } from '@nextcloud/auth'

// eslint-disable-next-line camelcase
__webpack_nonce__ = btoa(getRequestToken())

if (!window.TESTING && !OC?.config?.no_unsupported_browser_warning) {
window.addEventListener('DOMContentLoaded', async function() {
const { testSupportedBrowser } = await import('./utils/RedirectUnsupportedBrowsers.js')

+ 68
- 0
core/src/utils/deprecate.js 查看文件

@@ -0,0 +1,68 @@
/**
* @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @author Christoph Wurst <christoph@winzerhof-wurst.at>
* @author John Molakvoæ <skjnldsv@protonmail.com>
* @author Julius Härtl <jus@bitgrid.net>
* @author Ferdinand Thiessen <opensource@fthiessen.de>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

const warnIfNotTesting = function() {
if (window.TESTING === undefined) {
OC.debug && console.warn.apply(console, arguments)
}
}

/**
* Mark a function as deprecated and automatically
* warn if used!
*
* @param {Function} func the library to deprecate
* @param {string} funcName the name of the library
* @param {number} version the version this gets removed
* @return {Function}
*/
export const deprecate = (func, funcName, version) => {
const oldFunc = func
const newFunc = function() {
warnIfNotTesting(`The ${funcName} library is deprecated! It will be removed in nextcloud ${version}.`)
return oldFunc.apply(this, arguments)
}
Object.assign(newFunc, oldFunc)
return newFunc
}

export const setDeprecatedProp = (global, cb, msg) => {
(Array.isArray(global) ? global : [global]).forEach(global => {
if (window[global] !== undefined) {
delete window[global]
}
Object.defineProperty(window, global, {
get: () => {
if (msg) {
warnIfNotTesting(`${global} is deprecated: ${msg}`)
} else {
warnIfNotTesting(`${global} is deprecated`)
}

return cb()
},
})
})
}

+ 1
- 0
core/src/views/UnifiedSearchModal.vue 查看文件

@@ -155,6 +155,7 @@ import SearchResult from '../components/UnifiedSearch/SearchResult.vue'

import debounce from 'debounce'
import { emit, subscribe } from '@nextcloud/event-bus'
import { translate as t } from '@nextcloud/l10n'
import { useBrowserLocation } from '@vueuse/core'
import { getProviders, search as unifiedSearch, getContacts } from '../services/UnifiedSearchService.js'
import { useSearchStore } from '../store/unified-search-external-filters.js'

+ 0
- 3
dist/1110-1110.js 查看文件

@@ -1,3 +0,0 @@
/*! For license information please see 1110-1110.js.LICENSE.txt */
"use strict";(self.webpackChunknextcloud=self.webpackChunknextcloud||[]).push([[1110],{91110:(e,c,l)=>{l.d(c,{FilePickerVue:()=>n});const n=(0,l(85471).$V)((()=>Promise.all([l.e(4208),l.e(5455)]).then(l.bind(l,80401))))}}]);
//# sourceMappingURL=1110-1110.js.map?v=b004475d49f882b902d2

+ 0
- 21
dist/1110-1110.js.LICENSE.txt 查看文件

@@ -1,21 +0,0 @@
/**
* @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>
*
* @author Ferdinand Thiessen <opensource@fthiessen.de>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

+ 0
- 1
dist/1110-1110.js.map 查看文件

@@ -1 +0,0 @@
{"version":3,"file":"1110-1110.js?v=b004475d49f882b902d2","mappings":";oIAsBA,MAAMA,GAAI,gBAAE,IAAM","sources":["webpack:///nextcloud/node_modules/@nextcloud/dialogs/dist/chunks/index-CqRCpcyw.mjs"],"sourcesContent":["import { defineAsyncComponent as e } from \"vue\";\n/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst i = e(() => import(\"./FilePicker-pvhGKHps.mjs\"));\nexport {\n i as FilePickerVue\n};\n"],"names":["i"],"sourceRoot":""}

+ 0
- 3
dist/1439-1439.js
文件差異過大導致無法顯示
查看文件


+ 0
- 5
dist/1439-1439.js.LICENSE.txt 查看文件

@@ -1,5 +0,0 @@
/*!
* vue-router v3.6.5
* (c) 2022 Evan You
* @license MIT
*/

+ 0
- 1
dist/1439-1439.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 3
dist/1544-1544.js
文件差異過大導致無法顯示
查看文件


+ 0
- 1
dist/1544-1544.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 2
dist/1689-1689.js 查看文件

@@ -1,2 +0,0 @@
"use strict";(self.webpackChunknextcloud=self.webpackChunknextcloud||[]).push([[1689],{20440:(t,e,n)=>{n.d(e,{A:()=>i});var a=n(71354),l=n.n(a),o=n(76314),s=n.n(o)()(l());s.push([t.id,".legacy-prompt__text[data-v-6dd2f36f]{margin-block:0 .75em}.legacy-prompt__input[data-v-6dd2f36f]{margin-block:0 1em}[data-v-6dd2f36f] .legacy-prompt__dialog .dialog__actions{min-width:calc(100% - 12px);justify-content:space-between}","",{version:3,sources:["webpack://./core/src/components/LegacyDialogPrompt.vue"],names:[],mappings:"AAEC,sCACC,oBAAA,CAGD,uCACC,kBAAA,CAIF,0DACC,2BAAA,CACA,6BAAA",sourcesContent:["\n.legacy-prompt {\n\t&__text {\n\t\tmargin-block: 0 .75em;\n\t}\n\n\t&__input {\n\t\tmargin-block: 0 1em;\n\t}\n}\n\n:deep(.legacy-prompt__dialog .dialog__actions) {\n\tmin-width: calc(100% - 12px);\n\tjustify-content: space-between;\n}\n"],sourceRoot:""}]);const i=s},21689:(t,e,n)=>{n.r(e),n.d(e,{default:()=>h});var a=n(53334),l=n(85471),o=n(94219),s=n(82182),i=n(16044);const p=(0,l.pM)({name:"LegacyDialogPrompt",components:{NcDialog:o.A,NcTextField:s.A,NcPasswordField:i.A},props:{name:{type:String,required:!0},text:{type:String,required:!0},isPassword:{type:Boolean,required:!0},inputName:{type:String,default:"prompt-input"}},emits:["close"],data:()=>({inputValue:""}),computed:{buttons(){return[{label:(0,a.Tl)("core","No"),callback:()=>this.$emit("close",!1,this.inputValue)},{label:(0,a.Tl)("core","Yes"),type:"primary",callback:()=>this.$emit("close",!0,this.inputValue)}]}},mounted(){this.$nextTick((()=>{var t,e;return null===(t=this.$refs.input)||void 0===t||null===(e=t.focus)||void 0===e?void 0:e.call(t)}))}});var u=n(85072),c=n.n(u),r=n(97825),d=n.n(r),m=n(77659),A=n.n(m),g=n(55056),_=n.n(g),f=n(10540),y=n.n(f),b=n(41113),C=n.n(b),v=n(20440),x={};x.styleTagTransform=C(),x.setAttributes=_(),x.insert=A().bind(null,"head"),x.domAPI=d(),x.insertStyleElement=y(),c()(v.A,x),v.A&&v.A.locals&&v.A.locals;const h=(0,n(14486).A)(p,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("NcDialog",{attrs:{"dialog-classes":"legacy-prompt__dialog",buttons:t.buttons,name:t.name},on:{"update:open":function(e){return t.$emit("close",!1,t.inputValue)}}},[e("p",{staticClass:"legacy-prompt__text",domProps:{textContent:t._s(t.text)}}),t._v(" "),t.isPassword?e("NcPasswordField",{ref:"input",staticClass:"legacy-prompt__input",attrs:{autocomplete:"new-password",label:t.name,name:t.inputName,value:t.inputValue},on:{"update:value":function(e){t.inputValue=e}}}):e("NcTextField",{ref:"input",staticClass:"legacy-prompt__input",attrs:{label:t.name,name:t.inputName,value:t.inputValue},on:{"update:value":function(e){t.inputValue=e}}})],1)}),[],!1,null,"6dd2f36f",null).exports}}]);
//# sourceMappingURL=1689-1689.js.map?v=0232a38fce31b40e36da

+ 0
- 1
dist/1689-1689.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 2
dist/2913-2913.js 查看文件

@@ -1,2 +0,0 @@
"use strict";(self.webpackChunknextcloud=self.webpackChunknextcloud||[]).push([[2913],{57786:(t,e,n)=>{n.d(e,{A:()=>i});var o=n(71354),r=n.n(o),s=n(76314),a=n.n(s)()(r());a.push([t.id,"\n.comments-action[data-v-fffab6ae] {\n\tpadding: 0;\n}\n","",{version:3,sources:["webpack://./apps/comments/src/views/ActivityCommentAction.vue"],names:[],mappings:";AAmEA;CACA,UAAA;AACA",sourcesContent:['\x3c!--\n - @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n -\n - @author Ferdinand Thiessen <opensource@fthiessen.de>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n --\x3e\n\n<template>\n\t<Comment v-bind="editorData"\n\t\t:auto-complete="autoComplete"\n\t\t:resource-type="resourceType"\n\t\t:editor="true"\n\t\t:user-data="userData"\n\t\t:resource-id="resourceId"\n\t\tclass="comments-action"\n\t\t@new="onNewComment" />\n</template>\n\n<script lang="ts">\nimport { defineComponent } from \'vue\'\nimport Comment from \'../components/Comment.vue\'\nimport CommentView from \'../mixins/CommentView.js\'\nimport logger from \'../logger\'\nimport { showError } from \'@nextcloud/dialogs\'\nimport { translate as t } from \'@nextcloud/l10n\'\n\nexport default defineComponent({\n\tcomponents: {\n\t\tComment,\n\t},\n\tmixins: [CommentView],\n\tprops: {\n\t\treloadCallback: {\n\t\t\ttype: Function,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tmethods: {\n\t\tonNewComment() {\n\t\t\ttry {\n\t\t\t\t// just force reload\n\t\t\t\tthis.reloadCallback()\n\t\t\t} catch (e) {\n\t\t\t\tshowError(t(\'comments\', \'Could not reload comments\'))\n\t\t\t\tlogger.debug(e)\n\t\t\t}\n\t\t},\n\t},\n})\n<\/script>\n\n<style scoped>\n.comments-action {\n\tpadding: 0;\n}\n</style>\n'],sourceRoot:""}]);const i=a},72913:(t,e,n)=>{n.d(e,{default:()=>x});var o=n(85471),r=n(65463),s=n(70452),a=n(96689),i=n(85168),m=n(53334);const c=(0,o.pM)({components:{Comment:r.A},mixins:[s.A],props:{reloadCallback:{type:Function,required:!0}},methods:{onNewComment(){try{this.reloadCallback()}catch(t){(0,i.Qg)((0,m.Tl)("comments","Could not reload comments")),a.A.debug(t)}}}});var l=n(85072),u=n.n(l),d=n(97825),p=n.n(d),f=n(77659),h=n.n(f),A=n(55056),C=n.n(A),b=n(10540),w=n.n(b),g=n(41113),y=n.n(g),v=n(57786),T={};T.styleTagTransform=y(),T.setAttributes=C(),T.insert=h().bind(null,"head"),T.domAPI=p(),T.insertStyleElement=w(),u()(v.A,T),v.A&&v.A.locals&&v.A.locals;const x=(0,n(14486).A)(c,(function(){var t=this,e=t._self._c;return t._self._setupProxy,e("Comment",t._b({staticClass:"comments-action",attrs:{"auto-complete":t.autoComplete,"resource-type":t.resourceType,editor:!0,"user-data":t.userData,"resource-id":t.resourceId},on:{new:t.onNewComment}},"Comment",t.editorData,!1))}),[],!1,null,"fffab6ae",null).exports}}]);
//# sourceMappingURL=2913-2913.js.map?v=1ccb2adaaea884424d3c

+ 0
- 1
dist/2913-2913.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 2
dist/3865-3865.js
文件差異過大導致無法顯示
查看文件


+ 0
- 1
dist/3865-3865.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 3
dist/5455-5455.js
文件差異過大導致無法顯示
查看文件


+ 0
- 197
dist/5455-5455.js.LICENSE.txt 查看文件

@@ -1,197 +0,0 @@
/**
* @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @author Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @author Christoph Wurst <christoph@winzerhof-wurst.at>
* @author John Molakvoæ <skjnldsv@protonmail.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2021 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>
*
* @author Ferdinand Thiessen <opensource@fthiessen.de>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>
*
* @author Ferdinand Thiessen <opensource@fthiessen.de>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

/**
* @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
* @author Ferdinand Thiessen <opensource@fthiessen.de>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2024 Ferdinand Thiessen <opensource@fthiessen.de>
*
* @author Ferdinand Thiessen <opensource@fthiessen.de>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

+ 0
- 1
dist/5455-5455.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 1
dist/5528-5528.js 查看文件

@@ -1 +0,0 @@
"use strict";(self.webpackChunknextcloud=self.webpackChunknextcloud||[]).push([[5528],{95528:(e,u,t)=>{t.r(u),t.d(u,{NcAutoCompleteResult:()=>c.N,NcMentionBubble:()=>l.N,default:()=>c.a});var l=t(11285),c=t(22911)}}]);

+ 0
- 2
dist/5632-5632.js 查看文件

@@ -1,2 +0,0 @@
"use strict";(self.webpackChunknextcloud=self.webpackChunknextcloud||[]).push([[5632],{67695:(t,e,n)=>{n.d(e,{A:()=>a});var o=n(71354),s=n.n(o),m=n(76314),r=n.n(m)()(s());r.push([t.id,"\n.comments-activity[data-v-188dae4a] {\n\tpadding: 0;\n}\n","",{version:3,sources:["webpack://./apps/comments/src/views/ActivityCommentEntry.vue"],names:[],mappings:";AAmFA;CACA,UAAA;AACA",sourcesContent:['\x3c!--\n - @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n -\n - @author Ferdinand Thiessen <opensource@fthiessen.de>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n --\x3e\n\n<template>\n\t<Comment ref="comment"\n\t\ttag="li"\n\t\tv-bind="comment.props"\n\t\t:auto-complete="autoComplete"\n\t\t:resource-type="resourceType"\n\t\t:message="commentMessage"\n\t\t:resource-id="resourceId"\n\t\t:user-data="genMentionsData(comment.props.mentions)"\n\t\tclass="comments-activity"\n\t\t@delete="reloadCallback()" />\n</template>\n\n<script lang="ts">\nimport { translate as t } from \'@nextcloud/l10n\'\n\nimport Comment from \'../components/Comment.vue\'\nimport CommentView from \'../mixins/CommentView\'\n\nexport default {\n\tname: \'ActivityCommentEntry\',\n\n\tcomponents: {\n\t\tComment,\n\t},\n\n\tmixins: [CommentView],\n\tprops: {\n\t\tcomment: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\treloadCallback: {\n\t\t\ttype: Function,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tcommentMessage: \'\',\n\t\t}\n\t},\n\n\twatch: {\n\t\tcomment() {\n\t\t\tthis.commentMessage = this.comment.props.message\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.commentMessage = this.comment.props.message\n\t},\n\n\tmethods: {\n\t\tt,\n\t},\n}\n<\/script>\n\n<style scoped>\n.comments-activity {\n\tpadding: 0;\n}\n</style>\n'],sourceRoot:""}]);const a=r},25632:(t,e,n)=>{n.d(e,{default:()=>v});var o=n(53334),s=n(65463),m=n(70452);const r={name:"ActivityCommentEntry",components:{Comment:s.A},mixins:[m.A],props:{comment:{type:Object,required:!0},reloadCallback:{type:Function,required:!0}},data:()=>({commentMessage:""}),watch:{comment(){this.commentMessage=this.comment.props.message}},mounted(){this.commentMessage=this.comment.props.message},methods:{t:o.Tl}};var a=n(85072),i=n.n(a),c=n(97825),l=n.n(c),p=n(77659),u=n.n(p),d=n(55056),h=n.n(d),A=n(10540),f=n.n(A),g=n(41113),y=n.n(g),C=n(67695),b={};b.styleTagTransform=y(),b.setAttributes=h(),b.insert=u().bind(null,"head"),b.domAPI=l(),b.insertStyleElement=f(),i()(C.A,b),C.A&&C.A.locals&&C.A.locals;const v=(0,n(14486).A)(r,(function(){var t=this;return(0,t._self._c)("Comment",t._b({ref:"comment",staticClass:"comments-activity",attrs:{tag:"li","auto-complete":t.autoComplete,"resource-type":t.resourceType,message:t.commentMessage,"resource-id":t.resourceId,"user-data":t.genMentionsData(t.comment.props.mentions)},on:{delete:function(e){return t.reloadCallback()}}},"Comment",t.comment.props,!1))}),[],!1,null,"188dae4a",null).exports}}]);
//# sourceMappingURL=5632-5632.js.map?v=f16542372833977f05d1

+ 0
- 1
dist/5632-5632.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 2
dist/6075-6075.js
文件差異過大導致無法顯示
查看文件


+ 0
- 1
dist/6075-6075.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 3
dist/6364-6364.js
文件差異過大導致無法顯示
查看文件


+ 0
- 208
dist/6364-6364.js.LICENSE.txt 查看文件

@@ -1,208 +0,0 @@
/*
* @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>
*
* @author Julius Härtl <jus@bitgrid.net>
*
* @license GNU AGPL version 3 or any later version
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/*!
* vue-qrcode v1.0.2
* https://fengyuanchen.github.io/vue-qrcode
*
* Copyright 2018-present Chen Fengyuan
* Released under the MIT license
*
* Date: 2020-01-18T06:04:33.222Z
*/

/**
* @copyright 2022 Louis Chmn <louis@chmn.me>
*
* @author Louis Chmn <louis@chmn.me>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author Arthur Schiwon <blizzz@arthur-schiwon.de>
* @author John Molakvoæ <skjnldsv@protonmail.com>
* @author Julius Härtl <jus@bitgrid.net>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author Christoph Wurst <christoph@winzerhof-wurst.at>
* @author Daniel Calviño Sánchez <danxuliu@gmail.com>
* @author Gary Kim <gary@garykim.dev>
* @author John Molakvoæ <skjnldsv@protonmail.com>
* @author Julius Härtl <jus@bitgrid.net>
* @author Vincent Petry <vincent@nextcloud.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author Christoph Wurst <christoph@winzerhof-wurst.at>
* @author Joas Schilling <coding@schilljs.com>
* @author John Molakvoæ <skjnldsv@protonmail.com>
* @author Julius Härtl <jus@bitgrid.net>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author Daniel Calviño Sánchez <danxuliu@gmail.com>
* @author Gary Kim <gary@garykim.dev>
* @author Georg Ehrke <oc.list@georgehrke.com>
* @author John Molakvoæ <skjnldsv@protonmail.com>
* @author Julius Härtl <jus@bitgrid.net>
* @author Roeland Jago Douma <roeland@famdouma.nl>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
* @author Julius Härtl <jus@bitgrid.net>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**!
* url-search-params-polyfill
*
* @author Jerry Bendy (https://github.com/jerrybendy)
* @licence MIT
*/

+ 0
- 1
dist/6364-6364.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 2
dist/6794-6794.js
文件差異過大導致無法顯示
查看文件


+ 0
- 1
dist/6794-6794.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 3
dist/7462-7462.js
文件差異過大導致無法顯示
查看文件


+ 0
- 43
dist/7462-7462.js.LICENSE.txt 查看文件

@@ -1,43 +0,0 @@
/**
* @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright Copyright (c) 2021 Christopher Ng <chrng8@gmail.com>
*
* @author Christopher Ng <chrng8@gmail.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

+ 0
- 1
dist/7462-7462.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 3
dist/7883-7883.js
文件差異過大導致無法顯示
查看文件


+ 0
- 64
dist/7883-7883.js.LICENSE.txt 查看文件

@@ -1,64 +0,0 @@
/**
* @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @author Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright 2021 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* @copyright 2022 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

+ 0
- 1
dist/7883-7883.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 2
dist/8630-8630.js
文件差異過大導致無法顯示
查看文件


+ 0
- 1
dist/8630-8630.js.map
文件差異過大導致無法顯示
查看文件


+ 0
- 3
dist/9558-9558.js
文件差異過大導致無法顯示
查看文件


+ 0
- 21
dist/9558-9558.js.LICENSE.txt 查看文件

@@ -1,21 +0,0 @@
/**
* @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
*
* @license AGPL-3.0-or-later
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

+ 0
- 1
dist/9558-9558.js.map
文件差異過大導致無法顯示
查看文件


+ 2
- 0
dist/chunks/ActivityCommentAction-BujjPxU7.mjs 查看文件

@@ -0,0 +1,2 @@
/*! third party licenses: dist/vendor.LICENSE.txt */
import{a$ as e,bT as r}from"../core-common.mjs";import{C as m,a}from"./CommentView-DDAImFyi.mjs";import{l as s}from"./logger-Dp4fPXsK.mjs";import"./index-7XKGWWeV.mjs";import{z as n}from"./_plugin-vue2_normalizer-VrK6B12S-B9aYHv6f.mjs";import{n as i}from"./icons-Dg_LJaFK.mjs";import"./preload-helper-BG02UnR2.mjs";import"./GetComments-D7zaGhWv.mjs";import"./index-Dizl7-P2.mjs";import"./util-MKsKVvMG.mjs";import"./json2xml-BD0x8Z3S.mjs";const c=e({components:{Comment:m},mixins:[a],props:{reloadCallback:{type:Function,required:!0}},methods:{onNewComment(){try{this.reloadCallback()}catch(o){n(r("comments","Could not reload comments")),s.debug(o)}}}});var p=function(){var o=this,t=o._self._c;return o._self._setupProxy,t("Comment",o._b({staticClass:"comments-action",attrs:{"auto-complete":o.autoComplete,"resource-type":o.resourceType,editor:!0,"user-data":o.userData,"resource-id":o.resourceId},on:{new:o.onNewComment}},"Comment",o.editorData,!1))},l=[],u=i(c,p,l,!1,null,"af786a6d");const D=u.exports;export{D as default};

+ 1
- 0
dist/chunks/ActivityCommentAction-BujjPxU7.mjs.map 查看文件

@@ -0,0 +1 @@
{"version":3,"file":"ActivityCommentAction-BujjPxU7.mjs","sources":["../../apps/comments/src/views/ActivityCommentAction.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n -\n - @author Ferdinand Thiessen <opensource@fthiessen.de>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<Comment v-bind=\"editorData\"\n\t\t:auto-complete=\"autoComplete\"\n\t\t:resource-type=\"resourceType\"\n\t\t:editor=\"true\"\n\t\t:user-data=\"userData\"\n\t\t:resource-id=\"resourceId\"\n\t\tclass=\"comments-action\"\n\t\t@new=\"onNewComment\" />\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\nimport Comment from '../components/Comment.vue'\nimport CommentView from '../mixins/CommentView.js'\nimport logger from '../logger'\nimport { showError } from '@nextcloud/dialogs'\nimport { translate as t } from '@nextcloud/l10n'\n\nexport default defineComponent({\n\tcomponents: {\n\t\tComment,\n\t},\n\tmixins: [CommentView],\n\tprops: {\n\t\treloadCallback: {\n\t\t\ttype: Function,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tmethods: {\n\t\tonNewComment() {\n\t\t\ttry {\n\t\t\t\t// just force reload\n\t\t\t\tthis.reloadCallback()\n\t\t\t} catch (e) {\n\t\t\t\tshowError(t('comments', 'Could not reload comments'))\n\t\t\t\tlogger.debug(e)\n\t\t\t}\n\t\t},\n\t},\n})\n</script>\n\n<style scoped>\n.comments-action {\n\tpadding: 0;\n}\n</style>\n"],"names":["_sfc_main","defineComponent","Comment","CommentView","e","showError","t","logger"],"mappings":";ubAyCA,MAAAA,EAAAC,EAAA,CACA,WAAA,CACA,QAAAC,CACA,EACA,OAAA,CAAAC,CAAA,EACA,MAAA,CACA,eAAA,CACA,KAAA,SACA,SAAA,EACA,CACA,EACA,QAAA,CACA,cAAA,CACA,GAAA,CAEA,KAAA,eAAA,QACAC,EAAA,CACAC,EAAAC,EAAA,WAAA,2BAAA,CAAA,EACAC,EAAA,MAAAH,CAAA,CACA,CACA,CACA,CACA,CAAA"}

+ 2
- 0
dist/chunks/ActivityCommentEntry-D5l2f4Tb.mjs 查看文件

@@ -0,0 +1,2 @@
/*! third party licenses: dist/vendor.LICENSE.txt */
import{bT as o}from"../core-common.mjs";import{C as m,a as s}from"./CommentView-DDAImFyi.mjs";import{n as r}from"./icons-Dg_LJaFK.mjs";import"./preload-helper-BG02UnR2.mjs";import"./index-7XKGWWeV.mjs";import"./_plugin-vue2_normalizer-VrK6B12S-B9aYHv6f.mjs";import"./GetComments-D7zaGhWv.mjs";import"./index-Dizl7-P2.mjs";import"./util-MKsKVvMG.mjs";import"./json2xml-BD0x8Z3S.mjs";import"./logger-Dp4fPXsK.mjs";const n={name:"ActivityCommentEntry",components:{Comment:m},mixins:[s],props:{comment:{type:Object,required:!0},reloadCallback:{type:Function,required:!0}},data(){return{commentMessage:""}},watch:{comment(){this.commentMessage=this.comment.props.message}},mounted(){this.commentMessage=this.comment.props.message},methods:{t:o}};var a=function(){var t=this,e=t._self._c;return e("Comment",t._b({ref:"comment",staticClass:"comments-activity",attrs:{tag:"li","auto-complete":t.autoComplete,"resource-type":t.resourceType,message:t.commentMessage,"resource-id":t.resourceId,"user-data":t.genMentionsData(t.comment.props.mentions)},on:{delete:function(p){return t.reloadCallback()}}},"Comment",t.comment.props,!1))},c=[],i=r(n,a,c,!1,null,"75f01f67");const x=i.exports;export{x as default};

+ 1
- 0
dist/chunks/ActivityCommentEntry-D5l2f4Tb.mjs.map 查看文件

@@ -0,0 +1 @@
{"version":3,"file":"ActivityCommentEntry-D5l2f4Tb.mjs","sources":["../../apps/comments/src/views/ActivityCommentEntry.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n -\n - @author Ferdinand Thiessen <opensource@fthiessen.de>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<Comment ref=\"comment\"\n\t\ttag=\"li\"\n\t\tv-bind=\"comment.props\"\n\t\t:auto-complete=\"autoComplete\"\n\t\t:resource-type=\"resourceType\"\n\t\t:message=\"commentMessage\"\n\t\t:resource-id=\"resourceId\"\n\t\t:user-data=\"genMentionsData(comment.props.mentions)\"\n\t\tclass=\"comments-activity\"\n\t\t@delete=\"reloadCallback()\" />\n</template>\n\n<script lang=\"ts\">\nimport { translate as t } from '@nextcloud/l10n'\n\nimport Comment from '../components/Comment.vue'\nimport CommentView from '../mixins/CommentView'\n\nexport default {\n\tname: 'ActivityCommentEntry',\n\n\tcomponents: {\n\t\tComment,\n\t},\n\n\tmixins: [CommentView],\n\tprops: {\n\t\tcomment: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\treloadCallback: {\n\t\t\ttype: Function,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tcommentMessage: '',\n\t\t}\n\t},\n\n\twatch: {\n\t\tcomment() {\n\t\t\tthis.commentMessage = this.comment.props.message\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.commentMessage = this.comment.props.message\n\t},\n\n\tmethods: {\n\t\tt,\n\t},\n}\n</script>\n\n<style scoped>\n.comments-activity {\n\tpadding: 0;\n}\n</style>\n"],"names":["_sfc_main","Comment","CommentView","t"],"mappings":";4ZAyCA,MAAAA,EAAA,CACA,KAAA,uBAEA,WAAA,CACA,QAAAC,CACA,EAEA,OAAA,CAAAC,CAAA,EACA,MAAA,CACA,QAAA,CACA,KAAA,OACA,SAAA,EACA,EACA,eAAA,CACA,KAAA,SACA,SAAA,EACA,CACA,EAEA,MAAA,CACA,MAAA,CACA,eAAA,EAAA,CAEA,EAEA,MAAA,CACA,SAAA,CACA,KAAA,eAAA,KAAA,QAAA,MAAA,OACA,CACA,EAEA,SAAA,CACA,KAAA,eAAA,KAAA,QAAA,MAAA,OACA,EAEA,QAAA,CAAA,EACAC,CACA,CACA"}

+ 2
- 0
dist/chunks/AppChangelogDialog-D5342J--.mjs 查看文件

@@ -0,0 +1,2 @@
/*! third party licenses: dist/vendor.LICENSE.txt */
import{a$ as m,bT as p,bv as r,bM as g,T as f,b$ as c,bS as b}from"../core-common.mjs";import{M as h}from"./Markdown-kHeGrDZG.mjs";import{n as _}from"./icons-Dg_LJaFK.mjs";import"./marked.esm-tfH3s0ej.mjs";const k=m({__name:"AppChangelogDialog",props:{appId:null,version:{default:void 0},open:{type:Boolean,default:!0}},emits:["dismiss","update:open"],setup(t,{emit:n}){var e;const a=t,u=[{label:p("updatenotification","Give feedback"),callback:()=>{window.open("https://apps.nextcloud.com/apps/".concat(a.appId,"#comments"),"_blank","noreferrer noopener")}},{label:p("updatenotification","Get started"),type:"primary",callback:()=>{n("dismiss"),n("update:open",!1)}}],s=r(a.appId),l=r((e=a.version)!=null?e:""),i=r("");return g(()=>{const v=a.version?c("/apps/updatenotification/api/v1/changelog/{app}?version={version}",{version:a.version,app:a.appId}):c("/apps/updatenotification/api/v1/changelog/{app}",{version:a.version,app:a.appId});b.get(v).then(({data:o})=>{s.value=o.ocs.data.appName,l.value=o.ocs.data.version,i.value=o.ocs.data.content}).catch(o=>{var d;((d=o==null?void 0:o.response)==null?void 0:d.status)===404?(s.value=a.appId,i.value=p("updatenotification","No changelog available")):(console.error("Failed to load changelog entry",o),n("update:open",!1))})}),{__sfc:!0,props:a,emit:n,dialogButtons:u,appName:s,appVersion:l,markdown:i,t:p,NcDialog:f,Markdown:h}}});var w=function(){var t=this,n=t._self._c,e=t._self._setupProxy;return n(e.NcDialog,{attrs:{"content-classes":"app-changelog-dialog",buttons:e.dialogButtons,name:e.t("updatenotification","What's new in {app} {version}",{app:e.appName,version:e.appVersion}),open:t.open&&e.markdown!==void 0,size:"normal"},on:{"update:open":function(a){return t.$emit("update:open",a)}}},[n(e.Markdown,{staticClass:"app-changelog-dialog__text",attrs:{markdown:e.markdown,"min-heading-level":3}})],1)},x=[],I=_(k,w,x,!1,null,"059bf4ab");const C=I.exports;export{C as default};

+ 0
- 0
dist/chunks/AppChangelogDialog-D5342J--.mjs.map 查看文件


部分文件因文件數量過多而無法顯示

Loading…
取消
儲存