unleash-server 4.2.0-beta.6 → 4.2.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 (94) hide show
  1. package/README.md +1 -1
  2. package/dist/lib/addons/datadog.d.ts +3 -17
  3. package/dist/lib/addons/datadog.js +3 -109
  4. package/dist/lib/addons/datadog.js.map +1 -1
  5. package/dist/lib/addons/feature-event-formatter-md.d.ts +25 -0
  6. package/dist/lib/addons/feature-event-formatter-md.js +117 -0
  7. package/dist/lib/addons/feature-event-formatter-md.js.map +1 -0
  8. package/dist/lib/addons/index.d.ts +1 -0
  9. package/dist/lib/addons/index.js.map +1 -1
  10. package/dist/lib/addons/slack.d.ts +1 -11
  11. package/dist/lib/addons/slack.js +5 -110
  12. package/dist/lib/addons/slack.js.map +1 -1
  13. package/dist/lib/addons/slack.test.js +2 -0
  14. package/dist/lib/addons/slack.test.js.map +1 -1
  15. package/dist/lib/addons/teams.d.ts +3 -17
  16. package/dist/lib/addons/teams.js +7 -109
  17. package/dist/lib/addons/teams.js.map +1 -1
  18. package/dist/lib/db/client-metrics-store-v2.d.ts +0 -1
  19. package/dist/lib/db/client-metrics-store-v2.js +5 -8
  20. package/dist/lib/db/client-metrics-store-v2.js.map +1 -1
  21. package/dist/lib/middleware/demo-authentication.js +5 -11
  22. package/dist/lib/middleware/demo-authentication.js.map +1 -1
  23. package/dist/lib/middleware/rbac-middleware.test.js +2 -0
  24. package/dist/lib/middleware/rbac-middleware.test.js.map +1 -1
  25. package/dist/lib/routes/admin-api/config.d.ts +5 -2
  26. package/dist/lib/routes/admin-api/config.js +9 -11
  27. package/dist/lib/routes/admin-api/config.js.map +1 -1
  28. package/dist/lib/routes/admin-api/feature.d.ts +2 -3
  29. package/dist/lib/routes/admin-api/feature.js +33 -34
  30. package/dist/lib/routes/admin-api/feature.js.map +1 -1
  31. package/dist/lib/routes/admin-api/project/features.js +1 -1
  32. package/dist/lib/routes/admin-api/project/features.js.map +1 -1
  33. package/dist/lib/routes/admin-api/strategy.test.js +25 -38
  34. package/dist/lib/routes/admin-api/strategy.test.js.map +1 -1
  35. package/dist/lib/routes/admin-api/user-admin.d.ts +1 -0
  36. package/dist/lib/routes/admin-api/user-admin.js +6 -0
  37. package/dist/lib/routes/admin-api/user-admin.js.map +1 -1
  38. package/dist/lib/routes/health-check.test.js +1 -0
  39. package/dist/lib/routes/health-check.test.js.map +1 -1
  40. package/dist/lib/server-impl.d.ts +2 -1
  41. package/dist/lib/server-impl.js.map +1 -1
  42. package/dist/lib/services/client-metrics/client-metrics-service-v2.js +0 -1
  43. package/dist/lib/services/client-metrics/client-metrics-service-v2.js.map +1 -1
  44. package/dist/lib/services/feature-toggle-service-v2.js +1 -1
  45. package/dist/lib/services/feature-toggle-service-v2.js.map +1 -1
  46. package/dist/lib/services/index.js +2 -1
  47. package/dist/lib/services/index.js.map +1 -1
  48. package/dist/lib/services/setting-service.d.ts +1 -1
  49. package/dist/lib/services/setting-service.js.map +1 -1
  50. package/dist/lib/services/user-service.d.ts +3 -0
  51. package/dist/lib/services/user-service.js +6 -0
  52. package/dist/lib/services/user-service.js.map +1 -1
  53. package/dist/lib/services/user-service.test.js +18 -0
  54. package/dist/lib/services/user-service.test.js.map +1 -1
  55. package/dist/lib/types/authentication-required.d.ts +3 -1
  56. package/dist/lib/types/authentication-required.js +2 -1
  57. package/dist/lib/types/authentication-required.js.map +1 -1
  58. package/dist/lib/types/settings/simple-auth-settings.d.ts +4 -0
  59. package/dist/lib/types/settings/simple-auth-settings.js +5 -0
  60. package/dist/lib/types/settings/simple-auth-settings.js.map +1 -0
  61. package/dist/lib/types/stores/settings-store.d.ts +1 -1
  62. package/dist/migrations/20210928080601-add-development-and-production-environments.js +3 -3
  63. package/dist/migrations/20211029094324-set-sort-order-env.d.ts +2 -0
  64. package/dist/migrations/20211029094324-set-sort-order-env.js +11 -0
  65. package/dist/migrations/20211029094324-set-sort-order-env.js.map +1 -0
  66. package/dist/test/e2e/api/admin/bootstrap.test.js +1 -1
  67. package/dist/test/e2e/api/admin/client-metrics.e2e.test.js +8 -8
  68. package/dist/test/e2e/api/admin/client-metrics.e2e.test.js.map +1 -1
  69. package/dist/test/e2e/api/admin/config.e2e.test.d.ts +1 -0
  70. package/dist/test/e2e/api/admin/config.e2e.test.js +36 -0
  71. package/dist/test/e2e/api/admin/config.e2e.test.js.map +1 -0
  72. package/dist/test/e2e/api/admin/feature.auth.e2e.test.js +1 -1
  73. package/dist/test/e2e/api/admin/feature.custom-auth.e2e.test.js +1 -1
  74. package/dist/test/e2e/api/admin/project/features.e2e.test.js +1 -1
  75. package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
  76. package/dist/test/e2e/api/admin/user-admin.e2e.test.js +16 -1
  77. package/dist/test/e2e/api/admin/user-admin.e2e.test.js.map +1 -1
  78. package/dist/test/e2e/api/admin/user.test.js +1 -1
  79. package/dist/test/e2e/api/auth/reset-password-controller.e2e.test.js +6 -2
  80. package/dist/test/e2e/api/auth/reset-password-controller.e2e.test.js.map +1 -1
  81. package/dist/test/e2e/custom-auth.test.js +1 -1
  82. package/dist/test/e2e/custom-auth.test.js.map +1 -1
  83. package/dist/test/e2e/helpers/database-init.js +1 -1
  84. package/dist/test/e2e/services/reset-token-service.e2e.test.js +4 -0
  85. package/dist/test/e2e/services/reset-token-service.e2e.test.js.map +1 -1
  86. package/dist/test/e2e/services/user-service.e2e.test.js +15 -0
  87. package/dist/test/e2e/services/user-service.e2e.test.js.map +1 -1
  88. package/dist/test/e2e/stores/client-metrics-store-v2.e2e.test.js +4 -11
  89. package/dist/test/e2e/stores/client-metrics-store-v2.e2e.test.js.map +1 -1
  90. package/dist/test/e2e/stores/feature-toggle-store.e2e.test.js +1 -0
  91. package/dist/test/e2e/stores/feature-toggle-store.e2e.test.js.map +1 -1
  92. package/dist/test/fixtures/fake-setting-store.js +1 -5
  93. package/dist/test/fixtures/fake-setting-store.js.map +1 -1
  94. package/package.json +12 -9
