@atlaskit/codemod-cli 0.13.4 → 0.15.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.
Files changed (89) hide show
  1. package/CHANGELOG.md +71 -52
  2. package/dist/cjs/main.js +3 -3
  3. package/dist/cjs/presets/css-to-design-tokens/css-to-design-tokens.js +65 -135
  4. package/dist/cjs/presets/css-to-design-tokens/lib/colors.js +49 -0
  5. package/dist/cjs/presets/css-to-design-tokens/lib/declaration.js +29 -0
  6. package/dist/cjs/presets/css-to-design-tokens/{utils → lib}/legacy-colors.js +13 -17
  7. package/dist/cjs/presets/css-to-design-tokens/lib/logger.js +18 -0
  8. package/dist/cjs/presets/css-to-design-tokens/lib/meta.js +157 -0
  9. package/dist/cjs/presets/css-to-design-tokens/lib/tokens.js +47 -0
  10. package/dist/cjs/presets/css-to-design-tokens/lib/value.js +80 -0
  11. package/dist/cjs/presets/index.js +1 -2
  12. package/dist/cjs/presets/styled-to-emotion/styled-to-emotion.js +1 -2
  13. package/dist/cjs/presets/theme-remove-deprecated-mixins/utils/replacements.js +2 -3
  14. package/dist/cjs/presets/theme-to-design-tokens/theme-to-design-tokens.js +348 -104
  15. package/dist/cjs/presets/theme-to-design-tokens/utils/ast.js +1 -1
  16. package/dist/cjs/presets/theme-to-design-tokens/utils/color.js +17 -17
  17. package/dist/cjs/presets/theme-to-design-tokens/utils/css-utils.js +38 -0
  18. package/dist/cjs/presets/theme-to-design-tokens/utils/fuzzy-search.js +1 -2
  19. package/dist/cjs/presets/theme-to-design-tokens/utils/legacy-colors.js +4 -7
  20. package/dist/cjs/presets/theme-to-design-tokens/utils/named-colors.js +1 -2
  21. package/dist/cjs/presets/theme-to-design-tokens/utils/string-utils.js +25 -0
  22. package/dist/cjs/presets/theme-to-design-tokens/utils/tokens.js +3 -5
  23. package/dist/cjs/sinceRef.js +1 -2
  24. package/dist/cjs/transforms.js +6 -12
  25. package/dist/cjs/types.js +3 -5
  26. package/dist/cjs/utils.js +2 -3
  27. package/dist/es2019/presets/css-to-design-tokens/css-to-design-tokens.js +61 -115
  28. package/dist/es2019/presets/css-to-design-tokens/lib/colors.js +34 -0
  29. package/dist/es2019/presets/css-to-design-tokens/lib/declaration.js +17 -0
  30. package/dist/es2019/presets/css-to-design-tokens/{utils → lib}/legacy-colors.js +9 -10
  31. package/dist/es2019/presets/css-to-design-tokens/lib/logger.js +11 -0
  32. package/dist/es2019/presets/css-to-design-tokens/lib/meta.js +133 -0
  33. package/dist/es2019/presets/css-to-design-tokens/lib/tokens.js +24 -0
  34. package/dist/es2019/presets/css-to-design-tokens/lib/value.js +68 -0
  35. package/dist/es2019/presets/theme-to-design-tokens/theme-to-design-tokens.js +191 -32
  36. package/dist/es2019/presets/theme-to-design-tokens/utils/ast.js +1 -1
  37. package/dist/es2019/presets/theme-to-design-tokens/utils/color.js +12 -10
  38. package/dist/es2019/presets/theme-to-design-tokens/utils/css-utils.js +31 -0
  39. package/dist/es2019/presets/theme-to-design-tokens/utils/string-utils.js +13 -0
  40. package/dist/esm/main.js +3 -3
  41. package/dist/esm/presets/css-to-design-tokens/css-to-design-tokens.js +65 -135
  42. package/dist/esm/presets/css-to-design-tokens/lib/colors.js +38 -0
  43. package/dist/esm/presets/css-to-design-tokens/lib/declaration.js +19 -0
  44. package/dist/esm/presets/css-to-design-tokens/{utils → lib}/legacy-colors.js +9 -10
  45. package/dist/esm/presets/css-to-design-tokens/lib/logger.js +11 -0
  46. package/dist/esm/presets/css-to-design-tokens/lib/meta.js +146 -0
  47. package/dist/esm/presets/css-to-design-tokens/lib/tokens.js +40 -0
  48. package/dist/esm/presets/css-to-design-tokens/lib/value.js +73 -0
  49. package/dist/esm/presets/theme-to-design-tokens/theme-to-design-tokens.js +346 -100
  50. package/dist/esm/presets/theme-to-design-tokens/utils/ast.js +1 -1
  51. package/dist/esm/presets/theme-to-design-tokens/utils/color.js +12 -10
  52. package/dist/esm/presets/theme-to-design-tokens/utils/css-utils.js +31 -0
  53. package/dist/esm/presets/theme-to-design-tokens/utils/string-utils.js +17 -0
  54. package/dist/types/main.d.ts +0 -1
  55. package/dist/types/presets/css-to-design-tokens/css-to-design-tokens.d.ts +1 -1
  56. package/dist/types/presets/css-to-design-tokens/lib/colors.d.ts +6 -0
  57. package/dist/types/presets/css-to-design-tokens/lib/declaration.d.ts +5 -0
  58. package/dist/types/presets/css-to-design-tokens/{utils → lib}/legacy-colors.d.ts +1 -1
  59. package/dist/types/presets/css-to-design-tokens/lib/logger.d.ts +4 -0
  60. package/dist/types/presets/css-to-design-tokens/lib/meta.d.ts +6 -0
  61. package/dist/types/presets/css-to-design-tokens/lib/tokens.d.ts +7 -0
  62. package/dist/types/presets/css-to-design-tokens/lib/value.d.ts +6 -0
  63. package/dist/types/presets/theme-to-design-tokens/theme-to-design-tokens.d.ts +1 -1
  64. package/dist/types/presets/theme-to-design-tokens/utils/ast.d.ts +1 -1
  65. package/dist/types/presets/theme-to-design-tokens/utils/color.d.ts +2 -1
  66. package/dist/types/presets/theme-to-design-tokens/utils/css-utils.d.ts +2 -0
  67. package/dist/types/presets/theme-to-design-tokens/utils/string-utils.d.ts +3 -0
  68. package/dist/types-ts4.5/main.d.ts +0 -1
  69. package/dist/types-ts4.5/presets/css-to-design-tokens/css-to-design-tokens.d.ts +1 -1
  70. package/dist/types-ts4.5/presets/css-to-design-tokens/lib/colors.d.ts +6 -0
  71. package/dist/types-ts4.5/presets/css-to-design-tokens/lib/declaration.d.ts +5 -0
  72. package/dist/types-ts4.5/presets/css-to-design-tokens/{utils → lib}/legacy-colors.d.ts +1 -1
  73. package/dist/types-ts4.5/presets/css-to-design-tokens/lib/logger.d.ts +4 -0
  74. package/dist/types-ts4.5/presets/css-to-design-tokens/lib/meta.d.ts +6 -0
  75. package/dist/types-ts4.5/presets/css-to-design-tokens/lib/tokens.d.ts +7 -0
  76. package/dist/types-ts4.5/presets/css-to-design-tokens/lib/value.d.ts +6 -0
  77. package/dist/types-ts4.5/presets/theme-to-design-tokens/theme-to-design-tokens.d.ts +1 -1
  78. package/dist/types-ts4.5/presets/theme-to-design-tokens/utils/ast.d.ts +1 -1
  79. package/dist/types-ts4.5/presets/theme-to-design-tokens/utils/color.d.ts +2 -1
  80. package/dist/types-ts4.5/presets/theme-to-design-tokens/utils/css-utils.d.ts +2 -0
  81. package/dist/types-ts4.5/presets/theme-to-design-tokens/utils/string-utils.d.ts +6 -0
  82. package/package.json +2 -2
  83. package/report.api.md +0 -2
  84. package/tmp/api-report-tmp.d.ts +0 -2
  85. package/dist/cjs/presets/css-to-design-tokens/utils/meta.js +0 -53
  86. package/dist/es2019/presets/css-to-design-tokens/utils/meta.js +0 -33
  87. package/dist/esm/presets/css-to-design-tokens/utils/meta.js +0 -46
  88. package/dist/types/presets/css-to-design-tokens/utils/meta.d.ts +0 -1
  89. package/dist/types-ts4.5/presets/css-to-design-tokens/utils/meta.d.ts +0 -1
