shiplint 1.2.0 → 1.4.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/dist/cli/index.js +1 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/core/scanner.d.ts.map +1 -1
- package/dist/core/scanner.js +5 -1
- package/dist/core/scanner.js.map +1 -1
- package/dist/core/suppression.d.ts +23 -0
- package/dist/core/suppression.d.ts.map +1 -0
- package/dist/core/suppression.js +183 -0
- package/dist/core/suppression.js.map +1 -0
- package/dist/formatters/text.d.ts +1 -0
- package/dist/formatters/text.d.ts.map +1 -1
- package/dist/formatters/text.js +92 -15
- package/dist/formatters/text.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/parsers/pbxproj-parser.d.ts.map +1 -1
- package/dist/parsers/pbxproj-parser.js +53 -9
- package/dist/parsers/pbxproj-parser.js.map +1 -1
- package/dist/parsers/plist-parser.d.ts.map +1 -1
- package/dist/parsers/plist-parser.js +15 -10
- package/dist/parsers/plist-parser.js.map +1 -1
- package/dist/parsers/project-parser.d.ts.map +1 -1
- package/dist/parsers/project-parser.js +119 -9
- package/dist/parsers/project-parser.js.map +1 -1
- package/dist/rules/base.d.ts +2 -0
- package/dist/rules/base.d.ts.map +1 -1
- package/dist/rules/base.js +2 -0
- package/dist/rules/base.js.map +1 -1
- package/dist/rules/code/dynamic-code-execution.d.ts +13 -0
- package/dist/rules/code/dynamic-code-execution.d.ts.map +1 -0
- package/dist/rules/code/dynamic-code-execution.js +212 -0
- package/dist/rules/code/dynamic-code-execution.js.map +1 -0
- package/dist/rules/code/index.d.ts +6 -0
- package/dist/rules/code/index.d.ts.map +1 -0
- package/dist/rules/code/index.js +11 -0
- package/dist/rules/code/index.js.map +1 -0
- package/dist/rules/code/private-api-usage.d.ts +12 -0
- package/dist/rules/code/private-api-usage.d.ts.map +1 -0
- package/dist/rules/code/private-api-usage.js +234 -0
- package/dist/rules/code/private-api-usage.js.map +1 -0
- package/dist/rules/config/missing-launch-storyboard.d.ts.map +1 -1
- package/dist/rules/config/missing-launch-storyboard.js +19 -5
- package/dist/rules/config/missing-launch-storyboard.js.map +1 -1
- package/dist/rules/index.d.ts +1 -0
- package/dist/rules/index.d.ts.map +1 -1
- package/dist/rules/index.js +6 -0
- package/dist/rules/index.js.map +1 -1
- package/dist/rules/metadata/missing-supported-orientations.d.ts.map +1 -1
- package/dist/rules/metadata/missing-supported-orientations.js +11 -2
- package/dist/rules/metadata/missing-supported-orientations.js.map +1 -1
- package/dist/rules/privacy/att-tracking-mismatch.d.ts.map +1 -1
- package/dist/rules/privacy/att-tracking-mismatch.js +16 -0
- package/dist/rules/privacy/att-tracking-mismatch.js.map +1 -1
- package/dist/rules/privacy/missing-bluetooth-purpose.d.ts.map +1 -1
- package/dist/rules/privacy/missing-bluetooth-purpose.js +4 -0
- package/dist/rules/privacy/missing-bluetooth-purpose.js.map +1 -1
- package/dist/rules/privacy/missing-camera-purpose.d.ts.map +1 -1
- package/dist/rules/privacy/missing-camera-purpose.js +4 -0
- package/dist/rules/privacy/missing-camera-purpose.js.map +1 -1
- package/dist/rules/privacy/missing-contacts-purpose.d.ts.map +1 -1
- package/dist/rules/privacy/missing-contacts-purpose.js +4 -0
- package/dist/rules/privacy/missing-contacts-purpose.js.map +1 -1
- package/dist/rules/privacy/missing-face-id-purpose.d.ts.map +1 -1
- package/dist/rules/privacy/missing-face-id-purpose.js +4 -0
- package/dist/rules/privacy/missing-face-id-purpose.js.map +1 -1
- package/dist/rules/privacy/missing-location-purpose.d.ts.map +1 -1
- package/dist/rules/privacy/missing-location-purpose.js +4 -0
- package/dist/rules/privacy/missing-location-purpose.js.map +1 -1
- package/dist/rules/privacy/missing-microphone-purpose.d.ts.map +1 -1
- package/dist/rules/privacy/missing-microphone-purpose.js +4 -0
- package/dist/rules/privacy/missing-microphone-purpose.js.map +1 -1
- package/dist/rules/privacy/missing-photo-library-purpose.d.ts.map +1 -1
- package/dist/rules/privacy/missing-photo-library-purpose.js +9 -3
- package/dist/rules/privacy/missing-photo-library-purpose.js.map +1 -1
- package/dist/types/index.d.ts +12 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -16,9 +16,18 @@ exports.MissingSupportedOrientationsRule = {
|
|
|
16
16
|
if (context.isExtension()) {
|
|
17
17
|
return [];
|
|
18
18
|
}
|
|
19
|
+
// macOS apps don't use UISupportedInterfaceOrientations
|
|
20
|
+
if (context.isMacOSOnly()) {
|
|
21
|
+
return [];
|
|
22
|
+
}
|
|
23
|
+
// Framework/library targets don't need orientation declarations
|
|
24
|
+
if (context.isFrameworkTarget()) {
|
|
25
|
+
return [];
|
|
26
|
+
}
|
|
19
27
|
const orientations = context.plistArray('UISupportedInterfaceOrientations');
|
|
20
|
-
// Modern Xcode projects (14+)
|
|
21
|
-
|
|
28
|
+
// Modern Xcode projects (14+) use build settings for orientations
|
|
29
|
+
// Check regardless of GENERATE_INFOPLIST_FILE
|
|
30
|
+
if (orientations === undefined) {
|
|
22
31
|
if (context.hasBuildSetting('INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone') ||
|
|
23
32
|
context.hasBuildSetting('INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad') ||
|
|
24
33
|
context.hasBuildSetting('INFOPLIST_KEY_UISupportedInterfaceOrientations')) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-supported-orientations.js","sourceRoot":"","sources":["../../../src/rules/metadata/missing-supported-orientations.ts"],"names":[],"mappings":";;;AAUA,mDAA0E;AAC1E,wCAAyC;AAE5B,QAAA,gCAAgC,GAAS;IACpD,EAAE,EAAE,6CAA6C;IACjD,IAAI,EAAE,gCAAgC;IACtC,WAAW,EAAE,mEAAmE;IAChF,QAAQ,EAAE,uBAAY,CAAC,QAAQ;IAC/B,QAAQ,EAAE,mBAAQ,CAAC,MAAM;IACzB,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,KAAK;IAEzB,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,qDAAqD;QACrD,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAC;QAE5E,
|
|
1
|
+
{"version":3,"file":"missing-supported-orientations.js","sourceRoot":"","sources":["../../../src/rules/metadata/missing-supported-orientations.ts"],"names":[],"mappings":";;;AAUA,mDAA0E;AAC1E,wCAAyC;AAE5B,QAAA,gCAAgC,GAAS;IACpD,EAAE,EAAE,6CAA6C;IACjD,IAAI,EAAE,gCAAgC;IACtC,WAAW,EAAE,mEAAmE;IAChF,QAAQ,EAAE,uBAAY,CAAC,QAAQ;IAC/B,QAAQ,EAAE,mBAAQ,CAAC,MAAM;IACzB,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,KAAK;IAEzB,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,qDAAqD;QACrD,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,wDAAwD;QACxD,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,gEAAgE;QAChE,IAAI,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAChC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAC;QAE5E,kEAAkE;QAClE,8CAA8C;QAC9C,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,OAAO,CAAC,eAAe,CAAC,uDAAuD,CAAC;gBAChF,OAAO,CAAC,eAAe,CAAC,qDAAqD,CAAC;gBAC9E,OAAO,CAAC,eAAe,CAAC,gDAAgD,CAAC,EAAE,CAAC;gBAC9E,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,iCAAiC;QACjC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,WAAW,EAAE,uEAAuE;wBAClF,kFAAkF;wBAClF,qFAAqF;wBACrF,oFAAoF;oBACtF,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,gFAAgF;wBAC3F;;;;;;;;;;;;;2EAa+D;wBAC/D,6EAA6E;oBAC/E,gBAAgB,EAAE,sHAAsH;iBACzI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,sBAAsB;QACtB,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,8BAA8B;oBACrC,WAAW,EAAE,+EAA+E;wBAC1F,2DAA2D;oBAC7D,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE;;;;;;;oEAO6C;oBAC1D,gBAAgB,EAAE,sHAAsH;iBACzI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"att-tracking-mismatch.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/att-tracking-mismatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AASvE,eAAO,MAAM,uBAAuB,EAAE,
|
|
1
|
+
{"version":3,"file":"att-tracking-mismatch.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/att-tracking-mismatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AASvE,eAAO,MAAM,uBAAuB,EAAE,IA+HrC,CAAC"}
|
|
@@ -18,6 +18,22 @@ exports.ATTTrackingMismatchRule = {
|
|
|
18
18
|
async evaluate(context) {
|
|
19
19
|
// Detect tracking SDKs from dependencies
|
|
20
20
|
const detectedSDKs = (0, framework_detector_js_1.detectTrackingSDKs)(context.dependencies);
|
|
21
|
+
// Also detect from linked frameworks / Swift imports
|
|
22
|
+
const trackingFrameworkMap = {
|
|
23
|
+
'AdSupport': 'AdSupport (IDFA)',
|
|
24
|
+
'FBSDKCoreKit': 'Facebook SDK',
|
|
25
|
+
'FacebookCore': 'Facebook SDK',
|
|
26
|
+
'FBAudienceNetwork': 'Facebook Audience Network',
|
|
27
|
+
'GoogleMobileAds': 'Google Mobile Ads',
|
|
28
|
+
'FirebaseAnalytics': 'Firebase Analytics',
|
|
29
|
+
'Adjust': 'Adjust',
|
|
30
|
+
'AppsFlyerLib': 'AppsFlyer',
|
|
31
|
+
};
|
|
32
|
+
for (const [framework, name] of Object.entries(trackingFrameworkMap)) {
|
|
33
|
+
if (context.hasFramework(framework) && !detectedSDKs.includes(name)) {
|
|
34
|
+
detectedSDKs.push(name);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
21
37
|
if (detectedSDKs.length === 0) {
|
|
22
38
|
return [];
|
|
23
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"att-tracking-mismatch.js","sourceRoot":"","sources":["../../../src/rules/privacy/att-tracking-mismatch.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"att-tracking-mismatch.js","sourceRoot":"","sources":["../../../src/rules/privacy/att-tracking-mismatch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-bluetooth-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-bluetooth-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAOvE,eAAO,MAAM,2BAA2B,EAAE,
|
|
1
|
+
{"version":3,"file":"missing-bluetooth-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-bluetooth-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAOvE,eAAO,MAAM,2BAA2B,EAAE,IAkFzC,CAAC"}
|
|
@@ -14,6 +14,10 @@ exports.MissingBluetoothPurposeRule = {
|
|
|
14
14
|
confidence: index_js_1.Confidence.High,
|
|
15
15
|
guidelineReference: '5.1.1',
|
|
16
16
|
async evaluate(context) {
|
|
17
|
+
// Framework/library targets do not need app-level usage descriptions
|
|
18
|
+
if (context.isFrameworkTarget()) {
|
|
19
|
+
return [];
|
|
20
|
+
}
|
|
17
21
|
const detectedFrameworks = BLUETOOTH_FRAMEWORKS.filter(f => context.hasFramework(f));
|
|
18
22
|
if (detectedFrameworks.length === 0) {
|
|
19
23
|
return [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-bluetooth-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-bluetooth-purpose.ts"],"names":[],"mappings":";;;AASA,mDAA0E;AAC1E,mEAA8D;AAC9D,wCAAyC;AAEzC,MAAM,oBAAoB,GAAG,CAAC,eAAe,CAAC,CAAC;AAElC,QAAA,2BAA2B,GAAS;IAC/C,EAAE,EAAE,uCAAuC;IAC3C,IAAI,EAAE,qCAAqC;IAC3C,WAAW,EAAE,gFAAgF;IAC7F,QAAQ,EAAE,uBAAY,CAAC,OAAO;IAC9B,QAAQ,EAAE,mBAAQ,CAAC,QAAQ;IAC3B,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAErF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC,mCAAmC,CAAC,CAAC;QAEtF,6BAA6B;QAC7B,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACvC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,WAAW,EAAE,gDAAgD,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBAC5F,0FAA0F;wBAC1F,gEAAgE;oBAClE,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,qFAAqF;wBAChG;;;;;6EAKiE;wBACjE,yCAAyC;oBAC3C,gBAAgB,EAAE,uHAAuH;iBAC1I,CAAC;aACH,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,IAAI,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,mCAAmC;oBAC1C,WAAW,EAAE,uEAAuE;wBAClF,yFAAyF;oBAC3F,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,qFAAqF;wBAChG;;;+CAGmC;oBACrC,gBAAgB,EAAE,uHAAuH;iBAC1I,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oCAAoC;QACpC,IAAI,IAAA,+BAAa,EAAC,oBAAoB,CAAC,EAAE,CAAC;YACxC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,yCAAyC;oBAChD,WAAW,EAAE,2EAA2E,oBAAoB,KAAK;wBAC/G,sDAAsD;oBACxD,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,gGAAgG;wBAC3G;;kBAEM,oBAAoB;;qFAE+C;oBAC3E,gBAAgB,EAAE,uHAAuH;iBAC1I,CAAC;aACH,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"missing-bluetooth-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-bluetooth-purpose.ts"],"names":[],"mappings":";;;AASA,mDAA0E;AAC1E,mEAA8D;AAC9D,wCAAyC;AAEzC,MAAM,oBAAoB,GAAG,CAAC,eAAe,CAAC,CAAC;AAElC,QAAA,2BAA2B,GAAS;IAC/C,EAAE,EAAE,uCAAuC;IAC3C,IAAI,EAAE,qCAAqC;IAC3C,WAAW,EAAE,gFAAgF;IAC7F,QAAQ,EAAE,uBAAY,CAAC,OAAO;IAC9B,QAAQ,EAAE,mBAAQ,CAAC,QAAQ;IAC3B,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,qEAAqE;QACrE,IAAI,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAChC,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAErF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC,mCAAmC,CAAC,CAAC;QAEtF,6BAA6B;QAC7B,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACvC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,WAAW,EAAE,gDAAgD,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBAC5F,0FAA0F;wBAC1F,gEAAgE;oBAClE,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,qFAAqF;wBAChG;;;;;6EAKiE;wBACjE,yCAAyC;oBAC3C,gBAAgB,EAAE,uHAAuH;iBAC1I,CAAC;aACH,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,IAAI,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,mCAAmC;oBAC1C,WAAW,EAAE,uEAAuE;wBAClF,yFAAyF;oBAC3F,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,qFAAqF;wBAChG;;;+CAGmC;oBACrC,gBAAgB,EAAE,uHAAuH;iBAC1I,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oCAAoC;QACpC,IAAI,IAAA,+BAAa,EAAC,oBAAoB,CAAC,EAAE,CAAC;YACxC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,yCAAyC;oBAChD,WAAW,EAAE,2EAA2E,oBAAoB,KAAK;wBAC/G,sDAAsD;oBACxD,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,gGAAgG;wBAC3G;;kBAEM,oBAAoB;;qFAE+C;oBAC3E,gBAAgB,EAAE,uHAAuH;iBAC1I,CAAC;aACH,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-camera-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-camera-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAWvE,eAAO,MAAM,wBAAwB,EAAE,
|
|
1
|
+
{"version":3,"file":"missing-camera-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-camera-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAWvE,eAAO,MAAM,wBAAwB,EAAE,IAqFtC,CAAC"}
|
|
@@ -18,6 +18,10 @@ exports.MissingCameraPurposeRule = {
|
|
|
18
18
|
confidence: index_js_1.Confidence.High,
|
|
19
19
|
guidelineReference: '5.1.1',
|
|
20
20
|
async evaluate(context) {
|
|
21
|
+
// Framework/library targets do not need app-level usage descriptions
|
|
22
|
+
if (context.isFrameworkTarget()) {
|
|
23
|
+
return [];
|
|
24
|
+
}
|
|
21
25
|
// Check if any camera-related framework is linked
|
|
22
26
|
const detectedFrameworks = CAMERA_FRAMEWORKS.filter(f => context.hasFramework(f));
|
|
23
27
|
if (detectedFrameworks.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-camera-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-camera-purpose.ts"],"names":[],"mappings":";;;AASA,mDAA0E;AAC1E,mEAA8D;AAC9D,wCAAyC;AAEzC,iFAAiF;AACjF,2EAA2E;AAC3E,4EAA4E;AAC5E,kFAAkF;AAClF,MAAM,iBAAiB,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;AAEvC,QAAA,wBAAwB,GAAS;IAC5C,EAAE,EAAE,oCAAoC;IACxC,IAAI,EAAE,kCAAkC;IACxC,WAAW,EAAE,oEAAoE;IACjF,QAAQ,EAAE,uBAAY,CAAC,OAAO;IAC9B,QAAQ,EAAE,mBAAQ,CAAC,QAAQ;IAC3B,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,kDAAkD;QAClD,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAElF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,mDAAmD;YACnD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;QAE1E,6BAA6B;QAC7B,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,WAAW,EAAE,qDAAqD,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBACjG,uFAAuF;wBACvF,2DAA2D;oBAC7D,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,wFAAwF;wBACnG;;;;;8EAKkE;wBAClE,yCAAyC;oBAC3C,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,IAAI,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACpC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,gCAAgC;oBACvC,WAAW,EAAE,8DAA8D;wBACzE,sFAAsF;oBACxF,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,qFAAqF;wBAChG;;;4CAGgC;oBAClC,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oCAAoC;QACpC,IAAI,IAAA,+BAAa,EAAC,iBAAiB,CAAC,EAAE,CAAC;YACrC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,sCAAsC;oBAC7C,WAAW,EAAE,kEAAkE,iBAAiB,KAAK;wBACnG,sDAAsD;oBACxD,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,6FAA6F;wBACxG;;kBAEM,iBAAiB;;sFAEmD;oBAC5E,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oBAAoB;QACpB,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"missing-camera-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-camera-purpose.ts"],"names":[],"mappings":";;;AASA,mDAA0E;AAC1E,mEAA8D;AAC9D,wCAAyC;AAEzC,iFAAiF;AACjF,2EAA2E;AAC3E,4EAA4E;AAC5E,kFAAkF;AAClF,MAAM,iBAAiB,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;AAEvC,QAAA,wBAAwB,GAAS;IAC5C,EAAE,EAAE,oCAAoC;IACxC,IAAI,EAAE,kCAAkC;IACxC,WAAW,EAAE,oEAAoE;IACjF,QAAQ,EAAE,uBAAY,CAAC,OAAO;IAC9B,QAAQ,EAAE,mBAAQ,CAAC,QAAQ;IAC3B,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,qEAAqE;QACrE,IAAI,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAChC,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,kDAAkD;QAClD,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAElF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,mDAAmD;YACnD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;QAE1E,6BAA6B;QAC7B,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,WAAW,EAAE,qDAAqD,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBACjG,uFAAuF;wBACvF,2DAA2D;oBAC7D,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,wFAAwF;wBACnG;;;;;8EAKkE;wBAClE,yCAAyC;oBAC3C,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,IAAI,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACpC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,gCAAgC;oBACvC,WAAW,EAAE,8DAA8D;wBACzE,sFAAsF;oBACxF,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,qFAAqF;wBAChG;;;4CAGgC;oBAClC,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oCAAoC;QACpC,IAAI,IAAA,+BAAa,EAAC,iBAAiB,CAAC,EAAE,CAAC;YACrC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,sCAAsC;oBAC7C,WAAW,EAAE,kEAAkE,iBAAiB,KAAK;wBACnG,sDAAsD;oBACxD,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,6FAA6F;wBACxG;;kBAEM,iBAAiB;;sFAEmD;oBAC5E,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oBAAoB;QACpB,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-contacts-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-contacts-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAQvE,eAAO,MAAM,0BAA0B,EAAE,
|
|
1
|
+
{"version":3,"file":"missing-contacts-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-contacts-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAQvE,eAAO,MAAM,0BAA0B,EAAE,IAsFxC,CAAC"}
|
|
@@ -15,6 +15,10 @@ exports.MissingContactsPurposeRule = {
|
|
|
15
15
|
confidence: index_js_1.Confidence.High,
|
|
16
16
|
guidelineReference: '5.1.1',
|
|
17
17
|
async evaluate(context) {
|
|
18
|
+
// Framework/library targets do not need app-level usage descriptions
|
|
19
|
+
if (context.isFrameworkTarget()) {
|
|
20
|
+
return [];
|
|
21
|
+
}
|
|
18
22
|
// Check if any Contacts-related framework is linked
|
|
19
23
|
const detectedFrameworks = CONTACTS_FRAMEWORKS.filter(f => context.hasFramework(f));
|
|
20
24
|
if (detectedFrameworks.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-contacts-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-contacts-purpose.ts"],"names":[],"mappings":";;;AASA,mDAA0E;AAC1E,mEAA8D;AAC9D,wCAAyC;AAEzC,MAAM,mBAAmB,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;AACvD,MAAM,YAAY,GAAG,4BAA4B,CAAC;AAErC,QAAA,0BAA0B,GAAS;IAC9C,EAAE,EAAE,sCAAsC;IAC1C,IAAI,EAAE,oCAAoC;IAC1C,WAAW,EAAE,wEAAwE;IACrF,QAAQ,EAAE,uBAAY,CAAC,OAAO;IAC9B,QAAQ,EAAE,mBAAQ,CAAC,QAAQ;IAC3B,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,oDAAoD;QACpD,MAAM,kBAAkB,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAE9D,6BAA6B;QAC7B,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,WAAW,EAAE,+CAA+C,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBAC3F,6FAA6F;wBAC7F,gEAAgE;oBAClE,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,0FAA0F;wBACrG;;;;;;uFAM2E;oBAC7E,gBAAgB,EAAE,gHAAgH;iBACnI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,IAAI,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACtC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,kCAAkC;oBACzC,WAAW,EAAE,gEAAgE;wBAC3E,wFAAwF;oBAC1F,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,uFAAuF;wBAClG;;;;;6FAKiF;oBACnF,gBAAgB,EAAE,gHAAgH;iBACnI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oCAAoC;QACpC,IAAI,IAAA,+BAAa,EAAC,mBAAmB,CAAC,EAAE,CAAC;YACvC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,wCAAwC;oBAC/C,WAAW,EAAE,oEAAoE,mBAAmB,KAAK;wBACvG,sDAAsD;oBACxD,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,+FAA+F;wBAC1G;;kBAEM,mBAAmB;;oFAE+C;oBAC1E,gBAAgB,EAAE,gHAAgH;iBACnI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oBAAoB;QACpB,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"missing-contacts-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-contacts-purpose.ts"],"names":[],"mappings":";;;AASA,mDAA0E;AAC1E,mEAA8D;AAC9D,wCAAyC;AAEzC,MAAM,mBAAmB,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;AACvD,MAAM,YAAY,GAAG,4BAA4B,CAAC;AAErC,QAAA,0BAA0B,GAAS;IAC9C,EAAE,EAAE,sCAAsC;IAC1C,IAAI,EAAE,oCAAoC;IAC1C,WAAW,EAAE,wEAAwE;IACrF,QAAQ,EAAE,uBAAY,CAAC,OAAO;IAC9B,QAAQ,EAAE,mBAAQ,CAAC,QAAQ;IAC3B,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,qEAAqE;QACrE,IAAI,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAChC,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,oDAAoD;QACpD,MAAM,kBAAkB,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAE9D,6BAA6B;QAC7B,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,WAAW,EAAE,+CAA+C,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBAC3F,6FAA6F;wBAC7F,gEAAgE;oBAClE,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,0FAA0F;wBACrG;;;;;;uFAM2E;oBAC7E,gBAAgB,EAAE,gHAAgH;iBACnI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,IAAI,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACtC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,kCAAkC;oBACzC,WAAW,EAAE,gEAAgE;wBAC3E,wFAAwF;oBAC1F,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,uFAAuF;wBAClG;;;;;6FAKiF;oBACnF,gBAAgB,EAAE,gHAAgH;iBACnI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oCAAoC;QACpC,IAAI,IAAA,+BAAa,EAAC,mBAAmB,CAAC,EAAE,CAAC;YACvC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,wCAAwC;oBAC/C,WAAW,EAAE,oEAAoE,mBAAmB,KAAK;wBACvG,sDAAsD;oBACxD,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,+FAA+F;wBAC1G;;kBAEM,mBAAmB;;oFAE+C;oBAC1E,gBAAgB,EAAE,gHAAgH;iBACnI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oBAAoB;QACpB,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-face-id-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-face-id-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAOvE,eAAO,MAAM,wBAAwB,EAAE,
|
|
1
|
+
{"version":3,"file":"missing-face-id-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-face-id-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAOvE,eAAO,MAAM,wBAAwB,EAAE,IAkFtC,CAAC"}
|
|
@@ -14,6 +14,10 @@ exports.MissingFaceIdPurposeRule = {
|
|
|
14
14
|
confidence: index_js_1.Confidence.High,
|
|
15
15
|
guidelineReference: '5.1.1',
|
|
16
16
|
async evaluate(context) {
|
|
17
|
+
// Framework/library targets do not need app-level usage descriptions
|
|
18
|
+
if (context.isFrameworkTarget()) {
|
|
19
|
+
return [];
|
|
20
|
+
}
|
|
17
21
|
const detectedFrameworks = FACE_ID_FRAMEWORKS.filter(f => context.hasFramework(f));
|
|
18
22
|
if (detectedFrameworks.length === 0) {
|
|
19
23
|
return [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-face-id-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-face-id-purpose.ts"],"names":[],"mappings":";;;AASA,mDAA0E;AAC1E,mEAA8D;AAC9D,wCAAyC;AAEzC,MAAM,kBAAkB,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAEtC,QAAA,wBAAwB,GAAS;IAC5C,EAAE,EAAE,qCAAqC;IACzC,IAAI,EAAE,mCAAmC;IACzC,WAAW,EAAE,iFAAiF;IAC9F,QAAQ,EAAE,uBAAY,CAAC,OAAO;IAC9B,QAAQ,EAAE,mBAAQ,CAAC,QAAQ;IAC3B,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;QAE1E,6BAA6B;QAC7B,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,WAAW,EAAE,+DAA+D,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBAC3G,4EAA4E;wBAC5E,kFAAkF;oBACpF,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,4EAA4E;wBACvF;;;;;8DAKkD;wBAClD,yCAAyC;oBAC3C,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,IAAI,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACpC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,iCAAiC;oBACxC,WAAW,EAAE,8DAA8D;wBACzE,uFAAuF;oBACzF,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,4EAA4E;wBACvF;;;6CAGiC;oBACnC,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oCAAoC;QACpC,IAAI,IAAA,+BAAa,EAAC,iBAAiB,CAAC,EAAE,CAAC;YACrC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,uCAAuC;oBAC9C,WAAW,EAAE,kEAAkE,iBAAiB,KAAK;wBACnG,sDAAsD;oBACxD,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,8FAA8F;wBACzG;;kBAEM,iBAAiB;;mFAEgD;oBACzE,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"missing-face-id-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-face-id-purpose.ts"],"names":[],"mappings":";;;AASA,mDAA0E;AAC1E,mEAA8D;AAC9D,wCAAyC;AAEzC,MAAM,kBAAkB,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAEtC,QAAA,wBAAwB,GAAS;IAC5C,EAAE,EAAE,qCAAqC;IACzC,IAAI,EAAE,mCAAmC;IACzC,WAAW,EAAE,iFAAiF;IAC9F,QAAQ,EAAE,uBAAY,CAAC,OAAO;IAC9B,QAAQ,EAAE,mBAAQ,CAAC,QAAQ;IAC3B,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,qEAAqE;QACrE,IAAI,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAChC,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;QAE1E,6BAA6B;QAC7B,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,WAAW,EAAE,+DAA+D,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBAC3G,4EAA4E;wBAC5E,kFAAkF;oBACpF,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,4EAA4E;wBACvF;;;;;8DAKkD;wBAClD,yCAAyC;oBAC3C,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,IAAI,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACpC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,iCAAiC;oBACxC,WAAW,EAAE,8DAA8D;wBACzE,uFAAuF;oBACzF,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,4EAA4E;wBACvF;;;6CAGiC;oBACnC,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,oCAAoC;QACpC,IAAI,IAAA,+BAAa,EAAC,iBAAiB,CAAC,EAAE,CAAC;YACrC,OAAO;gBACL,IAAA,qBAAW,EAAC,IAAI,EAAE;oBAChB,KAAK,EAAE,uCAAuC;oBAC9C,WAAW,EAAE,kEAAkE,iBAAiB,KAAK;wBACnG,sDAAsD;oBACxD,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY;oBAC/C,WAAW,EAAE,8FAA8F;wBACzG;;kBAEM,iBAAiB;;mFAEgD;oBACzE,gBAAgB,EAAE,8GAA8G;iBACjI,CAAC;aACH,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-location-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-location-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAUvE,eAAO,MAAM,0BAA0B,EAAE,
|
|
1
|
+
{"version":3,"file":"missing-location-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-location-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAUvE,eAAO,MAAM,0BAA0B,EAAE,IAyIxC,CAAC"}
|
|
@@ -17,6 +17,10 @@ exports.MissingLocationPurposeRule = {
|
|
|
17
17
|
confidence: index_js_1.Confidence.High,
|
|
18
18
|
guidelineReference: '5.1.1',
|
|
19
19
|
async evaluate(context) {
|
|
20
|
+
// Framework/library targets do not need app-level usage descriptions
|
|
21
|
+
if (context.isFrameworkTarget()) {
|
|
22
|
+
return [];
|
|
23
|
+
}
|
|
20
24
|
// Check if any location-related framework is linked
|
|
21
25
|
const detectedFrameworks = LOCATION_FRAMEWORKS.filter(f => context.hasFramework(f));
|
|
22
26
|
if (detectedFrameworks.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-location-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-location-purpose.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"missing-location-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-location-purpose.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-microphone-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-microphone-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAUvE,eAAO,MAAM,4BAA4B,EAAE,
|
|
1
|
+
{"version":3,"file":"missing-microphone-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-microphone-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AAUvE,eAAO,MAAM,4BAA4B,EAAE,IAmI1C,CAAC"}
|
|
@@ -17,6 +17,10 @@ exports.MissingMicrophonePurposeRule = {
|
|
|
17
17
|
confidence: index_js_1.Confidence.High,
|
|
18
18
|
guidelineReference: '5.1.1',
|
|
19
19
|
async evaluate(context) {
|
|
20
|
+
// Framework/library targets do not need app-level usage descriptions
|
|
21
|
+
if (context.isFrameworkTarget()) {
|
|
22
|
+
return [];
|
|
23
|
+
}
|
|
20
24
|
// Check if any audio recording framework is linked
|
|
21
25
|
const detectedFrameworks = MICROPHONE_FRAMEWORKS.filter(f => context.hasFramework(f));
|
|
22
26
|
// AVFoundation CAN record audio but is also used by virtually every app that plays video/audio.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-microphone-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-microphone-purpose.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"missing-microphone-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-microphone-purpose.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-photo-library-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-photo-library-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AASvE,eAAO,MAAM,8BAA8B,EAAE,
|
|
1
|
+
{"version":3,"file":"missing-photo-library-purpose.d.ts","sourceRoot":"","sources":["../../../src/rules/privacy/missing-photo-library-purpose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,sBAAsB,CAAC;AASvE,eAAO,MAAM,8BAA8B,EAAE,IAsG5C,CAAC"}
|
|
@@ -16,6 +16,10 @@ exports.MissingPhotoLibraryPurposeRule = {
|
|
|
16
16
|
confidence: index_js_1.Confidence.High,
|
|
17
17
|
guidelineReference: '5.1.1',
|
|
18
18
|
async evaluate(context) {
|
|
19
|
+
// Framework/library targets do not need app-level usage descriptions
|
|
20
|
+
if (context.isFrameworkTarget()) {
|
|
21
|
+
return [];
|
|
22
|
+
}
|
|
19
23
|
// Check if any Photos-related framework is linked
|
|
20
24
|
const detectedFrameworks = PHOTO_LIBRARY_FRAMEWORKS.filter(f => context.hasFramework(f));
|
|
21
25
|
if (detectedFrameworks.length === 0) {
|
|
@@ -25,7 +29,9 @@ exports.MissingPhotoLibraryPurposeRule = {
|
|
|
25
29
|
const photoLibraryDescription = context.plistString(PHOTO_LIBRARY_KEY);
|
|
26
30
|
const photoLibraryAddDescription = context.plistString(PHOTO_LIBRARY_ADD_KEY);
|
|
27
31
|
// Case 1: Completely missing read access description
|
|
28
|
-
|
|
32
|
+
// If NSPhotoLibraryAddUsageDescription IS present, the app may only save photos (not read),
|
|
33
|
+
// which is a valid pattern that doesn't require NSPhotoLibraryUsageDescription
|
|
34
|
+
if (photoLibraryDescription === undefined && photoLibraryAddDescription === undefined) {
|
|
29
35
|
findings.push((0, base_js_1.makeFinding)(this, {
|
|
30
36
|
description: `Your app links against photo library frameworks (${detectedFrameworks.join(', ')}) ` +
|
|
31
37
|
`but Info.plist is missing NSPhotoLibraryUsageDescription. Apps that access the photo library ` +
|
|
@@ -42,7 +48,7 @@ If your app only needs to save photos (not read), you can use NSPhotoLibraryAddU
|
|
|
42
48
|
}));
|
|
43
49
|
}
|
|
44
50
|
// Case 2: Empty description
|
|
45
|
-
else if (photoLibraryDescription.trim() === '') {
|
|
51
|
+
else if (photoLibraryDescription !== undefined && photoLibraryDescription.trim() === '') {
|
|
46
52
|
findings.push((0, base_js_1.makeFinding)(this, {
|
|
47
53
|
title: 'Empty Photo Library Usage Description',
|
|
48
54
|
description: `NSPhotoLibraryUsageDescription exists in Info.plist but is empty. ` +
|
|
@@ -57,7 +63,7 @@ Bad example: "Photo access required" or ""`,
|
|
|
57
63
|
}));
|
|
58
64
|
}
|
|
59
65
|
// Case 3: Placeholder text detected
|
|
60
|
-
else if ((0, plist_parser_js_1.isPlaceholder)(photoLibraryDescription)) {
|
|
66
|
+
else if (photoLibraryDescription !== undefined && (0, plist_parser_js_1.isPlaceholder)(photoLibraryDescription)) {
|
|
61
67
|
findings.push((0, base_js_1.makeFinding)(this, {
|
|
62
68
|
title: 'Placeholder Photo Library Usage Description',
|
|
63
69
|
description: `NSPhotoLibraryUsageDescription appears to contain placeholder text: "${photoLibraryDescription}". ` +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-photo-library-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-photo-library-purpose.ts"],"names":[],"mappings":";;;AASA,mDAA0E;AAC1E,mEAA8D;AAC9D,wCAAyC;AAEzC,MAAM,wBAAwB,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACxD,MAAM,iBAAiB,GAAG,gCAAgC,CAAC;AAC3D,MAAM,qBAAqB,GAAG,mCAAmC,CAAC;AAErD,QAAA,8BAA8B,GAAS;IAClD,EAAE,EAAE,2CAA2C;IAC/C,IAAI,EAAE,yCAAyC;IAC/C,WAAW,EAAE,0EAA0E;IACvF,QAAQ,EAAE,uBAAY,CAAC,OAAO;IAC9B,QAAQ,EAAE,mBAAQ,CAAC,QAAQ;IAC3B,UAAU,EAAE,qBAAU,CAAC,IAAI;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,KAAK,CAAC,QAAQ,CAAC,OAAoB;QACjC,kDAAkD;QAClD,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,QAAQ,GAAc,EAAE,CAAC;QAC/B,MAAM,uBAAuB,GAAG,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QACvE,MAAM,0BAA0B,GAAG,OAAO,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;QAE9E,qDAAqD;QACrD,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"missing-photo-library-purpose.js","sourceRoot":"","sources":["../../../src/rules/privacy/missing-photo-library-purpose.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -58,9 +58,15 @@ export interface Finding {
|
|
|
58
58
|
title: string;
|
|
59
59
|
description: string;
|
|
60
60
|
location?: string;
|
|
61
|
+
/** Line number in the source file (1-indexed) */
|
|
62
|
+
line?: number;
|
|
61
63
|
guideline: string;
|
|
62
64
|
fixGuidance: string;
|
|
63
65
|
documentationURL?: string;
|
|
66
|
+
/** Whether this finding was suppressed */
|
|
67
|
+
suppressed?: boolean;
|
|
68
|
+
/** Reason for suppression */
|
|
69
|
+
suppressionReason?: string;
|
|
64
70
|
}
|
|
65
71
|
/**
|
|
66
72
|
* Result of a scan
|
|
@@ -69,6 +75,7 @@ export interface ScanResult {
|
|
|
69
75
|
projectPath: string;
|
|
70
76
|
timestamp: Date;
|
|
71
77
|
findings: Finding[];
|
|
78
|
+
suppressedFindings: Finding[];
|
|
72
79
|
rulesRun: string[];
|
|
73
80
|
duration: number;
|
|
74
81
|
/** Project type detected: xcodeproj, swiftpm, both, or unknown */
|
|
@@ -121,6 +128,10 @@ export interface ScanContext {
|
|
|
121
128
|
generatesInfoPlist(): boolean;
|
|
122
129
|
/** Whether this target is an app extension (not a full app) */
|
|
123
130
|
isExtension(): boolean;
|
|
131
|
+
/** Whether this is a macOS-only target (no iOS support) */
|
|
132
|
+
isMacOSOnly(): boolean;
|
|
133
|
+
/** Whether this is a framework/library target (not an app) */
|
|
134
|
+
isFrameworkTarget(): boolean;
|
|
124
135
|
}
|
|
125
136
|
/**
|
|
126
137
|
* Rule interface - each rule must implement this
|
|
@@ -155,5 +166,6 @@ export interface ScanOptions {
|
|
|
155
166
|
verbose?: boolean;
|
|
156
167
|
rules?: string[];
|
|
157
168
|
exclude?: string[];
|
|
169
|
+
showSuppressed?: boolean;
|
|
158
170
|
}
|
|
159
171
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,oBAAY,QAAQ;IAClB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,GAAG,QAAQ;IACX,IAAI,SAAS;CACd;AAED;;GAEG;AACH,oBAAY,UAAU;IACpB,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,GAAG,QAAQ;CACZ;AAED;;GAEG;AACH,oBAAY,YAAY;IACtB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,oBAAY,gBAAgB;IAC1B,SAAS,cAAc;IACvB,GAAG,QAAQ;IACX,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH;;GAEG;AACH,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,6BAAiB,CAAA;IACjB,uBAAW,CAAA;IACX,yBAAa,CAAA;AACf,CAAC,EANW,QAAQ,wBAAR,QAAQ,QAMnB;AAED;;GAEG;AACH,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,yBAAW,CAAA;AACb,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB;AAED;;GAEG;AACH,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,6BAAa,CAAA;IACb,6CAA6B,CAAA;IAC7B,2CAA2B,CAAA;IAC3B,mCAAmB,CAAA;IACnB,qCAAqB,CAAA;IACrB,iCAAiB,CAAA;AACnB,CAAC,EARW,YAAY,4BAAZ,YAAY,QAQvB;AAED;;GAEG;AACH,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,2CAAuB,CAAA;IACvB,+BAAW,CAAA;IACX,yCAAqB,CAAA;IACrB,qCAAiB,CAAA;AACnB,CAAC,EALW,gBAAgB,gCAAhB,gBAAgB,QAK3B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH;;GAEG;AACH,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,6BAAiB,CAAA;IACjB,uBAAW,CAAA;IACX,yBAAa,CAAA;AACf,CAAC,EANW,QAAQ,wBAAR,QAAQ,QAMnB;AAED;;GAEG;AACH,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,yBAAW,CAAA;AACb,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB;AAED;;GAEG;AACH,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,6BAAa,CAAA;IACb,6CAA6B,CAAA;IAC7B,2CAA2B,CAAA;IAC3B,mCAAmB,CAAA;IACnB,qCAAqB,CAAA;IACrB,iCAAiB,CAAA;AACnB,CAAC,EARW,YAAY,4BAAZ,YAAY,QAQvB;AAED;;GAEG;AACH,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,2CAAuB,CAAA;IACvB,+BAAW,CAAA;IACX,yCAAqB,CAAA;IACrB,qCAAiB,CAAA;AACnB,CAAC,EALW,gBAAgB,gCAAhB,gBAAgB,QAK3B;AAwHD;;GAEG;AACH,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,6BAAa,CAAA;IACb,+BAAe,CAAA;AACjB,CAAC,EAJW,YAAY,4BAAZ,YAAY,QAIvB"}
|