@@ -3,50 +3,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const js_yaml_1 = __importDefault(require("js-yaml"));
7
6
  const addon_1 = __importDefault(require("./addon"));
8
- const events_1 = require("../types/events");
9
7
  const teams_definition_1 = __importDefault(require("./teams-definition"));
8
+ const feature_event_formatter_md_1 = require("./feature-event-formatter-md");
10
9
  class TeamsAddon extends addon_1.default {
11
10
  constructor(args) {
12
11
  super(teams_definition_1.default, args);
13
- this.unleashUrl = args.unleashUrl;
12
+ this.msgFormatter = new feature_event_formatter_md_1.FeatureEventFormatterMd(args.unleashUrl);
14
13
  }
15
14
  // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
16
15
  async handleEvent(event, parameters) {
17
16
  const { url } = parameters;
18
- const { createdBy, data, type } = event;
19
- let text = '';
20
- if ([events_1.FEATURE_ARCHIVED, events_1.FEATURE_REVIVED].includes(event.type)) {
21
- text = this.generateArchivedText(event);
22
- }
23
- else if ([events_1.FEATURE_STALE_ON, events_1.FEATURE_STALE_OFF].includes(event.type)) {
24
- text = this.generateStaleText(event);
25
- }
26
- else if ([
27
- events_1.FEATURE_ENVIRONMENT_DISABLED,
28
- events_1.FEATURE_ENVIRONMENT_ENABLED,
29
- ].includes(event.type)) {
30
- text = this.generateEnvironmentToggleText(event);
31
- }
32
- else if ([
33
- events_1.FEATURE_STRATEGY_ADD,
34
- events_1.FEATURE_STRATEGY_REMOVE,
35
- events_1.FEATURE_STRATEGY_UPDATE,
36
- ].includes(event.type)) {
37
- text = this.generateStrategyChangeText(event);
38
- }
39
- else if (events_1.FEATURE_METADATA_UPDATED === event.type) {
40
- text = this.generateMetadataText(event);
41
- }
42
- else if (events_1.FEATURE_PROJECT_CHANGE === event.type) {
43
- text = this.generateProjectChangeText(event);
44
- }
45
- else {
46
- text = this.generateText(event);
47
- }
48
- const enabled = `*${data.enabled ? 'yes' : 'no'}*`;
49
- const stale = data.stale ? '("stale")' : '';
17
+ const { createdBy } = event;
18
+ const text = this.msgFormatter.format(event);
19
+ const featureLink = this.msgFormatter.featureLink(event);
50
20
  const body = {
51
21
  themeColor: '0076D7',
52
22
  summary: 'Message',
@@ -61,11 +31,7 @@ class TeamsAddon extends addon_1.default {
61
31
  },
62
32
  {
63
33
  name: 'Action',
64
- value: this.getAction(type),
65
- },
66
- {
67
- name: 'Enabled',
68
- value: `${enabled}${stale}`,
34
+ value: event.type,
69
35
  },
70
36
  ],
71
37
  },
@@ -77,7 +43,7 @@ class TeamsAddon extends addon_1.default {
77
43
  targets: [
78
44
  {
79
45
  os: 'default',
80
- uri: this.featureLink(event),
46
+ uri: featureLink,
81
47
  },
82
48
  ],
83
49
  },
@@ -91,74 +57,6 @@ class TeamsAddon extends addon_1.default {
91
57
  const res = await this.fetchRetry(url, requestOpts);
92
58
  this.logger.info(`Handled event ${event.type}. Status codes=${res.status}`);
93
59
  }
94
- generateEnvironmentToggleText(event) {
95
- const { environment, project, data, type } = event;
96
- const toggleStatus = type === events_1.FEATURE_ENVIRONMENT_ENABLED ? 'enabled' : 'disabled';
97
- const feature = `<${this.featureLink(event)}|${data.name}>`;
98
- return `The feature toggle *${feature}* in the ${project} project was ${toggleStatus} in environment *${environment}*`;
99
- }
100
- generateStrategyChangeText(event) {
101
- const { environment, project, data, type } = event;
102
- const feature = `<${this.strategiesLink(event)}|${data.featureName}>`;
103
- let action;
104
- if (events_1.FEATURE_STRATEGY_UPDATE === type) {
105
- action = 'updated in';
106
- }
107
- else if (events_1.FEATURE_STRATEGY_ADD) {
108
- action = 'added to';
109
- }
110
- else {
111
- action = 'removed from';
112
- }
113
- const strategyText = `a ${data.name} strategy ${action} the *${environment}* environment`;
114
- return `The feature toggle *${feature}* in project: ${project} had ${strategyText}`;
115
- }
116
- generateMetadataText(event) {
117
- const { createdBy, project, data } = event;
118
- const feature = `<${this.featureLink(event)}|${data.name}>`;
119
- return `${createdBy} updated the metadata for ${feature} in project ${project}`;
120
- }
121
- generateProjectChangeText(event) {
122
- const { createdBy, project, data } = event;
123
- return `${createdBy} moved ${data.name} to ${project}`;
124
- }
125
- strategiesLink(event) {
126
- return `${this.unleashUrl}/projects/${event.project}/features2/${event.data.featureName}/strategies?environment=${event.environment}`;
127
- }
128
- featureLink(event) {
129
- const path = event.type === events_1.FEATURE_ARCHIVED ? 'archive' : 'features';
130
- return `${this.unleashUrl}/${path}/strategies/${event.data.name}`;
131
- }
132
- generateStaleText(event) {
133
- const { data, type } = event;
134
- const isStale = type === events_1.FEATURE_STALE_ON;
135
- if (isStale) {
136
- return `The feature toggle *${data.name}* is now *ready to be removed* from the code.`;
137
- }
138
- return `The feature toggle *${data.name}* was *unmarked* as stale`;
139
- }
140
- generateArchivedText(event) {
141
- const { data, type } = event;
142
- const action = type === events_1.FEATURE_ARCHIVED ? 'archived' : 'revived';
143
- return `The feature toggle *${data.name}* was *${action}*`;
144
- }
145
- generateText(event) {
146
- const { data } = event;
147
- const typeStr = `*Type*: ${data.type}`;
148
- const project = `*Project*: ${data.project}`;
149
- const strategies = `*Activation strategies*: \n${js_yaml_1.default.dump(data.strategies, { skipInvalid: true })}`;
150
- return `Feature toggle ${data.name} | ${typeStr} | ${project} <br /> ${data.strategies ? strategies : ''}`;
151
- }
152
- getAction(type) {
153
- switch (type) {
154
- case events_1.FEATURE_CREATED:
155
- return 'Create';
156
- case events_1.FEATURE_UPDATED:
157
- return 'Update';
158
- default:
159
- return type;
160
- }
161
- }
162
60
  }