@@ -1,4 +1,4 @@
1
1
  import core, { ASTNode, ASTPath } from 'jscodeshift';
2
- export declare function isDecendantOfToken(j: core.JSCodeshift, path: ASTNode): boolean;
2
+ export declare function isDecendantOfToken(j: core.JSCodeshift, path: ASTPath | ASTNode): boolean;
3
3
  export declare function isParentOfToken(j: core.JSCodeshift, path: any): boolean;
4
4
  export declare function getClosestDecendantOfType(j: core.JSCodeshift, path: ASTPath, type: any): any;
@@ -1,4 +1,5 @@
1
1
  export declare const isLegacyColor: (value: string) => boolean;
2
2
  export declare const isLegacyNamedColor: (value: string) => boolean;
3
3
  export declare const includesHardCodedColor: (raw: string) => boolean;
4
- export declare const isHardCodedColor: (value: string) => boolean;
4
+ export declare const isHardCodedColor: (raw: string) => boolean;
5
+ export declare function isBoldColor(color: string): boolean;
@@ -0,0 +1,2 @@
1
+ export declare function containsReplaceableCSSDeclarations(input: string): boolean;
2
+ export declare function findEndIndexOfCSSExpression(text: string, isAtEndOfInput: boolean): number | null;
@@ -0,0 +1,3 @@
1
+ export declare const kebabize: (str: string) => string;
2
+ export declare function findFirstNonspaceIndexAfter(text: string, index: number): number;
3
+ export declare function splitAtIndex(text: string, index: number): [string, string];
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Flags, Default } from './types';
3
2
  declare const defaultFlags: {
4
3
  parser: "babel";
@@ -1,2 +1,2 @@
1
1
  import { FileInfo } from 'jscodeshift';
2
- export default function transformer(file: FileInfo): Promise<string>;
2
+ export default function transformer(file: FileInfo | string): Promise<string>;
@@ -0,0 +1,6 @@
1
+ export declare function isKnownCssVariable(value: string): boolean;
2
+ export declare function isRawColor(value: string): boolean;
3
+ export declare function isNamedColor(value: string): boolean;
4
+ export declare function isGradient(value: string): boolean;
5
+ export declare function extractBetweenParentheses(value: string): string;
6
+ export declare function isLessFunction(value: string): boolean;
@@ -0,0 +1,5 @@
1
+ export declare function isColorRelatedProperty(prop: string): boolean;
2
+ export declare function isCssDeclaration(prop: string): boolean;
3
+ export declare function extractCssVarName(prop: string): string;
4
+ export declare function extractLessVarName(prop: string): string;
5
+ export declare function splitCssValue(value: string): RegExpMatchArray | null;
@@ -1,3 +1,3 @@
1
1
  export declare const knownVariables: Record<string, string[]>;
2
- export declare const knownColors: Record<string, string[]>;
2
+ export declare const knownNamedColors: Record<string, string[]>;
3
3
  export declare const knownRawColors: Record<string, string[]>;
@@ -0,0 +1,4 @@
1
+ export declare const logger: {
2
+ warn(message: string): void;
3
+ error(message: string): void;
4
+ };
@@ -0,0 +1,6 @@
1
+ import { Declaration } from 'postcss';
2
+ export declare function cleanMeta(meta: string[]): string[];
3
+ export declare function getBaseDeclarationMeta(decl: Declaration): string[];
4
+ export declare function getCssVarMeta(cssVariable: string): string[];
5
+ export declare function getRawColorMeta(rawColor: string): string[];
6
+ export declare function getNamedColorMeta(namedColor: string): string[];
@@ -0,0 +1,7 @@
1
+ import designTokens from '@atlaskit/tokens/token-names';
2
+ type DesignTokensMap = typeof designTokens;
3
+ type DesignTokenJs = keyof DesignTokensMap;
4
+ type DesignTokenCss = DesignTokensMap[DesignTokenJs];
5
+ declare const MISSING_TOKEN_NAME = "MISSING_TOKEN";
6
+ export default function findToken(meta: string[]): DesignTokenCss | typeof MISSING_TOKEN_NAME;
7
+ export {};
@@ -0,0 +1,6 @@
1
+ interface Value {
2
+ getReplacement: (additionalMeta?: string[]) => string;
3
+ getMeta: () => string[];
4
+ }
5
+ export default function parseValue(value: string): Value | null;
6
+ export {};
@@ -1,2 +1,2 @@
1
1
  import { API, FileInfo } from 'jscodeshift';
2
- export default function transformer(file: FileInfo, api: API, debug?: boolean): string;
2
+ export default function transformer(file: FileInfo, api: API, debug?: boolean): Promise<string>;
@@ -1,4 +1,4 @@
1
1
  import core, { ASTNode, ASTPath } from 'jscodeshift';
2
- export declare function isDecendantOfToken(j: core.JSCodeshift, path: ASTNode): boolean;
2
+ export declare function isDecendantOfToken(j: core.JSCodeshift, path: ASTPath | ASTNode): boolean;
3
3
  export declare function isParentOfToken(j: core.JSCodeshift, path: any): boolean;
4
4
  export declare function getClosestDecendantOfType(j: core.JSCodeshift, path: ASTPath, type: any): any;
@@ -1,4 +1,5 @@
1
1
  export declare const isLegacyColor: (value: string) => boolean;
2
2
  export declare const isLegacyNamedColor: (value: string) => boolean;
3
3
  export declare const includesHardCodedColor: (raw: string) => boolean;
4
- export declare const isHardCodedColor: (value: string) => boolean;
4
+ export declare const isHardCodedColor: (raw: string) => boolean;
5
+ export declare function isBoldColor(color: string): boolean;
@@ -0,0 +1,2 @@
1
+ export declare function containsReplaceableCSSDeclarations(input: string): boolean;
2
+ export declare function findEndIndexOfCSSExpression(text: string, isAtEndOfInput: boolean): number | null;
@@ -0,0 +1,6 @@
1
+ export declare const kebabize: (str: string) => string;
2
+ export declare function findFirstNonspaceIndexAfter(text: string, index: number): number;
3
+ export declare function splitAtIndex(text: string, index: number): [
4
+ string,
5
+ string
6
+ ];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/codemod-cli",
3
- "version": "0.13.4",
3
+ "version": "0.15.0",
4
4
  "description": "A cli for distributing codemods for atlassian-frontend components and services",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -32,7 +32,7 @@
32
32
  "codemod-cli": "./bin/codemod-cli.js"
33
33
  },
