@scaleflex/uploader 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +57 -0
- package/LICENSE +50 -0
- package/README.md +123 -0
- package/dist/auth/auth.service.d.ts +25 -0
- package/dist/auth/auth.service.d.ts.map +1 -0
- package/dist/auth/auth.types.d.ts +24 -0
- package/dist/auth/auth.types.d.ts.map +1 -0
- package/dist/auth/index.d.ts +3 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/components/actions-bar.d.ts +17 -0
- package/dist/components/actions-bar.d.ts.map +1 -0
- package/dist/components/camera-dialog.d.ts +27 -0
- package/dist/components/camera-dialog.d.ts.map +1 -0
- package/dist/components/drop-zone.d.ts +28 -0
- package/dist/components/drop-zone.d.ts.map +1 -0
- package/dist/components/file-item.d.ts +12 -0
- package/dist/components/file-item.d.ts.map +1 -0
- package/dist/components/file-list.d.ts +8 -0
- package/dist/components/file-list.d.ts.map +1 -0
- package/dist/components/import-divider.d.ts +6 -0
- package/dist/components/import-divider.d.ts.map +1 -0
- package/dist/components/index.d.ts +9 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/provider-browser.d.ts +48 -0
- package/dist/components/provider-browser.d.ts.map +1 -0
- package/dist/components/screen-cast-dialog.d.ts +29 -0
- package/dist/components/screen-cast-dialog.d.ts.map +1 -0
- package/dist/components/search-provider-browser.d.ts +36 -0
- package/dist/components/search-provider-browser.d.ts.map +1 -0
- package/dist/components/source-pills.d.ts +11 -0
- package/dist/components/source-pills.d.ts.map +1 -0
- package/dist/components/success-card.d.ts +10 -0
- package/dist/components/success-card.d.ts.map +1 -0
- package/dist/components/url-dialog.d.ts +25 -0
- package/dist/components/url-dialog.d.ts.map +1 -0
- package/dist/connectors/companion-client.d.ts +58 -0
- package/dist/connectors/companion-client.d.ts.map +1 -0
- package/dist/connectors/connector.types.d.ts +56 -0
- package/dist/connectors/connector.types.d.ts.map +1 -0
- package/dist/connectors/index.d.ts +5 -0
- package/dist/connectors/index.d.ts.map +1 -0
- package/dist/connectors/provider-registry.d.ts +8 -0
- package/dist/connectors/provider-registry.d.ts.map +1 -0
- package/dist/connectors/token-store.d.ts +10 -0
- package/dist/connectors/token-store.d.ts.map +1 -0
- package/dist/controllers/store.controller.d.ts +14 -0
- package/dist/controllers/store.controller.d.ts.map +1 -0
- package/dist/define.cjs +1 -0
- package/dist/define.d.ts +2 -0
- package/dist/define.d.ts.map +1 -0
- package/dist/define.js +15 -0
- package/dist/engine/companion-upload.d.ts +23 -0
- package/dist/engine/companion-upload.d.ts.map +1 -0
- package/dist/engine/index.d.ts +2 -0
- package/dist/engine/index.d.ts.map +1 -0
- package/dist/engine/upload-engine.d.ts +56 -0
- package/dist/engine/upload-engine.d.ts.map +1 -0
- package/dist/engine/xhr-upload.d.ts +25 -0
- package/dist/engine/xhr-upload.d.ts.map +1 -0
- package/dist/events/event-bus.d.ts +38 -0
- package/dist/events/event-bus.d.ts.map +1 -0
- package/dist/events/public-events.d.ts +23 -0
- package/dist/events/public-events.d.ts.map +1 -0
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +21 -0
- package/dist/provider-browser-C-S_MPrC.js +832 -0
- package/dist/provider-browser-CmCwv0ph.cjs +581 -0
- package/dist/react.cjs +1 -0
- package/dist/react.d.ts +33 -0
- package/dist/react.d.ts.map +1 -0
- package/dist/react.js +125 -0
- package/dist/search-provider-browser-DxmLznEB.cjs +390 -0
- package/dist/search-provider-browser-jCOer2Y9.js +537 -0
- package/dist/sfx-uploader-BVDK-9xi.cjs +2029 -0
- package/dist/sfx-uploader-C2lWIRnU.js +3789 -0
- package/dist/sfx-uploader.d.ts +131 -0
- package/dist/sfx-uploader.d.ts.map +1 -0
- package/dist/store/helpers.d.ts +16 -0
- package/dist/store/helpers.d.ts.map +1 -0
- package/dist/store/index.d.ts +7 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/store.d.ts +14 -0
- package/dist/store/store.d.ts.map +1 -0
- package/dist/store/store.types.d.ts +77 -0
- package/dist/store/store.types.d.ts.map +1 -0
- package/dist/test-utils.d.ts +5 -0
- package/dist/test-utils.d.ts.map +1 -0
- package/dist/types/source.types.d.ts +12 -0
- package/dist/types/source.types.d.ts.map +1 -0
- package/dist/utils/file-utils.d.ts +14 -0
- package/dist/utils/file-utils.d.ts.map +1 -0
- package/dist/utils/validate.d.ts +6 -0
- package/dist/utils/validate.d.ts.map +1 -0
- package/package.json +72 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to `@scaleflex/uploader` will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
## [0.1.0] - 2026-03-18
|
|
11
|
+
|
|
12
|
+
Initial release.
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
|
|
16
|
+
- `<sfx-uploader>` web component built with Lit 3 and Shadow DOM
|
|
17
|
+
- Reactive store-based state management with centralised file collection (Map-based for O(1) lookups)
|
|
18
|
+
- Modal and inline display modes
|
|
19
|
+
- Drag & drop zone with animated ring feedback
|
|
20
|
+
- Clipboard paste support for file uploads
|
|
21
|
+
- URL upload dialog for importing files from direct HTTP links
|
|
22
|
+
- Webcam capture dialog (photo and video via MediaRecorder API)
|
|
23
|
+
- Screen capture dialog for recording screen content
|
|
24
|
+
- Native file picker via device source
|
|
25
|
+
- File queue with thumbnail previews, progress bars, and status indicators
|
|
26
|
+
- Source pill buttons for switching between upload sources
|
|
27
|
+
- Concurrent upload queue with configurable concurrency (default: 3)
|
|
28
|
+
- Auto-proceed mode — start uploading as soon as files are added
|
|
29
|
+
- Retry logic with exponential backoff for failed uploads
|
|
30
|
+
- Per-file and aggregate progress tracking with speed and ETA calculations
|
|
31
|
+
- File validation: type, size, total size, and file count restrictions
|
|
32
|
+
- Per-file metadata and tag management (`updateFileMeta`, `updateFilesMeta`)
|
|
33
|
+
- "Fill metadata" button support for external metadata workflows
|
|
34
|
+
- Post-upload success card with file details
|
|
35
|
+
- Abort and cancel operations for individual and batch uploads
|
|
36
|
+
- Cloud provider connectors via Companion proxy server:
|
|
37
|
+
- Google Drive
|
|
38
|
+
- Dropbox
|
|
39
|
+
- OneDrive
|
|
40
|
+
- Box
|
|
41
|
+
- Instagram
|
|
42
|
+
- Facebook
|
|
43
|
+
- Unsplash
|
|
44
|
+
- OAuth token management with `localStorage` caching for cloud providers
|
|
45
|
+
- Provider browser UI with folder navigation and file selection
|
|
46
|
+
- Custom source plugin architecture (`connectors.customSources`)
|
|
47
|
+
- Three authentication modes: security template, SASS key, and session token
|
|
48
|
+
- SASS key exchange for security template mode
|
|
49
|
+
- Auth header generation and API base URL derivation
|
|
50
|
+
- 20+ custom DOM events (`sfx-*`) with `bubbles` and `composed` for shadow DOM crossing
|
|
51
|
+
- Config-based callback alternative (`UploaderCallbacks`) for all events
|
|
52
|
+
- Cancelable `sfx-before-upload` event to intercept and prevent uploads
|
|
53
|
+
- React wrapper with `forwardRef` support, controlled `open` prop, and imperative ref methods
|
|
54
|
+
- CSS custom properties theming with `--sfx-up-*` prefix
|
|
55
|
+
- Package exports: `.`, `./react`, `./define`
|
|
56
|
+
- Vite 6 library build (ESM + CJS) with TypeScript declarations
|
|
57
|
+
- Full TypeScript type exports for all public APIs
|
package/LICENSE
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
PROPRIETARY SOFTWARE LICENSE
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Scaleflex SAS. All Rights Reserved.
|
|
4
|
+
|
|
5
|
+
NOTICE: This software and associated documentation files (the "Software") are
|
|
6
|
+
the exclusive property of Scaleflex SAS. The Software is protected by copyright
|
|
7
|
+
laws, international treaties, and other intellectual property laws.
|
|
8
|
+
|
|
9
|
+
RESTRICTIONS
|
|
10
|
+
|
|
11
|
+
You may NOT, without prior written permission from Scaleflex SAS:
|
|
12
|
+
|
|
13
|
+
1. Copy, reproduce, or duplicate the Software, in whole or in part.
|
|
14
|
+
2. Modify, adapt, translate, reverse engineer, decompile, or disassemble the
|
|
15
|
+
Software, or create derivative works based on the Software.
|
|
16
|
+
3. Distribute, sublicense, lease, rent, loan, sell, or otherwise transfer the
|
|
17
|
+
Software or any rights therein to any third party.
|
|
18
|
+
4. Remove, alter, or obscure any proprietary notices, labels, or marks on the
|
|
19
|
+
Software.
|
|
20
|
+
5. Use the Software for any purpose other than as expressly authorised under
|
|
21
|
+
a separate written licence agreement with Scaleflex SAS.
|
|
22
|
+
|
|
23
|
+
GRANT OF LICENCE
|
|
24
|
+
|
|
25
|
+
Use of this Software is permitted only under a separate written licence
|
|
26
|
+
agreement between the licensee and Scaleflex SAS. Installing or downloading
|
|
27
|
+
this Software does not, by itself, grant any licence or right to use the
|
|
28
|
+
Software.
|
|
29
|
+
|
|
30
|
+
NO WARRANTY
|
|
31
|
+
|
|
32
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
33
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
34
|
+
FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
35
|
+
SCALEFLEX SAS BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN
|
|
36
|
+
AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM, OUT OF, OR IN
|
|
37
|
+
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
38
|
+
|
|
39
|
+
ENFORCEMENT
|
|
40
|
+
|
|
41
|
+
Unauthorised use, reproduction, or distribution of this Software, or any
|
|
42
|
+
portion thereof, may result in severe civil and criminal penalties and will be
|
|
43
|
+
prosecuted to the maximum extent permitted by applicable law.
|
|
44
|
+
|
|
45
|
+
CONTACT
|
|
46
|
+
|
|
47
|
+
For licensing enquiries:
|
|
48
|
+
Scaleflex SAS
|
|
49
|
+
Email: sales@scaleflex.com
|
|
50
|
+
Web: https://www.scaleflex.com
|
package/README.md
ADDED
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="https://www.scaleflex.com">
|
|
3
|
+
<img src="https://scaleflex.cloudimg.io/v7/plugins/js-cloudimage-360-view/logo_scaleflex_on_white_bg.jpg?vh=91b12d&w=700" alt="Scaleflex" width="350">
|
|
4
|
+
</a>
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
<h1 align="center">@scaleflex/uploader</h1>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
Framework-agnostic file upload Web Component for <a href="https://www.scaleflex.com">Scaleflex VXP</a>.<br>
|
|
11
|
+
Drag & drop, URL, webcam, screen capture, and cloud providers — in a single HTML tag.
|
|
12
|
+
</p>
|
|
13
|
+
|
|
14
|
+
<p align="center">
|
|
15
|
+
<a href="https://www.npmjs.com/package/@scaleflex/uploader"><img src="https://img.shields.io/npm/v/@scaleflex/uploader.svg?style=flat-square" alt="npm version"></a>
|
|
16
|
+
<a href="https://www.npmjs.com/package/@scaleflex/uploader"><img src="https://img.shields.io/npm/dm/@scaleflex/uploader.svg?style=flat-square" alt="npm downloads"></a>
|
|
17
|
+
<a href="https://bundlephobia.com/package/@scaleflex/uploader"><img src="https://img.shields.io/bundlephobia/minzip/@scaleflex/uploader?style=flat-square" alt="bundle size"></a>
|
|
18
|
+
<img src="https://img.shields.io/badge/license-proprietary-red?style=flat-square" alt="license">
|
|
19
|
+
</p>
|
|
20
|
+
|
|
21
|
+
<p align="center">
|
|
22
|
+
<a href="https://scaleflex.github.io/uploader/">Live Demo</a> |
|
|
23
|
+
<a href="https://scaleflex.github.io/uploader/#/docs/getting-started">Documentation</a> |
|
|
24
|
+
<a href="https://scaleflex.github.io/uploader/#/examples/basic">Examples</a> |
|
|
25
|
+
<a href="https://www.npmjs.com/package/@scaleflex/uploader">npm</a> |
|
|
26
|
+
<a href="https://www.scaleflex.com">Scaleflex</a>
|
|
27
|
+
</p>
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Features
|
|
32
|
+
|
|
33
|
+
- **Drag & drop** — animated drop zone with visual feedback, plus paste from clipboard
|
|
34
|
+
- **Multiple sources** — device, URL import, webcam, screen capture, and 7 cloud providers (Google Drive, Dropbox, OneDrive, Box, Instagram, Facebook, Unsplash)
|
|
35
|
+
- **Concurrent uploads** — configurable concurrency with retry and exponential backoff
|
|
36
|
+
- **Real-time progress** — per-file and aggregate progress with speed and ETA
|
|
37
|
+
- **File restrictions** — type, size, and count limits with clear rejection reasons
|
|
38
|
+
- **Modal or inline** — use as a modal overlay or embed directly in your page
|
|
39
|
+
- **Fully themeable** — CSS custom properties with `--sfx-up-*` prefix
|
|
40
|
+
- **React wrapper** — controlled `open` prop and imperative ref via `@scaleflex/uploader/react`
|
|
41
|
+
- **Lit 3** — lightweight Web Component with Shadow DOM encapsulation
|
|
42
|
+
- **ESM + CJS** — dual build, tree-shakeable, TypeScript declarations included
|
|
43
|
+
|
|
44
|
+
## Installation
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
npm install @scaleflex/uploader
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Quick start
|
|
51
|
+
|
|
52
|
+
### Web Component
|
|
53
|
+
|
|
54
|
+
```html
|
|
55
|
+
<script type="module">
|
|
56
|
+
import '@scaleflex/uploader/define';
|
|
57
|
+
|
|
58
|
+
const uploader = document.querySelector('sfx-uploader');
|
|
59
|
+
uploader.config = {
|
|
60
|
+
auth: {
|
|
61
|
+
mode: 'security-template',
|
|
62
|
+
container: 'YOUR_CONTAINER',
|
|
63
|
+
securityTemplateId: 'SECU_...',
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
uploader.open();
|
|
67
|
+
</script>
|
|
68
|
+
|
|
69
|
+
<sfx-uploader></sfx-uploader>
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### React
|
|
73
|
+
|
|
74
|
+
```tsx
|
|
75
|
+
import { useState } from 'react';
|
|
76
|
+
import { Uploader } from '@scaleflex/uploader/react';
|
|
77
|
+
|
|
78
|
+
function App() {
|
|
79
|
+
const [open, setOpen] = useState(false);
|
|
80
|
+
|
|
81
|
+
return (
|
|
82
|
+
<>
|
|
83
|
+
<button onClick={() => setOpen(true)}>Upload files</button>
|
|
84
|
+
<Uploader
|
|
85
|
+
open={open}
|
|
86
|
+
config={{
|
|
87
|
+
auth: {
|
|
88
|
+
mode: 'security-template',
|
|
89
|
+
container: 'YOUR_CONTAINER',
|
|
90
|
+
securityTemplateId: 'SECU_...',
|
|
91
|
+
},
|
|
92
|
+
}}
|
|
93
|
+
onClose={() => setOpen(false)}
|
|
94
|
+
onAllComplete={(ok, failed) => console.log('Done', ok, failed)}
|
|
95
|
+
/>
|
|
96
|
+
</>
|
|
97
|
+
);
|
|
98
|
+
}
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Package exports
|
|
102
|
+
|
|
103
|
+
| Specifier | Description |
|
|
104
|
+
|---|---|
|
|
105
|
+
| `@scaleflex/uploader` | Core `SfxUploader` class (use with `customElements.define`) |
|
|
106
|
+
| `@scaleflex/uploader/define` | Auto-registers `<sfx-uploader>` — import for side-effect |
|
|
107
|
+
| `@scaleflex/uploader/react` | React wrapper component |
|
|
108
|
+
|
|
109
|
+
## Browser support
|
|
110
|
+
|
|
111
|
+
| Browser | Version |
|
|
112
|
+
|---|---|
|
|
113
|
+
| Chrome / Edge | 90+ |
|
|
114
|
+
| Firefox | 100+ |
|
|
115
|
+
| Safari | 15.4+ |
|
|
116
|
+
|
|
117
|
+
## Documentation
|
|
118
|
+
|
|
119
|
+
See the full documentation and interactive examples at **[scaleflex.github.io/uploader](https://scaleflex.github.io/uploader/)**.
|
|
120
|
+
|
|
121
|
+
## License
|
|
122
|
+
|
|
123
|
+
See [LICENSE](./LICENSE).
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AuthConfig, AuthHeaders } from './auth.types';
|
|
2
|
+
/**
|
|
3
|
+
* Derive the Scaleflex API base URL from a container name.
|
|
4
|
+
* Returns e.g. "https://api.filerobot.com/my-container"
|
|
5
|
+
*/
|
|
6
|
+
export declare function getApiBase(container: string): string;
|
|
7
|
+
/**
|
|
8
|
+
* Exchange a security template ID for a SASS key.
|
|
9
|
+
* Mirrors asset-picker's `exchangeSassKey()` pattern.
|
|
10
|
+
*/
|
|
11
|
+
export declare function exchangeSassKey(container: string, securityTemplateId: string): Promise<string>;
|
|
12
|
+
/**
|
|
13
|
+
* Build auth headers from a resolved SASS key or session tokens.
|
|
14
|
+
*/
|
|
15
|
+
export declare function buildAuthHeaders(auth: AuthConfig, resolvedSassKey?: string): AuthHeaders;
|
|
16
|
+
/**
|
|
17
|
+
* Resolve auth config into a ready-to-use API base + headers.
|
|
18
|
+
* For security-template mode, performs the SASS key exchange.
|
|
19
|
+
*/
|
|
20
|
+
export declare function resolveAuth(auth: AuthConfig): Promise<{
|
|
21
|
+
apiBase: string;
|
|
22
|
+
headers: AuthHeaders;
|
|
23
|
+
sassKey?: string;
|
|
24
|
+
}>;
|
|
25
|
+
//# sourceMappingURL=auth.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../src/auth/auth.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAQ5D;;;GAGG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC,MAAM,CAAC,CA2BjB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,WAAW,CAyBxF;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,UAAU,GACf,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAStE"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface SecurityTemplateAuth {
|
|
2
|
+
mode: 'security-template';
|
|
3
|
+
container: string;
|
|
4
|
+
securityTemplateId: string;
|
|
5
|
+
airboxPuid?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface SassKeyAuth {
|
|
8
|
+
mode: 'sass-key';
|
|
9
|
+
container: string;
|
|
10
|
+
sassKey: string;
|
|
11
|
+
airboxPuid?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface SessionAuth {
|
|
14
|
+
mode: 'session';
|
|
15
|
+
container: string;
|
|
16
|
+
sessionToken: string;
|
|
17
|
+
companyToken?: string;
|
|
18
|
+
projectToken?: string;
|
|
19
|
+
airboxPuid?: string;
|
|
20
|
+
}
|
|
21
|
+
export type AuthConfig = SecurityTemplateAuth | SassKeyAuth | SessionAuth;
|
|
22
|
+
/** Headers to attach to every Scaleflex API request. */
|
|
23
|
+
export type AuthHeaders = Record<string, string>;
|
|
24
|
+
//# sourceMappingURL=auth.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.types.d.ts","sourceRoot":"","sources":["../../src/auth/auth.types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,UAAU,GAAG,oBAAoB,GAAG,WAAW,GAAG,WAAW,CAAC;AAE1E,wDAAwD;AACxD,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC5G,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
export type UploadButtonState = 'idle' | 'uploading' | 'done';
|
|
3
|
+
export declare class SfxActionsBar extends LitElement {
|
|
4
|
+
static styles: import('lit').CSSResult;
|
|
5
|
+
uploadState: UploadButtonState;
|
|
6
|
+
fileCount: number;
|
|
7
|
+
failedCount: number;
|
|
8
|
+
showFillMetadata: boolean;
|
|
9
|
+
private _clear;
|
|
10
|
+
private _addMore;
|
|
11
|
+
private _fillMetadata;
|
|
12
|
+
private _upload;
|
|
13
|
+
private _retryAll;
|
|
14
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
15
|
+
private _renderUploadButton;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=actions-bar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actions-bar.d.ts","sourceRoot":"","sources":["../../src/components/actions-bar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAGrD,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;AAE9D,qBAAa,aAAc,SAAQ,UAAU;IAC3C,MAAM,CAAC,MAAM,0BA2IX;IAE0B,WAAW,EAAE,iBAAiB,CAAU;IACxC,SAAS,SAAK;IACd,WAAW,SAAK;IACf,gBAAgB,UAAS;IAEtD,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,SAAS;IAIjB,MAAM;IAoDN,OAAO,CAAC,mBAAmB;CAgC5B"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
/**
|
|
3
|
+
* Modal dialog for capturing photos/video via webcam.
|
|
4
|
+
*
|
|
5
|
+
* Fires:
|
|
6
|
+
* - `camera-capture` → { file: File }
|
|
7
|
+
* - `camera-cancel` → void
|
|
8
|
+
*/
|
|
9
|
+
export declare class SfxCameraDialog extends LitElement {
|
|
10
|
+
static styles: import('lit').CSSResult;
|
|
11
|
+
private _stream;
|
|
12
|
+
private _error;
|
|
13
|
+
private _captured;
|
|
14
|
+
private _previewUrl;
|
|
15
|
+
private _onBackdropClick;
|
|
16
|
+
private _onKeyDown;
|
|
17
|
+
connectedCallback(): void;
|
|
18
|
+
disconnectedCallback(): void;
|
|
19
|
+
private _startCamera;
|
|
20
|
+
private _stopStream;
|
|
21
|
+
private _capture;
|
|
22
|
+
private _retake;
|
|
23
|
+
private _usePhoto;
|
|
24
|
+
private _cancel;
|
|
25
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=camera-dialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"camera-dialog.d.ts","sourceRoot":"","sources":["../../src/components/camera-dialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAGrD;;;;;;GAMG;AACH,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,MAAM,CAAC,MAAM,0BA0FX;IAEO,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,WAAW,CAAM;IAElC,OAAO,CAAC,gBAAgB,CAEtB;IAEF,OAAO,CAAC,UAAU,CAEhB;IAEF,iBAAiB;IAKjB,oBAAoB;YAMN,YAAY;IAa1B,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,QAAQ,CAgBd;IAEF,OAAO,CAAC,OAAO,CAKb;IAEF,OAAO,CAAC,SAAS,CAKf;IAEF,OAAO,CAAC,OAAO;IAKf,MAAM;CAqCP"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
import { SourceDef } from './source-pills';
|
|
3
|
+
export declare class SfxDropZone extends LitElement {
|
|
4
|
+
static styles: import('lit').CSSResult;
|
|
5
|
+
compact: boolean;
|
|
6
|
+
accept: string;
|
|
7
|
+
sources: SourceDef[];
|
|
8
|
+
private _dragOver;
|
|
9
|
+
private _rippleEl;
|
|
10
|
+
fileInput: HTMLInputElement;
|
|
11
|
+
private _dragCounter;
|
|
12
|
+
/** Programmatically open file browser. */
|
|
13
|
+
browse(): void;
|
|
14
|
+
private _onDragEnter;
|
|
15
|
+
private _onDragOver;
|
|
16
|
+
private _onDragLeave;
|
|
17
|
+
private _onDrop;
|
|
18
|
+
private _onClick;
|
|
19
|
+
private _onKeyDown;
|
|
20
|
+
private _onFileChange;
|
|
21
|
+
private _onPaste;
|
|
22
|
+
private _onSourceIconClick;
|
|
23
|
+
private _emitFiles;
|
|
24
|
+
connectedCallback(): void;
|
|
25
|
+
disconnectedCallback(): void;
|
|
26
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=drop-zone.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drop-zone.d.ts","sourceRoot":"","sources":["../../src/components/drop-zone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAIrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,qBAAa,WAAY,SAAQ,UAAU;IACzC,MAAM,CAAC,MAAM,0BAmTX;IAE2B,OAAO,UAAS;IACjB,MAAM,SAAM;IACb,OAAO,EAAE,SAAS,EAAE,CAAM;IAE5C,OAAO,CAAC,SAAS,CAAS;IAEjB,OAAO,CAAC,SAAS,CAAe;IACrB,SAAS,EAAG,gBAAgB,CAAC;IAE1D,OAAO,CAAC,YAAY,CAAK;IAEzB,0CAA0C;IAC1C,MAAM;IAMN,OAAO,CAAC,YAAY,CAMlB;IAEF,OAAO,CAAC,WAAW,CAEjB;IAEF,OAAO,CAAC,YAAY,CAOlB;IAEF,OAAO,CAAC,OAAO,CASb;IAIF,OAAO,CAAC,QAAQ,CAad;IAEF,OAAO,CAAC,UAAU,CAKhB;IAEF,OAAO,CAAC,aAAa,CAQnB;IAIF,OAAO,CAAC,QAAQ,CAkBd;IAEF,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,UAAU;IAUlB,iBAAiB;IAKjB,oBAAoB;IAKpB,MAAM;CAyEP"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { LitElement, nothing } from 'lit';
|
|
2
|
+
import { UploadFile } from '../store/store.types';
|
|
3
|
+
export declare class SfxFileItem extends LitElement {
|
|
4
|
+
static styles: import('lit').CSSResult;
|
|
5
|
+
file: UploadFile;
|
|
6
|
+
private _remove;
|
|
7
|
+
private _retry;
|
|
8
|
+
private _preview;
|
|
9
|
+
render(): typeof nothing | import('lit-html').TemplateResult<1>;
|
|
10
|
+
private _renderTypeIcon;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=file-item.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-item.d.ts","sourceRoot":"","sources":["../../src/components/file-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,OAAO,EAAE,MAAM,KAAK,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,qBAAa,WAAY,SAAQ,UAAU;IACzC,MAAM,CAAC,MAAM,0BAwVX;IAE8B,IAAI,EAAG,UAAU,CAAC;IAElD,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,MAAM;IAUd,OAAO,CAAC,QAAQ;IAWhB,MAAM;IAwGN,OAAO,CAAC,eAAe;CAcxB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
import { UploadFile } from '../store/store.types';
|
|
3
|
+
export declare class SfxFileList extends LitElement {
|
|
4
|
+
static styles: import('lit').CSSResult;
|
|
5
|
+
files: UploadFile[];
|
|
6
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=file-list.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-list.d.ts","sourceRoot":"","sources":["../../src/components/file-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAE5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,qBAAa,WAAY,SAAQ,UAAU;IACzC,MAAM,CAAC,MAAM,0BAaX;IAE8B,KAAK,EAAE,UAAU,EAAE,CAAM;IAEzD,MAAM;CASP"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"import-divider.d.ts","sourceRoot":"","sources":["../../src/components/import-divider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAE5C,qBAAa,gBAAiB,SAAQ,UAAU;IAC9C,MAAM,CAAC,MAAM,0BAsBX;IAEF,MAAM;CAOP"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { SfxDropZone } from './drop-zone';
|
|
2
|
+
export { SfxImportDivider } from './import-divider';
|
|
3
|
+
export { SfxSourcePills, CORE_SOURCES, type SourceDef } from './source-pills';
|
|
4
|
+
export { SfxFileList } from './file-list';
|
|
5
|
+
export { SfxFileItem } from './file-item';
|
|
6
|
+
export { SfxSuccessCard } from './success-card';
|
|
7
|
+
export { SfxActionsBar, type UploadButtonState } from './actions-bar';
|
|
8
|
+
export { SfxUrlDialog } from './url-dialog';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
import { ProviderId } from '../connectors/connector.types';
|
|
3
|
+
export declare class SfxProviderBrowser extends LitElement {
|
|
4
|
+
static styles: import('lit').CSSResult;
|
|
5
|
+
provider: ProviderId;
|
|
6
|
+
companionUrl: string;
|
|
7
|
+
private _authenticated;
|
|
8
|
+
private _loading;
|
|
9
|
+
private _items;
|
|
10
|
+
private _selectedIds;
|
|
11
|
+
private _breadcrumbs;
|
|
12
|
+
private _nextPagePath;
|
|
13
|
+
private _error;
|
|
14
|
+
private _loadingMore;
|
|
15
|
+
private _username;
|
|
16
|
+
private _cleanupAuthListener;
|
|
17
|
+
private _authWindow;
|
|
18
|
+
connectedCallback(): void;
|
|
19
|
+
disconnectedCallback(): void;
|
|
20
|
+
updated(changed: Map<string, unknown>): void;
|
|
21
|
+
private _reset;
|
|
22
|
+
private _checkAuth;
|
|
23
|
+
private get _providerLabel();
|
|
24
|
+
private _handleConnect;
|
|
25
|
+
private _loadFolder;
|
|
26
|
+
private _onFolderClick;
|
|
27
|
+
private _onBreadcrumbClick;
|
|
28
|
+
private _onLoadMore;
|
|
29
|
+
private _lastClickedIndex;
|
|
30
|
+
private _toggleSelect;
|
|
31
|
+
private _toggleSelectAll;
|
|
32
|
+
private _onAddSelected;
|
|
33
|
+
private _onClose;
|
|
34
|
+
private _handleLogout;
|
|
35
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
36
|
+
private _renderHeader;
|
|
37
|
+
private _renderAuthView;
|
|
38
|
+
private _renderLoading;
|
|
39
|
+
private _renderError;
|
|
40
|
+
private _renderBrowser;
|
|
41
|
+
private _renderBreadcrumbs;
|
|
42
|
+
}
|
|
43
|
+
declare global {
|
|
44
|
+
interface HTMLElementTagNameMap {
|
|
45
|
+
'sfx-provider-browser': SfxProviderBrowser;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=provider-browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-browser.d.ts","sourceRoot":"","sources":["../../src/components/provider-browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAiC,MAAM,+BAA+B,CAAC;AAgB/F,qBAAa,kBAAmB,SAAQ,UAAU;IAChD,MAAM,CAAC,MAAM,0BAmcX;IAE0B,QAAQ,EAAE,UAAU,CAAkB;IACtC,YAAY,SAAM;IAErC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAuB;IAEjD,OAAO,CAAC,oBAAoB,CAA6B;IACzD,OAAO,CAAC,WAAW,CAAuB;IAE1C,iBAAiB;IAKjB,oBAAoB;IAMpB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAOrC,OAAO,CAAC,MAAM;IAWd,OAAO,CAAC,UAAU;IAQlB,OAAO,KAAK,cAAc,GAGzB;IAID,OAAO,CAAC,cAAc,CAiBpB;YAIY,WAAW;IAoCzB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,kBAAkB;YAcZ,WAAW;IAqBzB,OAAO,CAAC,iBAAiB,CAAuB;IAEhD,OAAO,CAAC,aAAa;IA2BrB,OAAO,CAAC,gBAAgB,CAQtB;IAEF,OAAO,CAAC,cAAc,CA2BpB;IAEF,OAAO,CAAC,QAAQ,CAOd;IAIF,OAAO,CAAC,aAAa,CAWnB;IAIF,MAAM;IAaN,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,cAAc;IAqGtB,OAAO,CAAC,kBAAkB;CAiB3B;AAUD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,sBAAsB,EAAE,kBAAkB,CAAC;KAC5C;CACF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
/**
|
|
3
|
+
* Modal dialog for screen capture/recording.
|
|
4
|
+
*
|
|
5
|
+
* Fires:
|
|
6
|
+
* - `screencast-capture` → { file: File }
|
|
7
|
+
* - `screencast-cancel` → void
|
|
8
|
+
*/
|
|
9
|
+
export declare class SfxScreenCastDialog extends LitElement {
|
|
10
|
+
static styles: import('lit').CSSResult;
|
|
11
|
+
private _stream;
|
|
12
|
+
private _recording;
|
|
13
|
+
private _error;
|
|
14
|
+
private _recordedBlob;
|
|
15
|
+
private _previewUrl;
|
|
16
|
+
private _recorder;
|
|
17
|
+
private _chunks;
|
|
18
|
+
private _onBackdropClick;
|
|
19
|
+
private _onKeyDown;
|
|
20
|
+
disconnectedCallback(): void;
|
|
21
|
+
private _stopAll;
|
|
22
|
+
private _startRecording;
|
|
23
|
+
private _stopRecording;
|
|
24
|
+
private _useRecording;
|
|
25
|
+
private _discard;
|
|
26
|
+
private _cancel;
|
|
27
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=screen-cast-dialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screen-cast-dialog.d.ts","sourceRoot":"","sources":["../../src/components/screen-cast-dialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C;;;;;;GAMG;AACH,qBAAa,mBAAoB,SAAQ,UAAU;IACjD,MAAM,CAAC,MAAM,0BA6GX;IAEO,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,WAAW,CAAM;IAElC,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,OAAO,CAAc;IAE7B,OAAO,CAAC,gBAAgB,CAEtB;IAEF,OAAO,CAAC,UAAU,CAEhB;IAEF,oBAAoB;IAMpB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,eAAe,CAuCrB;IAEF,OAAO,CAAC,cAAc,CAIpB;IAEF,OAAO,CAAC,aAAa,CAKnB;IAEF,OAAO,CAAC,QAAQ,CAId;IAEF,OAAO,CAAC,OAAO;IAKf,MAAM;CAuDP"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
import { ProviderId } from '../connectors/connector.types';
|
|
3
|
+
export declare class SfxSearchProviderBrowser extends LitElement {
|
|
4
|
+
static styles: import('lit').CSSResult;
|
|
5
|
+
provider: ProviderId;
|
|
6
|
+
companionUrl: string;
|
|
7
|
+
private _loading;
|
|
8
|
+
private _loadingMore;
|
|
9
|
+
private _items;
|
|
10
|
+
private _selectedIds;
|
|
11
|
+
private _error;
|
|
12
|
+
private _searchQuery;
|
|
13
|
+
private _nextPageQuery;
|
|
14
|
+
private _searched;
|
|
15
|
+
private get _providerLabel();
|
|
16
|
+
private _onResultsScroll;
|
|
17
|
+
private _onSearchInput;
|
|
18
|
+
private _onSearchKeydown;
|
|
19
|
+
private _doSearch;
|
|
20
|
+
private _onLoadMore;
|
|
21
|
+
private _toggleSelect;
|
|
22
|
+
private _onAddSelected;
|
|
23
|
+
private _onClose;
|
|
24
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
25
|
+
private _renderHeader;
|
|
26
|
+
private _renderSearchBar;
|
|
27
|
+
private _renderLoading;
|
|
28
|
+
private _renderError;
|
|
29
|
+
private _renderResults;
|
|
30
|
+
}
|
|
31
|
+
declare global {
|
|
32
|
+
interface HTMLElementTagNameMap {
|
|
33
|
+
'sfx-search-provider-browser': SfxSearchProviderBrowser;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=search-provider-browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-provider-browser.d.ts","sourceRoot":"","sources":["../../src/components/search-provider-browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAuC,MAAM,+BAA+B,CAAC;AAIrG,qBAAa,wBAAyB,SAAQ,UAAU;IACtD,MAAM,CAAC,MAAM,0BAoTX;IAE0B,QAAQ,EAAE,UAAU,CAAc;IAClC,YAAY,SAAM;IAErC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,SAAS,CAAS;IAEnC,OAAO,KAAK,cAAc,GAGzB;IAED,OAAO,CAAC,gBAAgB,CAOtB;IAIF,OAAO,CAAC,cAAc,CAEpB;IAEF,OAAO,CAAC,gBAAgB,CAEtB;YAEY,SAAS;YA4BT,WAAW;IAyBzB,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,cAAc,CAsBpB;IAEF,OAAO,CAAC,QAAQ,CAOd;IAIF,MAAM;IAYN,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,gBAAgB;IAsBxB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,cAAc;CAoEvB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,6BAA6B,EAAE,wBAAwB,CAAC;KACzD;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
import { SourceDef } from '../types/source.types';
|
|
3
|
+
export type { SourceDef, UploaderHandle } from '../types/source.types';
|
|
4
|
+
export declare const CORE_SOURCES: SourceDef[];
|
|
5
|
+
export declare class SfxSourcePills extends LitElement {
|
|
6
|
+
static styles: import('lit').CSSResult;
|
|
7
|
+
sources: SourceDef[];
|
|
8
|
+
private _handleClick;
|
|
9
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=source-pills.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-pills.d.ts","sourceRoot":"","sources":["../../src/components/source-pills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAK5C,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAOvD,eAAO,MAAM,YAAY,EAAE,SAAS,EAKnC,CAAC;AAEF,qBAAa,cAAe,SAAQ,UAAU;IAC5C,MAAM,CAAC,MAAM,0BAqDX;IAEyB,OAAO,EAAE,SAAS,EAAE,CAAgB;IAE/D,OAAO,CAAC,YAAY;IAUpB,MAAM;CAYP"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
export declare class SfxSuccessCard extends LitElement {
|
|
3
|
+
static styles: import('lit').CSSResult;
|
|
4
|
+
fileCount: number;
|
|
5
|
+
primaryLabel: string;
|
|
6
|
+
private _uploadMore;
|
|
7
|
+
private _primaryAction;
|
|
8
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=success-card.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"success-card.d.ts","sourceRoot":"","sources":["../../src/components/success-card.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C,qBAAa,cAAe,SAAQ,UAAU;IAC5C,MAAM,CAAC,MAAM,0BA4HX;IAE0B,SAAS,SAAK;IACd,YAAY,SAAU;IAElD,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,cAAc;IAMtB,MAAM;CAqBP"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
/**
|
|
3
|
+
* Modal dialog for importing a file via URL.
|
|
4
|
+
*
|
|
5
|
+
* Fires:
|
|
6
|
+
* - `url-submit` → { url: string, name: string }
|
|
7
|
+
* - `url-cancel` → void
|
|
8
|
+
*/
|
|
9
|
+
export declare class SfxUrlDialog extends LitElement {
|
|
10
|
+
static styles: import('lit').CSSResult;
|
|
11
|
+
private _url;
|
|
12
|
+
private _name;
|
|
13
|
+
private _error;
|
|
14
|
+
private _loading;
|
|
15
|
+
private _onBackdropClick;
|
|
16
|
+
private _onUrlInput;
|
|
17
|
+
private _onNameInput;
|
|
18
|
+
private _autoName;
|
|
19
|
+
private _onKeyDown;
|
|
20
|
+
private _cancel;
|
|
21
|
+
private _submit;
|
|
22
|
+
connectedCallback(): void;
|
|
23
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=url-dialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url-dialog.d.ts","sourceRoot":"","sources":["../../src/components/url-dialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C;;;;;;GAMG;AACH,qBAAa,YAAa,SAAQ,UAAU;IAC1C,MAAM,CAAC,MAAM,0BA6NX;IAEO,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,QAAQ,CAAS;IAElC,OAAO,CAAC,gBAAgB,CAEtB;IAEF,OAAO,CAAC,WAAW,CAIjB;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,UAAU,CAGhB;IAEF,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,OAAO;IAkCf,iBAAiB;IAQjB,MAAM;CA+CP"}
|