163
61
  exports.default = TeamsAddon;
164
62
  //# sourceMappingURL=teams.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"teams.js","sourceRoot":"","sources":["../../../src/lib/addons/teams.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"teams.js","sourceRoot":"","sources":["../../../src/lib/addons/teams.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;AAE5B,0EAAiD;AAEjD,6EAGsC;AAEtC,MAAqB,UAAW,SAAQ,eAAK;IAGzC,YAAY,IAAkB;QAC1B,KAAK,CAAC,0BAAe,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,oDAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrE,CAAC;IAED,6EAA6E;IAC7E,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,UAAe;QAC5C,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC;QAC3B,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAEzD,MAAM,IAAI,GAAG;YACT,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE;gBACN;oBACI,aAAa,EAAE,IAAI;oBACnB,gBAAgB,EAAE,6BAA6B;oBAC/C,KAAK,EAAE;wBACH;4BACI,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE,SAAS;yBACnB;wBACD;4BACI,IAAI,EAAE,QAAQ;4BACd,KAAK,EAAE,KAAK,CAAC,IAAI;yBACpB;qBACJ;iBACJ;aACJ;YACD,eAAe,EAAE;gBACb;oBACI,OAAO,EAAE,SAAS;oBAClB,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE;wBACL;4BACI,EAAE,EAAE,SAAS;4BACb,GAAG,EAAE,WAAW;yBACnB;qBACJ;iBACJ;aACJ;SACJ,CAAC;QAEF,MAAM,WAAW,GAAG;YAChB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC7B,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,iBAAiB,KAAK,CAAC,IAAI,kBAAkB,GAAG,CAAC,MAAM,EAAE,CAC5D,CAAC;IACN,CAAC;CACJ;AA1DD,6BA0DC"}