34
34
  "dependencies": {
35
- "@atlaskit/tokens": "^1.15.0",
35
+ "@atlaskit/tokens": "^1.25.0",
36
36
  "@babel/runtime": "^7.0.0",
37
37
  "@codeshift/utils": "^0.2.4",
38
38
  "@types/jscodeshift": "^0.11.0",
package/report.api.md CHANGED
@@ -15,8 +15,6 @@
15
15
  <!--SECTION START: Main Entry Types-->
16
16
 
17
17
  ```ts
18
- /// <reference types="node" />
19
-
20
18
  // @public (undocumented)
21
19
  type CliFlags = {
22
20
  transform?: string;
@@ -4,8 +4,6 @@
4
4
 
5
5
  ```ts
6
6
 
7
- /// <reference types="node" />
8
-
9
7
  // @public (undocumented)
10
8
  type CliFlags = {
11
9
  transform?: string;
@@ -1,53 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.cleanMeta = cleanMeta;
8
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
- var _tokenNames = _interopRequireDefault(require("@atlaskit/tokens/token-names"));
10
- var getUniqueWordsFromTokens = Object.keys(_tokenNames.default).reduce(function (accum, val) {
11
- return [].concat((0, _toConsumableArray2.default)(accum), (0, _toConsumableArray2.default)(val.split('.')));
12
- }, []).reduce(function (accum, val) {
13
- return [].concat((0, _toConsumableArray2.default)(accum), (0, _toConsumableArray2.default)(val.split(/(?=[A-Z])/g).map(function (e) {
14
- return e.toLowerCase();
15
- })));
16
- }, []).reduce(function (accum, val) {
17
- if (!accum.includes(val)) {
18
- accum.push(val);
19
- }
20
- return accum;
21
- }, []);
22
- function filterDuplciateFoundations(meta) {
23
- var foundations = ['text', 'background', 'shadow', 'border'];
24
- var hasFoundation = false;
25
- return meta.filter(function (val) {
26
- if (!hasFoundation && foundations.includes(val)) {
27
- hasFoundation = true;
28
- return true;
29
- }
30
- if (hasFoundation && foundations.includes(val)) {
31
- return false;
32
- }
33
- return true;
34
- });
35
- }
36
- function cleanMeta(meta) {
37
- var cleanMeta = meta.reduce(function (accum, val) {
38
- return [].concat((0, _toConsumableArray2.default)(accum), (0, _toConsumableArray2.default)(typeof val === 'string' ? val.split(/(?=[A-Z])/g).map(function (e) {
39
- return e.toLowerCase();
40
- }) : []));
41
- }, []).reduce(function (accum, val) {
42
- accum.push(val.replace(/:/g, '').replace(/,/g, '').replace('grey', 'neutral').replace('texts', 'text').replace('red', 'danger').replace('error', 'danger').replace('invalid', 'danger').replace('removed', 'danger').replace('removal', 'danger').replace('remove', 'danger').replace('focus', 'focused').replace('valid', 'success').replace('successful', 'success').replace('risk', 'warning').replace('caution', 'warning').replace('warn', 'warning').replace('primary', 'bold').replace('info', 'bold').replace('secondary', 'subtle').replace('hyperlink', 'link').replace('anchor', 'link').replace('active', 'pressed').replace('hover', 'hovered').replace('dragged', 'overlay').replace('dragging', 'overlay').replace('drag', 'overlay').replace('background-color', 'background').replace('color', 'text').replace('icons', 'icon').replace('arrow', 'icon').replace('glyph', 'icon').replace('stroke', 'border').replace('border-left', 'border').replace('border-right', 'border').replace('border-top', 'border').replace('border-bottom', 'border').replace('box-shadow', 'shadow'));
43
- return accum;
44
- }, []).filter(function (val) {
45
- return getUniqueWordsFromTokens.includes(val);
46
- }).reduce(function (accum, val) {
47
- if (!accum.includes(val)) {
48
- accum.push(val);
49
- }
50
- return accum;
51
- }, []);
52
- return filterDuplciateFoundations(cleanMeta);
53
- }
@@ -1,33 +0,0 @@
1
- import designTokens from '@atlaskit/tokens/token-names';
2
- const getUniqueWordsFromTokens = Object.keys(designTokens).reduce((accum, val) => [...accum, ...val.split('.')], []).reduce((accum, val) => [...accum, ...val.split(/(?=[A-Z])/g).map(e => e.toLowerCase())], []).reduce((accum, val) => {
3
- if (!accum.includes(val)) {
4
- accum.push(val);
5
- }
6
- return accum;
7
- }, []);
8
- function filterDuplciateFoundations(meta) {
9
- const foundations = ['text', 'background', 'shadow', 'border'];
10
- let hasFoundation = false;
11
- return meta.filter(val => {
12
- if (!hasFoundation && foundations.includes(val)) {
13
- hasFoundation = true;
14
- return true;
15
- }
16
- if (hasFoundation && foundations.includes(val)) {
17
- return false;
18
- }
19
- return true;
20
- });
21
- }
22
- export function cleanMeta(meta) {
23
- const cleanMeta = meta.reduce((accum, val) => [...accum, ...(typeof val === 'string' ? val.split(/(?=[A-Z])/g).map(e => e.toLowerCase()) : [])], []).reduce((accum, val) => {
24
- accum.push(val.replace(/:/g, '').replace(/,/g, '').replace('grey', 'neutral').replace('texts', 'text').replace('red', 'danger').replace('error', 'danger').replace('invalid', 'danger').replace('removed', 'danger').replace('removal', 'danger').replace('remove', 'danger').replace('focus', 'focused').replace('valid', 'success').replace('successful', 'success').replace('risk', 'warning').replace('caution', 'warning').replace('warn', 'warning').replace('primary', 'bold').replace('info', 'bold').replace('secondary', 'subtle').replace('hyperlink', 'link').replace('anchor', 'link').replace('active', 'pressed').replace('hover', 'hovered').replace('dragged', 'overlay').replace('dragging', 'overlay').replace('drag', 'overlay').replace('background-color', 'background').replace('color', 'text').replace('icons', 'icon').replace('arrow', 'icon').replace('glyph', 'icon').replace('stroke', 'border').replace('border-left', 'border').replace('border-right', 'border').replace('border-top', 'border').replace('border-bottom', 'border').replace('box-shadow', 'shadow'));
25
- return accum;
26
- }, []).filter(val => getUniqueWordsFromTokens.includes(val)).reduce((accum, val) => {
27
- if (!accum.includes(val)) {
28
- accum.push(val);
29
- }
30
- return accum;
31
- }, []);
32
- return filterDuplciateFoundations(cleanMeta);
33
- }
@@ -1,46 +0,0 @@
1
- import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
- import designTokens from '@atlaskit/tokens/token-names';
3
- var getUniqueWordsFromTokens = Object.keys(designTokens).reduce(function (accum, val) {
4
- return [].concat(_toConsumableArray(accum), _toConsumableArray(val.split('.')));
5
- }, []).reduce(function (accum, val) {
6
- return [].concat(_toConsumableArray(accum), _toConsumableArray(val.split(/(?=[A-Z])/g).map(function (e) {
7
- return e.toLowerCase();
8
- })));
9
- }, []).reduce(function (accum, val) {
10
- if (!accum.includes(val)) {
11
- accum.push(val);
12
- }
13
- return accum;
14
- }, []);
15
- function filterDuplciateFoundations(meta) {
16
- var foundations = ['text', 'background', 'shadow', 'border'];
17
- var hasFoundation = false;
18
- return meta.filter(function (val) {
19
- if (!hasFoundation && foundations.includes(val)) {
20
- hasFoundation = true;
21
- return true;
22
- }
23
- if (hasFoundation && foundations.includes(val)) {
24
- return false;
25
- }
26
- return true;
27
- });
28
- }
29
- export function cleanMeta(meta) {
30
- var cleanMeta = meta.reduce(function (accum, val) {
31
- return [].concat(_toConsumableArray(accum), _toConsumableArray(typeof val === 'string' ? val.split(/(?=[A-Z])/g).map(function (e) {
32
- return e.toLowerCase();
33
- }) : []));
34
- }, []).reduce(function (accum, val) {
35
- accum.push(val.replace(/:/g, '').replace(/,/g, '').replace('grey', 'neutral').replace('texts', 'text').replace('red', 'danger').replace('error', 'danger').replace('invalid', 'danger').replace('removed', 'danger').replace('removal', 'danger').replace('remove', 'danger').replace('focus', 'focused').replace('valid', 'success').replace('successful', 'success').replace('risk', 'warning').replace('caution', 'warning').replace('warn', 'warning').replace('primary', 'bold').replace('info', 'bold').replace('secondary', 'subtle').replace('hyperlink', 'link').replace('anchor', 'link').replace('active', 'pressed').replace('hover', 'hovered').replace('dragged', 'overlay').replace('dragging', 'overlay').replace('drag', 'overlay').replace('background-color', 'background').replace('color', 'text').replace('icons', 'icon').replace('arrow', 'icon').replace('glyph', 'icon').replace('stroke', 'border').replace('border-left', 'border').replace('border-right', 'border').replace('border-top', 'border').replace('border-bottom', 'border').replace('box-shadow', 'shadow'));
36
- return accum;
37
- }, []).filter(function (val) {
38
- return getUniqueWordsFromTokens.includes(val);
39
- }).reduce(function (accum, val) {
40
- if (!accum.includes(val)) {
41
- accum.push(val);
42
- }
43
- return accum;
44
- }, []);
45
- return filterDuplciateFoundations(cleanMeta);
46
- }
@@ -1 +0,0 @@
1
- export declare function cleanMeta(meta: string[]): string[];
@@ -1 +0,0 @@
1
- export declare function cleanMeta(meta: string[]): string[];