create-instantsearch-app 6.3.0 → 6.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.
Files changed (39) hide show
  1. package/README.md +18 -18
  2. package/package.json +6 -8
  3. package/src/cli/__tests__/postProcessAnswers.js +104 -27
  4. package/src/cli/index.js +3 -2
  5. package/src/cli/postProcessAnswers.js +8 -2
  6. package/src/tasks/common/build.js +3 -3
  7. package/src/templates/Angular InstantSearch/README.md +1 -1
  8. package/src/templates/Autocomplete/README.md +1 -1
  9. package/src/templates/Autocomplete.js 0/README.md +1 -1
  10. package/src/templates/InstantSearch.js/.template.js +1 -0
  11. package/src/templates/InstantSearch.js/README.md +1 -1
  12. package/src/templates/InstantSearch.js/index.html.hbs +1 -1
  13. package/src/templates/InstantSearch.js/src/app.js.hbs +7 -6
  14. package/src/templates/InstantSearch.js 2/README.md +1 -1
  15. package/src/templates/InstantSearch.js 2/index.html.hbs +1 -1
  16. package/src/templates/InstantSearch.js widget/README.md +1 -1
  17. package/src/templates/JavaScript Client/README.md +1 -1
  18. package/src/templates/JavaScript Helper/README.md +1 -1
  19. package/src/templates/JavaScript Helper 2/README.md +1 -1
  20. package/src/templates/React InstantSearch/README.md +1 -1
  21. package/src/templates/React InstantSearch/src/App.js.hbs +1 -1
  22. package/src/templates/React InstantSearch Hooks/.template.js +1 -0
  23. package/src/templates/React InstantSearch Hooks/README.md +1 -1
  24. package/src/templates/React InstantSearch Hooks/package.json +0 -1
  25. package/src/templates/React InstantSearch Hooks/src/App.tsx.hbs +2 -2
  26. package/src/templates/React InstantSearch Hooks Native/README.md +1 -1
  27. package/src/templates/React InstantSearch Hooks Native/package.json +0 -1
  28. package/src/templates/React InstantSearch Native/README.md +1 -1
  29. package/src/templates/React InstantSearch widget/README.md +1 -1
  30. package/src/templates/Vue InstantSearch/.template.js +2 -1
  31. package/src/templates/Vue InstantSearch/README.md +1 -1
  32. package/src/templates/Vue InstantSearch/src/App.vue +2 -1
  33. package/src/templates/Vue InstantSearch 1/README.md +1 -1
  34. package/src/templates/Vue InstantSearch 1/src/App.vue +1 -1
  35. package/src/templates/Vue InstantSearch 2/README.md +1 -1
  36. package/src/templates/Vue InstantSearch 2/src/App.vue +1 -1
  37. package/src/templates/Vue InstantSearch with Vue 3/.template.js +2 -1
  38. package/src/templates/Vue InstantSearch with Vue 3/README.md +1 -1
  39. package/src/templates/Vue InstantSearch with Vue 3/src/App.vue +2 -1
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  [![Version][version-svg]][package-url] [![License][license-image]][license-url] [![Build Status][ci-svg]][ci-url]
6
6
 
7
- `create-instantsearch-app` is a command line utility that helps you quick start your InstantSearch app using any [Algolia][algolia-website] InstantSearch flavor ([InstantSearch.js][instantsearchjs-github], [React InstantSearch][react-instantsearch-github], [Vue InstantSearch][vue-instantsearch-github], [Angular InstantSearch][angular-instantsearch-github], [InstantSearch iOS][instantsearch-ios-github] and [InstantSearch Android][instantsearch-android-github]).
7
+ `create-instantsearch-app` is a command line utility that helps you quick start your InstantSearch app using any [Algolia][algolia-website] InstantSearch flavor ([InstantSearch.js][instantsearchjs-github], [React InstantSearch Hooks][react-instantsearch-hooks-github], [Vue InstantSearch][vue-instantsearch-github], [Angular InstantSearch][angular-instantsearch-github], [InstantSearch iOS][instantsearch-ios-github] and [InstantSearch Android][instantsearch-android-github]).
8
8
 
9
9
  <p align="center">
10
10
  <img src="preview.png" width="800" alt="Preview">
@@ -147,14 +147,14 @@ app.create().then(() => console.log('App generated!'));
147
147
 