@@ -1,7 +1,6 @@
1
1
  import { Knex } from 'knex';
2
2
  import { LogProvider } from '../logger';
3
3
  import { IClientMetricsEnv, IClientMetricsEnvKey, IClientMetricsStoreV2 } from '../types/stores/client-metrics-store-v2';
4
- export declare function roundDownToHour(date: Date): Date;
5
4
  export declare class ClientMetricsStoreV2 implements IClientMetricsStoreV2 {
6
5
  private db;
7
6
  private logger;
@@ -3,13 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ClientMetricsStoreV2 = exports.roundDownToHour = void 0;
6
+ exports.ClientMetricsStoreV2 = void 0;
7
7
  const notfound_error_1 = __importDefault(require("../error/notfound-error"));
8
+ const date_fns_1 = require("date-fns");
8
9
  const TABLE = 'client_metrics_env';
9
- function roundDownToHour(date) {
10
- return new Date(date.getTime() - (date.getTime() % 3600000));
11
- }
12
- exports.roundDownToHour = roundDownToHour;
13
10
  const fromRow = (row) => ({
14
11
  featureName: row.feature_name,
15
12
  appName: row.app_name,
@@ -22,7 +19,7 @@ const toRow = (metric) => ({
22
19
  feature_name: metric.featureName,
23
20
  app_name: metric.appName,
24
21
  environment: metric.environment,
25
- timestamp: roundDownToHour(metric.timestamp),
22
+ timestamp: (0, date_fns_1.startOfHour)(metric.timestamp),
26
23
  yes: metric.yes,
27
24
  no: metric.no,
28
25
  });
@@ -37,7 +34,7 @@ class ClientMetricsStoreV2 {
37
34
  feature_name: key.featureName,
38
35
  app_name: key.appName,
39
36
  environment: key.environment,
40
- timestamp: roundDownToHour(key.timestamp),
37
+ timestamp: (0, date_fns_1.startOfHour)(key.timestamp),
41
38
  })
42
39
  .first();
43
40
  if (row) {
@@ -66,7 +63,7 @@ class ClientMetricsStoreV2 {
66
63
  feature_name: key.featureName,
67
64
  app_name: key.appName,
68
65
  environment: key.environment,
69
- timestamp: roundDownToHour(key.timestamp),
66
+ timestamp: (0, date_fns_1.startOfHour)(key.timestamp),
70
67
  })
71
68
  .del();
72
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client-metrics-store-v2.js","sourceRoot":"","sources":["../../../src/lib/db/client-metrics-store-v2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-metrics-store-v2.js","sourceRoot":"","sources":["../../../src/lib/db/client-metrics-store-v2.ts"],"names":[],"mappings":"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"}
@@ -7,19 +7,13 @@ const authentication_required_1 = __importDefault(require("../types/authenticati
7
7
  const api_user_1 = __importDefault(require("../types/api-user"));
8
8
  const api_token_1 = require("../types/models/api-token");
9
9
  function demoAuthentication(app, basePath = '', { userService }, { authentication }) {
10
- app.post(`${basePath}/api/admin/login`, async (req, res) => {
10
+ app.post(`${basePath}/auth/demo/login`, async (req, res) => {
11
11
  const { email } = req.body;
12
12
  try {
13
13
  const user = await userService.loginUserWithoutPassword(email, true);
14
- const session = req.session || {};
15
- // @ts-ignore
16
- session.user = user;
17
- // @ts-ignore
18
- req.session = session;
19
- res.status(200)
20
- // @ts-ignore
21
- .json(req.session.user)
22
- .end();
14
+ //@ts-ignore
15
+ req.session.user = user;
16
+ return res.status(200).json(user);
23
17
  }
24
18
  catch (e) {
25
19
  res.status(400)
@@ -57,7 +51,7 @@ function demoAuthentication(app, basePath = '', { userService }, { authenticatio
57
51
  return res
58
52
  .status(401)
59
53
  .json(new authentication_required_1.default({
60
- path: `${basePath}/api/admin/login`,
54
+ path: `${basePath}/auth/demo/login`,
61
55
  type: 'demo',
62
56
  message: 'You have to identify yourself in order to use Unleash.',
63
57
  }))
@@ -1 +1 @@
1
- {"version":3,"file":"demo-authentication.js","sourceRoot":"","sources":["../../../src/lib/middleware/demo-authentication.ts"],"names":[],"mappings":";;;;;AACA,+FAAsE;AAGtE,iEAAwC;AACxC,yDAAyD;AAEzD,SAAS,kBAAkB,CACvB,GAAgB,EAChB,WAAmB,EAAE,EACrB,EAAE,WAAW,EAAyC,EACtD,EAAE,cAAc,EAA0C;IAE1D,GAAG,CAAC,IAAI,CAAC,GAAG,QAAQ,kBAAkB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACvD,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAC3B,IAAI;YACA,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,wBAAwB,CACnD,KAAK,EACL,IAAI,CACP,CAAC;YACF,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;YAClC,aAAa;YACb,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;YACpB,aAAa;YACb,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;YACtB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;gBACX,aAAa;iBACZ,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;iBACtB,GAAG,EAAE,CAAC;SACd;QAAC,OAAO,CAAC,EAAE;YACR,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;iBACV,IAAI,CAAC,EAAE,KAAK,EAAE,0BAA0B,KAAK,EAAE,EAAE,CAAC;iBAClD,GAAG,EAAE,CAAC;SACd;IACL,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,aAAa,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACjD,aAAa;QACb,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;YAC5C,aAAa;YACb,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;SAC/B;QACD,IAAI,EAAE,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,aAAa,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACjD,aAAa;QACb,IAAI,CAAC,cAAc,CAAC,cAAc,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YAC7C,aAAa;YACb,GAAG,CAAC,IAAI,GAAG,IAAI,kBAAO,CAAC;gBACnB,QAAQ,EAAE,yBAAyB;gBACnC,WAAW,EAAE,EAAE;gBACf,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,wBAAY,CAAC,MAAM;gBACzB,OAAO,EAAE,GAAG;aACf,CAAC,CAAC;SACN;QACD,IAAI,EAAE,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC1C,aAAa;QACb,IAAI,GAAG,CAAC,IAAI,EAAE;YACV,OAAO,IAAI,EAAE,CAAC;SACjB;QACD,OAAO,GAAG;aACL,MAAM,CAAC,GAAG,CAAC;aACX,IAAI,CACD,IAAI,iCAAsB,CAAC;YACvB,IAAI,EAAE,GAAG,QAAQ,kBAAkB;YACnC,IAAI,EAAE,MAAM;YACZ,OAAO,EACH,wDAAwD;SAC/D,CAAC,CACL;aACA,GAAG,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;AACP,CAAC;AAED,kBAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"demo-authentication.js","sourceRoot":"","sources":["../../../src/lib/middleware/demo-authentication.ts"],"names":[],"mappings":";;;;;AACA,+FAAsE;AAGtE,iEAAwC;AACxC,yDAAyD;AAEzD,SAAS,kBAAkB,CACvB,GAAgB,EAChB,WAAmB,EAAE,EACrB,EAAE,WAAW,EAAyC,EACtD,EAAE,cAAc,EAA0C;IAE1D,GAAG,CAAC,IAAI,CAAC,GAAG,QAAQ,kBAAkB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACvD,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;QAC3B,IAAI;YACA,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,wBAAwB,CACnD,KAAK,EACL,IAAI,CACP,CAAC;YACF,YAAY;YACZ,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;YACxB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACrC;QAAC,OAAO,CAAC,EAAE;YACR,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;iBACV,IAAI,CAAC,EAAE,KAAK,EAAE,0BAA0B,KAAK,EAAE,EAAE,CAAC;iBAClD,GAAG,EAAE,CAAC;SACd;IACL,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,aAAa,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACjD,aAAa;QACb,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;YAC5C,aAAa;YACb,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;SAC/B;QACD,IAAI,EAAE,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,aAAa,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACjD,aAAa;QACb,IAAI,CAAC,cAAc,CAAC,cAAc,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YAC7C,aAAa;YACb,GAAG,CAAC,IAAI,GAAG,IAAI,kBAAO,CAAC;gBACnB,QAAQ,EAAE,yBAAyB;gBACnC,WAAW,EAAE,EAAE;gBACf,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,wBAAY,CAAC,MAAM;gBACzB,OAAO,EAAE,GAAG;aACf,CAAC,CAAC;SACN;QACD,IAAI,EAAE,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC1C,aAAa;QACb,IAAI,GAAG,CAAC,IAAI,EAAE;YACV,OAAO,IAAI,EAAE,CAAC;SACjB;QACD,OAAO,GAAG;aACL,MAAM,CAAC,GAAG,CAAC;aACX,IAAI,CACD,IAAI,iCAAsB,CAAC;YACvB,IAAI,EAAE,GAAG,QAAQ,kBAAkB;YACnC,IAAI,EAAE,MAAM;YACZ,OAAO,EACH,wDAAwD;SAC/D,CAAC,CACL;aACA,GAAG,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;AACP,CAAC;AAED,kBAAe,kBAAkB,CAAC"}
@@ -88,6 +88,7 @@ test('should not give api-user ADMIN permission', async () => {
88
88
  expect(accessService.hasPermission).toHaveBeenCalledTimes(0);
89
89
  });
90
90
  test('should not allow user to miss userId', async () => {
91
+ jest.spyOn(global.console, 'error').mockImplementation(() => jest.fn());
91
92
  const accessService = {
92
93
  hasPermission: jest.fn(),
93
94
  };
@@ -103,6 +104,7 @@ test('should not allow user to miss userId', async () => {
103
104
  expect(hasAccess).toBe(false);
104
105
  });
105
106
  test('should return false for missing user', async () => {
107
+ jest.spyOn(global.console, 'error').mockImplementation(() => jest.fn());
106
108
  const accessService = {
107
109
  hasPermission: jest.fn(),
108
110
  };
@@ -1 +1 @@
1
- {"version":3,"file":"rbac-middleware.test.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rbac-middleware.test.js","sourceRoot":"","sources":["../../../src/lib/middleware/rbac-middleware.test.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,12 @@
1
1
  import { Request, Response } from 'express';
2
2
  import { IUnleashServices } from '../../types/services';
3
3
  import { IUnleashConfig } from '../../types/option';
4
- declare const Controller: any;
4
+ import Controller from '../controller';
5
5
  declare class ConfigController extends Controller {
6
- constructor(config: IUnleashConfig, { versionService }: Pick<IUnleashServices, 'versionService'>);
6
+ private versionService;
7
+ private settingService;
8
+ private uiConfig;
9
+ constructor(config: IUnleashConfig, { versionService, settingService, }: Pick<IUnleashServices, 'versionService' | 'settingService'>);
7
10
  getUIConfig(req: Request, res: Response): Promise<void>;
8
11
  }
9
12
  export default ConfigController;
@@ -4,11 +4,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const version_1 = __importDefault(require("../../util/version"));
7
- const Controller = require('../controller');
8
- class ConfigController extends Controller {
9
- constructor(config, { versionService }) {
7
+ const controller_1 = __importDefault(require("../controller"));
8
+ const simple_auth_settings_1 = require("../../types/settings/simple-auth-settings");
9
+ class ConfigController extends controller_1.default {
10
+ constructor(config, { versionService, settingService, }) {
10
11
  super(config);
11
12
  this.versionService = versionService;
13
+ this.settingService = settingService;
12
14
  const authenticationType = config.authentication && config.authentication.type;
13
15
  this.uiConfig = {
14
16
  ...config.ui,
@@ -21,15 +23,11 @@ class ConfigController extends Controller {
21
23
  }
22
24
  async getUIConfig(req, res) {
23
25
  const config = this.uiConfig;
24
- if (this.versionService) {
25
- const versionInfo = this.versionService.getVersionInfo();
26
- res.json({ ...config, versionInfo });
27
- }
28
- else {
29
- res.json(config);
30
- }
26
+ const simpleAuthSettings = await this.settingService.get(simple_auth_settings_1.simpleAuthKey);
27
+ const versionInfo = this.versionService.getVersionInfo();
28
+ const disablePasswordAuth = simpleAuthSettings?.disabled;
29
+ res.json({ ...config, versionInfo, disablePasswordAuth });
31
30
  }
32
31
  }
33
32
  exports.default = ConfigController;
34
- module.exports = ConfigController;
35
33
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/config.ts"],"names":[],"mappings":";;;;;AAGA,iEAAyC;AAEzC,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAE5C,MAAM,gBAAiB,SAAQ,UAAU;IACrC,YACI,MAAsB,EACtB,EAAE,cAAc,EAA4C;QAE5D,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,MAAM,kBAAkB,GACpB,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC;QACxD,IAAI,CAAC,QAAQ,GAAG;YACZ,GAAG,MAAM,CAAC,EAAE;YACZ,kBAAkB;YAClB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU;YACpC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW;YACtC,OAAO,EAAP,iBAAO;SACV,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,GAAY,EAAE,GAAa;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7B,IAAI,IAAI,CAAC,cAAc,EAAE;YACrB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;YACzD,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;SACxC;aAAM;YACH,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACpB;IACL,CAAC;CACJ;AACD,kBAAe,gBAAgB,CAAC;AAChC,MAAM,CAAC,OAAO,GAAG,gBAAgB,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/config.ts"],"names":[],"mappings":";;;;;AAGA,iEAAyC;AAEzC,+DAAuC;AAGvC,oFAGmD;AAEnD,MAAM,gBAAiB,SAAQ,oBAAU;IAOrC,YACI,MAAsB,EACtB,EACI,cAAc,EACd,cAAc,GAC4C;QAE9D,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,MAAM,kBAAkB,GACpB,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC;QACxD,IAAI,CAAC,QAAQ,GAAG;YACZ,GAAG,MAAM,CAAC,EAAE;YACZ,kBAAkB;YAClB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU;YACpC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW;YACtC,OAAO,EAAP,iBAAO;SACV,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,GAAY,EAAE,GAAa;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7B,MAAM,kBAAkB,GACpB,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAqB,oCAAa,CAAC,CAAC;QAErE,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;QACzD,MAAM,mBAAmB,GAAG,kBAAkB,EAAE,QAAQ,CAAC;QACzD,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAC9D,CAAC;CACJ;AACD,kBAAe,gBAAgB,CAAC"}
@@ -5,9 +5,8 @@ import { IUnleashServices } from '../../types/services';
5
5
  import { IFeatureToggleQuery } from '../../types/model';
6
6
  import { IAuthRequest } from '../unleash-types';
7
7
  declare class FeatureController extends Controller {
8
- private logger;
9
- private featureTagService;
10
- private featureService2;
8
+ private tagService;
9
+ private service;
11
10
  constructor(config: IUnleashConfig, { featureTagService, featureToggleServiceV2, }: Pick<IUnleashServices, 'featureTagService' | 'featureToggleServiceV2'>);
12
11
  paramToArray(param: any): any;
13
12
  prepQuery({ tag, project, namePrefix, }: any): Promise<IFeatureToggleQuery>;
@@ -12,9 +12,8 @@ const version = 1;
12
12
  class FeatureController extends controller_1.default {
13
13
  constructor(config, { featureTagService, featureToggleServiceV2, }) {
14
14
  super(config);
15
- this.featureTagService = featureTagService;
16
- this.featureService2 = featureToggleServiceV2;
17
- this.logger = config.getLogger('/admin-api/feature.ts');
15
+ this.tagService = featureTagService;
16
+ this.service = featureToggleServiceV2;
18
17
  this.get('/', this.getAllToggles);
19
18
  this.post('/', this.createToggle, permissions_1.CREATE_FEATURE);
20
19
  this.get('/:featureName', this.getToggle);
@@ -55,34 +54,34 @@ class FeatureController extends controller_1.default {
55
54
  }
56
55
  async getAllToggles(req, res) {
57
56
  const query = await this.prepQuery(req.query);
58
- const features = await this.featureService2.getFeatureToggles(query);
57
+ const features = await this.service.getFeatureToggles(query);
59
58
  res.json({ version, features });
60
59
  }
61
60
  async getToggle(req, res) {
62
61
  const name = req.params.featureName;
63
- const feature = await this.featureService2.getFeatureToggleLegacy(name);
62
+ const feature = await this.service.getFeatureToggleLegacy(name);
64
63
  res.json(feature).end();
65
64
  }
66
65
  async listTags(req, res) {
67
- const tags = await this.featureTagService.listTags(req.params.featureName);
66
+ const tags = await this.tagService.listTags(req.params.featureName);
68
67
  res.json({ version, tags });
69
68
  }
70
69
  async addTag(req, res) {
71
70
  const { featureName } = req.params;
72
71
  const userName = (0, extract_user_1.extractUsername)(req);
73
- const tag = await this.featureTagService.addTag(featureName, req.body, userName);
72
+ const tag = await this.tagService.addTag(featureName, req.body, userName);
74
73
  res.status(201).json(tag);
75
74
  }
76
75
  // TODO
77
76
  async removeTag(req, res) {
78
77
  const { featureName, type, value } = req.params;
79
78
  const userName = (0, extract_user_1.extractUsername)(req);
80
- await this.featureTagService.removeTag(featureName, { type, value }, userName);
79
+ await this.tagService.removeTag(featureName, { type, value }, userName);
81
80
  res.status(200).end();
82
81
  }
83
82
  async validate(req, res) {
84
83
  const { name } = req.body;
85
- await this.featureService2.validateName(name);
84
+ await this.service.validateName(name);
86
85
  res.status(200).end();
87
86
  }
88
87
  async createToggle(req, res) {
@@ -90,9 +89,9 @@ class FeatureController extends controller_1.default {
90
89
  const toggle = req.body;
91
90
  const validatedToggle = await feature_schema_1.featureSchema.validateAsync(toggle);
92
91
  const { enabled } = validatedToggle;
93
- const createdFeature = await this.featureService2.createFeatureToggle(validatedToggle.project, validatedToggle, userName);
94
- const strategies = await Promise.all(toggle.strategies.map(async (s) => this.featureService2.createStrategy(s, createdFeature.project, createdFeature.name, userName)));
95
- await this.featureService2.updateEnabled(createdFeature.project, createdFeature.name, constants_1.DEFAULT_ENV, enabled, userName);
92
+ const createdFeature = await this.service.createFeatureToggle(validatedToggle.project, validatedToggle, userName);
93
+ const strategies = await Promise.all(toggle.strategies.map(async (s) => this.service.createStrategy(s, createdFeature.project, createdFeature.name, userName)));
94
+ await this.service.updateEnabled(createdFeature.project, createdFeature.name, constants_1.DEFAULT_ENV, enabled, userName);
96
95
  res.status(201).json({
97
96
  ...createdFeature,
98
97
  enabled,
@@ -104,15 +103,15 @@ class FeatureController extends controller_1.default {
104
103
  const userName = (0, extract_user_1.extractUsername)(req);
105
104
  const updatedFeature = req.body;
106
105
  updatedFeature.name = featureName;
107
- const projectId = await this.featureService2.getProjectId(updatedFeature.name);
106
+ const projectId = await this.service.getProjectId(updatedFeature.name);
108
107
  const value = await feature_schema_1.featureSchema.validateAsync(updatedFeature);
109
- await this.featureService2.updateFeatureToggle(projectId, value, userName);
110
- await this.featureService2.removeAllStrategiesForEnv(featureName);
108
+ await this.service.updateFeatureToggle(projectId, value, userName);
109
+ await this.service.removeAllStrategiesForEnv(featureName);
111
110
  if (updatedFeature.strategies) {
112
- await Promise.all(updatedFeature.strategies.map(async (s) => this.featureService2.createStrategy(s, projectId, featureName, userName)));
111
+ await Promise.all(updatedFeature.strategies.map(async (s) => this.service.createStrategy(s, projectId, featureName, userName)));
113
112
  }
114
- await this.featureService2.updateEnabled(projectId, updatedFeature.name, constants_1.DEFAULT_ENV, updatedFeature.enabled, userName);
115
- const feature = await this.featureService2.storeFeatureUpdatedEventLegacy(featureName, userName);
113
+ await this.service.updateEnabled(projectId, updatedFeature.name, constants_1.DEFAULT_ENV, updatedFeature.enabled, userName);
114
+ const feature = await this.service.storeFeatureUpdatedEventLegacy(featureName, userName);
116
115
  res.status(200).json(feature);
117
116
  }
118
117
  // TODO: remove?
@@ -120,45 +119,45 @@ class FeatureController extends controller_1.default {
120
119
  async toggle(req, res) {
121
120
  const userName = (0, extract_user_1.extractUsername)(req);
122
121
  const { featureName } = req.params;
123
- const projectId = await this.featureService2.getProjectId(featureName);
124
- const feature = await this.featureService2.toggle(projectId, featureName, constants_1.DEFAULT_ENV, userName);
125
- await this.featureService2.storeFeatureUpdatedEventLegacy(featureName, userName);
122
+ const projectId = await this.service.getProjectId(featureName);
123
+ const feature = await this.service.toggle(projectId, featureName, constants_1.DEFAULT_ENV, userName);
124
+ await this.service.storeFeatureUpdatedEventLegacy(featureName, userName);
126
125
  res.status(200).json(feature);
127
126
  }
128
127
  async toggleOn(req, res) {
129
128
  const { featureName } = req.params;
130
129
  const userName = (0, extract_user_1.extractUsername)(req);
131
- const projectId = await this.featureService2.getProjectId(featureName);
132
- const feature = await this.featureService2.updateEnabled(projectId, featureName, constants_1.DEFAULT_ENV, true, userName);
133
- await this.featureService2.storeFeatureUpdatedEventLegacy(featureName, userName);
130
+ const projectId = await this.service.getProjectId(featureName);
131
+ const feature = await this.service.updateEnabled(projectId, featureName, constants_1.DEFAULT_ENV, true, userName);
132
+ await this.service.storeFeatureUpdatedEventLegacy(featureName, userName);
134
133
  res.json(feature);
135
134
  }
136
135
  async toggleOff(req, res) {
137
136
  const { featureName } = req.params;
138
137
  const userName = (0, extract_user_1.extractUsername)(req);
139
- const projectId = await this.featureService2.getProjectId(featureName);
140
- const feature = await this.featureService2.updateEnabled(projectId, featureName, constants_1.DEFAULT_ENV, false, userName);
141
- await this.featureService2.storeFeatureUpdatedEventLegacy(featureName, userName);
138
+ const projectId = await this.service.getProjectId(featureName);
139
+ const feature = await this.service.updateEnabled(projectId, featureName, constants_1.DEFAULT_ENV, false, userName);
140
+ await this.service.storeFeatureUpdatedEventLegacy(featureName, userName);
142
141
  res.json(feature);
143
142
  }
144
143
  async staleOn(req, res) {
145
144
  const { featureName } = req.params;
146
145
  const userName = (0, extract_user_1.extractUsername)(req);
147
- await this.featureService2.updateStale(featureName, true, userName);
148
- const feature = await this.featureService2.storeFeatureUpdatedEventLegacy(featureName, userName);
149
- res.json(feature).end();
146
+ await this.service.updateStale(featureName, true, userName);
147
+ const feature = await this.service.getFeatureToggleLegacy(featureName);
148
+ res.json(feature);
150
149
  }
151
150
  async staleOff(req, res) {
152
151
  const { featureName } = req.params;
153
152
  const userName = (0, extract_user_1.extractUsername)(req);
154
- await this.featureService2.updateStale(featureName, false, userName);
155
- const feature = await this.featureService2.storeFeatureUpdatedEventLegacy(featureName, userName);
156
- res.json(feature).end();
153
+ await this.service.updateStale(featureName, false, userName);
154
+ const feature = await this.service.getFeatureToggleLegacy(featureName);
155
+ res.json(feature);
157
156
  }
158
157
  async archiveToggle(req, res) {
159
158
  const { featureName } = req.params;
160
159
  const userName = (0, extract_user_1.extractUsername)(req);
161
- await this.featureService2.archiveToggle(featureName, userName);
160
+ await this.service.archiveToggle(featureName, userName);
162
161
  res.status(200).end();
163
162
  }
164
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"feature.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/feature.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature.js","sourceRoot":"","sources":["../../../../src/lib/routes/admin-api/feature.ts"],"names":[],"mappings":"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"}