Skip to content

Commit 18c55ba

Browse files
Merge pull request #1 from feathersjs-ecosystem/master
update forked feathers-vuex
2 parents 9a83f0e + 8b1b5ec commit 18c55ba

File tree

10 files changed

+269
-216
lines changed

10 files changed

+269
-216
lines changed

package-lock.json

Lines changed: 144 additions & 41 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@
150150
"@vue/eslint-config-prettier": "^6.0.0",
151151
"@vue/eslint-config-typescript": "^5.0.2",
152152
"@vue/test-utils": "^1.0.2",
153-
"axios": "^0.19.2",
153+
"axios": "^0.21.1",
154154
"babel-cli": "^6.26.0",
155155
"babel-core": "^6.26.3",
156156
"babel-eslint": "^10.1.0",

src/make-find-mixin.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ export default function makeFindMixin(options) {
4545
name = 'service'
4646
}
4747

48-
const nameToUse = (name || service).replace('-', '_')
48+
const nameToUse = (name || service).replace(/-/g, '_')
4949
const prefix = getServicePrefix(nameToUse)
5050
const capitalized = getServiceCapitalization(nameToUse)
5151
const SERVICE_NAME = `${prefix}ServiceName`

src/make-get-mixin.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ export default function makeFindMixin(options) {
3838
name = 'service'
3939
}
4040

41-
const nameToUse = (name || service).replace('-', '_')
41+
const nameToUse = (name || service).replace(/-/g, '_')
4242
const singularized = inflection.singularize(nameToUse)
4343
const prefix = inflection.camelize(singularized, true)
4444
const capitalized = prefix.charAt(0).toUpperCase() + prefix.slice(1)

src/service-module/make-base-model.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -421,7 +421,7 @@ export default function makeBaseModel(options: FeathersVuexOptions) {
421421
const { idField, _dispatch } = this.constructor as typeof BaseModel
422422
const id = getId(this, idField)
423423

424-
if (!id) {
424+
if (id !== 0 && !id) {
425425
const error = new Error(
426426
`Missing ${idField} property. You must create the data before you can update with this data`
427427
)

src/service-module/make-service-module.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export default function makeServiceModule(
2323
state: makeDefaultState(options),
2424
getters: makeGetters(),
2525
mutations: makeMutations(),
26-
actions: makeActions(service)
26+
actions: makeActions({service, options})
2727
}
2828
const fromOptions = _pick(options, [
2929
'state',

src/service-module/service-module.actions.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,14 @@ eslint
66
import fastCopy from 'fast-copy'
77
import { getId } from '../utils'
88
import { Service } from '@feathersjs/feathers'
9+
import { MakeServicePluginOptions } from './types'
910

10-
export default function makeServiceActions(service: Service<any>) {
11+
interface serviceAndOptions {
12+
service: Service<any>
13+
options: MakeServicePluginOptions
14+
}
15+
16+
export default function makeServiceActions({service, options}: serviceAndOptions) {
1117
const serviceActions = {
1218
find({ commit, dispatch }, params) {
1319
params = params || {}
@@ -322,9 +328,9 @@ export default function makeServiceActions(service: Service<any>) {
322328
commit('removeItems', toRemove) // commit removal
323329
}
324330

325-
if (service.FeathersVuexModel) {
331+
if (options.Model) {
326332
toAdd.forEach((item, index) => {
327-
toAdd[index] = new service.FeathersVuexModel(item, { commit: false })
333+
toAdd[index] = new options.Model(item, { commit: false })
328334
})
329335
}
330336

src/utils.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ export function getServicePrefix(servicePath) {
274274
const parts = servicePath.split('/')
275275
let name = parts[parts.length - 1]
276276
// name = inflection.underscore(name)
277-
name = name.replace('-', '_')
277+
name = name.replace(/-/g, '_')
278278
name = inflection.camelize(name, true)
279279
return name
280280
}
@@ -283,7 +283,7 @@ export function getServiceCapitalization(servicePath) {
283283
const parts = servicePath.split('/')
284284
let name = parts[parts.length - 1]
285285
// name = inflection.underscore(name)
286-
name = name.replace('-', '_')
286+
name = name.replace(/-/g, '_')
287287
name = inflection.camelize(name)
288288
return name
289289
}

test/utils.test.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,8 @@ describe('Utils', function () {
162162
['environment-Panos', 'environmentPanos'],
163163
['env-panos', 'envPanos'],
164164
['envPanos', 'envPanos'],
165-
['api/v1/env-panos', 'envPanos']
165+
['api/v1/env-panos', 'envPanos'],
166+
['very-long-service', 'veryLongService']
166167
]
167168
decisionTable.forEach(([path, prefix]) => {
168169
assert(
@@ -181,7 +182,8 @@ describe('Utils', function () {
181182
['environment-Panos', 'EnvironmentPanos'],
182183
['env-panos', 'EnvPanos'],
183184
['envPanos', 'EnvPanos'],
184-
['api/v1/env-panos', 'EnvPanos']
185+
['api/v1/env-panos', 'EnvPanos'],
186+
['very-long-service', 'VeryLongService']
185187
]
186188
decisionTable.forEach(([path, prefix]) => {
187189
assert(

0 commit comments

Comments
 (0)