148
148
  You can use the web templates on CodeSandbox:
149
149
 
150
- - [InstantSearch.js 3](https://codesandbox.io/s/github/algolia/instantsearch.js/tree/templates/instantsearch.js)
151
- - [InstantSearch.js 2](https://codesandbox.io/s/github/algolia/instantsearch.js/tree/templates/instantsearch.js-2.x)
152
- - [React InstantSearch](https://codesandbox.io/s/github/algolia/instantsearch.js/tree/templates/react-instantsearch)
153
- - [Vue InstantSearch](https://codesandbox.io/s/github/algolia/instantsearch.js/tree/templates/vue-instantsearch)
154
- - [Angular InstantSearch](https://codesandbox.io/s/github/algolia/instantsearch.js/tree/templates/angular-instantsearch)
155
- - [Autocomplete.js](https://codesandbox.io/s/github/algolia/instantsearch.js/tree/templates/autocomplete.js)
156
- - [JavaScript Client](https://codesandbox.io/s/github/algolia/instantsearch.js/tree/templates/javascript-client)
157
- - [JavaScript Helper](https://codesandbox.io/s/github/algolia/instantsearch.js/tree/templates/javascript-helper)
150
+ - [InstantSearch.js 3](https://codesandbox.io/s/github/algolia/instantsearch/tree/templates/instantsearch.js)
151
+ - [InstantSearch.js 2](https://codesandbox.io/s/github/algolia/instantsearch/tree/templates/instantsearch.js-2.x)
152
+ - [React InstantSearch Hooks](https://codesandbox.io/s/github/algolia/instantsearch/tree/templates/react-instantsearch-hooks)
153
+ - [Vue InstantSearch](https://codesandbox.io/s/github/algolia/instantsearch/tree/templates/vue-instantsearch)
154
+ - [Angular InstantSearch](https://codesandbox.io/s/github/algolia/instantsearch/tree/templates/angular-instantsearch)
155
+ - [Autocomplete.js](https://codesandbox.io/s/github/algolia/instantsearch/tree/templates/autocomplete.js)
156
+ - [JavaScript Client](https://codesandbox.io/s/github/algolia/instantsearch/tree/templates/javascript-client)
157
+ - [JavaScript Helper](https://codesandbox.io/s/github/algolia/instantsearch/tree/templates/javascript-helper)
158
158
 
159
159
  ## Contributing
160
160
 
@@ -170,7 +170,7 @@ To start contributing to the code, you need to:
170
170
  1. [Clone the repository](https://help.github.com/articles/cloning-a-repository/)
171
171
  1. Install the dependencies: `yarn`
172
172
 
173
- Please read [our contribution process](https://github.com/algolia/instantsearch.js/blob/master/CONTRIBUTING.md) to learn more.
173
+ Please read [our contribution process](https://github.com/algolia/instantsearch/blob/master/CONTRIBUTING.md) to learn more.
174
174
 
175
175
  ## License
176
176
 
@@ -188,14 +188,14 @@ Create InstantSearch App is [MIT licensed](LICENSE).
188
188
  <!-- Links -->
189
189
 
190
190
  [algolia-website]: https://www.algolia.com/?utm_medium=social-owned&utm_source=GitHub&utm_campaign=create-instantsearch-app%20repository
191
- [instantsearchjs-github]: https://github.com/algolia/instantsearch.js
192
- [react-instantsearch-github]: https://github.com/algolia/instantsearch.js
193
- [vue-instantsearch-github]: https://github.com/algolia/vue-instantsearch
191
+ [instantsearchjs-github]: https://github.com/algolia/instantsearch/tree/master/packages/instantsearch.js
192
+ [react-instantsearch-hooks-github]: https://github.com/algolia/instantsearch/tree/master/packages/react-instantsearch-hooks-web
193
+ [vue-instantsearch-github]: https://github.com/algolia/instantsearch/tree/master/packages/vue-instantsearch
194
194
  [angular-instantsearch-github]: https://github.com/algolia/angular-instantsearch
195
195
  [instantsearch-ios-github]: https://github.com/algolia/instantsearch-ios
196
196
  [instantsearch-android-github]: https://github.com/algolia/instantsearch-android
197
- [contributing-bugreport]: https://github.com/algolia/instantsearch.js/issues/new?template=BUG_REPORT.yml&labels=triage,Library%3A%20Create+InstantSearch+App
198
- [contributing-featurerequest]: https://github.com/algolia/instantsearch.js/discussions/new?category=ideas&labels=triage,Library%3A%20Create+InstantSearch+App&title=Feature%20request%3A%20
199
- [contributing-label-easy]: https://github.com/algolia/instantsearch.js/issues?q=is%3Aopen+is%3Aissue+label%3A%22Difficulty%3A+Easy%22+label%3A%22Library%3A%20Create+InstantSearch+App%22
200
- [contributing-label-bug]: https://github.com/algolia/instantsearch.js/issues?q=is%3Aissue+is%3Aopen+label%3A%22Type%3A+Bug%22+label%3A%22Library%3A%20Create+InstantSearch+App%22
201
- [contributing-label-chore]: https://github.com/algolia/instantsearch.js/issues?q=is%3Aissue+is%3Aopen+label%3A%22Type%3A+Chore%22+label%3A%22Library%3A%20Create+InstantSearch+App%22
197
+ [contributing-bugreport]: https://github.com/algolia/instantsearch/issues/new?template=BUG_REPORT.yml&labels=triage,Library%3A%20Create+InstantSearch+App
198
+ [contributing-featurerequest]: https://github.com/algolia/instantsearch/discussions/new?category=ideas&labels=triage,Library%3A%20Create+InstantSearch+App&title=Feature%20request%3A%20
199
+ [contributing-label-easy]: https://github.com/algolia/instantsearch/issues?q=is%3Aopen+is%3Aissue+label%3A%22Difficulty%3A+Easy%22+label%3A%22Library%3A%20Create+InstantSearch+App%22
200
+ [contributing-label-bug]: https://github.com/algolia/instantsearch/issues?q=is%3Aissue+is%3Aopen+label%3A%22Type%3A+Bug%22+label%3A%22Library%3A%20Create+InstantSearch+App%22
201
+ [contributing-label-chore]: https://github.com/algolia/instantsearch/issues?q=is%3Aissue+is%3Aopen+label%3A%22Type%3A+Chore%22+label%3A%22Library%3A%20Create+InstantSearch+App%22
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "create-instantsearch-app",
3
- "version": "6.3.0",
3
+ "version": "6.4.0",
4
4
  "license": "MIT",
5
5
  "description": "⚡️ Build InstantSearch apps at the speed of thought",
6
6
  "keywords": [
7
7
  "algolia",
8
8
  "instantsearch"
9
9
  ],
10
- "repository": "algolia/instantsearch.js",
10
+ "repository": "algolia/instantsearch",
11
11
  "author": "Algolia <support@algolia.com>",
12
12
  "main": "index.js",
13
13
  "bin": {
@@ -33,17 +33,16 @@
33
33
  },
34
34
  "dependencies": {
35
35
  "@algolia/cache-in-memory": "4",
36
+ "@metalsmith/in-place": "4.6.0",
37
+ "@metalsmith/remove": "1.3.0",
36
38
  "algoliasearch": "4",
37
39
  "chalk": "3.0.0",
38
40
  "commander": "4.1.1",
39
41
  "inquirer": "8.0.0",
40
42
  "jstransformer-handlebars": "1.1.0",
41
- "latest-semver": "2.0.0",
42
43
  "load-json-file": "6.2.0",
43
44
  "lodash.camelcase": "4.3.0",
44
- "metalsmith": "2.3.0",
45
- "metalsmith-ignore": "1.0.0",
46
- "metalsmith-in-place": "4.4.1",
45
+ "metalsmith": "2.5.1",
47
46
  "metalsmith-rename": "1.0.0",
48
47
  "prettier": "1.19.1",
49
48
  "semver": "6.1.1",
@@ -51,8 +50,7 @@
51
50
  },
52
51
  "devDependencies": {
53
52
  "jest-image-snapshot": "2.12.0",
54
- "shipjs": "0.25.0",
55
53
  "walk-sync": "2.0.2"
56
54
  },
57
- "gitHead": "54e18a6e7cfebc2c7c7326676c56c71ee39eb1c2"
55
+ "gitHead": "f224d502edb8cf119213cb9cd6e557dc03180521"
58
56
  }
@@ -80,32 +80,109 @@ test('creates alternative names', async () => {
80
80
  );
81
81
  });
82
82
 
83
- test('detects dynamic widgets', async () => {
84
- expect(
85
- await postProcessAnswers({
86
- configuration: {},
87
- templateConfig: {},
88
- optionsFromArguments: {},
89
- answers: { attributesForFaceting: ['ais.dynamicWidgets', 'test'] },
90
- })
91
- ).toEqual(
92
- expect.objectContaining({
93
- attributesForFaceting: ['test'],
94
- flags: { dynamicWidgets: true },
95
- })
96
- );
83
+ describe('flags', () => {
84
+ describe('dynamicWidgets', () => {
85
+ test('with usage of dynamicWidgets in attributesForFaceting', async () => {
86
+ expect(
87
+ await postProcessAnswers({
88
+ configuration: {},
89
+ templateConfig: {},
90
+ optionsFromArguments: {},
91
+ answers: { attributesForFaceting: ['ais.dynamicWidgets', 'test'] },
92
+ })
93
+ ).toEqual(
94
+ expect.objectContaining({
95
+ attributesForFaceting: ['test'],
96
+ flags: expect.objectContaining({ dynamicWidgets: true }),
97
+ })
98
+ );
99
+ });
97
100
 
98
- expect(
99
- await postProcessAnswers({
100
- configuration: {},
101
- templateConfig: {},
102
- optionsFromArguments: {},
103
- answers: { attributesForFaceting: ['test'] },
104
- })
105
- ).toEqual(
106
- expect.objectContaining({
107
- attributesForFaceting: ['test'],
108
- flags: { dynamicWidgets: false },
109
- })
110
- );
101
+ test('without usage of dynamicWidgets in attributesForFaceting', async () => {
102
+ expect(
103
+ await postProcessAnswers({
104
+ configuration: {},
105
+ templateConfig: {},
106
+ optionsFromArguments: {},
107
+ answers: { attributesForFaceting: ['test'] },
108
+ })
109
+ ).toEqual(
110
+ expect.objectContaining({
111
+ attributesForFaceting: ['test'],
112
+ flags: expect.objectContaining({ dynamicWidgets: false }),
113
+ })
114
+ );
115
+ });
116
+
117
+ test('without attributes', async () => {
118
+ expect(
119
+ await postProcessAnswers({
120
+ configuration: {},
121
+ templateConfig: {},
122
+ optionsFromArguments: {},
123
+ answers: {},
124
+ })
125
+ ).toEqual(
126
+ expect.objectContaining({
127
+ flags: expect.objectContaining({ dynamicWidgets: false }),
128
+ })
129
+ );
130
+ });
131
+ });
132
+
133
+ describe('insights', () => {
134
+ test('with a valid version', async () => {
135
+ utils.fetchLibraryVersions.mockImplementationOnce(() =>
136
+ Promise.resolve(['1.2.0'])
137
+ );
138
+
139
+ expect(
140
+ (
141
+ await postProcessAnswers({
142
+ configuration: {},
143
+ templateConfig: {
144
+ libraryName: 'instantsearch.js',
145
+ flags: {
146
+ insights: '>= 1',
147
+ },
148
+ },
149
+ optionsFromArguments: {},
150
+ })
151
+ ).flags
152
+ ).toEqual(expect.objectContaining({ insights: true }));
153
+ });
154
+
155
+ test('with an invalid version', async () => {
156
+ utils.fetchLibraryVersions.mockImplementationOnce(() =>
157
+ Promise.resolve(['1.2.0'])
158
+ );
159
+
160
+ expect(
161
+ (
162
+ await postProcessAnswers({
163
+ configuration: {},
164
+ templateConfig: {
165
+ libraryName: 'instantsearch.js',
166
+ flags: {
167
+ insights: '>= 1.3',
168
+ },
169
+ },
170
+ optionsFromArguments: {},
171
+ })
172
+ ).flags
173
+ ).toEqual(expect.objectContaining({ insights: false }));
174
+ });
175
+
176
+ test('without config', async () => {
177
+ expect(
178
+ (
179
+ await postProcessAnswers({
180
+ configuration: {},
181
+ templateConfig: {},
182
+ optionsFromArguments: {},
183
+ })
184
+ ).flags
185
+ ).toEqual(expect.objectContaining({ insights: false }));
186
+ });
187
+ });
111
188
  });
package/src/cli/index.js CHANGED
@@ -5,7 +5,6 @@ const os = require('os');
5
5
  const program = require('commander');
6
6
  const inquirer = require('inquirer');
7
7
  const chalk = require('chalk');
8
- const latestSemver = require('latest-semver');
9
8
  const semver = require('semver');
10
9
 
11
10
  const createInstantSearchApp = require('../api');
@@ -75,7 +74,9 @@ const getQuestions = ({ appName }) => ({
75
74
 
76
75
  try {
77
76
  const versions = await fetchLibraryVersions(libraryName);
78
- const latestStableVersion = latestSemver(versions);
77
+ const latestStableVersion = semver.maxSatisfying(versions, '*', {
78
+ includePrerelease: false,
79
+ });
79
80
 
80
81
  if (!latestStableVersion) {
81
82
  return versions;
@@ -1,5 +1,5 @@
1
1
  const camelCase = require('lodash.camelcase');
2
- const latestSemver = require('latest-semver');
2
+ const semver = require('semver');
3
3
 
4
4
  const { fetchLibraryVersions } = require('../utils');
5
5
 
@@ -24,10 +24,13 @@ async function getLibraryVersion(config, templateConfig) {
24
24
 
25
25
  if (libraryName && !libraryVersion) {
26
26
  const versions = await fetchLibraryVersions(libraryName);
27
+ const latestStableVersion = semver.maxSatisfying(versions, '*', {
28
+ includePrerelease: false,
29
+ });
27
30
 
28
31
  // Return the latest available version when
29
32
  // the stable version is not available
30
- return latestSemver(versions) || versions[0];
33
+ return latestStableVersion || versions[0];
31
34
  }
32
35
 
33
36
  return libraryVersion;
@@ -71,6 +74,9 @@ async function postProcessAnswers({
71
74
  dynamicWidgets:
72
75
  Array.isArray(combinedAnswers.attributesForFaceting) &&
73
76
  combinedAnswers.attributesForFaceting.includes('ais.dynamicWidgets'),
77
+ insights:
78
+ Boolean(templateConfig.flags && templateConfig.flags.insights) &&
79
+ semver.satisfies(libraryVersion, templateConfig.flags.insights),
74
80
  },
75
81
  };
76
82
  }
@@ -1,7 +1,7 @@
1
1
  const metalsmith = require('metalsmith');
2
- const inPlace = require('metalsmith-in-place');
2
+ const inPlace = require('@metalsmith/in-place');
3
3
  const rename = require('metalsmith-rename');
4
- const ignore = require('metalsmith-ignore');
4
+ const remove = require('@metalsmith/remove');
5
5
 
6
6
  module.exports = function build(config) {
7
7
  return new Promise((resolve, reject) => {
@@ -9,7 +9,7 @@ module.exports = function build(config) {
9
9
  .source(config.template)
10
10
  .destination(config.path)
11
11
  .metadata(config)
12
- .use(ignore(['.template.js']))
12
+ .use(remove(['.template.js']))
13
13
  .use(
14
14
  // Add the `.hbs` extension to any templating files that need
15
15
  // their placeholders to get filled with `metalsmith-in-place`
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -7,6 +7,7 @@ module.exports = {
7
7
  supportedVersion: '>= 3.0.0 < 5.0.0',
8
8
  flags: {
9
9
  dynamicWidgets: '>= 4.30',
10
+ insights: '>= 4.55',
10
11
  },
11
12
  templateName: 'instantsearch.js',
12
13
  appName: 'instantsearch.js-app',
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -22,7 +22,7 @@
22
22
  </h1>
23
23
  <p class="header-subtitle">
24
24
  using
25
- <a href="https://github.com/algolia/instantsearch.js">
25
+ <a href="https://github.com/algolia/instantsearch/tree/master/packages/instantsearch.js">
26
26
  InstantSearch.js
27
27
  </a>
28
28
  </p>
@@ -5,6 +5,7 @@ const searchClient = algoliasearch('{{appId}}', '{{apiKey}}');
5
5
  const search = instantsearch({
6
6
  indexName: '{{indexName}}',
7
7
  searchClient,
8
+ {{#if flags.insights}}insights: true,{{/if}}
8
9
  });
9
10
 
10
11
  search.addWidgets([
@@ -18,12 +19,12 @@ search.addWidgets([
18
19
  container: '#hits',
19
20
  {{#if attributesToDisplay}}
20
21
  templates: {
21
- item: `
22
+ item: (hit, { html, components }) => html`
22
23
  <article>
23
- <h1>\{{#helpers.highlight}}{ "attribute": "{{attributesToDisplay.[0]}}" }\{{/helpers.highlight}}</h1>
24
+ <h1>${components.Highlight({hit, attribute: "{{attributesToDisplay.[0]}}"})}</h1>
24
25
  {{#each attributesToDisplay}}
25
26
  {{#unless @first}}
26
- <p>\{{#helpers.highlight}}{ "attribute": "{{this}}" }\{{/helpers.highlight}}</p>
27
+ <p>${components.Highlight({hit, attribute: "{{this}}"})}</p>
27
28
  {{/unless}}
28
29
  {{/each}}
29
30
  </article>
@@ -38,7 +39,7 @@ search.addWidgets([
38
39
  instantsearch.widgets.dynamicWidgets({
39
40
  container: '#dynamic-widgets',
40
41
  fallbackWidget({ container, attribute }) {
41
- return instantsearch.widgets.panel({ templates: { header: attribute } })(
42
+ return instantsearch.widgets.panel({ templates: { header: () => attribute } })(
42
43
  instantsearch.widgets.refinementList
43
44
  )({
44
45
  container,
@@ -49,7 +50,7 @@ search.addWidgets([
49
50
  {{#each attributesForFaceting}}
50
51
  container =>
51
52
  instantsearch.widgets.panel({
52
- templates: { header: '{{this}}' },
53
+ templates: { header: () => '{{this}}' },
53
54
  })(instantsearch.widgets.refinementList)({
54
55
  container,
55
56
  attribute: '{{this}}',
@@ -60,7 +61,7 @@ search.addWidgets([
60
61
  {{else}}
61
62
  {{#each attributesForFaceting}}
62
63
  instantsearch.widgets.panel({
63
- templates: { header: '{{this}}' },
64
+ templates: { header: () => '{{this}}' },
64
65
  })(instantsearch.widgets.refinementList)({
65
66
  container: '#{{this}}-list',
66
67
  attribute: '{{this}}',
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -24,7 +24,7 @@
24
24
  </h1>
25
25
  <p class="header-subtitle">
26
26
  using
27
- <a href="https://github.com/algolia/instantsearch.js">
27
+ <a href="https://github.com/algolia/instantsearch/tree/v2.10.5">
28
28
  InstantSearch.js
29
29
  </a>
30
30
  </p>
@@ -169,4 +169,4 @@ Please read [our contribution process](./CONTRIBUTING.md) to learn more.
169
169
 
170
170
  ---
171
171
 
172
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
172
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -34,7 +34,7 @@ function App() {
34
34
  </h1>
35
35
  <p className="header-subtitle">
36
36
  using{' '}
37
- <a href="https://github.com/algolia/react-instantsearch">
37
+ <a href="https://github.com/algolia/instantsearch/tree/master/packages/react-instantsearch">
38
38
  React InstantSearch
39
39
  </a>
40
40
  </p>
@@ -7,6 +7,7 @@ module.exports = {
7
7
  supportedVersion: '>= 6.0.0 < 7.0.0',
8
8
  flags: {
9
9
  dynamicWidgets: '>=6.16',
10
+ insights: '>=6.43',
10
11
  },
11
12
  templateName: 'react-instantsearch-hooks',
12
13
  appName: 'react-instantsearch-hooks-app',
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -8,7 +8,6 @@
8
8
  },
9
9
  "dependencies": {
10
10
  "algoliasearch": "4",
11
- "instantsearch.js": "4.43.1",
12
11
  "react": "18.1.0",
13
12
  "react-dom": "18.1.0",
14
13
  "react-instantsearch-hooks-web": "{{libraryVersion}}"
@@ -40,14 +40,14 @@ export function App() {
40
40
  </h1>
41
41
  <p className="header-subtitle">
42
42
  using{' '}
43
- <a href="https://github.com/algolia/react-instantsearch">
43
+ <a href="https://github.com/algolia/instantsearch/tree/master/packages/react-instantsearch-hooks-web">
44
44
  React InstantSearch Hooks
45
45
  </a>
46
46
  </p>
47
47
  </header>
48
48
 
49
49
  <div className="container">
50
- <InstantSearch searchClient={searchClient} indexName="{{indexName}}">
50
+ <InstantSearch searchClient={searchClient} indexName="{{indexName}}" {{#if flags.insights}}insights{{/if}}>
51
51
  <Configure hitsPerPage={8} />
52
52
  <div className="search-panel">
53
53
  <div className="search-panel__filters">
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -14,7 +14,6 @@
14
14
  "algoliasearch": "4.12.1",
15
15
  "expo": "~44.0.0",
16
16
  "expo-status-bar": "~1.2.0",
17
- "instantsearch.js": "4.38.1",
18
17
  "react": "17.0.1",
19
18
  "react-dom": "17.0.1",
20
19
  "react-instantsearch-hooks": "{{libraryVersion}}",
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -82,4 +82,4 @@ Please read [our contribution process](./CONTRIBUTING.md) to learn more.
82
82
 
83
83
  ---
84
84
 
85
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
85
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
@@ -6,7 +6,8 @@ module.exports = {
6
6
  libraryName: 'vue-instantsearch',
7
7
  supportedVersion: '>= 3.0.0 < 5.0.0',
8
8
  flags: {
9
- dynamicWidgets: '>=4.2.0',
9
+ dynamicWidgets: '>= 4.2.0',
10
+ insights: '>= 4.9.0',
10
11
  },
11
12
  templateName: 'vue-instantsearch',
12
13
  appName: 'vue-instantsearch-app',
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -8,7 +8,7 @@
8
8
  </h1>
9
9
  <p class="header-subtitle">
10
10
  using
11
- <a href="https://github.com/algolia/vue-instantsearch">
11
+ <a href="https://github.com/algolia/instantsearch/tree/master/packages/vue-instantsearch">
12
12
  Vue InstantSearch
13
13
  </a>
14
14
  </p>
@@ -18,6 +18,7 @@
18
18
  <ais-instant-search
19
19
  :search-client="searchClient"
20
20
  index-name="{{indexName}}"
21
+ {{#if flags.insights}}insights{{/if}}
21
22
  >
22
23
  <ais-configure :hits-per-page.camel="8" />
23
24
  <div class="search-panel">
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -6,7 +6,7 @@
6
6
  </h1>
7
7
  <p class="header-subtitle">
8
8
  using
9
- <a href="https://github.com/algolia/vue-instantsearch">
9
+ <a href="https://github.com/algolia/instantsearch/tree/master/packages/vue-instantsearch">
10
10
  Vue InstantSearch
11
11
  </a>
12
12
  </p>
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -8,7 +8,7 @@
8
8
  </h1>
9
9
  <p class="header-subtitle">
10
10
  using
11
- <a href="https://github.com/algolia/vue-instantsearch">
11
+ <a href="https://github.com/algolia/instantsearch/tree/master/packages/vue-instantsearch">
12
12
  Vue InstantSearch
13
13
  </a>
14
14
  </p>
@@ -6,7 +6,8 @@ module.exports = {
6
6
  libraryName: 'vue-instantsearch',
7
7
  supportedVersion: '>= 4.3.3 < 5.0.0',
8
8
  flags: {
9
- dynamicWidgets: '>=4.2.0',
9
+ dynamicWidgets: '>= 4.2.0',
10
+ insights: '>= 4.9.0',
10
11
  },
11
12
  templateName: 'vue-instantsearch-vue3',
12
13
  appName: 'vue-instantsearch-app',
@@ -1,6 +1,6 @@
1
1
  # {{name}}
2
2
 
3
- _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch.js/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
3
+ _This project was generated with [create-instantsearch-app](https://github.com/algolia/instantsearch/tree/master/packages/create-instantsearch-app) by [Algolia](https://algolia.com)._
4
4
 
5
5
  ## Get started
6
6
 
@@ -6,7 +6,7 @@
6
6
  </h1>
7
7
  <p class="header-subtitle">
8
8
  using
9
- <a href="https://github.com/algolia/vue-instantsearch">
9
+ <a href="https://github.com/algolia/instantsearch/tree/master/packages/vue-instantsearch">
10
10
  Vue InstantSearch
11
11
  </a>
12
12
  </p>
@@ -16,6 +16,7 @@
16
16
  <ais-instant-search
17
17
  :search-client="searchClient"
18
18
  index-name="{{indexName}}"
19
+ {{#if flags.insights}}insights{{/if}}
19
20
  >
20
21
  <ais-configure :hits-per-page.camel="8" />
21
22
  <div class="search-panel">