@feedclip/sdk 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/COMMERCIAL-LICENSE.md +32 -0
- package/COMPLIANCE.md +110 -0
- package/LICENSE +21 -0
- package/README.md +676 -0
- package/dist/FeedClip-BmVeLeSY.cjs +6 -0
- package/dist/FeedClip-Czdkvwzl.js +1176 -0
- package/dist/angular.cjs +1 -0
- package/dist/angular.js +42 -0
- package/dist/feedclip.cjs +2 -0
- package/dist/feedclip.css +3 -0
- package/dist/feedclip.js +133 -0
- package/dist/types/ai.d.ts +2 -0
- package/dist/types/angular.d.ts +15 -0
- package/dist/types/atom.d.ts +9 -0
- package/dist/types/components/Alert.d.ts +8 -0
- package/dist/types/components/Controls.d.ts +10 -0
- package/dist/types/components/FeedClip.d.ts +11 -0
- package/dist/types/components/FeedbackDetails.d.ts +14 -0
- package/dist/types/components/FeedbackResult.d.ts +7 -0
- package/dist/types/components/HandleUpload.d.ts +21 -0
- package/dist/types/components/PauseRecording.d.ts +8 -0
- package/dist/types/components/Reset.d.ts +11 -0
- package/dist/types/components/StartRecording.d.ts +15 -0
- package/dist/types/components/StopRecording.d.ts +7 -0
- package/dist/types/components/TrimControls.d.ts +10 -0
- package/dist/types/components/Video.d.ts +8 -0
- package/dist/types/configuration-context.d.ts +2 -0
- package/dist/types/configuration.d.ts +22 -0
- package/dist/types/entitlements.d.ts +6 -0
- package/dist/types/feedback.d.ts +55 -0
- package/dist/types/i18n.d.ts +33 -0
- package/dist/types/index.d.ts +17 -0
- package/dist/types/indexed-db-store.d.ts +11 -0
- package/dist/types/license.d.ts +30 -0
- package/dist/types/transport.d.ts +7 -0
- package/dist/types/uploaders.d.ts +14 -0
- package/dist/types/utils.d.ts +6 -0
- package/dist/types/vue.d.ts +18 -0
- package/dist/vue.cjs +1 -0
- package/dist/vue.js +23 -0
- package/package.json +118 -0
- package/scripts/generate-license-keypair.mjs +25 -0
- package/scripts/issue-license.mjs +69 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# FeedClip Paid Commercial License
|
|
2
|
+
|
|
3
|
+
The `@feedclip/sdk` core SDK remains available under the MIT license. This
|
|
4
|
+
commercial license applies only to the implemented FeedClip Paid feature
|
|
5
|
+
gates. It does not restrict rights granted by the MIT license for core
|
|
6
|
+
repository files.
|
|
7
|
+
|
|
8
|
+
## Paid Features
|
|
9
|
+
|
|
10
|
+
The currently sold Paid version enables:
|
|
11
|
+
|
|
12
|
+
- removal of FeedClip branding;
|
|
13
|
+
- thumbnails, trimming, and upload progress;
|
|
14
|
+
- Supabase and S3 uploader helpers;
|
|
15
|
+
|
|
16
|
+
Screen recording, diagnostics, privacy redaction, resumable uploads, managed
|
|
17
|
+
storage, hosted AI, issue integrations, dashboards, SSO, RBAC, audit logs, data
|
|
18
|
+
residency, and SLA products are roadmap items and are not included in the
|
|
19
|
+
current purchase.
|
|
20
|
+
|
|
21
|
+
Official Paid capabilities require a valid project-bound FeedClip license
|
|
22
|
+
token. Tokens are signed by the FeedClip licensing service and may not be
|
|
23
|
+
shared between projects or customers.
|
|
24
|
+
|
|
25
|
+
## Pricing
|
|
26
|
+
|
|
27
|
+
The current Indie license is a one-time USD 49 purchase valid for one year. It
|
|
28
|
+
does not renew automatically and does not include third-party storage or AI
|
|
29
|
+
provider usage.
|
|
30
|
+
|
|
31
|
+
Unauthorized activation of the implemented FeedClip Paid feature gates is
|
|
32
|
+
prohibited.
|
package/COMPLIANCE.md
ADDED
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# FeedClip Compliance Guide
|
|
2
|
+
|
|
3
|
+
This document describes product controls and deployment responsibilities. It
|
|
4
|
+
is not legal advice or a certification of compliance.
|
|
5
|
+
|
|
6
|
+
## Data inventory
|
|
7
|
+
|
|
8
|
+
Depending on configuration, FeedClip processes:
|
|
9
|
+
|
|
10
|
+
- video and voice supplied by the user;
|
|
11
|
+
- an optional screenshot and written description;
|
|
12
|
+
- page origin and path, title, user agent, locale, viewport, and timezone;
|
|
13
|
+
- optional query strings and referrer when explicitly enabled;
|
|
14
|
+
- application-defined custom context;
|
|
15
|
+
- generated transcript, summary, labels, sentiment, and priority;
|
|
16
|
+
- operational identifiers, timestamps, request IP data in rate-limit memory,
|
|
17
|
+
and server logs.
|
|
18
|
+
|
|
19
|
+
Video, voice, screenshots, URLs, identifiers, and free-form text can contain
|
|
20
|
+
personal data or sensitive data. Do not send passwords, payment card data,
|
|
21
|
+
authentication tokens, health data, biometric identification data, or other
|
|
22
|
+
regulated data without a reviewed use case and appropriate controls.
|
|
23
|
+
|
|
24
|
+
## Roles and lawful basis
|
|
25
|
+
|
|
26
|
+
For a self-hosted deployment, the integrating organization normally determines
|
|
27
|
+
the purpose and means of processing and is the controller. Infrastructure and
|
|
28
|
+
AI providers may act as processors or subprocessors under their contracts.
|
|
29
|
+
|
|
30
|
+
The integrating organization must select and document an applicable lawful
|
|
31
|
+
basis. Do not treat browser camera or microphone permission as privacy consent.
|
|
32
|
+
When consent is used, it must be informed, specific, demonstrable, and
|
|
33
|
+
withdrawable. Use `privacyNotice` to link the widget to the product's notice.
|
|
34
|
+
|
|
35
|
+
## Data minimization
|
|
36
|
+
|
|
37
|
+
- Query strings, URL fragments, credentials, and referrers are excluded by
|
|
38
|
+
default.
|
|
39
|
+
- Keep `includeQueryString` and `includeReferrer` disabled unless necessary.
|
|
40
|
+
- Allowlist fields returned by `getContext`; do not pass whole user or session
|
|
41
|
+
objects.
|
|
42
|
+
- Avoid recording unrelated applications, people, notifications, or secrets.
|
|
43
|
+
- Redact sensitive screenshot and video regions before upload where required.
|
|
44
|
+
|
|
45
|
+
## Retention and deletion
|
|
46
|
+
|
|
47
|
+
The reference API defaults to a 30-day retention period through
|
|
48
|
+
`FEEDCLIP_RETENTION_DAYS`. It deletes expired local records at startup and every
|
|
49
|
+
24 hours. `DELETE /v1/submissions/:feedbackId` removes one API record.
|
|
50
|
+
|
|
51
|
+
The IndexedDB adapter exposes `delete(feedbackId)` and `clear()`. The
|
|
52
|
+
integrating product must also apply deletion to backups, object storage, logs,
|
|
53
|
+
analytics, queues, generated issues, and every downstream processor.
|
|
54
|
+
|
|
55
|
+
## Data subject requests
|
|
56
|
+
|
|
57
|
+
Maintain an authenticated workflow to:
|
|
58
|
+
|
|
59
|
+
- locate records using an internal mapping between the user and feedback ID;
|
|
60
|
+
- export the original submission and generated analysis;
|
|
61
|
+
- correct associated metadata where applicable;
|
|
62
|
+
- delete the record and downstream copies;
|
|
63
|
+
- record request receipt and completion deadlines.
|
|
64
|
+
|
|
65
|
+
Do not expose the project key or allow a feedback ID alone to authorize access.
|
|
66
|
+
|
|
67
|
+
## AI processing and international transfers
|
|
68
|
+
|
|
69
|
+
Transcription and analysis send the recording and feedback context to the
|
|
70
|
+
configured AI provider. Before enabling AI:
|
|
71
|
+
|
|
72
|
+
- list the provider in the privacy notice and subprocessor register;
|
|
73
|
+
- execute the required DPA and transfer mechanism;
|
|
74
|
+
- review provider retention, abuse monitoring, and data residency settings;
|
|
75
|
+
- disable optional provider data sharing;
|
|
76
|
+
- confirm that submitted data is permitted by the provider agreement.
|
|
77
|
+
|
|
78
|
+
## Accessibility
|
|
79
|
+
|
|
80
|
+
The widget includes labeled controls, alert semantics, live recording status,
|
|
81
|
+
and progressbar semantics. The integrating product should test the complete
|
|
82
|
+
flow against WCAG 2.2 AA with keyboard-only use and screen readers.
|
|
83
|
+
|
|
84
|
+
Recorded media containing speech may require transcripts or captions when it
|
|
85
|
+
is later presented as content. Generated transcripts should be reviewable
|
|
86
|
+
because automated transcription can be inaccurate.
|
|
87
|
+
|
|
88
|
+
## Security and incident response
|
|
89
|
+
|
|
90
|
+
Use short-lived, scoped credentials or an authenticated backend proxy. Encrypt
|
|
91
|
+
stored data and backups, restrict operator access, audit access, rotate
|
|
92
|
+
credentials, and maintain breach detection and notification procedures.
|
|
93
|
+
|
|
94
|
+
The local filesystem store and in-process worker are development references,
|
|
95
|
+
not a production compliance architecture.
|
|
96
|
+
|
|
97
|
+
## Licensing and release records
|
|
98
|
+
|
|
99
|
+
The SDK is MIT-licensed. Preserve its license and copyright notice when
|
|
100
|
+
redistributing it. Production dependencies currently use permissive licenses.
|
|
101
|
+
MPL-2.0 packages observed in the API lockfile belong to development tooling and
|
|
102
|
+
are not present in the production dependency tree.
|
|
103
|
+
|
|
104
|
+
For each release, archive:
|
|
105
|
+
|
|
106
|
+
- dependency lockfiles, vulnerability audit results, and an SBOM;
|
|
107
|
+
- third-party license notices;
|
|
108
|
+
- privacy and security review evidence;
|
|
109
|
+
- retention, deletion, access-control, and recovery test results;
|
|
110
|
+
- current subprocessors and signed DPAs.
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Andrey Shedko
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|